From 9d94619c1d7bace4c36d57be0e9bfbd59e4047bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Thu, 20 Jul 2023 13:35:37 +0800 Subject: [PATCH 01/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E6=B7=BB=E5=8A=A0=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/payroll/index.js | 2 +- .../pages/payroll/stepForm/index.less | 2 + .../payroll/stepForm/salaryItemSettings.js | 69 ++++++++++++++++++- .../pages/payroll/stepForm/showSettingForm.js | 4 +- pc4mobx/hrmSalary/stores/payroll.js | 4 ++ 5 files changed, 75 insertions(+), 6 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/payroll/index.js b/pc4mobx/hrmSalary/pages/payroll/index.js index c974b699..7c22d715 100644 --- a/pc4mobx/hrmSalary/pages/payroll/index.js +++ b/pc4mobx/hrmSalary/pages/payroll/index.js @@ -316,7 +316,7 @@ export default class Payroll extends React.Component { { showOperateBtn && } { diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/index.less b/pc4mobx/hrmSalary/pages/payroll/stepForm/index.less index f30d0063..ebcbbe4c 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/index.less +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/index.less @@ -192,9 +192,11 @@ .salaryItemName { width: 100%; + min-height: 18px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; + cursor: pointer; } i.anticon-cross { diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index c1441f0c..ca07715c 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -22,7 +22,9 @@ class SalaryItemSettings extends Component { title: "", groupId: "", groupName: "", - options: [] + options: [], + salaryItemName: "", + salaryItemId: "" } }; } @@ -98,7 +100,9 @@ class SalaryItemSettings extends Component { title: "", groupId: "", groupName: "", - options: [] + options: [], + salaryItemName: "", + salaryItemId: "" } }); }; @@ -211,6 +215,57 @@ class SalaryItemSettings extends Component { }); } }; + handleEditSalaryItemName = (item, field, viewAttr, name) => { + const { salaryBillItemNameSet } = this.props; + const { groupId } = item, { salaryItemId } = field, { dataList } = this.state; + if (groupId === "111111111111111111") return; + this.setState({ + dataList: _.map(dataList, item => { + if (item.groupId === groupId) { + return { + ...item, + items: _.map(item.items, child => { + if (child.salaryItemId === salaryItemId) { + console.log(child, name); + const originName = salaryBillItemNameSet[salaryItemId] && salaryBillItemNameSet[salaryItemId].salaryItemName; + return { + ...child, + name: (name && name !== (originName || child.originName)) ? `${child.name}(${originName || child.originName})` : `${child.name}`, + viewAttr + }; + } + return { ...child, viewAttr: 1 }; + }) + }; + } + return { + ...item, + items: _.map(item.items, child => { + return { ...child, viewAttr: 1 }; + }) + }; + }) + }); + }; + handleChangeSalaryItemShowName = (item, field, name) => { + const { groupId } = item, { salaryItemId } = field, { dataList } = this.state; + this.setState({ + dataList: _.map(dataList, item => { + if (item.groupId === groupId) { + return { + ...item, + items: _.map(item.items, child => { + if (child.salaryItemId === salaryItemId) { + return { ...child, name }; + } + return { ...child }; + }) + }; + } + return { ...item }; + }) + }, () => this.props.onChangeSalaryItem(this.state.dataList)); + }; render() { const { onChangeSalaryItem } = this.props; @@ -248,7 +303,15 @@ class SalaryItemSettings extends Component { renderNodeItem={(filed) => { return
-
{filed.name}
+ { + filed.viewAttr === 2 ? + this.handleEditSalaryItemName(item, filed, 1, val)} + onChange={(val) => this.handleChangeSalaryItemShowName(item, filed, val)} + /> : +
this.handleEditSalaryItemName(item, filed, 2)}>{filed.name}
+ } this.handleDeleteSalaryItem(item, filed)}/>
; diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js index 3b27a87b..9b18e299 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js @@ -45,7 +45,7 @@ export default class ShowSettingForm extends React.Component { const { payrollStore, id } = this.props; const salaryTemplateShowSetStorage = (id ? "{}" : window.localStorage.getItem("salary-showset") || "{}"); const { salaryTemplateShowSet } = payrollStore; - const { salaryItemSet, templateBaseData } = payrollStore; + const { salaryItemSet, templateBaseData, salaryBillItemNameSet } = payrollStore; const { theme, background, @@ -142,7 +142,7 @@ export default class ShowSettingForm extends React.Component { dataSource={salaryItemSet} onChangeSalaryItem={this.handleChangeSalaryItem} salarySobId={toJS(templateBaseData).salarySob} - isReplenish={false} + isReplenish={false} salaryBillItemNameSet={salaryBillItemNameSet} /> diff --git a/pc4mobx/hrmSalary/stores/payroll.js b/pc4mobx/hrmSalary/stores/payroll.js index e42cdba0..09d23eef 100644 --- a/pc4mobx/hrmSalary/stores/payroll.js +++ b/pc4mobx/hrmSalary/stores/payroll.js @@ -26,6 +26,7 @@ export class payrollStore { @observable salaryTemplateShowSet = {}; // 显示设置基础表单 @observable replenishSalaryTemplateSalaryItemSet = []; // 补发工资单模版基础表单 @observable salaryItemSet = []; // 显示设置薪资项 + @observable salaryBillItemNameSet = {}; // 工资单模板薪资项目名称修改列表 // **** 工资单页面 **** @observable salarySendTableStore = new TableStore(); // 工资单列表 @@ -214,6 +215,7 @@ export class payrollStore { if (res.status) { if (id !== "") { this.salaryItemSet = res.data.salaryTemplateSalaryItemSet; + this.salaryBillItemNameSet = res.data.salaryBillItemNameSet; this.replenishSalaryTemplateSalaryItemSet = res.data.salaryTemplateSalaryItemSet; } this.salaryTemplateShowSet = { ...res.data.salaryTemplateShowSet.data, ...JSON.parse(salaryTemplateShowSetStorage) }; @@ -289,6 +291,8 @@ export class payrollStore { return new Promise((resolve, reject) => { let params = this.convertParams(); params.id = id; + console.log(params); + return API.updatePayroll(params).then(res => { if (res.status) { message.success("保存成功"); From f7cd085c92f33e730ab6d8a443fcfe4629035900 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Thu, 20 Jul 2023 16:16:43 +0800 Subject: [PATCH 02/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E6=B7=BB=E5=8A=A0=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/payroll/index.js | 4 +- .../payroll/stepForm/salaryItemSettings.js | 38 +++++++++++++------ .../pages/payroll/stepForm/showSettingForm.js | 10 +++++ .../payroll/stepForm/tmplateSettingForm.js | 15 +++++++- pc4mobx/hrmSalary/stores/payroll.js | 19 +++++++++- 5 files changed, 69 insertions(+), 17 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/payroll/index.js b/pc4mobx/hrmSalary/pages/payroll/index.js index 7c22d715..f5ae1050 100644 --- a/pc4mobx/hrmSalary/pages/payroll/index.js +++ b/pc4mobx/hrmSalary/pages/payroll/index.js @@ -64,7 +64,7 @@ export default class Payroll extends React.Component { getReplenishForm = (isEdit = false, params = {}) => { const { payrollStore } = this.props; - const { templateBaseData, salaryTemplateShowSet, setReplenishSalaryTemplateSalaryItemSet } = payrollStore; + const { templateBaseData, salaryTemplateShowSet, setReplenishSalaryTemplateSalaryItemSet, setSalaryBillItemNameSet } = payrollStore; if (!salaryTemplateShowSet.theme && !isEdit) { Modal.warning({ title: "信息确认", @@ -77,10 +77,12 @@ export default class Payroll extends React.Component { if (!isEdit) { this.setState({ currentStep: this.state.currentStep + 1 }, () => { setReplenishSalaryTemplateSalaryItemSet(data.replenishSalaryTemplateSalaryItemSet); + setSalaryBillItemNameSet(data.salaryBillItemNameSet) window.localStorage.setItem("salary-showset", JSON.stringify(salaryTemplateShowSet)); }); } else { setReplenishSalaryTemplateSalaryItemSet(data.replenishSalaryTemplateSalaryItemSet); + setSalaryBillItemNameSet(data.salaryBillItemNameSet) window.localStorage.setItem("salary-showset", JSON.stringify(salaryTemplateShowSet)); } } diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index ca07715c..720241b6 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -16,6 +16,7 @@ class SalaryItemSettings extends Component { super(props); this.state = { dataList: [], + itemShowNamesetting: [], //名称修改集合 checkedValue: "", modalPayload: { visible: false, @@ -215,8 +216,7 @@ class SalaryItemSettings extends Component { }); } }; - handleEditSalaryItemName = (item, field, viewAttr, name) => { - const { salaryBillItemNameSet } = this.props; + handleEditSalaryItemName = (item, field, viewAttr) => { const { groupId } = item, { salaryItemId } = field, { dataList } = this.state; if (groupId === "111111111111111111") return; this.setState({ @@ -226,11 +226,8 @@ class SalaryItemSettings extends Component { ...item, items: _.map(item.items, child => { if (child.salaryItemId === salaryItemId) { - console.log(child, name); - const originName = salaryBillItemNameSet[salaryItemId] && salaryBillItemNameSet[salaryItemId].salaryItemName; return { ...child, - name: (name && name !== (originName || child.originName)) ? `${child.name}(${originName || child.originName})` : `${child.name}`, viewAttr }; } @@ -248,7 +245,7 @@ class SalaryItemSettings extends Component { }); }; handleChangeSalaryItemShowName = (item, field, name) => { - const { groupId } = item, { salaryItemId } = field, { dataList } = this.state; + const { groupId } = item, { salaryItemId } = field, { dataList, itemShowNamesetting } = this.state; this.setState({ dataList: _.map(dataList, item => { if (item.groupId === groupId) { @@ -263,12 +260,16 @@ class SalaryItemSettings extends Component { }; } return { ...item }; - }) - }, () => this.props.onChangeSalaryItem(this.state.dataList)); + }), + itemShowNamesetting: _.unionBy([{ salaryItemId, salaryItemShowName: name }], itemShowNamesetting, "salaryItemId") + }, () => { + this.props.onChangeSalaryItem(this.state.dataList); + this.props.onChangeSalaryItemShowNamesetting(this.state.itemShowNamesetting); + }); }; render() { - const { onChangeSalaryItem } = this.props; + const { onChangeSalaryItem, salaryBillItemNameSet } = this.props; const { dataList, modalPayload, checkedValue } = this.state; return (
@@ -301,16 +302,29 @@ class SalaryItemSettings extends Component { }) )} renderNodeItem={(filed) => { + const salaryBillItemNameObj = salaryBillItemNameSet[filed.id] || {}; return
-
+
{ filed.viewAttr === 2 ? this.handleEditSalaryItemName(item, filed, 1, val)} + onBlur={() => this.handleEditSalaryItemName(item, filed, 1)} onChange={(val) => this.handleChangeSalaryItemShowName(item, filed, val)} /> :
this.handleEditSalaryItemName(item, filed, 2)}>{filed.name}
+ onClick={() => this.handleEditSalaryItemName(item, filed, 2)}> + { + (item.groupId !== "111111111111111111" && (!_.isEmpty(salaryBillItemNameObj) || (filed.name !== filed.originName))) ? + `${salaryBillItemNameObj.salaryItemShowName || filed.name}(${filed.originName})` : + filed.name + } +
} this.handleDeleteSalaryItem(item, filed)}/>
diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js index 9b18e299..7cfd9404 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js @@ -40,6 +40,15 @@ export default class ShowSettingForm extends React.Component { const { payrollStore: { setSalaryItemSet } } = this.props; setSalaryItemSet(resultSet); }; + handleChangeSalaryItemShowNamesetting = (itemShowNamesetting) => { + const { payrollStore: { setSalaryBillItemNameSetting, salaryBillItemNameSetting } } = this.props; + setSalaryBillItemNameSetting(_.map(salaryBillItemNameSetting, it => { + if (it.salaryBillType === 0) { + return { ...it, salaryTemplateId: this.props.id, itemShowNameSetting: itemShowNamesetting }; + } + return { ...it, salaryTemplateId: this.props.id }; + })); + }; render() { const { payrollStore, id } = this.props; @@ -141,6 +150,7 @@ export default class ShowSettingForm extends React.Component { ref={dom => this.salaryItemSettingsRef = dom} dataSource={salaryItemSet} onChangeSalaryItem={this.handleChangeSalaryItem} + onChangeSalaryItemShowNamesetting={this.handleChangeSalaryItemShowNamesetting} salarySobId={toJS(templateBaseData).salarySob} isReplenish={false} salaryBillItemNameSet={salaryBillItemNameSet} /> diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/tmplateSettingForm.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/tmplateSettingForm.js index ad0fabfe..ce64f1e4 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/tmplateSettingForm.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/tmplateSettingForm.js @@ -14,9 +14,19 @@ export default class TemplateSettingForm extends React.Component { setReplenishSalaryTemplateSalaryItemSet(resultSet); }; + handleChangeSalaryItemShowNamesetting = (itemShowNamesetting) => { + const { payrollStore: { setSalaryBillItemNameSetting, salaryBillItemNameSetting } } = this.props; + setSalaryBillItemNameSetting(_.map(salaryBillItemNameSetting, it => { + if (it.salaryBillType === 1) { + return { ...it, salaryTemplateId: this.props.id, itemShowNameSetting: itemShowNamesetting }; + } + return { ...it, salaryTemplateId: this.props.id }; + })); + }; + render() { const { payrollStore } = this.props; - const { replenishSalaryTemplateSalaryItemSet, templateBaseData } = payrollStore; + const { replenishSalaryTemplateSalaryItemSet, templateBaseData, salaryBillItemNameSet } = payrollStore; return (
this.salaryItemSettingsRef = dom} dataSource={replenishSalaryTemplateSalaryItemSet} onChangeSalaryItem={this.handleChangeSalaryItem} + onChangeSalaryItemShowNamesetting={this.handleChangeSalaryItemShowNamesetting} salarySobId={toJS(templateBaseData).salarySob} - isReplenish={true} + isReplenish={true} salaryBillItemNameSet={salaryBillItemNameSet} />
diff --git a/pc4mobx/hrmSalary/stores/payroll.js b/pc4mobx/hrmSalary/stores/payroll.js index 09d23eef..4411b5fb 100644 --- a/pc4mobx/hrmSalary/stores/payroll.js +++ b/pc4mobx/hrmSalary/stores/payroll.js @@ -26,6 +26,18 @@ export class payrollStore { @observable salaryTemplateShowSet = {}; // 显示设置基础表单 @observable replenishSalaryTemplateSalaryItemSet = []; // 补发工资单模版基础表单 @observable salaryItemSet = []; // 显示设置薪资项 + @observable salaryBillItemNameSetting = [ + { + salaryTemplateId: "", + salaryBillType: 0, + itemShowNameSetting: [] + }, + { + salaryTemplateId: "", + salaryBillType: 1, + itemShowNameSetting: [] + } + ]; // 工资单模板薪资项目名称修改列表 @observable salaryBillItemNameSet = {}; // 工资单模板薪资项目名称修改列表 // **** 工资单页面 **** @@ -88,6 +100,10 @@ export class payrollStore { @action setSalaryItemSet = salaryItemSet => (this.salaryItemSet = salaryItemSet); + @action + setSalaryBillItemNameSet = salaryBillItemNameSet => (this.salaryBillItemNameSet = salaryBillItemNameSet); + @action + setSalaryBillItemNameSetting = salaryBillItemNameSetting => (this.salaryBillItemNameSetting = salaryBillItemNameSetting); @action("工资单模板分页信息修改") setTemplateTablePageInfo = (pageInfo, callback) => { @@ -264,6 +280,7 @@ export class payrollStore { : false; params.salaryItemSetting = toJS(this.salaryItemSet); params.replenishSalaryItemSetting = toJS(this.replenishSalaryTemplateSalaryItemSet); + params.salaryBillItemNameSetting = toJS(this.salaryBillItemNameSetting); return params; }; @@ -291,8 +308,6 @@ export class payrollStore { return new Promise((resolve, reject) => { let params = this.convertParams(); params.id = id; - console.log(params); - return API.updatePayroll(params).then(res => { if (res.status) { message.success("保存成功"); From 8e399f979a1a677d6bc43335393d47e28d12e576 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Thu, 20 Jul 2023 18:26:34 +0800 Subject: [PATCH 03/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E6=B7=BB=E5=8A=A0=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/payroll/index.js | 27 +++++++++++++++--- .../payroll/stepForm/salaryItemSettings.js | 28 +++++++++++-------- pc4mobx/hrmSalary/stores/payroll.js | 3 ++ 3 files changed, 43 insertions(+), 15 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/payroll/index.js b/pc4mobx/hrmSalary/pages/payroll/index.js index f5ae1050..9054c866 100644 --- a/pc4mobx/hrmSalary/pages/payroll/index.js +++ b/pc4mobx/hrmSalary/pages/payroll/index.js @@ -64,7 +64,12 @@ export default class Payroll extends React.Component { getReplenishForm = (isEdit = false, params = {}) => { const { payrollStore } = this.props; - const { templateBaseData, salaryTemplateShowSet, setReplenishSalaryTemplateSalaryItemSet, setSalaryBillItemNameSet } = payrollStore; + const { + templateBaseData, + salaryTemplateShowSet, + setReplenishSalaryTemplateSalaryItemSet, + setSalaryBillItemNameSet + } = payrollStore; if (!salaryTemplateShowSet.theme && !isEdit) { Modal.warning({ title: "信息确认", @@ -77,12 +82,12 @@ export default class Payroll extends React.Component { if (!isEdit) { this.setState({ currentStep: this.state.currentStep + 1 }, () => { setReplenishSalaryTemplateSalaryItemSet(data.replenishSalaryTemplateSalaryItemSet); - setSalaryBillItemNameSet(data.salaryBillItemNameSet) + setSalaryBillItemNameSet(data.salaryBillItemNameSet); window.localStorage.setItem("salary-showset", JSON.stringify(salaryTemplateShowSet)); }); } else { setReplenishSalaryTemplateSalaryItemSet(data.replenishSalaryTemplateSalaryItemSet); - setSalaryBillItemNameSet(data.salaryBillItemNameSet) + setSalaryBillItemNameSet(data.salaryBillItemNameSet); window.localStorage.setItem("salary-showset", JSON.stringify(salaryTemplateShowSet)); } } @@ -263,7 +268,9 @@ export default class Payroll extends React.Component { setTemplateTableSelectedRowKeys, deletePayroll, templateBaseData, - setTemplateTablePageInfo + setTemplateTablePageInfo, + setSalaryBillItemNameSetting, + salaryBillItemNameSetting } = payrollStore; const { currentStep, selectedTab, templateSearchValue, templateSelect, startDate, endDate } = this.state; if (!hasRight && !loading) { // 无权限处理 @@ -467,10 +474,16 @@ export default class Payroll extends React.Component { customOperate={ currentStep === 0 ? [ ] : currentStep === 1 ? [ , , @@ -479,6 +492,9 @@ export default class Payroll extends React.Component { }}>预览 ] : currentStep === 2 ? [ , @@ -541,6 +557,9 @@ export default class Payroll extends React.Component { } subItemChange={(selectedTab) => { this.setState({ selectedTab: Number(selectedTab) }, () => { + setSalaryBillItemNameSetting(_.map(salaryBillItemNameSetting, it => { + return { ...it, salaryTemplateId: "", itemShowNameSetting: [] }; + })); if (this.state.selectedTab === 2) this.getReplenishForm(true, { id: this.state.templateCurrentId }); }); }} diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index 720241b6..1b70707f 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -242,7 +242,7 @@ class SalaryItemSettings extends Component { }) }; }) - }); + }, () => document.getElementById("salaryItemInput") && document.getElementById("salaryItemInput").focus()); }; handleChangeSalaryItemShowName = (item, field, name) => { const { groupId } = item, { salaryItemId } = field, { dataList, itemShowNamesetting } = this.state; @@ -253,7 +253,7 @@ class SalaryItemSettings extends Component { ...item, items: _.map(item.items, child => { if (child.salaryItemId === salaryItemId) { - return { ...child, name }; + return { ...child, salaryItemShowName: name, name }; } return { ...child }; }) @@ -306,23 +306,29 @@ class SalaryItemSettings extends Component { return
{ filed.viewAttr === 2 ? - this.handleEditSalaryItemName(item, filed, 1)} - onChange={(val) => this.handleChangeSalaryItemShowName(item, filed, val)} + this.handleEditSalaryItemName(item, filed, 1)} + onChange={(val) => this.handleChangeSalaryItemShowName(item, filed, val)} /> :
this.handleEditSalaryItemName(item, filed, 2)}> { - (item.groupId !== "111111111111111111" && (!_.isEmpty(salaryBillItemNameObj) || (filed.name !== filed.originName))) ? - `${salaryBillItemNameObj.salaryItemShowName || filed.name}(${filed.originName})` : - filed.name + (item.groupId !== "111111111111111111" && (!_.isEmpty(salaryBillItemNameObj) || (filed.salaryItemShowName !== filed.originName))) ? + `${filed.salaryItemShowName}(${filed.originName})` : + filed.salaryItemShowName }
} diff --git a/pc4mobx/hrmSalary/stores/payroll.js b/pc4mobx/hrmSalary/stores/payroll.js index 4411b5fb..6c2e7d34 100644 --- a/pc4mobx/hrmSalary/stores/payroll.js +++ b/pc4mobx/hrmSalary/stores/payroll.js @@ -293,6 +293,9 @@ export class payrollStore { if (res.status) { message.success("保存成功"); this.getPayrollTemplateList(); + this.setSalaryBillItemNameSetting(_.map(this.salaryBillItemNameSetting, it => { + return { ...it, salaryTemplateId: "", itemShowNameSetting: [] }; + })); resolve(); } else { message.error(res.errormsg || "保存失败"); From 3091232181dee5b3c6b1c400b55b50bd5c4fca6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Fri, 21 Jul 2023 10:15:48 +0800 Subject: [PATCH 04/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E6=B7=BB=E5=8A=A0=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/payroll/stepForm/salaryItemSettings.js | 11 +++++++---- .../payroll/templatePreview/computerTemplate/index.js | 7 ++++--- .../payroll/templatePreview/phoneTemplate/index.js | 3 ++- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index 1b70707f..0e5803e5 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -245,7 +245,7 @@ class SalaryItemSettings extends Component { }, () => document.getElementById("salaryItemInput") && document.getElementById("salaryItemInput").focus()); }; handleChangeSalaryItemShowName = (item, field, name) => { - const { groupId } = item, { salaryItemId } = field, { dataList, itemShowNamesetting } = this.state; + const { groupId } = item, { salaryItemId, originName } = field, { dataList, itemShowNamesetting } = this.state; this.setState({ dataList: _.map(dataList, item => { if (item.groupId === groupId) { @@ -261,7 +261,10 @@ class SalaryItemSettings extends Component { } return { ...item }; }), - itemShowNamesetting: _.unionBy([{ salaryItemId, salaryItemShowName: name }], itemShowNamesetting, "salaryItemId") + itemShowNamesetting: _.unionBy([{ + salaryItemId, + salaryItemShowName: originName === name ? "" : name + }], itemShowNamesetting, "salaryItemId") }, () => { this.props.onChangeSalaryItem(this.state.dataList); this.props.onChangeSalaryItemShowNamesetting(this.state.itemShowNamesetting); @@ -308,7 +311,7 @@ class SalaryItemSettings extends Component { title={ (item.groupId !== "111111111111111111" && (!_.isEmpty(salaryBillItemNameObj) || (filed.salaryItemShowName !== filed.originName))) ? `${filed.salaryItemShowName}(${filed.originName})` : - filed.salaryItemShowName + filed.name } > { @@ -328,7 +331,7 @@ class SalaryItemSettings extends Component { { (item.groupId !== "111111111111111111" && (!_.isEmpty(salaryBillItemNameObj) || (filed.salaryItemShowName !== filed.originName))) ? `${filed.salaryItemShowName}(${filed.originName})` : - filed.salaryItemShowName + filed.name }
} diff --git a/pc4mobx/hrmSalary/pages/payroll/templatePreview/computerTemplate/index.js b/pc4mobx/hrmSalary/pages/payroll/templatePreview/computerTemplate/index.js index 6f2e68c2..50e76732 100644 --- a/pc4mobx/hrmSalary/pages/payroll/templatePreview/computerTemplate/index.js +++ b/pc4mobx/hrmSalary/pages/payroll/templatePreview/computerTemplate/index.js @@ -49,7 +49,7 @@ export default class ComputerTemplate extends React.Component { } - renderTableTr = (data) => { + renderTableTr = (data, groupId) => { const tables = []; const len = data.length; const rowNum = 3; @@ -61,8 +61,9 @@ export default class ComputerTemplate extends React.Component { iLen = iLen > len ? len : iLen; tables.push(""); for (let i = j * rowNum; i < iLen; i++) { + const key = (!this.props.isPreview && groupId !== "111111111111111111") ? data[i].salaryItemShowName : data[i].name; const value = data[i].salaryItemValue || "-"; - tables.push("" + data[i].name + "" + "" + value + ""); + tables.push("" + key + "" + "" + value + ""); } tables.push(""); } @@ -98,7 +99,7 @@ export default class ComputerTemplate extends React.Component {
{group.groupName}
+ dangerouslySetInnerHTML={{ __html: this.renderTableTr(group.items, group.groupId).join(",").replace(/,/g, "") }}/> ; }) diff --git a/pc4mobx/hrmSalary/pages/payroll/templatePreview/phoneTemplate/index.js b/pc4mobx/hrmSalary/pages/payroll/templatePreview/phoneTemplate/index.js index 0f85d51d..50670de2 100644 --- a/pc4mobx/hrmSalary/pages/payroll/templatePreview/phoneTemplate/index.js +++ b/pc4mobx/hrmSalary/pages/payroll/templatePreview/phoneTemplate/index.js @@ -83,7 +83,8 @@ export default class PhoneTemplate extends React.Component { { _.map(group.items, item => { return - + ; }) From aa6a581c1a6e1b1b4cf1b7ab17eb2e2ab50aa435 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Mon, 24 Jul 2023 11:14:22 +0800 Subject: [PATCH 05/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E7=BC=96=E8=BE=91?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js index 333991c6..17807081 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js @@ -53,6 +53,10 @@ class SalaryItemForm extends Component { options: taxAgentAdminOption }; case "hideDefault": + return { + ...item, + viewAttr: 2 + }; case "valueType": return { ...item, From e963bcfb57b612d28383492acc5e26cf5bf20ea3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Mon, 24 Jul 2023 18:22:24 +0800 Subject: [PATCH 06/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E7=A4=BE=E4=BF=9D?= =?UTF-8?q?=E6=A1=A3=E6=A1=88=E5=9F=BA=E7=A1=80=E4=BF=A1=E6=81=AF=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/apis/ledger.js | 4 ++ .../components/ledgerSalaryItemEditSlide.js | 2 +- .../components/ledgerSalaryItemNormal.js | 4 +- .../components/ledgerSalaryItemTable.js | 62 ++++++++++--------- .../ledgerPage/components/ledgerSlide.js | 2 +- .../pages/salaryItem/salaryItemForm.js | 3 +- 6 files changed, 45 insertions(+), 32 deletions(-) diff --git a/pc4mobx/hrmSalary/apis/ledger.js b/pc4mobx/hrmSalary/apis/ledger.js index b04e881e..11baacc1 100644 --- a/pc4mobx/hrmSalary/apis/ledger.js +++ b/pc4mobx/hrmSalary/apis/ledger.js @@ -309,3 +309,7 @@ export const salarysobRangePreview = params => { export const salarysobRangeImportData = params => { return postFetch("/api/bs/hrmsalary/salarysob/range/importData", params); }; +//薪资账套-获取薪资账套中薪资项目明细 +export const getSalaryItemForm = params => { + return postFetch("/api/bs/hrmsalary/salarysob/item/getSalaryItemForm", params); +}; diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js index fa968445..735014cd 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js @@ -43,7 +43,7 @@ class LedgerSalaryItemEditSlide extends Component { { this.props.visible && } diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js index 3f743034..bb387ef6 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js @@ -49,6 +49,7 @@ class LedgerSalaryItemNormal extends Component { } handleEditFormnul = (field, record) => { + console.log(record); const { valueType, formulaId, dateType: dataType, id, key } = record; const { editFormulModal } = this.state; this.setState({ @@ -184,6 +185,7 @@ class LedgerSalaryItemNormal extends Component { render() { const { + editId, dataSource, onSaveCategory, onDropCategoryItem, @@ -220,7 +222,7 @@ class LedgerSalaryItemNormal extends Component { } > onDropCategoryItem(field, data)} onHandleItemhide={(data) => onHandleItemhide(field, data)} diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index e33d7ce3..cd401a50 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -5,12 +5,10 @@ * Date: 2022/12/13 */ import React, { Component } from "react"; -import { message } from "antd"; import { WeaCheckbox, WeaHelpfulTip, WeaLocaleProvider, WeaTable } from "ecCom"; import LedgerSalaryItemEditSlide from "./ledgerSalaryItemEditSlide"; -import { getSalaryFieldForm } from "../../../apis/fieldManage"; +import { getSalaryItemForm } from "../../../apis/ledger"; import { commonEnumList } from "../../../apis/ruleconfig"; -import { saveItem } from "../../../apis/item"; const getLabel = WeaLocaleProvider.getLabel; @@ -38,7 +36,6 @@ class LedgerSalaryItemTable extends Component { onHandleItemhide( _.map([...dataSource], item => { if (id === item.id || id === item.key) { - alert(1); return { ...item, itemHide: String(value) @@ -59,6 +56,20 @@ class LedgerSalaryItemTable extends Component { }) ); }; + handleChangeSalaryItem = (data, id) => { + const { dataSource, onHandleItemhide } = this.props; + onHandleItemhide( + _.map([...dataSource], item => { + if (id === item.id || id === item.key) { + return { + ...item, + ...data + }; + } + return { ...item }; + }) + ); + }; /* * Author: 黎永顺 * Description: 编辑薪资项目 @@ -66,13 +77,22 @@ class LedgerSalaryItemTable extends Component { * Date: 2023/7/19 */ handleEditSalaryItem = async (record) => { + const { salarySobId, dataSource } = this.props, { salaryItemId } = record; + const { + itemHide: hideDefault, + valueType, + roundingMode, + pattern + } = _.find(dataSource, it => it.salaryItemId === salaryItemId); const { data: userStatusList } = await commonEnumList({ enumClass: "com.engine.salary.enums.sicategory.SharedTypeEnum" }); - getSalaryFieldForm({ id: record.salaryItemId }).then(({ status, data }) => { + getSalaryItemForm({ salarySobId, salaryItemId }).then(({ status, data }) => { if (status) { this.setState({ salaryItemPayload: { ...this.state.salaryItemPayload, - visible: true, request: data, record, + visible: true, + request: { ...data, hideDefault, valueType, roundingMode, pattern }, + record, userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) } }); @@ -89,28 +109,12 @@ class LedgerSalaryItemTable extends Component { const { salaryItemPayload } = this.state; const { request, record } = salaryItemPayload; this.setState({ - salaryItemPayload: { ...salaryItemPayload, loading: true } + salaryItemPayload: { ...salaryItemPayload, visible: false } }); - saveItem(request).then(({ status, errorMsg }) => { - if (status) { - message.success(getLabel(22619, "保存成功")); - this.setState({ - salaryItemPayload: { ...salaryItemPayload, loading: false, visible: false } - }); - const { id } = record; - const { hideDefault } = request; - this.handleChangeItem(hideDefault.toString(), id); - console.log(this.props, this.state); - //TODO:渲染列表数据 - } else { - this.setState({ - salaryItemPayload: { ...salaryItemPayload, loading: false } - }); - message.error(errorMsg || getLabel(22620, "保存失败")); - } - }).catch(() => this.setState({ - salaryItemPayload: { ...salaryItemPayload, loading: false } - })); + const { id } = record; + const { hideDefault, roundingMode, pattern, valueType } = request; + this.handleChangeSalaryItem({ itemHide: hideDefault.toString(), roundingMode, pattern, valueType }, id); + //TODO:渲染列表数据 }; render() { @@ -204,9 +208,11 @@ class LedgerSalaryItemTable extends Component { { + const key = Object.keys(request)[0]; this.setState({ salaryItemPayload: { - ...salaryItemPayload, request + ...salaryItemPayload, request, + record: key === "valueType" ? { ...salaryItemPayload.record, request } : { ...salaryItemPayload.record } } }); }} diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js index 48fe3eda..8b2e350e 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js @@ -26,7 +26,7 @@ const tabs = [ { key: 4, title: "调薪计薪规则" } ]; -@inject("taxAgentStore") +@inject("taxAgentStore", "ledgerStore") @observer class LedgerSlide extends Component { constructor(props) { diff --git a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js index 17807081..7d1e59d9 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js @@ -26,6 +26,7 @@ class SalaryItemForm extends Component { switch (key) { case "useDefault": case "sortedIndex": + case "dataType": case "description": return { ...item, @@ -73,7 +74,7 @@ class SalaryItemForm extends Component { } return { ...item, - viewAttr: (key === "name" && ((editable && record.canEdit) || isAdd)) ? 3 : (key !== "name" && ((editable && record.canEdit) || isAdd)) ? 2 : 1 + viewAttr: (key === "name" && ((editable && record.canEdit && !isLedger) || isAdd)) ? 3 : (key !== "name" && ((editable && record.canEdit) || isAdd)) ? 2 : 1 }; }) }); From ada5aee430fe6ab53931e9204cec216265465e32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Tue, 25 Jul 2023 16:16:39 +0800 Subject: [PATCH 07/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E7=A4=BE=E4=BF=9D?= =?UTF-8?q?=E6=A1=A3=E6=A1=88=E5=9F=BA=E7=A1=80=E4=BF=A1=E6=81=AF=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/apis/item.js | 9 +- .../components/ledgerSalaryItemEditSlide.js | 4 +- .../components/ledgerSalaryItemNormal.js | 69 +--------- .../components/ledgerSalaryItemTable.js | 120 ++++++++++++++++-- .../ledgerPage/components/ledgerSlide.js | 2 + .../pages/salaryItem/formalFormModal.js | 4 +- .../pages/salaryItem/salaryItemForm.js | 16 ++- pc4mobx/hrmSalary/stores/salaryItem.js | 4 +- 8 files changed, 133 insertions(+), 95 deletions(-) diff --git a/pc4mobx/hrmSalary/apis/item.js b/pc4mobx/hrmSalary/apis/item.js index ccf93af9..3c3bb052 100644 --- a/pc4mobx/hrmSalary/apis/item.js +++ b/pc4mobx/hrmSalary/apis/item.js @@ -163,7 +163,14 @@ export const testFormual = params => { // 根据id获取formual export const detailFormual = params => { - return WeaTools.callApi('/api/bs/hrmsalary/formula/detail', 'GET', params); + return fetch('/api/bs/hrmsalary/formula/detail', { + method: 'POST', + mode: 'cors', + headers: { + 'Content-Type': 'application/json' + }, + body: JSON.stringify(params) + }).then(res => res.json()) } diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js index 735014cd..de0c2871 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js @@ -20,8 +20,8 @@ class LedgerSalaryItemEditSlide extends Component { handleChange = (params) => { const request = { ...this.props.request, ...params }; - console.log(this.props.request, params); - this.props.onUpdateRequest(request); + const key = Object.keys(params)[0]; + this.props.onUpdateRequest(request, key); }; handleShowFormal = () => this.props.onEditFormnul(); diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js index bb387ef6..23600c58 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js @@ -11,7 +11,6 @@ import { Button, Modal } from "antd"; import CategoryAddModal from "./categoryAddModal"; import LedgerSalaryItemAddModal from "./ledgerSalaryItemAddModal"; import LedgerSalaryItemTable from "./ledgerSalaryItemTable"; -import FormalFormModal from "../../salaryItem/formalFormModal"; import LedgerMovoTo from "./ledgerMovoTo"; import "./index.less"; @@ -28,15 +27,6 @@ class LedgerSalaryItemNormal extends Component { name: "", id: "" }, - editFormulModal: { - visible: false, - formulaId: "", - valueType: "", - dataType: "" - }, - //公式保存数据 - formnulField: {}, - formnulId: "", moveModalPayload: { visible: false, title: "", dataList: [], record: null, value: "" @@ -44,36 +34,6 @@ class LedgerSalaryItemNormal extends Component { }; } - componentWillUnmount() { - this.handleResetFormnul(); - } - - handleEditFormnul = (field, record) => { - console.log(record); - const { valueType, formulaId, dateType: dataType, id, key } = record; - const { editFormulModal } = this.state; - this.setState({ - editFormulModal: { - ...editFormulModal, - visible: true, - valueType, formulaId, dataType - }, - formnulField: field, - formnulId: id || key - }); - }; - handleSaveFormnul = (data) => { - const { onSaveFormnul } = this.props; - const { formnulField, formnulId } = this.state; - const tmpV = _.cloneDeep(formnulField.items); - const formnulData = _.map(tmpV, it => { - if (it.id === formnulId || it.key === formnulId) { - return { ...it, formulaId: data.id, formulaContent: data.formula }; - } - return { ...it }; - }); - onSaveFormnul(formnulField.uuid, formnulData); - }; handleAddCategory = (name = "", id = "") => { const { categoryModal } = this.state; this.setState({ @@ -128,23 +88,6 @@ class LedgerSalaryItemNormal extends Component { } }, () => form.resetForm()); }; - handleCloseFormnul = () => { - const { editFormulModal } = this.state; - this.setState({ - editFormulModal: { - ...editFormulModal, - visible: false, - formulaId: "", - valueType: "", dataType: "" - } - }); - }; - handleResetFormnul = () => { - this.setState({ - formnulField: {}, - formnulId: "" - }); - }; handleCancelMove = () => { this.setState({ moveModalPayload: { @@ -196,7 +139,7 @@ class LedgerSalaryItemNormal extends Component { taxAgentStore } = this.props; const { showOperateBtn } = taxAgentStore; - const { categoryModal, addCategoryItemsVisible, editFormulModal, moveModalPayload } = this.state; + const { categoryModal, addCategoryItemsVisible, moveModalPayload } = this.state; return ( onDropCategoryItem(field, data)} onHandleItemhide={(data) => onHandleItemhide(field, data)} onChangeSelectedRowKeys={(data) => onChangeSelectedRowKeys(field, data)} - onEditFormnul={(data) => this.handleEditFormnul(field, data)} onMoveTo={this.handleMoveTo} /> ; @@ -250,15 +192,6 @@ class LedgerSalaryItemNormal extends Component { onSaveCategory={onSaveCategory} onCancel={this.handleClose} /> - {/*公式编辑*/} - { - editFormulModal.visible && - - } ); diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index cd401a50..b69bd02b 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -9,6 +9,7 @@ import { WeaCheckbox, WeaHelpfulTip, WeaLocaleProvider, WeaTable } from "ecCom"; import LedgerSalaryItemEditSlide from "./ledgerSalaryItemEditSlide"; import { getSalaryItemForm } from "../../../apis/ledger"; import { commonEnumList } from "../../../apis/ruleconfig"; +import FormalFormModal from "../../salaryItem/formalFormModal"; const getLabel = WeaLocaleProvider.getLabel; @@ -21,6 +22,12 @@ class LedgerSalaryItemTable extends Component { visible: false, record: {}, request: {}, isLedger: true, userStatusList: [], loading: false + }, + editFormulModal: { + visible: false, + formulaId: "", + valueType: "", + dataType: "" } }; } @@ -91,11 +98,17 @@ class LedgerSalaryItemTable extends Component { salaryItemPayload: { ...this.state.salaryItemPayload, visible: true, - request: { ...data, hideDefault, valueType, roundingMode, pattern }, + request: { + ...data, + hideDefault: _.isNil(hideDefault) ? "0" : hideDefault, + valueType, + roundingMode, + pattern + }, record, userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) } - }); + }, () => console.log(111, this.state.salaryItemPayload)); } }); }; @@ -112,18 +125,86 @@ class LedgerSalaryItemTable extends Component { salaryItemPayload: { ...salaryItemPayload, visible: false } }); const { id } = record; - const { hideDefault, roundingMode, pattern, valueType } = request; - this.handleChangeSalaryItem({ itemHide: hideDefault.toString(), roundingMode, pattern, valueType }, id); - //TODO:渲染列表数据 + const { + hideDefault, + roundingMode, + pattern, + valueType, + originFormulaContent, + originSqlContent, + formulaId + } = request; + this.handleChangeSalaryItem({ + itemHide: hideDefault.toString(), + roundingMode, + pattern, + valueType, + formulaContent: valueType.toString() === "2" ? originFormulaContent : originSqlContent, + formulaId: ((valueType.toString() === "3" && !originSqlContent) || valueType.toString() === "1") ? "" : formulaId + }, id); + }; + handleEditFormnul = () => { + const { salaryItemPayload, editFormulModal } = this.state; + const { record } = salaryItemPayload; + const { valueType, formulaId, dateType: dataType } = record; + this.setState({ + editFormulModal: { + ...editFormulModal, + visible: true, + valueType, formulaId, dataType + } + }); + }; + handleCloseFormnul = () => { + const { editFormulModal } = this.state; + this.setState({ + editFormulModal: { + ...editFormulModal, + visible: false, + formulaId: "", + valueType: "", dataType: "" + } + }); + }; + handleSaveFormnul = (data) => { + const { salaryItemPayload } = this.state; + const { record } = salaryItemPayload; + const { salaryItemId } = record; + const { dataSource, onHandleItemhide } = this.props; + const tmpV = _.cloneDeep(dataSource); + const formnulData = _.map(tmpV, it => { + if (it.salaryItemId === salaryItemId) { + return { + ...it, + formulaId: data.id, formulaContent: data.formula, + originFormulaContent: data.referenceType === "formula" ? data.formula : "", + originSqlContent: data.referenceType === "sql" ? data.formula : "" + }; + } + return { ...it }; + }); + this.setState({ + salaryItemPayload: { + ...salaryItemPayload, + request: { + ...salaryItemPayload.request, + formulaId: data.id, + originFormulaContent: data.referenceType === "formula" ? data.formula : "", + originSqlContent: data.referenceType === "sql" ? data.formula : "" + } + } + }, () => { + this.handleCloseFormnul(); + onHandleItemhide(formnulData); + }); }; render() { - const { salaryItemPayload } = this.state; + const { salaryItemPayload, editFormulModal } = this.state; const { dataSource, onDropCategoryItem, onChangeSelectedRowKeys, - onEditFormnul, selectedRowKeys, onMoveTo } = this.props; @@ -150,9 +231,10 @@ class LedgerSalaryItemTable extends Component { , dataIndex: "valueType", key: "valueType", - render: (_, record) => { + render: (e, record) => { const { valueType } = record; - return {valueType === 1 ? "输入" : valueType === 2 ? "自定义公式" : valueType === 3 ? "SQL" : ""} ; + const key = !_.isNil(valueType) ? valueType : ""; + return {key.toString() === "1" ? "输入" : key.toString() === "2" ? "自定义公式" : key.toString() === "3" ? "SQL" : ""} ; } }, { @@ -207,16 +289,19 @@ class LedgerSalaryItemTable extends Component { /> { - const key = Object.keys(request)[0]; + onUpdateRequest={(request, key) => { + console.log(salaryItemPayload); this.setState({ salaryItemPayload: { ...salaryItemPayload, request, - record: key === "valueType" ? { ...salaryItemPayload.record, request } : { ...salaryItemPayload.record } + record: key === "valueType" ? { + ...salaryItemPayload.record, + [key]: request[key] + } : { ...salaryItemPayload.record } } }); }} - onEditFormnul={() => onEditFormnul(salaryItemPayload.record)} + onEditFormnul={this.handleEditFormnul} onSave={this.handleSaveItem} onClose={() => this.setState({ salaryItemPayload: { @@ -224,6 +309,15 @@ class LedgerSalaryItemTable extends Component { } })} /> + {/*公式编辑*/} + { + editFormulModal.visible && + + } ); } diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js index 8b2e350e..cf3a03cd 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js @@ -132,6 +132,8 @@ class LedgerSlide extends Component { }) || [], salarySobId: salarySobId || saveSalarySobId }; + console.log("payload", payload); + // return; this.setState({ loading: true }); saveLedgerItem(payload).then(({ status, errormsg }) => { this.setState({ loading: false }); diff --git a/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js b/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js index a7044fd0..4cfea586 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js @@ -39,11 +39,11 @@ export default class FormalFormModal extends React.Component { } componentWillMount() { - const { salaryItemStore } = this.props; + const { salaryItemStore, formulaId, valueType } = this.props; const { salaryAcctImportTemplateParam, setSearchFields, detailFormual } = salaryItemStore; setSearchFields([]); if (!!this.props.formulaId && this.props.formulaId != 0) { - detailFormual(this.props.formulaId).then(data => { + detailFormual({ formulaId, returnType: valueType.toString() === "2" ? "formula" : "sql" }).then(data => { this.parameters = data.parameters; this.referenceType = data.referenceType; this.extendParam = data.extendParam; diff --git a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js index 7d1e59d9..62a8837a 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js @@ -66,6 +66,7 @@ class SalaryItemForm extends Component { case "formulaContent": return { ...item, + key: valueType.toString() === "3" ? "originSqlContent" : "originFormulaContent", display: valueType && (valueType.toString() === "2" || valueType.toString() === "3"), viewAttr: (isLedger && record.canEdit) || (editable && record.canEdit) || isAdd ? 2 : 1 }; @@ -87,9 +88,10 @@ class SalaryItemForm extends Component { salaryItemFieldsList: _.map(salaryItemFieldsList, item => { if (key === "sharedType" && item.key === "taxAgentIds") { return { ...item, display: v === "1", viewAttr: 3 }; - } else if (key === "valueType" && item.key === "formulaContent") { + } else if (key === "valueType" && (item.key === "originSqlContent" || item.key === "originFormulaContent")) { return { ...item, + key: v === "3" ? "originSqlContent" : "originFormulaContent", label: v === "2" ? "公式" : v === "3" ? "SQL" : "", display: v === "2" || v === "3" }; @@ -97,11 +99,11 @@ class SalaryItemForm extends Component { return { ...item }; }) }, () => { - if (key === "valueType" && !this.props.isLedger) { - onChangeFieldsItem({ formulaContent: "", formulaId: 0, valueType: v }); - } else { - onChangeFieldsItem({ [key]: (key === "useDefault" || key === "useInEmployeeSalary" || key === "hideDefault") ? Number(v) : v }); - } + // if (key === "valueType" && !this.props.isLedger) { + // onChangeFieldsItem({ formulaContent: "", formulaId: 0, valueType: v }); + // } else { + onChangeFieldsItem({ [key]: (key === "useDefault" || key === "useInEmployeeSalary" || key === "hideDefault") ? Number(v) : v }); + // } }); }; @@ -119,7 +121,7 @@ class SalaryItemForm extends Component { (type === "INPUT" && display) ? key === "formulaContent" && onShowFormal()} + onClick={() => (key === "originSqlContent" || key === "originFormulaContent") && onShowFormal()} onChange={v => this.handleChangeSalaryFiledItems(key, v)}/> : (type === "SWITCH" && display) ? diff --git a/pc4mobx/hrmSalary/stores/salaryItem.js b/pc4mobx/hrmSalary/stores/salaryItem.js index 6eb365de..775c464a 100644 --- a/pc4mobx/hrmSalary/stores/salaryItem.js +++ b/pc4mobx/hrmSalary/stores/salaryItem.js @@ -334,9 +334,9 @@ export class SalaryItemStore { // 根据id获取formual @action - detailFormual = (formulaId) => { + detailFormual = (params) => { return new Promise((resolve, reject) => { - API.detailFormual({ formulaId }).then(res => { + API.detailFormual(params).then(res => { if (res.status) { this.formulaDetail = res.data; resolve(res.data); From 6a45f624e284dabea812cb7de1699ea08c8ce0b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Tue, 25 Jul 2023 18:22:43 +0800 Subject: [PATCH 08/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E7=A4=BE=E4=BF=9D?= =?UTF-8?q?=E6=A1=A3=E6=A1=88=E5=9F=BA=E7=A1=80=E4=BF=A1=E6=81=AF=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ledgerSalaryItemTable.js | 72 ++++++++++++------- .../ledgerPage/components/ledgerSlide.js | 2 - .../pages/salaryItem/customSalaryItemSlide.js | 6 +- 3 files changed, 50 insertions(+), 30 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index b69bd02b..f770a873 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -67,7 +67,7 @@ class LedgerSalaryItemTable extends Component { const { dataSource, onHandleItemhide } = this.props; onHandleItemhide( _.map([...dataSource], item => { - if (id === item.id || id === item.key) { + if (id === item.salaryItemId) { return { ...item, ...data @@ -84,33 +84,52 @@ class LedgerSalaryItemTable extends Component { * Date: 2023/7/19 */ handleEditSalaryItem = async (record) => { - const { salarySobId, dataSource } = this.props, { salaryItemId } = record; + const { salarySobId, dataSource } = this.props, { salaryItemId, id } = record; const { itemHide: hideDefault, - valueType, - roundingMode, - pattern + valueType, name, description, + roundingMode, formulaId, dataType, + pattern, canEdit, formulaContent } = _.find(dataSource, it => it.salaryItemId === salaryItemId); const { data: userStatusList } = await commonEnumList({ enumClass: "com.engine.salary.enums.sicategory.SharedTypeEnum" }); - getSalaryItemForm({ salarySobId, salaryItemId }).then(({ status, data }) => { - if (status) { - this.setState({ - salaryItemPayload: { - ...this.state.salaryItemPayload, - visible: true, - request: { - ...data, - hideDefault: _.isNil(hideDefault) ? "0" : hideDefault, - valueType, - roundingMode, - pattern - }, - record, - userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) - } - }, () => console.log(111, this.state.salaryItemPayload)); - } - }); + if (id) { + getSalaryItemForm({ salarySobId, salaryItemId }).then(({ status, data }) => { + if (status) { + this.setState({ + salaryItemPayload: { + ...this.state.salaryItemPayload, + visible: true, + request: { + ...data, + hideDefault: _.isNil(hideDefault) ? "0" : hideDefault, + valueType, + roundingMode, + pattern + }, + record, + userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) + } + }); + } + }); + } else { + this.setState({ + salaryItemPayload: { + ...this.state.salaryItemPayload, + visible: true, + request: { + canEdit, dataType, description, + formulaContent, formulaId, name, + hideDefault: _.isNil(hideDefault) ? "0" : hideDefault, + valueType, + roundingMode, + pattern + }, + record, + userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) + } + }); + } }; /* * Author: 黎永顺 @@ -124,7 +143,7 @@ class LedgerSalaryItemTable extends Component { this.setState({ salaryItemPayload: { ...salaryItemPayload, visible: false } }); - const { id } = record; + const { salaryItemId } = record; const { hideDefault, roundingMode, @@ -141,7 +160,7 @@ class LedgerSalaryItemTable extends Component { valueType, formulaContent: valueType.toString() === "2" ? originFormulaContent : originSqlContent, formulaId: ((valueType.toString() === "3" && !originSqlContent) || valueType.toString() === "1") ? "" : formulaId - }, id); + }, salaryItemId); }; handleEditFormnul = () => { const { salaryItemPayload, editFormulModal } = this.state; @@ -290,7 +309,6 @@ class LedgerSalaryItemTable extends Component { { - console.log(salaryItemPayload); this.setState({ salaryItemPayload: { ...salaryItemPayload, request, diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js index cf3a03cd..8b2e350e 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSlide.js @@ -132,8 +132,6 @@ class LedgerSlide extends Component { }) || [], salarySobId: salarySobId || saveSalarySobId }; - console.log("payload", payload); - // return; this.setState({ loading: true }); saveLedgerItem(payload).then(({ status, errormsg }) => { this.setState({ loading: false }); diff --git a/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js b/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js index 0b553866..97e5fb64 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js @@ -25,7 +25,11 @@ export default class CustomSalaryItemSlide extends React.Component { // 保存公式成功回调 handleSaveFormal = (data) => { - this.handleChange({ formulaId: data.id, formulaContent: data.formula }); + this.handleChange({ + formulaId: data.id, formulaContent: data.formula, + originFormulaContent: data.referenceType === "formula" ? data.formula : "", + originSqlContent: data.referenceType === "sql" ? data.formula : "" + }); }; render() { From c9c79460c75761d4c4e2ccc82dfa619e5f77bac4 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, 26 Jul 2023 09:31:15 +0800 Subject: [PATCH 09/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E8=96=AA=E8=B5=84?= =?UTF-8?q?=E8=B4=A6=E5=A5=97=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E9=A1=B9?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=BC=96=E8=BE=91=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/ledgerPage/components/ledgerSalaryItemNormal.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js index 23600c58..d1ecaa16 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js @@ -129,6 +129,7 @@ class LedgerSalaryItemNormal extends Component { render() { const { editId, + saveSalarySobId, dataSource, onSaveCategory, onDropCategoryItem, @@ -165,7 +166,7 @@ class LedgerSalaryItemNormal extends Component { } > onDropCategoryItem(field, data)} onHandleItemhide={(data) => onHandleItemhide(field, data)} From 3f63b2618439d1251a8bff537f4d119acb40a348 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, 26 Jul 2023 14:10:55 +0800 Subject: [PATCH 10/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E8=96=AA=E8=B5=84?= =?UTF-8?q?=E8=B4=A6=E5=A5=97=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E9=A1=B9?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=BC=96=E8=BE=91=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ledgerSalaryItemNormal.js | 42 +++++++++++++------ .../components/ledgerSalaryItemTable.js | 18 ++++---- .../pages/salaryItem/salaryItemForm.js | 22 +++++++--- 3 files changed, 57 insertions(+), 25 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js index d1ecaa16..5a3167e9 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js @@ -6,7 +6,7 @@ */ import React, { Component } from "react"; import { inject, observer } from "mobx-react"; -import { WeaButtonIcon, WeaSearchGroup } from "ecCom"; +import { WeaButtonIcon, WeaInputSearch, WeaLocaleProvider, WeaSearchGroup } from "ecCom"; import { Button, Modal } from "antd"; import CategoryAddModal from "./categoryAddModal"; import LedgerSalaryItemAddModal from "./ledgerSalaryItemAddModal"; @@ -14,6 +14,8 @@ import LedgerSalaryItemTable from "./ledgerSalaryItemTable"; import LedgerMovoTo from "./ledgerMovoTo"; import "./index.less"; +const getLabel = WeaLocaleProvider.getLabel; + @inject("ledgerStore") @observer class LedgerSalaryItemNormal extends Component { @@ -30,7 +32,8 @@ class LedgerSalaryItemNormal extends Component { moveModalPayload: { visible: false, title: "", dataList: [], record: null, value: "" - } + }, + salaryItemKeywords: "" }; } @@ -140,15 +143,23 @@ class LedgerSalaryItemNormal extends Component { taxAgentStore } = this.props; const { showOperateBtn } = taxAgentStore; - const { categoryModal, addCategoryItemsVisible, moveModalPayload } = this.state; + const { categoryModal, addCategoryItemsVisible, moveModalPayload, salaryItemKeywords } = this.state; + const newDateSource = _.map(dataSource, item => { + return { + ...item, + items: _.filter(item.items || [], child => child.name.indexOf(salaryItemKeywords) !== -1) + }; + }); return ( }> + onAddCategory={this.handleAddCategory} keyword={salaryItemKeywords} + onChange={val => this.setState({ salaryItemKeywords: val })} + />}>
{ - _.map(dataSource, field => { - const { items } = field; + _.map(newDateSource, field => { + const { items, id, uuid } = field; return childItem.id === id || childItem.uuid === uuid).items} + salarySobId={editId || saveSalarySobId} selectedRowKeys={field.selectedRowKeys || []} onDropCategoryItem={(data) => onDropCategoryItem(field, data)} onHandleItemhide={(data) => onHandleItemhide(field, data)} @@ -240,12 +253,17 @@ const TitleNormalComp = (props) => { }; const TitleComp = (props) => { - const { onAddCategory, titleName, showOperateBtn } = props; + const { onAddCategory, titleName, showOperateBtn, salaryItemKeywords, onChange } = props; return
{titleName}
- { - showOperateBtn && - - } +
+ { + showOperateBtn && + + } + +
; }; diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index f770a873..706e219e 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -88,8 +88,8 @@ class LedgerSalaryItemTable extends Component { const { itemHide: hideDefault, valueType, name, description, - roundingMode, formulaId, dataType, - pattern, canEdit, formulaContent + roundingMode, formulaId, dataType, useInEmployeeSalary, + pattern, canEdit, formulaContent, originFormulaContent, originSqlContent } = _.find(dataSource, it => it.salaryItemId === salaryItemId); const { data: userStatusList } = await commonEnumList({ enumClass: "com.engine.salary.enums.sicategory.SharedTypeEnum" }); if (id) { @@ -101,6 +101,7 @@ class LedgerSalaryItemTable extends Component { visible: true, request: { ...data, + useInEmployeeSalary: !_.isNil(data.useInEmployeeSalary) ? data.useInEmployeeSalary : "0", hideDefault: _.isNil(hideDefault) ? "0" : hideDefault, valueType, roundingMode, @@ -121,9 +122,9 @@ class LedgerSalaryItemTable extends Component { canEdit, dataType, description, formulaContent, formulaId, name, hideDefault: _.isNil(hideDefault) ? "0" : hideDefault, - valueType, - roundingMode, - pattern + valueType, roundingMode, pattern, + originFormulaContent, originSqlContent, + useInEmployeeSalary: !_.isNil(useInEmployeeSalary) ? useInEmployeeSalary : "0" }, record, userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) @@ -221,6 +222,7 @@ class LedgerSalaryItemTable extends Component { render() { const { salaryItemPayload, editFormulModal } = this.state; const { + tableData, dataSource, onDropCategoryItem, onChangeSelectedRowKeys, @@ -236,7 +238,7 @@ class LedgerSalaryItemTable extends Component { disabled: !record.canDelete }) }; - const checkValue = (!_.isEmpty(dataSource) && _.every(dataSource, it => it.itemHide && it.itemHide === "1")) ? "1" : "0"; + const checkValue = (!_.isEmpty(tableData) && _.every(tableData, it => it.itemHide && it.itemHide === "1")) ? "1" : "0"; const columns = [ { title: "名称", @@ -296,7 +298,7 @@ class LedgerSalaryItemTable extends Component { record.id || record.key} rowSelection={rowSelection} - dataSource={dataSource} + dataSource={tableData} columns={columns} onRow={(record, index) => ({ index, @@ -304,7 +306,7 @@ class LedgerSalaryItemTable extends Component { })} pagination={false} onDrop={onDropCategoryItem} - draggable={true} + draggable={dataSource.length === tableData.length} /> { const { key } = item; @@ -56,18 +67,19 @@ class SalaryItemForm extends Component { case "hideDefault": return { ...item, - viewAttr: 2 + viewAttr: 2, + tip: isLedger ? getLabel(111, "开启后,薪资核算不会展示该项目,但是不影响该项目的核算值") : item.tip }; case "valueType": return { ...item, - viewAttr: (isLedger && record.canEdit) || (editable && record.canEdit) || isAdd ? 2 : 1 + viewAttr: (useInEmployeeSalary.toString() === "0" && ((isLedger && record.canEdit) || (editable && record.canEdit) || isAdd)) ? 2 : 1 }; case "formulaContent": return { ...item, key: valueType.toString() === "3" ? "originSqlContent" : "originFormulaContent", - display: valueType && (valueType.toString() === "2" || valueType.toString() === "3"), + display: useInEmployeeSalary.toString() === "0" && valueType && (valueType.toString() === "2" || valueType.toString() === "3"), viewAttr: (isLedger && record.canEdit) || (editable && record.canEdit) || isAdd ? 2 : 1 }; default: From 868a546dd650a09448274be3c67e4a106e95958f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Thu, 27 Jul 2023 09:08:57 +0800 Subject: [PATCH 11/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E8=96=AA=E8=B5=84?= =?UTF-8?q?=E8=B4=A6=E5=A5=97=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E9=A1=B9?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=BC=96=E8=BE=91=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js b/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js index 4cfea586..58808c61 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js @@ -43,7 +43,10 @@ export default class FormalFormModal extends React.Component { const { salaryAcctImportTemplateParam, setSearchFields, detailFormual } = salaryItemStore; setSearchFields([]); if (!!this.props.formulaId && this.props.formulaId != 0) { - detailFormual({ formulaId, returnType: valueType.toString() === "2" ? "formula" : "sql" }).then(data => { + detailFormual({ + formulaId, + returnType: (valueType.toString() === "2" || valueType.toString() === "FORMULA") ? "formula" : "sql" + }).then(data => { this.parameters = data.parameters; this.referenceType = data.referenceType; this.extendParam = data.extendParam; From 6fd55967bd469080f356f1e3e0884bcce6ec895c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Thu, 27 Jul 2023 14:09:21 +0800 Subject: [PATCH 12/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index 0e5803e5..d316745a 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -217,6 +217,8 @@ class SalaryItemSettings extends Component { } }; handleEditSalaryItemName = (item, field, viewAttr) => { + //暂时关闭 + return const { groupId } = item, { salaryItemId } = field, { dataList } = this.state; if (groupId === "111111111111111111") return; this.setState({ From 8071a62ec88106d0cc656d240d9fe0352decfa09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Thu, 27 Jul 2023 14:58:32 +0800 Subject: [PATCH 13/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E7=A4=BE=E4=BF=9D?= =?UTF-8?q?=E7=A6=8F=E5=88=A9=E6=96=B9=E6=A1=88=E8=87=AA=E5=AE=9A=E4=B9=89?= =?UTF-8?q?=E6=96=B9=E6=A1=88=E6=B7=BB=E5=8A=A0=E5=88=A0=E9=99=A4=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/apis/welfareScheme.js | 159 +++++++++--------- .../hrmSalary/components/customForm/index.js | 2 +- .../socialSecurityBenefits/archives/index.js | 6 +- .../programme/customBenefitsTable.js | 44 ++++- pc4mobx/hrmSalary/stores/archives.js | 8 +- pc4mobx/hrmSalary/stores/programme.js | 5 +- 6 files changed, 133 insertions(+), 91 deletions(-) diff --git a/pc4mobx/hrmSalary/apis/welfareScheme.js b/pc4mobx/hrmSalary/apis/welfareScheme.js index e7d1f3e7..cd5aab94 100644 --- a/pc4mobx/hrmSalary/apis/welfareScheme.js +++ b/pc4mobx/hrmSalary/apis/welfareScheme.js @@ -1,107 +1,108 @@ -import { WeaTools } from 'ecCom'; +import { WeaTools } from "ecCom"; +import { postFetch } from "../util/request"; export const getForm = params => { - return WeaTools.callApi('/api/bs/hrmsalary/scheme/getForm', 'get', params); + return WeaTools.callApi("/api/bs/hrmsalary/scheme/getForm", "get", params); }; export const getTable = params => { - // return WeaTools.callApi('/api/bs/hrmsalary/scheme/getTable', 'get', params); - return fetch('/api/bs/hrmsalary/scheme/getTable', { - method: 'POST', - mode: 'cors', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify(params) - }).then(res => res.json()) + // return WeaTools.callApi('/api/bs/hrmsalary/scheme/getTable', 'get', params); + return fetch("/api/bs/hrmsalary/scheme/getTable", { + method: "POST", + mode: "cors", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(params) + }).then(res => res.json()); }; export const createScheme = params => { - return fetch('/api/bs/hrmsalary/scheme/insert', { - method: 'POST', - mode: 'cors', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify(params) - }).then(res => res.json()) + return fetch("/api/bs/hrmsalary/scheme/insert", { + method: "POST", + mode: "cors", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(params) + }).then(res => res.json()); }; export const updateScheme = params => { - return fetch('/api/bs/hrmsalary/scheme/update', { - method: 'POST', - mode: 'cors', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify(params) - }).then(res => res.json()) + return fetch("/api/bs/hrmsalary/scheme/update", { + method: "POST", + mode: "cors", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(params) + }).then(res => res.json()); }; export const getCopyForm = params => { - return WeaTools.callApi('/api/bs/hrmsalary/scheme/copyForm', 'get', params); + return WeaTools.callApi("/api/bs/hrmsalary/scheme/copyForm", "get", params); }; export const copyScheme = params => { - return fetch(`/api/bs/hrmsalary/scheme/copyScheme?id=${params.id}&schemeName=${params.schemeName}`, { - method: 'GET', - mode: 'cors', - headers: { - 'Content-Type': 'application/json' - }, - }).then(res => res.json()) + return fetch(`/api/bs/hrmsalary/scheme/copyScheme?id=${params.id}&schemeName=${params.schemeName}`, { + method: "GET", + mode: "cors", + headers: { + "Content-Type": "application/json" + } + }).then(res => res.json()); }; export const deleteScheme = params => { - return fetch('/api/bs/hrmsalary/scheme/delete', { - method: 'POST', - mode: 'cors', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify(params) - }).then(res => res.json()) + return fetch("/api/bs/hrmsalary/scheme/delete", { + method: "POST", + mode: "cors", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(params) + }).then(res => res.json()); }; export const getCustomCategoryForm = params => { - return WeaTools.callApi('/api/bs/hrmsalary/sicategory/customCategoryForm', 'get', params); + return WeaTools.callApi("/api/bs/hrmsalary/sicategory/customCategoryForm", "get", params); }; export const getCustomCategoryList = params => { - // return WeaTools.callApi('/api/bs/hrmsalary/sicategory/customCategoryList', 'get', params); - return fetch('/api/bs/hrmsalary/sicategory/customCategoryList', { - method: 'POST', - mode: 'cors', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify(params) - }).then(res => res.json()) + // return WeaTools.callApi('/api/bs/hrmsalary/sicategory/customCategoryList', 'get', params); + return fetch("/api/bs/hrmsalary/sicategory/customCategoryList", { + method: "POST", + mode: "cors", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(params) + }).then(res => res.json()); }; export const createSICategory = params => { - return fetch('/api/bs/hrmsalary/sicategory/createSICategory', { - method: 'POST', - mode: 'cors', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify(params) - }).then(res => res.json()) + return fetch("/api/bs/hrmsalary/sicategory/createSICategory", { + method: "POST", + mode: "cors", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(params) + }).then(res => res.json()); }; export const updateCustomCategory = params => { - return fetch('/api/bs/hrmsalary/sicategory/updateCustomCategoryName', { - method: 'POST', - mode: 'cors', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify(params) - }).then(res => res.json()) + return fetch("/api/bs/hrmsalary/sicategory/updateCustomCategoryName", { + method: "POST", + mode: "cors", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(params) + }).then(res => res.json()); }; -export const deleteCustomCategory = params => { - return WeaTools.callApi('/api/bs/hrmsalary/sicategory/deleteCustomCategory', 'post', params); +export const deleteCustomCategory = (params) => { + return postFetch("/api/bs/hrmsalary/sicategory/deleteCustomCategory", params); }; export const updateCustomCategoryStatus = params => { - return fetch('/api/bs/hrmsalary/sicategory/updateCustomCategoryStatus', { - method: 'POST', - mode: 'cors', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify(params) - }).then(res => res.json()) + return fetch("/api/bs/hrmsalary/sicategory/updateCustomCategoryStatus", { + method: "POST", + mode: "cors", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(params) + }).then(res => res.json()); }; diff --git a/pc4mobx/hrmSalary/components/customForm/index.js b/pc4mobx/hrmSalary/components/customForm/index.js index 5041a53d..4348762d 100644 --- a/pc4mobx/hrmSalary/components/customForm/index.js +++ b/pc4mobx/hrmSalary/components/customForm/index.js @@ -45,7 +45,7 @@ export default class CustomForm extends React.Component { item.options && ({ showname: o.showname, key: o.key }))} diff --git a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/index.js b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/index.js index c0111c45..8b078187 100644 --- a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/index.js +++ b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/index.js @@ -251,7 +251,7 @@ export default class Archives extends React.Component { }); return; } - save("SOCIAL_SECURITY").then(() => { + save("SOCIAL_SECURITY", this.record.paymentOrganization).then(() => { this.query(); }); } else if (selectedTab == 2) { @@ -264,7 +264,7 @@ export default class Archives extends React.Component { }); return; } - save("ACCUMULATION_FUND").then(() => { + save("ACCUMULATION_FUND", this.record.paymentOrganization).then(() => { this.query(); }); } else if (selectedTab == 3) { @@ -277,7 +277,7 @@ export default class Archives extends React.Component { }); return; } - save("OTHER").then(() => { + save("OTHER", this.record.paymentOrganization).then(() => { this.query(); }); } diff --git a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/programme/customBenefitsTable.js b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/programme/customBenefitsTable.js index ab5cb070..fe4bc74c 100644 --- a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/programme/customBenefitsTable.js +++ b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/programme/customBenefitsTable.js @@ -5,9 +5,11 @@ * Date: 2023/3/2 */ import React, { Component } from "react"; -import { WeaCheckbox, WeaTable } from "ecCom"; +import { WeaCheckbox, WeaLocaleProvider, WeaTable } from "ecCom"; import { message, Modal } from "antd"; -import { getCustomCategoryList, updateCustomCategoryStatus } from "../../../apis/welfareScheme"; +import { deleteCustomCategory, getCustomCategoryList, updateCustomCategoryStatus } from "../../../apis/welfareScheme"; + +const { getLabel } = WeaLocaleProvider; class CustomBenefitsTable extends Component { constructor(props) { @@ -77,7 +79,11 @@ class CustomBenefitsTable extends Component { return ( ); @@ -98,6 +104,38 @@ class CustomBenefitsTable extends Component { message.error(errormsg || "操作失败"); } }); + }, + onCancel: () => { + this.setState({ + dataSource: _.map(this.state.dataSource, item => { + if (item.id === id) { + return { + ...item, isUse: item.isUse + }; + } + return { ...item }; + }) + }); + } + }); + }; + deleteCustomCategory = (id) => { + Modal.confirm({ + title: getLabel(131329, "信息确认"), + content: getLabel(543231, "确认删除本条数据吗?"), + onOk: () => { + message.destroy(); + message.loading("正在删除中...", 0); + const payload = { id }; + deleteCustomCategory(payload).then(({ status, errormsg }) => { + message.destroy(); + if (status) { + message.success(getLabel(502230, "删除成功")); + this.getCustomCategoryList(); + } else { + message.error(errormsg || getLabel(30651, "操作失败")); + } + }).catch(() => message.destroy()); } }); }; diff --git a/pc4mobx/hrmSalary/stores/archives.js b/pc4mobx/hrmSalary/stores/archives.js index 7ba4e492..56bd3b12 100644 --- a/pc4mobx/hrmSalary/stores/archives.js +++ b/pc4mobx/hrmSalary/stores/archives.js @@ -244,11 +244,11 @@ export class ArchivesStore { // 保存表单 @action - save = (welfareType) => { + save = (welfareType, paymentOrganization) => { let baseForm = ""; let paymentForm = ""; if (welfareType === "SOCIAL_SECURITY") { - baseForm = JSON.stringify(this.socialSecurityForm.data); + baseForm = JSON.stringify({ ...this.socialSecurityForm.data, paymentOrganization }); if (this.socialSecurityForm.data.socialSchemeId) { const socialSecurityPaymentData = toJS(this.socialSecurityPaymentForm).data; const socialSecurityPaymentItems = toJS(this.socialSecurityPaymentForm).items[0].items; @@ -259,7 +259,7 @@ export class ArchivesStore { paymentForm = JSON.stringify(payload); } } else if (welfareType === "ACCUMULATION_FUND") { - baseForm = JSON.stringify(this.accumulationFundForm.data); + baseForm = JSON.stringify({ ...this.accumulationFundForm.data, paymentOrganization }); if (this.accumulationFundForm.data.fundSchemeId) { const accumulationFundPaymentData = toJS(this.accumulationFundPaymentForm).data; const accumulationFundPaymentItems = toJS(this.accumulationFundPaymentForm).items[0].items; @@ -270,7 +270,7 @@ export class ArchivesStore { paymentForm = JSON.stringify(payload); } } else if (welfareType === "OTHER") { - baseForm = JSON.stringify(this.otherForm.data); + baseForm = JSON.stringify({ ...this.otherForm.data, paymentOrganization }); if (this.otherForm.data.otherSchemeId) { const otherPaymentData = toJS(this.otherPaymentForm).data; const otherPaymentItems = toJS(this.otherPaymentForm).items[0].items; diff --git a/pc4mobx/hrmSalary/stores/programme.js b/pc4mobx/hrmSalary/stores/programme.js index b6d994d0..3cbc9c91 100644 --- a/pc4mobx/hrmSalary/stores/programme.js +++ b/pc4mobx/hrmSalary/stores/programme.js @@ -325,7 +325,10 @@ export class ProgrammeStore { @action updateCustomCategory = (params) => { return new Promise((resolve, reject) => { - API.updateCustomCategory(_.pick(params, ["id", "insuranceName"])).then(res => { + API.updateCustomCategory({ + ..._.pick(params, ["id", "insuranceName"]), + paymentScope: _.pick(params, ["paymentScope"]).paymentScope.split(",") + }).then(res => { if (res.status) { message.success("编辑成功"); resolve(); From fb40c1a998a276022ead358ea38b7cea34bf1046 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Fri, 28 Jul 2023 16:28:27 +0800 Subject: [PATCH 14/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E8=96=AA=E8=B5=84?= =?UTF-8?q?=E8=B4=A6=E5=A5=97=E7=BC=96=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ledgerSalaryItemTable.js | 15 ++++------ .../pages/salaryItem/customSalaryItemSlide.js | 3 +- pc4mobx/hrmSalary/pages/salaryItem/index.js | 3 +- pc4mobx/hrmSalary/stores/salaryItem.js | 29 +++++++++++++++++-- 4 files changed, 35 insertions(+), 15 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index 706e219e..1dcbf1b5 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -93,6 +93,7 @@ class LedgerSalaryItemTable extends Component { } = _.find(dataSource, it => it.salaryItemId === salaryItemId); const { data: userStatusList } = await commonEnumList({ enumClass: "com.engine.salary.enums.sicategory.SharedTypeEnum" }); if (id) { + console.log("96", record, _.find(dataSource, it => it.salaryItemId === salaryItemId)); getSalaryItemForm({ salarySobId, salaryItemId }).then(({ status, data }) => { if (status) { this.setState({ @@ -103,9 +104,7 @@ class LedgerSalaryItemTable extends Component { ...data, useInEmployeeSalary: !_.isNil(data.useInEmployeeSalary) ? data.useInEmployeeSalary : "0", hideDefault: _.isNil(hideDefault) ? "0" : hideDefault, - valueType, - roundingMode, - pattern + valueType, roundingMode, pattern }, record, userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) @@ -146,14 +145,10 @@ class LedgerSalaryItemTable extends Component { }); const { salaryItemId } = record; const { - hideDefault, - roundingMode, - pattern, - valueType, - originFormulaContent, - originSqlContent, - formulaId + hideDefault, roundingMode, pattern, valueType, + originFormulaContent, originSqlContent, formulaId } = request; + console.log("152", salaryItemPayload); this.handleChangeSalaryItem({ itemHide: hideDefault.toString(), roundingMode, diff --git a/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js b/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js index 97e5fb64..fe601cc5 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js @@ -13,8 +13,7 @@ export default class CustomSalaryItemSlide extends React.Component { } handleChange = (params) => { - let request = { ...this.props.request, ...params }; - this.props.onChange(request); + this.props.onChange({ ...this.props.request, ...params }); }; handleShowFormal = () => { diff --git a/pc4mobx/hrmSalary/pages/salaryItem/index.js b/pc4mobx/hrmSalary/pages/salaryItem/index.js index a07c33b2..eb857912 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/index.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/index.js @@ -274,6 +274,7 @@ export default class SalaryItem extends React.Component { // 新建和修改保存的回调 const handleSlideSave = (continueFlag) => { const { salaryItemStore: { saveItem, request, getTableDatas } } = this.props; + const payload = _.cloneDeep(request); const { name, sharedType, taxAgentIds } = request; if (!name || (sharedType === "1" && !taxAgentIds)) { Modal.warning({ @@ -282,7 +283,7 @@ export default class SalaryItem extends React.Component { }); return; } - saveItem(request, continueFlag).then(() => { + saveItem(payload, continueFlag).then(() => { getTableDatas({ ...this.state.searchParams }).then(res => { this.setState({ searchParams: { diff --git a/pc4mobx/hrmSalary/stores/salaryItem.js b/pc4mobx/hrmSalary/stores/salaryItem.js index 775c464a..a8222a45 100644 --- a/pc4mobx/hrmSalary/stores/salaryItem.js +++ b/pc4mobx/hrmSalary/stores/salaryItem.js @@ -272,9 +272,34 @@ export class SalaryItemStore { @action saveItem = (params, continueFlag) => { return new Promise((resolve, reject) => { - if (!this.validateForm(params)) { - return; + const { valueType, formulaId, originFormulaContent, originSqlContent, ...extra } = params; + let payload = { ...extra, valueType }; + if (valueType === "1") { + payload = { + ...payload, + formulaContent: "", + formulaId: "", + originSqlContent: "", + originFormulaContent: "" + }; + } else if (valueType === "2") { + payload = { + ...payload, + formulaContent: originFormulaContent ? originFormulaContent : "", + formulaId: originFormulaContent ? formulaId : "", + originSqlContent: "", + originFormulaContent + }; + } else if (valueType === "3") { + payload = { + ...payload, + formulaContent: originSqlContent ? originSqlContent : "", + formulaId: originSqlContent ? formulaId : "", + originFormulaContent: "", + originSqlContent + }; } + if (!this.validateForm(payload)) return; API.saveItem(params).then(res => { if (res.status) { if (!continueFlag) { From 600d73f858154d11a67f8ae133295c28f92fe814 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Mon, 31 Jul 2023 10:51:10 +0800 Subject: [PATCH 15/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E8=96=AA=E8=B5=84?= =?UTF-8?q?=E8=B4=A6=E5=A5=97=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E7=BC=96?= =?UTF-8?q?=E8=BE=91=E5=8A=9F=E8=83=BD=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ledgerSalaryItemTable.js | 58 ++++++++++++------- 1 file changed, 37 insertions(+), 21 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index 1dcbf1b5..c2195539 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -18,6 +18,7 @@ class LedgerSalaryItemTable extends Component { super(props); this.state = { selectedRowKeys: [], + originRecord: {}, salaryItemPayload: { visible: false, record: {}, request: {}, isLedger: true, @@ -93,18 +94,21 @@ class LedgerSalaryItemTable extends Component { } = _.find(dataSource, it => it.salaryItemId === salaryItemId); const { data: userStatusList } = await commonEnumList({ enumClass: "com.engine.salary.enums.sicategory.SharedTypeEnum" }); if (id) { - console.log("96", record, _.find(dataSource, it => it.salaryItemId === salaryItemId)); getSalaryItemForm({ salarySobId, salaryItemId }).then(({ status, data }) => { if (status) { this.setState({ + originRecord: _.find(dataSource, it => it.salaryItemId === salaryItemId), salaryItemPayload: { ...this.state.salaryItemPayload, visible: true, request: { ...data, useInEmployeeSalary: !_.isNil(data.useInEmployeeSalary) ? data.useInEmployeeSalary : "0", - hideDefault: _.isNil(hideDefault) ? "0" : hideDefault, - valueType, roundingMode, pattern + hideDefault: _.isNil(hideDefault) ? "0" : hideDefault, valueType, roundingMode, pattern, + formulaContent: formulaContent ? formulaContent : data.formulaContent, + originFormulaContent: originFormulaContent ? originFormulaContent : data.originFormulaContent, + originSqlContent: originSqlContent ? originSqlContent : data.originSqlContent, + formulaId: formulaId ? formulaId : data.formulaId }, record, userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) @@ -127,7 +131,8 @@ class LedgerSalaryItemTable extends Component { }, record, userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) - } + }, + originRecord: _.find(dataSource, it => it.salaryItemId === salaryItemId) }); } }; @@ -148,25 +153,24 @@ class LedgerSalaryItemTable extends Component { hideDefault, roundingMode, pattern, valueType, originFormulaContent, originSqlContent, formulaId } = request; - console.log("152", salaryItemPayload); this.handleChangeSalaryItem({ itemHide: hideDefault.toString(), - roundingMode, - pattern, - valueType, + roundingMode, pattern, valueType, formulaContent: valueType.toString() === "2" ? originFormulaContent : originSqlContent, - formulaId: ((valueType.toString() === "3" && !originSqlContent) || valueType.toString() === "1") ? "" : formulaId + formulaId: ((valueType.toString() === "3" && !originSqlContent) || valueType.toString() === "1") ? "" : formulaId, + //不能改成其他空值 + originFormulaContent: ((valueType.toString() === "3" && (!originSqlContent) || originSqlContent === " ") || (valueType.toString() === "1") || (valueType.toString() === "3" && originSqlContent)) ? " " : originFormulaContent, + originSqlContent: ((valueType.toString() === "2" && (!originFormulaContent || originFormulaContent === " ")) || (valueType.toString() === "1") || (valueType.toString() === "2" && originFormulaContent)) ? " " : originSqlContent }, salaryItemId); }; handleEditFormnul = () => { const { salaryItemPayload, editFormulModal } = this.state; const { record } = salaryItemPayload; - const { valueType, formulaId, dateType: dataType } = record; + const { valueType, formulaId, dateType: dataType, originFormulaContent, originSqlContent } = record; this.setState({ editFormulModal: { - ...editFormulModal, - visible: true, - valueType, formulaId, dataType + ...editFormulModal, visible: true, valueType, dataType, + formulaId: ((valueType.toString() === "2" && (originFormulaContent || originFormulaContent !== " ")) || valueType.toString() === "3" && (originSqlContent || originSqlContent === " ")) ? formulaId : "" } }); }; @@ -206,6 +210,12 @@ class LedgerSalaryItemTable extends Component { formulaId: data.id, originFormulaContent: data.referenceType === "formula" ? data.formula : "", originSqlContent: data.referenceType === "sql" ? data.formula : "" + }, + record: { + ...salaryItemPayload.record, + formulaId: data.id, + originFormulaContent: data.referenceType === "formula" ? data.formula : "", + originSqlContent: data.referenceType === "sql" ? data.formula : "" } } }, () => { @@ -215,14 +225,11 @@ class LedgerSalaryItemTable extends Component { }; render() { - const { salaryItemPayload, editFormulModal } = this.state; + const { salaryItemPayload, editFormulModal, originRecord } = this.state; + const { onHandleItemhide } = this.props; const { - tableData, - dataSource, - onDropCategoryItem, - onChangeSelectedRowKeys, - selectedRowKeys, - onMoveTo + tableData, dataSource, onDropCategoryItem, + onChangeSelectedRowKeys, selectedRowKeys, onMoveTo } = this.props; const rowSelection = { selectedRowKeys, @@ -308,7 +315,8 @@ class LedgerSalaryItemTable extends Component { onUpdateRequest={(request, key) => { this.setState({ salaryItemPayload: { - ...salaryItemPayload, request, + ...salaryItemPayload, + request, record: key === "valueType" ? { ...salaryItemPayload.record, [key]: request[key] @@ -322,6 +330,14 @@ class LedgerSalaryItemTable extends Component { salaryItemPayload: { ...salaryItemPayload, visible: false } + }, () => { + const result = _.map(_.cloneDeep(dataSource), it => { + if (it.salaryItemId === originRecord.salaryItemId) { + return { ...originRecord }; + } + return { ...it }; + }); + onHandleItemhide(result); })} /> {/*公式编辑*/} From 223effab98e35a1fb99405d2013eec390bdcc0a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Mon, 31 Jul 2023 11:20:14 +0800 Subject: [PATCH 16/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E6=B7=BB=E5=8A=A0=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js | 2 ++ pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js | 2 +- pc4mobx/hrmSalary/pages/payroll/stepForm/tmplateSettingForm.js | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index 0e5803e5..cb3e598c 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -125,6 +125,7 @@ class SalaryItemSettings extends Component { }; getAvailableSalaryItemSet = (record, title) => { const payload = { + salaryTemplateId: this.props.salaryTemplateId, salarySobId: this.props.salarySobId, existSalaryItemIds: _.map(record.items, it => it.id), groupId: record.groupId, @@ -149,6 +150,7 @@ class SalaryItemSettings extends Component { const { dataList } = this.state; const payload = { salarySobId, + salaryTemplateId: this.props.salaryTemplateId, existSalaryGroupIds: _.map(dataList, it => it.groupId), isReplenish: this.props.isReplenish }; diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js index 7cfd9404..03740472 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/showSettingForm.js @@ -148,7 +148,7 @@ export default class ShowSettingForm extends React.Component { > this.salaryItemSettingsRef = dom} - dataSource={salaryItemSet} + dataSource={salaryItemSet} salaryTemplateId={this.props.id || ""} onChangeSalaryItem={this.handleChangeSalaryItem} onChangeSalaryItemShowNamesetting={this.handleChangeSalaryItemShowNamesetting} salarySobId={toJS(templateBaseData).salarySob} diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/tmplateSettingForm.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/tmplateSettingForm.js index ce64f1e4..1636a0da 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/tmplateSettingForm.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/tmplateSettingForm.js @@ -44,6 +44,7 @@ export default class TemplateSettingForm extends React.Component { onChangeSalaryItem={this.handleChangeSalaryItem} onChangeSalaryItemShowNamesetting={this.handleChangeSalaryItemShowNamesetting} salarySobId={toJS(templateBaseData).salarySob} + salaryTemplateId={this.props.id || ""} isReplenish={true} salaryBillItemNameSet={salaryBillItemNameSet} />
From db53fc8942e394643bb71330a8412319f114c8bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Mon, 31 Jul 2023 11:50:30 +0800 Subject: [PATCH 17/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E8=96=AA=E8=B5=84?= =?UTF-8?q?=E8=B4=A6=E5=A5=97=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E9=A1=B9?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=BC=96=E8=BE=91=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/ledgerPage/components/ledgerSalaryItemTable.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index c2195539..8a12923e 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -157,7 +157,7 @@ class LedgerSalaryItemTable extends Component { itemHide: hideDefault.toString(), roundingMode, pattern, valueType, formulaContent: valueType.toString() === "2" ? originFormulaContent : originSqlContent, - formulaId: ((valueType.toString() === "3" && !originSqlContent) || valueType.toString() === "1") ? "" : formulaId, + formulaId: ((valueType.toString() === "3" && (!originSqlContent || originSqlContent === " ")) || (valueType.toString() === "2" && (!originFormulaContent || originFormulaContent === " ")) || valueType.toString() === "1") ? "" : formulaId, //不能改成其他空值 originFormulaContent: ((valueType.toString() === "3" && (!originSqlContent) || originSqlContent === " ") || (valueType.toString() === "1") || (valueType.toString() === "3" && originSqlContent)) ? " " : originFormulaContent, originSqlContent: ((valueType.toString() === "2" && (!originFormulaContent || originFormulaContent === " ")) || (valueType.toString() === "1") || (valueType.toString() === "2" && originFormulaContent)) ? " " : originSqlContent From 33641790e3cc72b973089fd533cddee22bedfb18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Mon, 31 Jul 2023 19:08:07 +0800 Subject: [PATCH 18/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E6=B7=BB=E5=8A=A0=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/stores/payroll.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/stores/payroll.js b/pc4mobx/hrmSalary/stores/payroll.js index 6c2e7d34..67eac1f0 100644 --- a/pc4mobx/hrmSalary/stores/payroll.js +++ b/pc4mobx/hrmSalary/stores/payroll.js @@ -232,7 +232,7 @@ export class payrollStore { if (id !== "") { this.salaryItemSet = res.data.salaryTemplateSalaryItemSet; this.salaryBillItemNameSet = res.data.salaryBillItemNameSet; - this.replenishSalaryTemplateSalaryItemSet = res.data.salaryTemplateSalaryItemSet; + this.replenishSalaryTemplateSalaryItemSet = res.data.replenishSalaryTemplateSalaryItemSet; } this.salaryTemplateShowSet = { ...res.data.salaryTemplateShowSet.data, ...JSON.parse(salaryTemplateShowSetStorage) }; } else { From ce87730349a5890651ace699d89a2783b2489b2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Tue, 1 Aug 2023 13:37:35 +0800 Subject: [PATCH 19/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E6=B7=BB=E5=8A=A0=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index cb3e598c..95246437 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -255,7 +255,7 @@ class SalaryItemSettings extends Component { ...item, items: _.map(item.items, child => { if (child.salaryItemId === salaryItemId) { - return { ...child, salaryItemShowName: name, name }; + return { ...child, salaryItemShowName: name, name: name ? name : child.originName }; } return { ...child }; }) From b03c1939273b9f066264abc07399fbc0a9acf686 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Tue, 1 Aug 2023 15:51:02 +0800 Subject: [PATCH 20/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/payroll/stepForm/salaryItemSettings.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index 95246437..ff2829d7 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -268,7 +268,17 @@ class SalaryItemSettings extends Component { salaryItemShowName: originName === name ? "" : name }], itemShowNamesetting, "salaryItemId") }, () => { - this.props.onChangeSalaryItem(this.state.dataList); + const modifySalaryItemids = _.reduce(this.state.itemShowNamesetting, (pre, cur) => [...pre, cur.salaryItemId], []); + const convertDataList = _.map(this.state.dataList, it => { + return { + ...it, + items: _.map(it.items, item => { + if (modifySalaryItemids.includes(item.salaryItemId)) return { ...item }; + return { ...item, name: item.salaryItemShowName }; + }) + }; + }); + this.props.onChangeSalaryItem(convertDataList); this.props.onChangeSalaryItemShowNamesetting(this.state.itemShowNamesetting); }); }; From a433de7671024deacea759e7fda43d8e6c031314 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Tue, 1 Aug 2023 16:03:48 +0800 Subject: [PATCH 21/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/externalPersonManage/index.js | 16 ++++++++++++++-- .../pages/payroll/stepForm/salaryItemSettings.js | 2 -- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/externalPersonManage/index.js b/pc4mobx/hrmSalary/pages/externalPersonManage/index.js index 2f01ecd2..cecd0b15 100644 --- a/pc4mobx/hrmSalary/pages/externalPersonManage/index.js +++ b/pc4mobx/hrmSalary/pages/externalPersonManage/index.js @@ -6,7 +6,7 @@ */ import React, { Component } from "react"; import { inject, observer } from "mobx-react"; -import { WeaTab, WeaTable, WeaTop } from "ecCom"; +import { WeaHelpfulTip, WeaLocaleProvider, WeaTab, WeaTable, WeaTop } from "ecCom"; import ExternalPersonManageEditSlide from "./components/externalPersonManageEditSlide"; import { Button, message, Modal } from "antd"; import { getSearchs } from "../../util"; @@ -14,6 +14,8 @@ import { condition, searchCondition } from "./conditions"; import { deleteExtEmp, listPage } from "../../apis/externalPersonManage"; import "./index.less"; +const getLabel = WeaLocaleProvider.getLabel; + @inject("externalPersonManageStore", "taxAgentStore") @observer class Index extends Component { @@ -132,8 +134,18 @@ class Index extends Component {
, + , - ] : []} + ] : [ + + ]} searchType={["base", "advanced"]} showSearchAd={showSearchAd} setShowSearchAd={(showSearchAd) => this.setState({ showSearchAd })} searchsAd={getSearchs(form, searchCondition, 2)} diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index d316745a..0e5803e5 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -217,8 +217,6 @@ class SalaryItemSettings extends Component { } }; handleEditSalaryItemName = (item, field, viewAttr) => { - //暂时关闭 - return const { groupId } = item, { salaryItemId } = field, { dataList } = this.state; if (groupId === "111111111111111111") return; this.setState({ From 5eec7139d600376be4813f16a9afb1d419a82e6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Tue, 1 Aug 2023 16:09:23 +0800 Subject: [PATCH 22/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js | 1 + 1 file changed, 1 insertion(+) diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index ff2829d7..0113ecd5 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -270,6 +270,7 @@ class SalaryItemSettings extends Component { }, () => { const modifySalaryItemids = _.reduce(this.state.itemShowNamesetting, (pre, cur) => [...pre, cur.salaryItemId], []); const convertDataList = _.map(this.state.dataList, it => { + if (it.groupId === "111111111111111111") return { ...it }; return { ...it, items: _.map(it.items, item => { From bc12a120972658405aff1a3f1d4487e8b8c10046 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Tue, 1 Aug 2023 17:44:59 +0800 Subject: [PATCH 23/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E9=9D=9E=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=E4=BA=BA=E5=91=98=E7=AE=A1=E7=90=86=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hrmSalary/apis/externalPersonManage.js | 10 ++++ .../components/externalPersonImport.js | 60 +++++++++++++++++++ .../pages/externalPersonManage/index.js | 43 ++++++++++++- 3 files changed, 111 insertions(+), 2 deletions(-) create mode 100644 pc4mobx/hrmSalary/pages/externalPersonManage/components/externalPersonImport.js diff --git a/pc4mobx/hrmSalary/apis/externalPersonManage.js b/pc4mobx/hrmSalary/apis/externalPersonManage.js index 91854ebb..0d8bcf67 100644 --- a/pc4mobx/hrmSalary/apis/externalPersonManage.js +++ b/pc4mobx/hrmSalary/apis/externalPersonManage.js @@ -21,6 +21,16 @@ export const deleteExtEmp = (params) => { return postFetch("/api/bs/hrmsalary/extEmp/delete", params); }; +//非系统人员-导入预览 +export const extEmpPreview = (params) => { + return postFetch("/api/bs/hrmsalary/extEmp/preview", params); +}; + +//非系统人员-导入 +export const importExtEmp = (params) => { + return postFetch("/api/bs/hrmsalary/extEmp/importExtEmp", params); +}; + //非系统人员-详情 export const detail = params => { return WeaTools.callApi("/api/bs/hrmsalary/extEmp/detail", "get", params); diff --git a/pc4mobx/hrmSalary/pages/externalPersonManage/components/externalPersonImport.js b/pc4mobx/hrmSalary/pages/externalPersonManage/components/externalPersonImport.js new file mode 100644 index 00000000..63b630c4 --- /dev/null +++ b/pc4mobx/hrmSalary/pages/externalPersonManage/components/externalPersonImport.js @@ -0,0 +1,60 @@ +/* + * Author: 黎永顺 + * name: 非系统人员导入 + * Description: + * Date: 2023/8/1 + */ +import React, { Component } from "react"; +import ImportModal from "../../../components/importModal"; +import { extEmpPreview, importExtEmp } from "../../../apis/externalPersonManage"; + +class ExternalPersonImport extends Component { + constructor(props) { + super(props); + this.state = { + previewDataSource: [], + previewColumns: [], + importResult: {} + }; + } + + extEmpPreview = (params) => { + extEmpPreview(params).then(({ status, data }) => { + if (status) { + const { headers, list } = data; + this.setState({ + previewColumns: _.map(headers, (it, dataIndex) => ({ title: it, dataIndex })), + previewDataSource: _.map(list, item => { + return _.reduce(item, (pre, cur, key) => (_.assign(pre, { [key]: cur })), {}); + }) + }); + } + }); + }; + handleImportFile = (params) => { + importExtEmp(params).then(({ status, data }) => { + if (status) { + this.setState({ + importResult: data + }); + } + }); + }; + + render() { + const { previewDataSource, previewColumns, importResult } = this.state; + return ( + + ); + } +} + +export default ExternalPersonImport; diff --git a/pc4mobx/hrmSalary/pages/externalPersonManage/index.js b/pc4mobx/hrmSalary/pages/externalPersonManage/index.js index cecd0b15..4ba1ed22 100644 --- a/pc4mobx/hrmSalary/pages/externalPersonManage/index.js +++ b/pc4mobx/hrmSalary/pages/externalPersonManage/index.js @@ -8,6 +8,7 @@ import React, { Component } from "react"; import { inject, observer } from "mobx-react"; import { WeaHelpfulTip, WeaLocaleProvider, WeaTab, WeaTable, WeaTop } from "ecCom"; import ExternalPersonManageEditSlide from "./components/externalPersonManageEditSlide"; +import ExternalPersonImport from "./components/externalPersonImport"; import { Button, message, Modal } from "antd"; import { getSearchs } from "../../util"; import { condition, searchCondition } from "./conditions"; @@ -28,6 +29,9 @@ class Index extends Component { showSearchAd: false, externalPersonManagePayload: { visible: false, title: "新建", id: "" + }, + externalPersonImportPayload: { + visiable: false, step: 0 } }; } @@ -101,7 +105,10 @@ class Index extends Component { }; render() { - const { showSearchAd, externalPersonManagePayload, loading, pageInfo, selectedRowKeys, dataSource } = this.state; + const { + showSearchAd, externalPersonManagePayload, loading, + pageInfo, selectedRowKeys, dataSource, externalPersonImportPayload + } = this.state; const { externalPersonManageStore: { form, addForm }, taxAgentStore: { showOperateBtn, showSalaryItemBtn } @@ -138,7 +145,13 @@ class Index extends Component { title={getLabel(111, "非系统人员,且需要缴纳社保福利以及代发工资的人员,需在本表维护人员信息")} placement="topRight" />, - , + , ] : [ + { + externalPersonImportPayload.visiable && + { + this.setState({ externalPersonImportPayload: { ...externalPersonImportPayload, step } }); + }} + onCancel={() => { + this.setState({ + externalPersonImportPayload: { + ...externalPersonImportPayload, + visiable: false, + step: 0 + } + }); + }} + onFinish={() => { + this.setState({ + externalPersonImportPayload: { + ...externalPersonImportPayload, + visiable: false, step: 0 + } + }, () => this.listPage()); + }} + /> + }
From cbd06fa42abf7572b994ee2d95adfbf42f45422f 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, 2 Aug 2023 11:17:17 +0800 Subject: [PATCH 24/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E9=9D=9E=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=E4=BA=BA=E5=91=98=E7=AE=A1=E7=90=86=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/externalPersonManage/conditions.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/pages/externalPersonManage/conditions.js b/pc4mobx/hrmSalary/pages/externalPersonManage/conditions.js index c208e585..b45248b9 100644 --- a/pc4mobx/hrmSalary/pages/externalPersonManage/conditions.js +++ b/pc4mobx/hrmSalary/pages/externalPersonManage/conditions.js @@ -156,7 +156,7 @@ export const condition = [ conditionType: "INPUT", domkey: ["mobile"], fieldcol: 18, - label: "手机", + label: "手机号", labelcol: 6, value: "", viewAttr: 2 From d04c053c075477b85a1b5490f7f6d75c1047ffc5 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, 2 Aug 2023 11:57:46 +0800 Subject: [PATCH 25/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E6=B7=BB=E5=8A=A0=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/stores/payroll.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/stores/payroll.js b/pc4mobx/hrmSalary/stores/payroll.js index 67eac1f0..6f523cd8 100644 --- a/pc4mobx/hrmSalary/stores/payroll.js +++ b/pc4mobx/hrmSalary/stores/payroll.js @@ -231,9 +231,9 @@ export class payrollStore { if (res.status) { if (id !== "") { this.salaryItemSet = res.data.salaryTemplateSalaryItemSet; - this.salaryBillItemNameSet = res.data.salaryBillItemNameSet; this.replenishSalaryTemplateSalaryItemSet = res.data.replenishSalaryTemplateSalaryItemSet; } + this.salaryBillItemNameSet = res.data.salaryBillItemNameSet; this.salaryTemplateShowSet = { ...res.data.salaryTemplateShowSet.data, ...JSON.parse(salaryTemplateShowSetStorage) }; } else { message.error(res.errormsg || "获取失败"); From 480106d4e74564f08771cabd996f72559ea24e90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Fri, 4 Aug 2023 09:34:04 +0800 Subject: [PATCH 26/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E8=96=AA=E8=B5=84?= =?UTF-8?q?=E8=B4=A6=E5=A5=97=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E9=A1=B9?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=BC=96=E8=BE=91=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/ledgerPage/components/ledgerSalaryItemTable.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index 8a12923e..57522e83 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -166,7 +166,7 @@ class LedgerSalaryItemTable extends Component { handleEditFormnul = () => { const { salaryItemPayload, editFormulModal } = this.state; const { record } = salaryItemPayload; - const { valueType, formulaId, dateType: dataType, originFormulaContent, originSqlContent } = record; + const { valueType, formulaId, dataType, originFormulaContent, originSqlContent } = record; this.setState({ editFormulModal: { ...editFormulModal, visible: true, valueType, dataType, From 262976cc5e62c6ad306cc77fc1b13eeeae080538 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Fri, 4 Aug 2023 13:55:20 +0800 Subject: [PATCH 27/30] =?UTF-8?q?=E4=BA=A7=E5=93=81-=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/payroll/index.js | 29 +++------------- .../payroll/stepForm/salaryItemSettings.js | 33 ++----------------- pc4mobx/hrmSalary/stores/payroll.js | 22 ------------- 3 files changed, 7 insertions(+), 77 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/payroll/index.js b/pc4mobx/hrmSalary/pages/payroll/index.js index 38a5eba4..c974b699 100644 --- a/pc4mobx/hrmSalary/pages/payroll/index.js +++ b/pc4mobx/hrmSalary/pages/payroll/index.js @@ -64,12 +64,7 @@ export default class Payroll extends React.Component { getReplenishForm = (isEdit = false, params = {}) => { const { payrollStore } = this.props; - const { - templateBaseData, - salaryTemplateShowSet, - setReplenishSalaryTemplateSalaryItemSet, - setSalaryBillItemNameSet - } = payrollStore; + const { templateBaseData, salaryTemplateShowSet, setReplenishSalaryTemplateSalaryItemSet } = payrollStore; if (!salaryTemplateShowSet.theme && !isEdit) { Modal.warning({ title: "信息确认", @@ -82,12 +77,10 @@ export default class Payroll extends React.Component { if (!isEdit) { this.setState({ currentStep: this.state.currentStep + 1 }, () => { setReplenishSalaryTemplateSalaryItemSet(data.replenishSalaryTemplateSalaryItemSet); - setSalaryBillItemNameSet(data.salaryBillItemNameSet); window.localStorage.setItem("salary-showset", JSON.stringify(salaryTemplateShowSet)); }); } else { setReplenishSalaryTemplateSalaryItemSet(data.replenishSalaryTemplateSalaryItemSet); - setSalaryBillItemNameSet(data.salaryBillItemNameSet); window.localStorage.setItem("salary-showset", JSON.stringify(salaryTemplateShowSet)); } } @@ -268,9 +261,7 @@ export default class Payroll extends React.Component { setTemplateTableSelectedRowKeys, deletePayroll, templateBaseData, - setTemplateTablePageInfo, - setSalaryBillItemNameSetting, - salaryBillItemNameSetting + setTemplateTablePageInfo } = payrollStore; const { currentStep, selectedTab, templateSearchValue, templateSelect, startDate, endDate } = this.state; if (!hasRight && !loading) { // 无权限处理 @@ -325,7 +316,7 @@ export default class Payroll extends React.Component { { showOperateBtn && } { @@ -474,16 +465,10 @@ export default class Payroll extends React.Component { customOperate={ currentStep === 0 ? [ ] : currentStep === 1 ? [ , , @@ -492,9 +477,6 @@ export default class Payroll extends React.Component { }}>预览 ] : currentStep === 2 ? [ , @@ -524,7 +506,7 @@ export default class Payroll extends React.Component { className="slideOuterWrapper" visible={this.state.editSlideVisible} top={0} - width={65} + width={50} height={100} direction="right" measure="%" @@ -557,9 +539,6 @@ export default class Payroll extends React.Component { } subItemChange={(selectedTab) => { this.setState({ selectedTab: Number(selectedTab) }, () => { - setSalaryBillItemNameSetting(_.map(salaryBillItemNameSetting, it => { - return { ...it, salaryTemplateId: "", itemShowNameSetting: [] }; - })); if (this.state.selectedTab === 2) this.getReplenishForm(true, { id: this.state.templateCurrentId }); }); }} diff --git a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js index d316745a..7281fafe 100644 --- a/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js +++ b/pc4mobx/hrmSalary/pages/payroll/stepForm/salaryItemSettings.js @@ -218,7 +218,7 @@ class SalaryItemSettings extends Component { }; handleEditSalaryItemName = (item, field, viewAttr) => { //暂时关闭 - return + return; const { groupId } = item, { salaryItemId } = field, { dataList } = this.state; if (groupId === "111111111111111111") return; this.setState({ @@ -307,36 +307,9 @@ class SalaryItemSettings extends Component { }) )} renderNodeItem={(filed) => { - const salaryBillItemNameObj = salaryBillItemNameSet[filed.id] || {}; return
-
- { - filed.viewAttr === 2 ? - this.handleEditSalaryItemName(item, filed, 1)} - onChange={(val) => this.handleChangeSalaryItemShowName(item, filed, val)} - /> : -
this.handleEditSalaryItemName(item, filed, 2)}> - { - (item.groupId !== "111111111111111111" && (!_.isEmpty(salaryBillItemNameObj) || (filed.salaryItemShowName !== filed.originName))) ? - `${filed.salaryItemShowName}(${filed.originName})` : - filed.name - } -
- } +
+
{filed.name}
this.handleDeleteSalaryItem(item, filed)}/>
; diff --git a/pc4mobx/hrmSalary/stores/payroll.js b/pc4mobx/hrmSalary/stores/payroll.js index 6c2e7d34..e42cdba0 100644 --- a/pc4mobx/hrmSalary/stores/payroll.js +++ b/pc4mobx/hrmSalary/stores/payroll.js @@ -26,19 +26,6 @@ export class payrollStore { @observable salaryTemplateShowSet = {}; // 显示设置基础表单 @observable replenishSalaryTemplateSalaryItemSet = []; // 补发工资单模版基础表单 @observable salaryItemSet = []; // 显示设置薪资项 - @observable salaryBillItemNameSetting = [ - { - salaryTemplateId: "", - salaryBillType: 0, - itemShowNameSetting: [] - }, - { - salaryTemplateId: "", - salaryBillType: 1, - itemShowNameSetting: [] - } - ]; // 工资单模板薪资项目名称修改列表 - @observable salaryBillItemNameSet = {}; // 工资单模板薪资项目名称修改列表 // **** 工资单页面 **** @observable salarySendTableStore = new TableStore(); // 工资单列表 @@ -100,10 +87,6 @@ export class payrollStore { @action setSalaryItemSet = salaryItemSet => (this.salaryItemSet = salaryItemSet); - @action - setSalaryBillItemNameSet = salaryBillItemNameSet => (this.salaryBillItemNameSet = salaryBillItemNameSet); - @action - setSalaryBillItemNameSetting = salaryBillItemNameSetting => (this.salaryBillItemNameSetting = salaryBillItemNameSetting); @action("工资单模板分页信息修改") setTemplateTablePageInfo = (pageInfo, callback) => { @@ -231,7 +214,6 @@ export class payrollStore { if (res.status) { if (id !== "") { this.salaryItemSet = res.data.salaryTemplateSalaryItemSet; - this.salaryBillItemNameSet = res.data.salaryBillItemNameSet; this.replenishSalaryTemplateSalaryItemSet = res.data.salaryTemplateSalaryItemSet; } this.salaryTemplateShowSet = { ...res.data.salaryTemplateShowSet.data, ...JSON.parse(salaryTemplateShowSetStorage) }; @@ -280,7 +262,6 @@ export class payrollStore { : false; params.salaryItemSetting = toJS(this.salaryItemSet); params.replenishSalaryItemSetting = toJS(this.replenishSalaryTemplateSalaryItemSet); - params.salaryBillItemNameSetting = toJS(this.salaryBillItemNameSetting); return params; }; @@ -293,9 +274,6 @@ export class payrollStore { if (res.status) { message.success("保存成功"); this.getPayrollTemplateList(); - this.setSalaryBillItemNameSetting(_.map(this.salaryBillItemNameSetting, it => { - return { ...it, salaryTemplateId: "", itemShowNameSetting: [] }; - })); resolve(); } else { message.error(res.errormsg || "保存失败"); From 5adfa47b5b301769e854d9adafc81b23921cb453 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Fri, 11 Aug 2023 17:34:42 +0800 Subject: [PATCH 28/30] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9-=E6=96=AD=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js | 1 + .../pages/payroll/templatePreview/computerTemplate/index.js | 1 + 2 files changed, 2 insertions(+) diff --git a/pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js b/pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js index 67374438..dd6a6d7e 100644 --- a/pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js +++ b/pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js @@ -87,6 +87,7 @@ class MySalaryView extends Component { const employeeInformation = !_.isEmpty(mySalaryStore) && mySalaryStore.employeeInformation; const salaryGroups = !_.isEmpty(mySalaryStore) && mySalaryStore.salaryGroups; const salaryTemplateShowSet = !_.isEmpty(mySalaryStore) && mySalaryStore.salaryTemplate; + console.log(90, salaryTemplateShowSet, salaryGroups); return ( Date: Wed, 16 Aug 2023 10:30:37 +0800 Subject: [PATCH 29/30] =?UTF-8?q?=E5=AD=97=E6=AE=B5=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/fieldManagement/components/fieldSlide.js | 1 + pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js | 1 - .../pages/payroll/templatePreview/computerTemplate/index.js | 1 - 3 files changed, 1 insertion(+), 2 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/fieldManagement/components/fieldSlide.js b/pc4mobx/hrmSalary/pages/fieldManagement/components/fieldSlide.js index 77e8d62f..9e10b3a6 100644 --- a/pc4mobx/hrmSalary/pages/fieldManagement/components/fieldSlide.js +++ b/pc4mobx/hrmSalary/pages/fieldManagement/components/fieldSlide.js @@ -35,6 +35,7 @@ class FieldSlide extends Component { name: "", useInEmployeeSalary: "1", useDefault: "0", + hideDefault: "0", sharedType: "0", shareTypeList: [], taxAgentIds: "", diff --git a/pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js b/pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js index dd6a6d7e..67374438 100644 --- a/pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js +++ b/pc4mobx/hrmSalary/pages/mySalary/mySalaryView.js @@ -87,7 +87,6 @@ class MySalaryView extends Component { const employeeInformation = !_.isEmpty(mySalaryStore) && mySalaryStore.employeeInformation; const salaryGroups = !_.isEmpty(mySalaryStore) && mySalaryStore.salaryGroups; const salaryTemplateShowSet = !_.isEmpty(mySalaryStore) && mySalaryStore.salaryTemplate; - console.log(90, salaryTemplateShowSet, salaryGroups); return ( Date: Thu, 17 Aug 2023 13:45:21 +0800 Subject: [PATCH 30/30] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/payroll/index.js | 29 ++++++++++++++++--- .../archives/baseForm.js | 2 +- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/payroll/index.js b/pc4mobx/hrmSalary/pages/payroll/index.js index c974b699..38a5eba4 100644 --- a/pc4mobx/hrmSalary/pages/payroll/index.js +++ b/pc4mobx/hrmSalary/pages/payroll/index.js @@ -64,7 +64,12 @@ export default class Payroll extends React.Component { getReplenishForm = (isEdit = false, params = {}) => { const { payrollStore } = this.props; - const { templateBaseData, salaryTemplateShowSet, setReplenishSalaryTemplateSalaryItemSet } = payrollStore; + const { + templateBaseData, + salaryTemplateShowSet, + setReplenishSalaryTemplateSalaryItemSet, + setSalaryBillItemNameSet + } = payrollStore; if (!salaryTemplateShowSet.theme && !isEdit) { Modal.warning({ title: "信息确认", @@ -77,10 +82,12 @@ export default class Payroll extends React.Component { if (!isEdit) { this.setState({ currentStep: this.state.currentStep + 1 }, () => { setReplenishSalaryTemplateSalaryItemSet(data.replenishSalaryTemplateSalaryItemSet); + setSalaryBillItemNameSet(data.salaryBillItemNameSet); window.localStorage.setItem("salary-showset", JSON.stringify(salaryTemplateShowSet)); }); } else { setReplenishSalaryTemplateSalaryItemSet(data.replenishSalaryTemplateSalaryItemSet); + setSalaryBillItemNameSet(data.salaryBillItemNameSet); window.localStorage.setItem("salary-showset", JSON.stringify(salaryTemplateShowSet)); } } @@ -261,7 +268,9 @@ export default class Payroll extends React.Component { setTemplateTableSelectedRowKeys, deletePayroll, templateBaseData, - setTemplateTablePageInfo + setTemplateTablePageInfo, + setSalaryBillItemNameSetting, + salaryBillItemNameSetting } = payrollStore; const { currentStep, selectedTab, templateSearchValue, templateSelect, startDate, endDate } = this.state; if (!hasRight && !loading) { // 无权限处理 @@ -316,7 +325,7 @@ export default class Payroll extends React.Component { { showOperateBtn && } { @@ -465,10 +474,16 @@ export default class Payroll extends React.Component { customOperate={ currentStep === 0 ? [ ] : currentStep === 1 ? [ , , @@ -477,6 +492,9 @@ export default class Payroll extends React.Component { }}>预览 ] : currentStep === 2 ? [ , @@ -506,7 +524,7 @@ export default class Payroll extends React.Component { className="slideOuterWrapper" visible={this.state.editSlideVisible} top={0} - width={50} + width={65} height={100} direction="right" measure="%" @@ -539,6 +557,9 @@ export default class Payroll extends React.Component { } subItemChange={(selectedTab) => { this.setState({ selectedTab: Number(selectedTab) }, () => { + setSalaryBillItemNameSetting(_.map(salaryBillItemNameSetting, it => { + return { ...it, salaryTemplateId: "", itemShowNameSetting: [] }; + })); if (this.state.selectedTab === 2) this.getReplenishForm(true, { id: this.state.templateCurrentId }); }); }} diff --git a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/baseForm.js b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/baseForm.js index 5c658b41..daaf7f03 100644 --- a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/baseForm.js +++ b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/baseForm.js @@ -21,7 +21,7 @@ export default class BaseForm extends React.Component { { com: Input("岗位", position) }, { com: Input("手机号", telephone) }, { com: Input("入职日期", hiredate) }, - { com: Input("合同到期日期", dimissionDate) } + // { com: Input("合同到期日期", dimissionDate) } ]; const taxagentItems = [ { com: Input("个税扣缴义务人", paymentOrganizationName) }
{item.name}{(!this.props.isPreview && group.groupId !== "111111111111111111") ? item.salaryItemShowName : item.name} {item.salaryItemValue || "-"}