From d60d3db99335b90a09c7c9111c2500b648965a02 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, 10 Feb 2023 10:47:18 +0800
Subject: [PATCH] =?UTF-8?q?=E8=96=AA=E8=B5=84=E9=A1=B9=E7=9B=AE=E7=AE=A1?=
=?UTF-8?q?=E7=90=86=E9=A1=B5=E9=9D=A2=E9=87=8D=E6=9E=84?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../fieldManagement/components/fieldSlide.js | 21 +-
.../pages/fieldManagement/index.less | 13 +-
.../pages/salaryItem/customSalaryItemSlide.js | 241 +-----------------
pc4mobx/hrmSalary/pages/salaryItem/index.js | 14 +-
.../pages/salaryItem/salaryItemForm.js | 37 ++-
pc4mobx/hrmSalary/stores/salaryItem.js | 28 +-
6 files changed, 75 insertions(+), 279 deletions(-)
diff --git a/pc4mobx/hrmSalary/pages/fieldManagement/components/fieldSlide.js b/pc4mobx/hrmSalary/pages/fieldManagement/components/fieldSlide.js
index 81de428b..9712d156 100644
--- a/pc4mobx/hrmSalary/pages/fieldManagement/components/fieldSlide.js
+++ b/pc4mobx/hrmSalary/pages/fieldManagement/components/fieldSlide.js
@@ -184,65 +184,62 @@ class FieldSlide extends Component {
}
content={
-
+
this.handleChangeFields("name", value)}/>
-
+
this.handleChangeFields("useDefault", value)}
/>
-
-
+
this.handleChangeFields("sharedType", value)}
- style={{ width: 200 }}
/>
{
sharedType === "1" &&
-
+
this.handleChangeFields("taxAgentIds", value)}
/>
}
-
+
this.handleChangeFields("dataType", value)}
- style={{ width: 200 }}
/>
-
+
this.handleChangeFields("roundingMode", value)}
/>
-
+
this.handleChangeFields("pattern", value)}
/>
-
+
this.handleChangeFields("description", value)}
diff --git a/pc4mobx/hrmSalary/pages/fieldManagement/index.less b/pc4mobx/hrmSalary/pages/fieldManagement/index.less
index be964427..4053721e 100644
--- a/pc4mobx/hrmSalary/pages/fieldManagement/index.less
+++ b/pc4mobx/hrmSalary/pages/fieldManagement/index.less
@@ -1,7 +1,16 @@
.slideOuterWrapper {
- .wea-form-item-group{
- padding: 56px 80px;
+ .wea-form-item-group {
+ margin: 16px;
+ border: 1px solid #e5e5e5;
+ border-bottom: none;
+
+ .wea-form-item {
+ padding: 4px 16px;
+ margin-bottom: 0;
+ border-bottom: 1px solid #e5e5e5;
+ }
}
+
.wea-slide-modal-title {
height: initial;
line-height: initial;
diff --git a/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js b/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js
index b12fedbc..0b553866 100644
--- a/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js
+++ b/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js
@@ -29,247 +29,12 @@ export default class CustomSalaryItemSlide extends React.Component {
};
render() {
- const { editable, request, isAdd, userStatusList, taxAgentAdminOption } = this.props;
- const {
- name,
- systemType,
- useDefault,
- useInEmployeeSalary,
- roundingMode,
- pattern,
- valueType,
- description,
- dataType,
- formulaContent,
- formulaId,
- sharedType,
- taxAgentIds
- } = request;
+ const { request } = this.props;
+ const { valueType, dataType, formulaId } = request;
const { formalModalVisible } = this.state;
return (
-
- {/**/}
- {/*
*/}
- {/* 名称*/}
- {/* */}
- {/* {*/}
- {/* this.handleChange({ name: value });*/}
- {/* }}*/}
- {/* />*/}
- {/* */}
- {/*
*/}
- {/*
*/}
- {/* 薪资档案引用*/}
- {/* */}
- {/* {*/}
- {/* this.handleChange({ useInEmployeeSalary: value ? 1 : 0 });*/}
- {/* }}*/}
- {/* />*/}
- {/* */}
- {/* */}
- {/*
*/}
- {/*
*/}
- {/* 默认使用*/}
- {/* */}
- {/* {*/}
- {/* this.handleChange({ useDefault: value ? 1 : 0 });*/}
- {/* }}*/}
- {/* />*/}
- {/* */}
- {/* */}
- {/*
*/}
-
- {/* {*/}
- {/* (systemType == 0 || isAdd) &&*/}
- {/*
*/}
- {/* */}
- {/* */}
- {/* 可见性*/}
- {/* */}
- {/* {*/}
- {/* let payload = {};*/}
- {/* (value === "0" || value === "") && (payload.taxAgentIds = "");*/}
- {/* payload.sharedType = value;*/}
- {/* this.handleChange(payload);*/}
- {/* }}*/}
- {/* style={{ width: "200px" }}*/}
- {/* />*/}
- {/* */}
- {/*
*/}
- {/* */}
- {/*
*/}
- {/* }*/}
- {/* {*/}
- {/* sharedType === "1" &&*/}
- {/*
*/}
- {/* */}
- {/* */}
- {/* 可见性范围*/}
- {/* */}
- {/* {*/}
- {/* this.handleChange({ taxAgentIds: value });*/}
- {/* }}*/}
- {/* />*/}
- {/* */}
- {/*
*/}
- {/* */}
- {/*
*/}
- {/* }*/}
- {/*
*/}
- {/* */}
- {/* */}
- {/* 字段类型*/}
- {/* */}
- {/* {*/}
- {/* this.handleChange({ dataType: value });*/}
- {/* }}*/}
- {/* style={{ width: "200px" }}*/}
- {/* />*/}
- {/* */}
- {/*
*/}
- {/* */}
- {/*
*/}
- {/*
*/}
- {/* */}
- {/* */}
- {/* 舍入规则*/}
- {/* */}
- {/* {*/}
- {/* this.handleChange({ roundingMode: value });*/}
- {/* }}*/}
- {/* />*/}
- {/* */}
- {/*
*/}
- {/* */}
- {/* */}
- {/* */}
- {/* 保留小数位*/}
- {/* */}
- {/* {*/}
- {/* this.handleChange({ pattern: value });*/}
- {/* }}*/}
- {/* value={pattern}*/}
- {/* style={{ width: "200px" }}*/}
- {/* />*/}
- {/* */}
- {/*
*/}
- {/* */}
- {/*
*/}
-
- {/*
*/}
- {/* 取值方式*/}
- {/* */}
- {/* {*/}
- {/* this.handleChange({*/}
- {/* valueType: value,*/}
- {/* formulaId: null,*/}
- {/* formulaContent: ""*/}
- {/* });*/}
- {/* }}/>*/}
- {/* */}
- {/*
*/}
- {/* {(valueType == 2 || valueType == 3) &&*/}
- {/*
*/}
- {/* */}
- {/* {valueType == 2 ? "公式" : "SQL"}*/}
- {/* */}
- {/* */}
- {/* {*/}
- {/* if (this.props.record.canEdit || isAdd) {*/}
- {/* editable && this.handleShowFormal();*/}
- {/* }*/}
- {/* }}>*/}
- {/* {formulaContent}*/}
- {/*
*/}
- {/* */}
- {/*
}*/}
-
- {/*
*/}
- {/* 备注*/}
- {/* */}
- {/* {*/}
- {/* this.handleChange({ description: value });*/}
- {/* }}*/}
- {/* />*/}
- {/* */}
- {/*
*/}
- {/*
*/}
+
{formalModalVisible &&
{
this.record = record;
const { salaryItemStore: { getItemForm, setEditSlideVisible } } = this.props;
this.setState({ editable: isedit, isAdd: false });
- getItemForm(record.id);
- setEditSlideVisible(true);
- }
+ getItemForm(record.id).then(() => {
+ setEditSlideVisible(true);
+ });
+ };
// 删除列表项
handleDeleteItem(record) {
@@ -209,7 +210,7 @@ export default class SalaryItem extends React.Component {
} = this.props;
const { userStatusList } = salaryFileStore;
const { selectedRowKeys } = this.state;
- const { loading, deleteItemRequest, getTableDatas } = salaryItemStore;
+ const { loading, deleteItemRequest, getTableDatas, initRequest } = salaryItemStore;
const {
tableDataSource,
tableColumns,
@@ -419,8 +420,7 @@ export default class SalaryItem extends React.Component {
}}/>
}
onClose={() => setEditSlideVisible(false)}
- showMask={true}
- closeMaskOnClick={() => setEditSlideVisible(false)}/>
+ />
}
);
diff --git a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js
index 6edcd68e..97411b6a 100644
--- a/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js
+++ b/pc4mobx/hrmSalary/pages/salaryItem/salaryItemForm.js
@@ -24,6 +24,12 @@ class SalaryItemForm extends Component {
salaryItemFieldsList: _.map(salaryItemFieldsList, item => {
const { key } = item;
switch (key) {
+ case "useInEmployeeSalary":
+ return {
+ ...item,
+ viewAttr: (editable && record.canEdit) || isAdd ? 2 : 1,
+ display: !isAdd
+ };
case "sharedType":
return {
...item,
@@ -31,12 +37,17 @@ class SalaryItemForm extends Component {
display: systemType.toString() === "0" || isAdd
};
case "taxAgentIds":
- console.log('123',sharedType, !_.isNil(sharedType) && sharedType.toString() === "1");
return {
...item,
+ multiple: true,
viewAttr: (editable && record.canEdit) || isAdd ? 3 : 1,
- display: !_.isNil(sharedType) && sharedType.toString() === "1",
- options: [{ key: "", showname: "" }, ...taxAgentAdminOption]
+ display: (!_.isNil(sharedType) && sharedType.toString() === "1") && (!_.isNil(systemType) && systemType.toString() === "0"),
+ options: taxAgentAdminOption
+ };
+ case "valueType":
+ return {
+ ...item,
+ viewAttr: isAdd ? 2 : 1
};
case "formulaContent":
return {
@@ -63,29 +74,38 @@ class SalaryItemForm extends Component {
if (key === "sharedType" && item.key === "taxAgentIds") {
return { ...item, display: v === "1", viewAttr: 3 };
} else if (key === "valueType" && item.key === "formulaContent") {
- return { ...item, display: v === "2" || v === "3" };
+ return {
+ ...item,
+ label: v === "2" ? "公式" : v === "3" ? "SQL" : "",
+ display: v === "2" || v === "3"
+ };
}
return { ...item };
})
}, () => {
- onChangeFieldsItem({ [key]: (key === "useDefault" || key === "useInEmployeeSalary") ? Number(v) : v });
+ if (key === "valueType") {
+ onChangeFieldsItem({ formulaContent: "", formulaId: 0, valueType: v });
+ } else {
+ onChangeFieldsItem({ [key]: (key === "useDefault" || key === "useInEmployeeSalary") ? Number(v) : v });
+ }
});
};
render() {
- const { userStatusList, request } = this.props;
+ const { userStatusList, request, onShowFormal } = this.props;
const { salaryItemFieldsList } = this.state;
return (
{
_.map(salaryItemFieldsList, item => {
- const { key, label, type, viewAttr, tip, options, display = true } = item;
+ const { key, label, type, viewAttr, tip, options, display = true, multiple = false } = item;
const value = !_.isNil(request[key]) ? request[key].toString() : "";
return
{
(type === "INPUT" && display) ?
key === "formulaContent" && onShowFormal()}
onChange={v => this.handleChangeSalaryFiledItems(key, v)}/> :
(type === "SWITCH" && display) ?
@@ -95,7 +115,8 @@ class SalaryItemForm extends Component {
(type === "SELECT" && display) ?
this.handleChangeSalaryFiledItems(key, v)}/>
+ multiple={multiple} viewAttr={viewAttr}
+ onChange={v => this.handleChangeSalaryFiledItems(key, v)}/>
:
(type === "RADIO" && display) ?
diff --git a/pc4mobx/hrmSalary/stores/salaryItem.js b/pc4mobx/hrmSalary/stores/salaryItem.js
index 0550868b..4efa0c47 100644
--- a/pc4mobx/hrmSalary/stores/salaryItem.js
+++ b/pc4mobx/hrmSalary/stores/salaryItem.js
@@ -163,18 +163,22 @@ export class SalaryItemStore {
//薪资项目-薪资项目详情
@action
getItemForm = (id) => {
- API.getItemForm({ id }).then(res => {
- if (res.status) {
- let data = res.data;
- Object.keys(data).map(key => {
- if (!_.isNil(data[key])) {
- data[key] = data[key].toString();
- }
- });
- this.request = data;
- } else {
- message.error(res.errormsg || "获取失败");
- }
+ return new Promise((resolve, reject) => {
+ API.getItemForm({ id }).then(res => {
+ if (res.status) {
+ let data = res.data;
+ Object.keys(data).map(key => {
+ if (!_.isNil(data[key])) {
+ data[key] = data[key].toString();
+ }
+ });
+ this.setRequest(data);
+ resolve();
+ } else {
+ message.error(res.errormsg || "获取失败");
+ reject();
+ }
+ });
});
};