From 0acc570a24569823123ff41401366f1f0164afba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com>
Date: Wed, 18 Oct 2023 10:18:26 +0800
Subject: [PATCH] =?UTF-8?q?feature/2.9.42310.01-=E5=B7=A5=E8=B5=84?=
=?UTF-8?q?=E5=8D=95=E5=8F=91=E6=94=BE=E9=A1=B5=E9=9D=A2=E9=87=8D=E6=9E=84?=
=?UTF-8?q?=E5=8D=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../payrollRelease/components/conditions.js | 4 +-
.../payrollTempNormalSet/formRender.js | 39 +++++---
.../components/payrollTempNormalSet/index.js | 35 ++++---
.../components/payrollTempReissueSet/index.js | 91 +++++++++++++++++++
.../updatePayrollTemplateSlide/index.js | 16 +++-
pc4mobx/hrmSalary/stores/payroll.js | 29 +++---
6 files changed, 172 insertions(+), 42 deletions(-)
create mode 100644 pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempReissueSet/index.js
diff --git a/pc4mobx/hrmSalary/pages/payrollRelease/components/conditions.js b/pc4mobx/hrmSalary/pages/payrollRelease/components/conditions.js
index 61ed577f..93142796 100644
--- a/pc4mobx/hrmSalary/pages/payrollRelease/components/conditions.js
+++ b/pc4mobx/hrmSalary/pages/payrollRelease/components/conditions.js
@@ -212,7 +212,9 @@ export const tempNormalSetConditions = [
labelcol: 6,
value: "",
showClearAll: false,
- listType: "img",
+ showListBottom: false,
+ showListTop: false,
+ // listType: "img",
limitType: "jpg,jpeg,png",
uploadUrl: "/api/doc/upload/uploadFile",
category: "string",
diff --git a/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempNormalSet/formRender.js b/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempNormalSet/formRender.js
index ae8d0af8..bbcc3b5a 100644
--- a/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempNormalSet/formRender.js
+++ b/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempNormalSet/formRender.js
@@ -1,11 +1,16 @@
import { WeaSwitch } from "comsMobx";
-import { WeaFormItem, WeaLocaleProvider, WeaSearchGroup, WeaTools } from "ecCom";
+import { WeaButtonIcon, WeaFormItem, WeaLocaleProvider, WeaSearchGroup, WeaTools } from "ecCom";
const getLabel = WeaLocaleProvider.getLabel;
const getKey = WeaTools.getKey;
-export const payrollTempNormalSetForm = (form, condition, col, isCenter, onChange = () => void (0), insertVar = () => void (0)) => {
+export const payrollTempNormalSetForm = (form, condition, background, onChange = () => void (0), insertVar = () => void (0)) => {
const { isFormInit } = form;
const formParams = form.getFormParams();
+ const img1Props = {
+ src: "/weaver/weaver.file.FileDownload?fileid=a897b63092c473b95d98ed95138518e72fcaff559a225b618062f453c4d21b4bc43d18cd849d0ba00c94d2b02a53750b08e683c37ee144133",
+ width: 100,
+ height: 100
+ };
let group = [];
isFormInit && condition && condition.map(c => {
let items = [];
@@ -19,19 +24,29 @@ export const payrollTempNormalSetForm = (form, condition, col, isCenter, onChang
error={form.getError(fields)}
tipPosition="bottom"
>
-
+
+ {
+ (getKey(fields) === "background" && background) ?
+
+ insertVar("background", "")}/>
+
+
+ :
+
+ }
{
getKey(fields) === "theme" &&
}
),
@@ -41,12 +56,12 @@ export const payrollTempNormalSetForm = (form, condition, col, isCenter, onChang
});
group.push(
);
});
return group;
diff --git a/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempNormalSet/index.js b/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempNormalSet/index.js
index 5b77dbbd..1972be82 100644
--- a/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempNormalSet/index.js
+++ b/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempNormalSet/index.js
@@ -42,6 +42,7 @@ class Index extends Component {
const { salaryTemplateShowSet, salaryTemplateSalaryItemSet: salaryItemSet, salaryBillItemNameSet } = data;
const { data: result } = salaryTemplateShowSet;
const { ...fieldsEchoData } = { ...result, ...toJS(tmplDataSource) };
+ console.log(111, toJS(tmplDataSource), { ...result, ...toJS(tmplDataSource) });
this.setState({
conditions: _.map(tempNormalSetConditions, it => {
if (it.title === "themeSet") {
@@ -77,9 +78,6 @@ class Index extends Component {
case "salaryItemNullStatus":
payrollTempNormalForm.updateFields({ [it]: fieldsEchoData[it] ? "1" : "0" });
break;
- case "background":
- console.log(81, fieldsEchoData);
- break;
default:
payrollTempNormalForm.updateFields({ [it]: fieldsEchoData[it] ? fieldsEchoData[it].toString() : "" });
break;
@@ -92,10 +90,12 @@ class Index extends Component {
};
getPayrollItemList = () => {
const { salaryItemSet } = this.state;
- const { payrollStore: { tmplDataSource } } = this.props;
+ const { payrollStore: { tmplDataSource, setTmplDataSource } } = this.props;
getPayrollItemList({ salarySobId: toJS(tmplDataSource).salarySob }).then(({ status, data }) => {
if (status && _.isEmpty(salaryItemSet)) {
- this.setState({ salaryItemSet: data });
+ this.setState({ salaryItemSet: data }, () => {
+ setTmplDataSource({ ...toJS(tmplDataSource), salaryItemSetting: data });
+ });
}
});
};
@@ -107,16 +107,29 @@ class Index extends Component {
setTmplDataSource({ ...toJS(tmplDataSource), background });
}
};
- handleInsertVar = (themeVar) => {
- const { payrollStore: { payrollTempNormalForm } } = this.props;
+ handleInsertVar = (key, themeVar) => {
+ const { payrollStore: { payrollTempNormalForm, setTmplDataSource, tmplDataSource } } = this.props;
const theme = payrollTempNormalForm.getFormParams().theme;
- payrollTempNormalForm.updateFields({ theme: `${theme}${themeVar}` });
+ if (key === "background") {
+ setTmplDataSource({ ...toJS(tmplDataSource), background: themeVar });
+ } else {
+ payrollTempNormalForm.updateFields({ [key]: `${theme}${themeVar}` });
+ }
};
handleChangeSalaryItem = (resultSet) => {
- console.log(resultSet);
+ const { payrollStore: { setTmplDataSource, tmplDataSource } } = this.props;
+ this.setState({ salaryItemSet: resultSet }, () => {
+ setTmplDataSource({ ...toJS(tmplDataSource), salaryItemSetting: resultSet });
+ });
};
handleChangeSalaryItemShowNamesetting = (itemShowNamesetting) => {
- console.log(itemShowNamesetting);
+ const { payrollStore: { setSalaryBillItemNameSetting, salaryBillItemNameSetting } } = this.props;
+ setSalaryBillItemNameSetting(_.map(salaryBillItemNameSetting, it => {
+ if (it.salaryBillType === 0) {
+ return { ...it, salaryTemplateId: this.props.tmplId, itemShowNameSetting: itemShowNamesetting };
+ }
+ return { ...it, salaryTemplateId: this.props.tmplId };
+ }));
};
render() {
@@ -124,7 +137,7 @@ class Index extends Component {
const { payrollStore: { payrollTempNormalForm, tmplDataSource } } = this.props;
return (
- {!_.isEmpty(conditions) && payrollTempNormalSetForm(payrollTempNormalForm, conditions, 1, false, this.handleChange, this.handleInsertVar)}
+ {!_.isEmpty(conditions) && payrollTempNormalSetForm(payrollTempNormalForm, conditions, toJS(tmplDataSource).background, this.handleChange, this.handleInsertVar)}
diff --git a/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempReissueSet/index.js b/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempReissueSet/index.js
new file mode 100644
index 00000000..ea4c59cb
--- /dev/null
+++ b/pc4mobx/hrmSalary/pages/payrollRelease/components/payrollTempReissueSet/index.js
@@ -0,0 +1,91 @@
+/*
+ * Author: 黎永顺
+ * name:工资单发放-重构页面补发工资单模板
+ * Description:
+ * Date: 2023/10/17
+ */
+import React, { Component } from "react";
+import { toJS } from "mobx";
+import { WeaButtonIcon, WeaLocaleProvider, WeaSearchGroup } from "ecCom";
+import SalaryItemSettings from "../../../payroll/stepForm/salaryItemSettings";
+import { getReplenishForm } from "../../../../apis/payroll";
+
+const getLabel = WeaLocaleProvider.getLabel;
+
+class Index extends Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ replenishSalaryTemplateSalaryItemSet: [], salaryBillItemNameSet: {}
+ };
+ }
+
+ componentDidMount() {
+ this.getReplenishForm();
+ }
+
+ getReplenishForm = () => {
+ const { payrollStore: { tmplDataSource, setTmplDataSource }, tmplId: id } = this.props;
+ const salarySobId = toJS(tmplDataSource).salarySob;
+ getReplenishForm({ salarySobId, id }).then(({ status, data }) => {
+ if (status) {
+ const { replenishSalaryTemplateSalaryItemSet, salaryBillItemNameSet } = data;
+ this.setState({
+ replenishSalaryTemplateSalaryItemSet, salaryBillItemNameSet
+ }, () => {
+ // setTmplDataSource({
+ // ...toJS(tmplDataSource),
+ // replenishSalaryItemSetting: replenishSalaryTemplateSalaryItemSet
+ // });
+ });
+ }
+ });
+ };
+
+ handleChangeSalaryItem = (resultSet) => {
+ const { payrollStore: { setTmplDataSource, tmplDataSource } } = this.props;
+ this.setState({ replenishSalaryTemplateSalaryItemSet: resultSet }, () => {
+ setTmplDataSource({
+ ...toJS(tmplDataSource),
+ replenishSalaryItemSetting: resultSet
+ });
+ });
+ };
+ handleChangeSalaryItemShowNamesetting = (itemShowNamesetting) => {
+ const { payrollStore: { setSalaryBillItemNameSetting, salaryBillItemNameSetting } } = this.props;
+ setSalaryBillItemNameSetting(_.map(salaryBillItemNameSetting, it => {
+ if (it.salaryBillType === 1) {
+ return { ...it, salaryTemplateId: this.props.tmplId, itemShowNameSetting: itemShowNamesetting };
+ }
+ return { ...it, salaryTemplateId: this.props.tmplId };
+ }));
+ };
+
+ render() {
+ const { payrollStore: { tmplDataSource } } = this.props;
+ const { replenishSalaryTemplateSalaryItemSet, salaryBillItemNameSet } = this.state;
+ return (
+
+ {getLabel(543593, "薪资项目设置")}
+ this.salaryItemSettingsRef.handleOpenModal(toJS(tmplDataSource).salarySob, getLabel(543594, "添加分类"))}/>
+
+ }
+ items={[]} needTigger showGroup>
+ this.salaryItemSettingsRef = dom}
+ dataSource={replenishSalaryTemplateSalaryItemSet}
+ onChangeSalaryItem={this.handleChangeSalaryItem}
+ onChangeSalaryItemShowNamesetting={this.handleChangeSalaryItemShowNamesetting}
+ salarySobId={toJS(tmplDataSource).salarySob}
+ salaryTemplateId={this.props.tmplId || ""}
+ isReplenish={true} salaryBillItemNameSet={salaryBillItemNameSet}
+ />
+
+ );
+ }
+}
+
+export default Index;
diff --git a/pc4mobx/hrmSalary/pages/payrollRelease/components/updatePayrollTemplateSlide/index.js b/pc4mobx/hrmSalary/pages/payrollRelease/components/updatePayrollTemplateSlide/index.js
index 3ab5f52c..085d6e9d 100644
--- a/pc4mobx/hrmSalary/pages/payrollRelease/components/updatePayrollTemplateSlide/index.js
+++ b/pc4mobx/hrmSalary/pages/payrollRelease/components/updatePayrollTemplateSlide/index.js
@@ -11,6 +11,7 @@ import { WeaLocaleProvider, WeaSlideModal, WeaSteps } from "ecCom";
import { Button, message } from "antd";
import PayrollTempBaseSet from "../payrollTempBaseSet";
import PayrollTempNormalSet from "../payrollTempNormalSet";
+import PayrollTempReissueSet from "../payrollTempReissueSet";
import { savePayroll } from "../../../../apis/payroll";
const Step = WeaSteps.Step;
@@ -87,7 +88,11 @@ class Index extends Component {
}
});
};
- savePayroll = (payload) => {
+ savePayroll = () => {
+ const { payrollStore: { tmplDataSource, salaryBillItemNameSetting } } = this.props;
+ const payload = { ...toJS(tmplDataSource), salaryBillItemNameSetting: toJS(salaryBillItemNameSetting) };
+ console.log(payload, tmplDataSource, toJS(salaryBillItemNameSetting));
+ return;
this.setState({ loading: true });
savePayroll(payload).then(({ status, errormsg }) => {
this.setState({ loading: false });
@@ -108,7 +113,7 @@ class Index extends Component {
{
current === 0 ?
- :
+ :
current === 1 ?
}
@@ -133,7 +138,10 @@ class Index extends Component {
dom = this.tmpBaseSetRef = dom}/>;
break;
case 1:
- dom = this.tmpNormalSetRef = dom}/>;
+ dom = ;
+ break;
+ case 2:
+ dom = ;
break;
default:
break;
diff --git a/pc4mobx/hrmSalary/stores/payroll.js b/pc4mobx/hrmSalary/stores/payroll.js
index fa5a56e1..35bb7e2f 100644
--- a/pc4mobx/hrmSalary/stores/payroll.js
+++ b/pc4mobx/hrmSalary/stores/payroll.js
@@ -21,6 +21,20 @@ export class payrollStore {
@observable payrollTempNormalForm = new WeaForm(); //新建编辑工资单模板-主题设置form
@action initPayrollTempNormalForm = () => this.payrollTempNormalForm = new WeaForm();
+ @observable salaryBillItemNameSetting = [
+ {
+ salaryTemplateId: "",
+ salaryBillType: 0,
+ itemShowNameSetting: []
+ },
+ {
+ salaryTemplateId: "",
+ salaryBillType: 1,
+ itemShowNameSetting: []
+ }
+ ]; // 工资单模板薪资项目名称修改列表
+ @action
+ setSalaryBillItemNameSetting = salaryBillItemNameSetting => (this.salaryBillItemNameSetting = salaryBillItemNameSetting);
@observable tableStore = new TableStore(); // new table
@@ -40,18 +54,7 @@ export class payrollStore {
@observable salaryTemplateShowSet = {}; // 显示设置基础表单
@observable replenishSalaryTemplateSalaryItemSet = []; // 补发工资单模版基础表单
@observable salaryItemSet = []; // 显示设置薪资项
- @observable salaryBillItemNameSetting = [
- {
- salaryTemplateId: "",
- salaryBillType: 0,
- itemShowNameSetting: []
- },
- {
- salaryTemplateId: "",
- salaryBillType: 1,
- itemShowNameSetting: []
- }
- ]; // 工资单模板薪资项目名称修改列表
+
@observable salaryBillItemNameSet = {}; // 工资单模板薪资项目名称修改列表
// **** 工资单页面 ****
@@ -116,8 +119,6 @@ export class payrollStore {
setSalaryItemSet = salaryItemSet => (this.salaryItemSet = salaryItemSet);
@action
setSalaryBillItemNameSet = salaryBillItemNameSet => (this.salaryBillItemNameSet = salaryBillItemNameSet);
- @action
- setSalaryBillItemNameSetting = salaryBillItemNameSetting => (this.salaryBillItemNameSetting = salaryBillItemNameSetting);
@action("工资单模板分页信息修改")
setTemplateTablePageInfo = (pageInfo, callback) => {