From d1b2f98387fec25def4fc416763c2b09a3ed1ae1 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, 19 Jul 2023 15:02:44 +0800 Subject: [PATCH 01/24] =?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/index.less | 43 +++++- .../ledgerPage/components/ledgerMovoTo.js | 7 +- .../components/ledgerSalaryItemEditSlide.js | 56 ++++++++ .../components/ledgerSalaryItemNormal.js | 2 +- .../components/ledgerSalaryItemTable.js | 125 ++++++++++++++---- pc4mobx/hrmSalary/pages/ledgerPage/index.js | 3 +- pc4mobx/hrmSalary/pages/ledgerPage/index.less | 10 ++ pc4mobx/hrmSalary/pages/salaryItem/columns.js | 101 +++++++------- .../pages/salaryItem/salaryItemForm.js | 25 ++-- 9 files changed, 283 insertions(+), 89 deletions(-) create mode 100644 pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/index.less b/pc4mobx/hrmSalary/pages/ledgerPage/components/index.less index b0f3e1b0..27a9ee0a 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/index.less +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/index.less @@ -168,6 +168,11 @@ } .categroyListWrapper { + .wea-search-group { + padding-left: 0; + padding-right: 0; + } + .titleNormalWrapper { display: flex; justify-content: space-between; @@ -180,6 +185,11 @@ } .titleWrapper { + span { + font-weight: 600; + color: #111; + } + i { font-size: 16px; color: #333; @@ -201,6 +211,16 @@ align-items: center; width: 100%; + .topTitle { + padding: 5px 12px; + margin-right: 10px; + } + + .active { + background: #e9f7ff; + color: #5d9cec; + } + .titleLeft { display: flex; align-items: center; @@ -236,11 +256,28 @@ .moveModalWrapper { .ant-radio-group { - display: flex; - flex-direction: column; + display: grid; + grid-template-columns: repeat(3, 33.33%); .ant-radio-wrapper { - margin: 4px 16px; + margin: 4px 0; + } + } +} + +.salaryItemEditWrapper { + .wea-search-group { + padding: 0; + border: 1px solid #e5e5e5; + border-bottom: none; + + .wea-content { + padding: 0; + + .wea-form-item { + padding: 4px 16px; + border-bottom: 1px solid #e5e5e5; + } } } } diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerMovoTo.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerMovoTo.js index e0b20c93..af75ac82 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerMovoTo.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerMovoTo.js @@ -24,7 +24,12 @@ class LedgerMovoTo extends Component { > item.showname === "未分类")} + detailtype={3} value={value} + onChange={onChangeMoveVal} + /> + item.showname !== "未分类")} detailtype={3} value={value} onChange={onChangeMoveVal} /> diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js new file mode 100644 index 00000000..3e461453 --- /dev/null +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js @@ -0,0 +1,56 @@ +/* + * Author: 黎永顺 + * name: 薪资账套-编辑薪资项目项 + * Description: + * Date: 2023/07/19 + */ +import React, { Component } from "react"; +import { WeaLocaleProvider, WeaSlideModal } from "ecCom"; +import SlideModalTitle from "../../../components/slideModalTitle"; +import SalaryItemForm from "../../salaryItem/salaryItemForm"; +import "./index.less"; + +const getLabel = WeaLocaleProvider.getLabel; + +class LedgerSalaryItemEditSlide extends Component { + constructor(props) { + super(props); + this.state = {}; + } + + handleChange = (params) => { + const request = { ...this.props.request, ...params }; + this.props.onUpdateRequest(request); + }; + handleShowFormal = () => this.props.onEditFormnul(); + + render() { + return ( + + } + content={ +
+ { + this.props.visible && + + } +
+ } + /> + ); + } +} + +export default LedgerSalaryItemEditSlide; diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js index f6e4e295..3f743034 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemNormal.js @@ -306,7 +306,7 @@ const TitleNormalComp = (props) => { const TitleComp = (props) => { const { onAddCategory, titleName, showOperateBtn } = props; return
- {titleName} +
{titleName}
{ showOperateBtn && diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index 925e04e7..cc3254a4 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -5,13 +5,25 @@ * Date: 2022/12/13 */ import React, { Component } from "react"; -import { WeaCheckbox, WeaHelpfulTip, WeaTable } from "ecCom"; +import { message } from "antd"; +import { WeaCheckbox, WeaHelpfulTip, WeaLocaleProvider, WeaTable } from "ecCom"; +import LedgerSalaryItemEditSlide from "./ledgerSalaryItemEditSlide"; +import { getSalaryFieldForm } from "../../../apis/fieldManage"; +import { commonEnumList } from "../../../apis/ruleconfig"; +import { saveItem } from "../../../apis/item"; + +const getLabel = WeaLocaleProvider.getLabel; class LedgerSalaryItemTable extends Component { constructor(props) { super(props); this.state = { - selectedRowKeys: [] + selectedRowKeys: [], + salaryItemPayload: { + visible: false, record: {}, + request: {}, isLedger: true, + userStatusList: [] + } }; } @@ -46,8 +58,47 @@ class LedgerSalaryItemTable extends Component { }) ); }; + /* + * Author: 黎永顺 + * Description: 编辑薪资项目 + * Params: + * Date: 2023/7/19 + */ + handleEditSalaryItem = async (record) => { + const { data: userStatusList } = await commonEnumList({ enumClass: "com.engine.salary.enums.sicategory.SharedTypeEnum" }); + getSalaryFieldForm({ id: record.salaryItemId }).then(({ status, data }) => { + if (status) { + this.setState({ + salaryItemPayload: { + ...this.state.salaryItemPayload, + visible: true, request: data, record, + userStatusList: _.map(userStatusList, it => ({ key: it.value.toString(), showname: it.defaultLabel })) + } + }); + } + }); + }; + /* + * Author: 黎永顺 + * Description: 保存薪资项目 + * Params: + * Date: 2023/7/19 + */ + handleSaveItem = () => { + const { salaryItemPayload } = this.state; + const { request } = salaryItemPayload; + saveItem(request).then(({ status, errorMsg }) => { + if (status) { + message.success(getLabel(22619, "保存成功")); + //TODO:渲染列表数据 + } else { + message.error(errorMsg || getLabel(22620, "保存失败")); + } + }); + }; render() { + const { salaryItemPayload } = this.state; const { dataSource, onDropCategoryItem, @@ -77,18 +128,11 @@ class LedgerSalaryItemTable extends Component { 核算公式 } placement="bottom" width={200}/> , - dataIndex: "formulaContent", - key: "formulaContent", - render: (text, record) => { - if (record.canEdit) { - return ( - - onEditFormnul(record)}> {text} - - ); - } else { - return {text} ; - } + dataIndex: "valueType", + key: "valueType", + render: (_, record) => { + const { valueType } = record; + return {valueType === 1 ? "输入" : valueType === 2 ? "自定义公式" : valueType === 3 ? "SQL" : ""} ; } }, { @@ -116,26 +160,49 @@ class LedgerSalaryItemTable extends Component { title: "操作", dataIndex: "operate", key: "operate", - width: 100, + width: 120, render: (_, record) => ( - onMoveTo(record)}>移动到 + + this.handleEditSalaryItem(record)} + style={{ marginRight: 10 }}>编辑 + onMoveTo(record)}>移动到 + ) } ]; return ( - record.id || record.key} - rowSelection={rowSelection} - dataSource={dataSource} - columns={columns} - onRow={(record, index) => ({ - index, - moveRow: record - })} - pagination={false} - onDrop={onDropCategoryItem} - draggable={true} - /> + + record.id || record.key} + rowSelection={rowSelection} + dataSource={dataSource} + columns={columns} + onRow={(record, index) => ({ + index, + moveRow: record + })} + pagination={false} + onDrop={onDropCategoryItem} + draggable={true} + /> + { + this.setState({ + salaryItemPayload: { + ...salaryItemPayload, request + } + }); + }} + onEditFormnul={() => onEditFormnul(salaryItemPayload.record)} + onSave={this.handleSaveItem} + onClose={() => this.setState({ + salaryItemPayload: { + ...salaryItemPayload, visible: false + } + })} + /> + ); } } diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/index.js b/pc4mobx/hrmSalary/pages/ledgerPage/index.js index 65486005..9cef3433 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/index.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/index.js @@ -10,6 +10,7 @@ import { WeaInputSearch, WeaTop } from "ecCom"; import { Button } from "antd"; import LedgerTable from "./components/ledgerTable"; import LedgerSlide from "./components/ledgerSlide"; +import "./index.less"; @inject("taxAgentStore") @observer @@ -67,7 +68,7 @@ class Index extends Component { ]; return ( } iconBgcolor="#F14A2D" showDropIcon={false} diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/index.less b/pc4mobx/hrmSalary/pages/ledgerPage/index.less index 3f90918b..ee122e69 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/index.less +++ b/pc4mobx/hrmSalary/pages/ledgerPage/index.less @@ -1,3 +1,13 @@ +.ledgerOuter { + .wea-new-top { + .ant-col-10 { + span:nth-child(2) { + margin-top: -6px; + } + } + } +} + .ledgerWrapper { height: 100%; diff --git a/pc4mobx/hrmSalary/pages/salaryItem/columns.js b/pc4mobx/hrmSalary/pages/salaryItem/columns.js index 573795b4..04580369 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/columns.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/columns.js @@ -1,5 +1,7 @@ +import { WeaLocaleProvider } from "ecCom"; import { dataTypeOptions, patternOptions, roundingModeOptions } from "./options"; +const getLabel = WeaLocaleProvider.getLabel; export const columns = [ { title: "名称", @@ -54,11 +56,11 @@ export const columns = [ ]; export const salaryItemFields = [ { - key: 'name', - label: '名称', - type: 'INPUT', + key: "name", + label: "名称", + type: "INPUT", viewAttr: 3, - tip: '' + tip: "" }, // { // key: 'useInEmployeeSalary', @@ -68,63 +70,70 @@ export const salaryItemFields = [ // tip: '提示:开启后,该薪资项目不可删除或设为无效,取值方式会默认置为输入' // }, { - key: 'useDefault', - label: '默认使用', - type: 'SWITCH', + key: "useDefault", + label: "默认使用", + type: "SWITCH", viewAttr: 2, - tip: '提示:开启后,每个薪资方案都有该薪资项目,可在具体薪资方案中删除' + tip: "提示:开启后,每个薪资方案都有该薪资项目,可在具体薪资方案中删除" }, { - key: 'sharedType', - label: '可见性', - type: 'SELECT', + key: "hideDefault", + label: getLabel(111, "核算时隐藏"), + type: "SWITCH", viewAttr: 2, - tip: '' + tip: getLabel(111, "提示:开启后,在薪资账套中添加该项目时,默认勾选隐藏且在核算时隐藏该薪资项目,可在具体薪资账套中设置是否隐藏") }, { - key: 'taxAgentIds', - label: '可见性范围', - type: 'SELECT', + key: "sharedType", + label: "可见性", + type: "SELECT", + viewAttr: 2, + tip: "" + }, + { + key: "taxAgentIds", + label: "可见性范围", + type: "SELECT", viewAttr: 3, - tip: '' + tip: "" }, { - key: 'dataType', - label: '字段类型', - type: 'SELECT', + key: "dataType", + label: "字段类型", + type: "SELECT", viewAttr: 3, options: dataTypeOptions, - tip: '' + tip: "" }, { - key: 'roundingMode', - label: '舍入规则', - type: 'SELECT', + key: "roundingMode", + label: "舍入规则", + type: "SELECT", viewAttr: 2, options: roundingModeOptions, - tip: '' + tip: "" }, { - key: 'pattern', - label: '保留小数位', - type: 'SELECT', + key: "pattern", + label: "保留小数位", + type: "SELECT", viewAttr: 2, options: patternOptions, - tip: '' + tip: "" }, { - key: 'valueType', - label: '取值方式', - type: 'RADIO', + key: "valueType", + label: "取值方式", + type: "RADIO", viewAttr: 2, - tip: '' + tip: "" }, { - key: 'formulaContent', - label: '公式', - type: 'INPUT', + key: "formulaContent", + label: "公式", + type: "INPUT", viewAttr: 2, - tip: '' + tip: "" }, { key: "sortedIndex", @@ -134,18 +143,18 @@ export const salaryItemFields = [ tip: "" }, { - key: 'description', - label: '备注', - type: 'TEXTAREA', + key: "description", + label: "备注", + type: "TEXTAREA", viewAttr: 2, - tip: '' - }, + tip: "" + } +]; +export const valTakeOptions = [ + { key: "1", showname: "输入" }, + { key: "2", showname: "公式" }, + { key: "3", showname: "SQL" } ]; -export const valTakeOptions=[ - {key: "1", showname: '输入'}, - {key: "2", showname: '公式'}, - {key: "3", showname: 'SQL'}, -] diff --git a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js index 1f09d059..3a348a5e 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js @@ -5,7 +5,7 @@ * Date: 2023/2/9 */ import React, { Component } from "react"; -import { WeaCheckbox, WeaFormItem, WeaInput, WeaSearchGroup, WeaSelect, WeaTextarea, WeaInputNumber } from "ecCom"; +import { WeaCheckbox, WeaFormItem, WeaInput, WeaInputNumber, WeaSearchGroup, WeaSelect, WeaTextarea } from "ecCom"; import { salaryItemFields, valTakeOptions } from "./columns"; class SalaryItemForm extends Component { @@ -18,12 +18,20 @@ class SalaryItemForm extends Component { componentDidMount() { const { salaryItemFieldsList } = this.state; - const { request, editable, record, isAdd, taxAgentAdminOption } = this.props; - const { systemType, sharedType, valueType } = request; + const { request, editable, record, isAdd = false, taxAgentAdminOption, isLedger = false } = this.props; + const { systemType = "", sharedType, valueType } = request; this.setState({ salaryItemFieldsList: _.map(salaryItemFieldsList, item => { const { key } = item; switch (key) { + case "useDefault": + case "sortedIndex": + case "description": + return { + ...item, + viewAttr: (!isLedger && ((editable && record.canEdit) || isAdd)) ? 2 : 1, + display: !isLedger + }; case "useInEmployeeSalary": return { ...item, @@ -44,16 +52,17 @@ class SalaryItemForm extends Component { display: (!_.isNil(sharedType) && sharedType.toString() === "1") && (!_.isNil(systemType) && systemType.toString() === "0"), options: taxAgentAdminOption }; + case "hideDefault": case "valueType": return { ...item, - viewAttr: isAdd ? 2 : 1 + viewAttr: (isLedger && record.canEdit) || (editable && record.canEdit) || isAdd ? 2 : 1 }; case "formulaContent": return { ...item, - display: valueType === "2" || valueType === "3", - viewAttr: (editable && record.canEdit) || isAdd ? 2 : 1 + display: valueType && (valueType.toString() === "2" || valueType.toString() === "3"), + viewAttr: (isLedger && record.canEdit) || (editable && record.canEdit) || isAdd ? 2 : 1 }; default: break; @@ -86,7 +95,7 @@ class SalaryItemForm extends Component { if (key === "valueType") { onChangeFieldsItem({ formulaContent: "", formulaId: 0, valueType: v }); } else { - onChangeFieldsItem({ [key]: (key === "useDefault" || key === "useInEmployeeSalary") ? Number(v) : v }); + onChangeFieldsItem({ [key]: (key === "useDefault" || key === "useInEmployeeSalary" || key === "hideDefault") ? Number(v) : v }); } }); }; @@ -131,7 +140,7 @@ class SalaryItemForm extends Component { (type === "INPUTNUMBER" && display) ? this.handleChangeSalaryFiledItems(key, v)}/> + onChange={v => this.handleChangeSalaryFiledItems(key, v)}/> : null } ; From ac37e9b16d11a4b9aece50f10c6d5cffed4497fa 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 15:37:57 +0800 Subject: [PATCH 02/24] =?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/ledgerSalaryItemEditSlide.js | 3 ++- .../components/ledgerSalaryItemTable.js | 22 ++++++++++++++++--- .../pages/salaryItem/salaryItemForm.js | 2 +- 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js index 3e461453..fa968445 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemEditSlide.js @@ -20,6 +20,7 @@ class LedgerSalaryItemEditSlide extends Component { handleChange = (params) => { const request = { ...this.props.request, ...params }; + console.log(this.props.request, params); this.props.onUpdateRequest(request); }; handleShowFormal = () => this.props.onEditFormnul(); @@ -34,7 +35,7 @@ class LedgerSalaryItemEditSlide extends Component { title={ } content={ diff --git a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js index cc3254a4..e33d7ce3 100644 --- a/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js +++ b/pc4mobx/hrmSalary/pages/ledgerPage/components/ledgerSalaryItemTable.js @@ -22,7 +22,7 @@ class LedgerSalaryItemTable extends Component { salaryItemPayload: { visible: false, record: {}, request: {}, isLedger: true, - userStatusList: [] + userStatusList: [], loading: false } }; } @@ -38,6 +38,7 @@ class LedgerSalaryItemTable extends Component { onHandleItemhide( _.map([...dataSource], item => { if (id === item.id || id === item.key) { + alert(1); return { ...item, itemHide: String(value) @@ -86,15 +87,30 @@ class LedgerSalaryItemTable extends Component { */ handleSaveItem = () => { const { salaryItemPayload } = this.state; - const { request } = salaryItemPayload; + const { request, record } = salaryItemPayload; + this.setState({ + salaryItemPayload: { ...salaryItemPayload, loading: true } + }); 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 } + })); }; render() { diff --git a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js index 3a348a5e..333991c6 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js @@ -92,7 +92,7 @@ class SalaryItemForm extends Component { return { ...item }; }) }, () => { - if (key === "valueType") { + if (key === "valueType" && !this.props.isLedger) { onChangeFieldsItem({ formulaContent: "", formulaId: 0, valueType: v }); } else { onChangeFieldsItem({ [key]: (key === "useDefault" || key === "useInEmployeeSalary" || key === "hideDefault") ? Number(v) : v }); 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 03/24] =?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 04/24] =?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 05/24] =?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 06/24] =?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 07/24] =?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 08/24] =?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 09/24] =?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 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 10/24] =?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 11/24] =?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 12/24] =?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 13/24] =?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 14/24] =?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 15/24] =?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 16/24] =?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 17/24] =?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 18/24] =?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 19/24] =?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 20/24] =?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 21/24] =?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 22/24] =?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 23/24] =?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 49dce1c871a87e4ff31da0ae94661b2925f1df44 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, 17 Aug 2023 13:45:21 +0800 Subject: [PATCH 24/24] =?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) }