From 924150c4d2a874d87173ce3e3d67caf345b323c9 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期四, 23 七月 2026 09:25:59 +0800
Subject: [PATCH] 修改工资
---
src/views/personnelManagement/monthlyStatistics/components/formDia.vue | 84 +++++++++++++++++++++++++++++++++++++++---
1 files changed, 78 insertions(+), 6 deletions(-)
diff --git a/src/views/personnelManagement/monthlyStatistics/components/formDia.vue b/src/views/personnelManagement/monthlyStatistics/components/formDia.vue
index 46515ed..981fefe 100644
--- a/src/views/personnelManagement/monthlyStatistics/components/formDia.vue
+++ b/src/views/personnelManagement/monthlyStatistics/components/formDia.vue
@@ -141,6 +141,46 @@
@input="handleSalaryInput(row)" />
</template>
</el-table-column>
+ <el-table-column label="鍏ㄥ嫟濂�"
+ minWidth="110">
+ <template #default="{ row }">
+ <el-input v-model.number="row.attendanceBonus"
+ type="number"
+ placeholder="100"
+ size="small"
+ disabled />
+ </template>
+ </el-table-column>
+ <el-table-column label="鏈堟椂闂村悎璁�"
+ minWidth="110">
+ <template #default="{ row }">
+ <el-input v-model.number="row.monthTimeTotal"
+ type="number"
+ placeholder="0"
+ size="small"
+ disabled />
+ </template>
+ </el-table-column>
+ <el-table-column label="鏈堟爣鍑嗗伐鏃�"
+ minWidth="110">
+ <template #default="{ row }">
+ <el-input v-model.number="row.standardHours"
+ type="number"
+ placeholder="0"
+ size="small"
+ disabled />
+ </template>
+ </el-table-column>
+ <el-table-column label="鎶樺悎鍊嶆暟"
+ minWidth="100">
+ <template #default="{ row }">
+ <el-input v-model.number="row.conversionRatio"
+ type="number"
+ placeholder="0"
+ size="small"
+ disabled />
+ </template>
+ </el-table-column>
<el-table-column label="璁′欢宸ヨ祫"
minWidth="110">
<template #default="{ row }">
@@ -148,7 +188,6 @@
type="number"
placeholder="0"
size="small"
- disabled
@input="row.pieceSalary = parseNum(row.pieceSalary)" />
</template>
</el-table-column>
@@ -159,7 +198,6 @@
type="number"
placeholder="0"
size="small"
- disabled
@input="row.hourlySalary = parseNum(row.hourlySalary)" />
</template>
</el-table-column>
@@ -202,8 +240,7 @@
type="number"
placeholder="0"
size="small"
- disabled
- @input="row.otherDeduct = parseNum(row.otherDeduct)" />
+ @input="handleSalaryInput(row)" />
</template>
</el-table-column>
<el-table-column label="绀句繚琛ョ即"
@@ -418,8 +455,16 @@
postName: "",
deptName: "",
basicSalary: 0,
+ attendanceBonus: 100,
pieceSalary: 0,
hourlySalary: 0,
+ actualOutput: 0,
+ standardQuantity: 0,
+ conversionFactor: 1,
+ convertedWorkHours: 0,
+ monthTimeTotal: 0,
+ standardHours: 0,
+ conversionRatio: 0,
otherIncome: 0,
socialPersonal: 0,
fundPersonal: 0,
@@ -442,8 +487,16 @@
postName: source?.postName ?? fallback.postName ?? "",
deptName: source?.deptName ?? fallback.deptName ?? "",
basicSalary: parseNum(source?.basicSalary ?? fallback.basicSalary),
+ attendanceBonus: parseNum(source?.attendanceBonus ?? fallback.attendanceBonus ?? 100) || 100,
pieceSalary: parseNum(source?.pieceSalary ?? fallback.pieceSalary),
hourlySalary: parseNum(source?.hourlySalary ?? fallback.hourlySalary),
+ actualOutput: parseNum(source?.actualOutput ?? fallback.actualOutput),
+ standardQuantity: parseNum(source?.standardQuantity ?? fallback.standardQuantity),
+ conversionFactor: parseNum(source?.conversionFactor ?? fallback.conversionFactor) || 1,
+ convertedWorkHours: parseNum(source?.convertedWorkHours ?? fallback.convertedWorkHours),
+ monthTimeTotal: parseNum(source?.monthTimeTotal ?? fallback.monthTimeTotal),
+ standardHours: parseNum(source?.standardHours ?? fallback.standardHours),
+ conversionRatio: parseNum(source?.conversionRatio ?? fallback.conversionRatio),
otherIncome: parseNum(source?.otherIncome ?? fallback.otherIncome),
socialPersonal: parseNum(source?.socialPersonal ?? fallback.socialPersonal),
fundPersonal: parseNum(source?.fundPersonal ?? fallback.fundPersonal),
@@ -481,15 +534,23 @@
const version = (recalcVersions.get(key) || 0) + 1;
recalcVersions.set(key, version);
clearTimeout(recalcTimers.get(key));
- const payload = {
+ const payload = {
staffOnJobId: row.staffOnJobId ?? row.id,
salaryMonth: form.value.salaryMonth,
staffName: row.staffName ?? "",
postName: row.postName ?? "",
deptName: row.deptName ?? "",
basicSalary: parseNum(row.basicSalary),
+ attendanceBonus: parseNum(row.attendanceBonus),
pieceSalary: parseNum(row.pieceSalary),
hourlySalary: parseNum(row.hourlySalary),
+ actualOutput: parseNum(row.actualOutput),
+ standardQuantity: parseNum(row.standardQuantity),
+ conversionFactor: parseNum(row.conversionFactor) || 1,
+ convertedWorkHours: parseNum(row.convertedWorkHours),
+ monthTimeTotal: parseNum(row.monthTimeTotal),
+ standardHours: parseNum(row.standardHours),
+ conversionRatio: parseNum(row.conversionRatio),
otherIncome: parseNum(row.otherIncome),
otherDeduct: parseNum(row.otherDeduct),
socialSupplementAmount: parseNullableNum(row.socialSupplementAmount),
@@ -509,6 +570,9 @@
const handleSalaryInput = row => {
row.basicSalary = parseNum(row.basicSalary);
row.otherIncome = parseNum(row.otherIncome);
+ row.actualOutput = parseNum(row.actualOutput);
+ row.standardQuantity = parseNum(row.standardQuantity);
+ row.conversionFactor = parseNum(row.conversionFactor) || 1;
requestEmployeeRecalculate(row);
};
@@ -672,7 +736,6 @@
form.value.remark = row.remark ?? "";
form.value.payBank = row.payBank ?? "";
form.value.auditUserId = row.auditUserId ?? undefined;
-
// 濡傛灉鏈夊憳宸ユ槑缁嗘暟鎹紝鐩存帴鍙嶆樉
if (row.staffSalaryDetailList && row.staffSalaryDetailList.length > 0) {
employeeList.value = row.staffSalaryDetailList.map(e => normalizeEmployeeRow(e));
@@ -725,6 +788,7 @@
deptName: node.deptName ?? "",
remark: "",
socialSupplementAmount: null,
+ attendanceBonus: node.attendanceBonus,
});
employeeList.value.push(newRow);
requestEmployeeRecalculate(newRow);
@@ -825,8 +889,16 @@
postName: e.postName ?? "",
deptName: e.deptName ?? "",
basicSalary: parseNum(e.basicSalary),
+ attendanceBonus: parseNum(e.attendanceBonus),
pieceSalary: parseNum(e.pieceSalary),
hourlySalary: parseNum(e.hourlySalary),
+ actualOutput: parseNum(e.actualOutput),
+ standardQuantity: parseNum(e.standardQuantity),
+ conversionFactor: parseNum(e.conversionFactor) || 1,
+ convertedWorkHours: parseNum(e.convertedWorkHours),
+ monthTimeTotal: parseNum(e.monthTimeTotal),
+ standardHours: parseNum(e.standardHours),
+ conversionRatio: parseNum(e.conversionRatio),
otherIncome: parseNum(e.otherIncome),
socialPersonal: parseNum(e.socialPersonal),
fundPersonal: parseNum(e.fundPersonal),
--
Gitblit v1.9.3