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(); + } + }); }); };