-
+ {
+ renderSalaryFilesForm(salaryFileForm, conditions, setHasBeenModify)
+ }
+ {
+ runStatuses !== "pending" && visible &&
+
+
+
+ }
+ this.setState({
+ adjLogRecordDialog: {
+ adjLogRecordDialog, visible: false, title: "", salaryArchiveId: ""
+ }
+ })}
+ />
}
/>
);
diff --git a/pc4mobx/hrmSalary/pages/payrollFiles/config/index.js b/pc4mobx/hrmSalary/pages/payrollFiles/config/index.js
index cd19b405..a8b4dc15 100644
--- a/pc4mobx/hrmSalary/pages/payrollFiles/config/index.js
+++ b/pc4mobx/hrmSalary/pages/payrollFiles/config/index.js
@@ -1,9 +1,8 @@
import React from "react";
-import { WeaHelpfulTip, WeaLocaleProvider, WeaTools } from "ecCom";
+import { WeaHelpfulTip, WeaLocaleProvider } from "ecCom";
import { Button, Dropdown, Menu } from "antd";
import AdvanceInputBtn from "../components/advanceInputBtn";
-const getKey = WeaTools.getKey;
const getLabel = WeaLocaleProvider.getLabel;
export const tabCondition = [
@@ -321,6 +320,24 @@ export const salaryFileSearchConditions = [
labelcol: 8,
value: "",
viewAttr: 2
+ },
+ {
+ conditionType: "RANGEPICKER",
+ domkey: ["payStartDateStartDateStr", "payStartDateEndDateStr"],
+ fieldcol: 16,
+ label: getLabel(542346, "起始发薪日期"),
+ labelcol: 8,
+ value: "",
+ viewAttr: 2
+ },
+ {
+ conditionType: "RANGEPICKER",
+ domkey: ["payEndDateStartDateStr", "payEndDateEndDateStr"],
+ fieldcol: 16,
+ label: getLabel(542347, "最后发薪日期"),
+ labelcol: 8,
+ value: "",
+ viewAttr: 2
}
],
defaultshow: true,
@@ -328,6 +345,115 @@ export const salaryFileSearchConditions = [
col: 2
}
];
+export const salaryFilesConditions = [
+ {
+ defaultshow: true, title: getLabel(1361, "基本信息"),
+ col: 3,
+ items: [
+ {
+ colSpan: 3,
+ conditionType: "INPUT",
+ domkey: ["username"],
+ fieldcol: 14,
+ label: "姓名",
+ lanId: 25034,
+ labelcol: 10,
+ value: "",
+ viewAttr: 1
+ },
+ {
+ colSpan: 3,
+ conditionType: "INPUT",
+ domkey: ["department"],
+ fieldcol: 14,
+ label: "部门",
+ lanId: 27511,
+ labelcol: 10,
+ value: "",
+ viewAttr: 1
+ },
+ {
+ colSpan: 3,
+ conditionType: "INPUT",
+ domkey: ["position"],
+ fieldcol: 14,
+ label: "岗位",
+ lanId: 6086,
+ labelcol: 10,
+ value: "",
+ viewAttr: 1
+ },
+ {
+ colSpan: 3,
+ conditionType: "INPUT",
+ domkey: ["hiredate"],
+ fieldcol: 14,
+ label: "入职时间",
+ lanId: 1908,
+ labelcol: 10,
+ value: "",
+ viewAttr: 1
+ },
+ {
+ colSpan: 3,
+ conditionType: "INPUT",
+ domkey: ["mobile"],
+ fieldcol: 14,
+ label: "手机号",
+ lanId: 125238,
+ labelcol: 10,
+ value: "",
+ viewAttr: 1
+ },
+ {
+ colSpan: 3,
+ conditionType: "INPUT",
+ domkey: ["taxAgent"],
+ fieldcol: 14,
+ label: "个税扣缴义务人",
+ lanId: 537996,
+ labelcol: 10,
+ value: "",
+ viewAttr: 1
+ }
+ ]
+ },
+ {
+ defaultshow: true, title: getLabel(543329, "发薪设置"),
+ col: 1,
+ items: [
+ {
+ colSpan: 1,
+ conditionType: "DATEPICKER",
+ domkey: ["payStartDate"],
+ fieldcol: 16,
+ label: "起始发薪日期",
+ lanId: 542346,
+ labelcol: 8,
+ value: "",
+ rules: "required|string",
+ viewAttr: 3
+ },
+ {
+ colSpan: 1,
+ conditionType: "DATEPICKER",
+ domkey: ["payEndDate"],
+ fieldcol: 16,
+ label: "最后发薪日期",
+ lanId: 542347,
+ labelcol: 8,
+ value: "",
+ viewAttr: 2
+ }
+ ]
+ },
+ {
+ defaultshow: true, title: getLabel(538004, "薪资档案"),
+ titleHelpful: getLabel(543330, "提示:显示已生效的最新数据"),
+ col: 2, salaryFile: true,
+ items: []
+ }
+];
const HelpfulDiv = () => {
return
{getLabel(544742, "导入按钮使用场景说明:")}
diff --git a/pc4mobx/hrmSalary/pages/payrollFiles/index.less b/pc4mobx/hrmSalary/pages/payrollFiles/index.less
index 026f6d6e..35111db5 100644
--- a/pc4mobx/hrmSalary/pages/payrollFiles/index.less
+++ b/pc4mobx/hrmSalary/pages/payrollFiles/index.less
@@ -243,6 +243,51 @@
overflow-y: auto;
padding: 16px;
+ .basic-salary-file-wrapper {
+ .wea-form-cell-wrapper {
+ .wea-field-readonly {
+ vertical-align: bottom;
+
+ span.child-item {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ max-width: 125px;
+ }
+ }
+
+ & > div {
+ border-right: 1px solid #e5e5e5;
+ border-bottom: 1px solid #e5e5e5;
+ }
+
+ & > div:nth-child(3) {
+ border-bottom: 1px solid #e5e5e5;
+ }
+
+ & > div:nth-child(4), & > div:nth-child(5) {
+ border-right: 1px solid #e5e5e5;
+ }
+ }
+ }
+
+ .twoColumns-salary-file-wrapper {
+ .wea-form-cell-wrapper {
+ & > div {
+ border-right: 1px solid #e5e5e5;
+ border-bottom: 1px solid #e5e5e5;
+ }
+
+ & > div:nth-child(2n) {
+ border-right: none;
+ }
+
+ & > div:last-child {
+ border-bottom: none;
+ }
+ }
+ }
+
.wea-search-group, .wea-form-cell {
padding: 0;
diff --git a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/components/welfareEditArchiveSlide/index.js b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/components/welfareEditArchiveSlide/index.js
index 4e7c7836..87aab6f1 100644
--- a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/components/welfareEditArchiveSlide/index.js
+++ b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/components/welfareEditArchiveSlide/index.js
@@ -41,7 +41,8 @@ class Index extends Component {
const { data: taxAgentList } = await getTaxAgentSelectList();
const {
archivesStore: { welfareProfileForm }, socialBase, fundBase, otherBase, runStatuses,
- employeeId, paymentOrganization, socialBaseData, fundBaseData, othersBaseData
+ employeeId, paymentOrganization, socialBaseData, fundBaseData, othersBaseData,
+ showOperateBtn
} = props;
let socialComData = {}, fundComData = {}, otherComData = {};
if (!_.isNil(socialBase.comItems) && !_.isNil(socialBase.comData)) {
@@ -83,7 +84,7 @@ class Index extends Component {
if (o.title === "basic") {
return {
...o, title: getLabel(542699, "员工基本信息"),
- viewAttr: runStatuses === "4,5" ? 1 : o.viewAttr,
+ viewAttr: (runStatuses === "4,5" || !showOperateBtn) ? 1 : o.viewAttr,
items: _.map(o.items, g => {
return { ...g, label: getLabel(g.lanId, g.label) };
})
@@ -107,13 +108,13 @@ class Index extends Component {
const key = _.lowerCase(getKey(g)).indexOf("take") !== -1 ? "underTake" : getKey(g);
return {
...g, label: getLabel(g.lanId, g.label),
- viewAttr: runStatuses === "4,5" ? 1 : g.viewAttr,
+ viewAttr: (runStatuses === "4,5" || !showOperateBtn) ? 1 : g.viewAttr,
options: _.find(props[`${o.title}Items`], j => j.domkey[0] === key).options
};
}
return {
...g, label: getLabel(g.lanId, g.label),
- viewAttr: runStatuses === "4,5" ? 1 : g.viewAttr
+ viewAttr: (runStatuses === "4,5" || !showOperateBtn) ? 1 : g.viewAttr
};
})
};
@@ -122,7 +123,7 @@ class Index extends Component {
...o, items: _.map(o.items, g => {
return {
...g, label: getLabel(g.lanId, g.label),
- viewAttr: runStatuses === "4,5" ? 1 : g.viewAttr
+ viewAttr: (runStatuses === "4,5" || !showOperateBtn) ? 1 : g.viewAttr
};
})
};
@@ -202,7 +203,11 @@ class Index extends Component {
updateFormData = (baseData) => this.setState({ formData: { ...this.state.formData, ...baseData } });
handleFormChange = (val) => {
const changeKey = _.keys(val)[0], changeVal = val[changeKey].value;
- const { archivesStore: { setHasBeenModify }, onChangeProgramme, employeeId, paymentOrganization } = this.props;
+ const {
+ archivesStore: { setHasBeenModify },
+ onChangeProgramme, employeeId,
+ paymentOrganization, showOperateBtn
+ } = this.props;
setHasBeenModify(true);
if (changeKey === "socialSchemeId" || changeKey === "fundSchemeId" || changeKey === "otherSchemeId") {
this.setState({
@@ -216,7 +221,7 @@ class Index extends Component {
...o, items: _.map(o.items, g => {
if (getKey(g).indexOf("StartTime") !== -1) {
return {
- ...g, viewAttr: changeVal ? 3 : g.viewAttr
+ ...g, viewAttr: (changeVal && showOperateBtn) ? 3 : g.viewAttr
};
}
return { ...g };
@@ -257,7 +262,7 @@ class Index extends Component {
});
renderTitle = () => {
const { loading } = this.state;
- const { runStatuses } = this.props;
+ const { runStatuses, showOperateBtn } = this.props;
return
@@ -265,7 +270,7 @@ class Index extends Component {
{
- runStatuses !== "4,5" &&
+ runStatuses !== "4,5" && showOperateBtn &&
}
@@ -287,7 +292,7 @@ class Index extends Component {
};
render() {
- const { archivesStore: { welfareProfileForm } } = this.props;
+ const { archivesStore: { welfareProfileForm }, showOperateBtn } = this.props;
const { conditions, formData } = this.state;
return (
}
diff --git a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/components/welfareTableList/index.js b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/components/welfareTableList/index.js
index 30c0743e..17bb4629 100644
--- a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/components/welfareTableList/index.js
+++ b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/components/welfareTableList/index.js
@@ -71,7 +71,7 @@ class Index extends Component {
this.getWelfareList(this.props);
} else if (type === "turn") {
const { record: { baseInfo, employeeId, paymentOrganization } = {}, interfaceParams = {} } = params;
- const { runStatuses } = this.props;
+ const { runStatuses, showOperateBtn } = this.props;
switch (id) {
case "PAGEINFO":
this.setState({
@@ -116,7 +116,7 @@ class Index extends Component {
]);
this.setState({
welfareEditSlide: {
- ...this.state.welfareEditSlide, visible: true,
+ ...this.state.welfareEditSlide, visible: true, showOperateBtn,
socialBase: socialBase.data, fundBase: fundBase.data, otherBase: otherBase.data
}
});
diff --git a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/config.js b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/config.js
index 5548c79d..b492bf50 100644
--- a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/config.js
+++ b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/config.js
@@ -660,13 +660,16 @@ export const welfareConditions = [
]
}
];
-export const getWelfareSearchsForm = (form, condition, onChange = () => void (0), onNoPaymentChange = () => void (0), onExtraChange = () => void (0), onSameChange = () => void (0), payload, extraFormField) => {
+export const getWelfareSearchsForm = (
+ form, condition, onChange = () => void (0),
+ onNoPaymentChange = () => void (0), onExtraChange = () => void (0), onSameChange = () => void (0),
+ payload, extraFormField, showOperateBtn) => {
const CustomComponent = ({ type }) => {
const value = payload[type].nonPayment ? payload[type].nonPayment.toString() : "";
return onNoPaymentChange(type, v)}
- disabled={runStatuses === "4,5"}
+ disabled={runStatuses === "4,5" || !showOperateBtn}
/>;
};
const { socialBase, fundBase, otherBase, runStatuses } = extraFormField;
@@ -703,18 +706,24 @@ export const getWelfareSearchsForm = (form, condition, onChange = () => void (0)
...pre, cur,
({ ...o, title: `${o.title}(${getLabel(500201, "个人")})` }))}
- value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}/>,
+ value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}
+ showOperateBtn={showOperateBtn}
+ />,
({
...o, title: `${o.title}(${getLabel(1851, "公司")})`,
items: _.map(o.items, g => ({ ...g, domkey: [`${getKey(g)}_com`] }))
}))}
- value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}/>
+ value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}
+ showOperateBtn={showOperateBtn}
+ />
];
} else {
return [...pre, cur,
];
+ onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}
+ showOperateBtn={showOperateBtn}
+ />];
}
} else if (cur.props.title === getLabel(543197, "公积金基础信息") && _.every(fundBase.items, o => o.items.length > 0)) {
if (!_.isNil(fundBase.comItems) && _.every(fundBase.comItems, o => o.items.length > 0)) {
@@ -722,18 +731,24 @@ export const getWelfareSearchsForm = (form, condition, onChange = () => void (0)
...pre, cur,
({ ...o, title: `${o.title}(${getLabel(500201, "个人")})` }))}
- value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}/>,
+ value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}
+ showOperateBtn={showOperateBtn}
+ />,
({
...o, title: `${o.title}(${getLabel(1851, "公司")})`,
items: _.map(o.items, g => ({ ...g, domkey: [`${getKey(g)}_com`] }))
}))}
- value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}/>
+ value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}
+ showOperateBtn={showOperateBtn}
+ />
];
} else {
return [...pre, cur,
];
+ onSameChange={onSameChange} runStatuses={runStatuses}
+ showOperateBtn={showOperateBtn}
+ />];
}
} else if (cur.props.title === getLabel(543198, "其他福利基础信息") && _.every(otherBase.items, o => o.items.length > 0)) {
if (!_.isNil(otherBase.comItems) && _.every(otherBase.comItems, o => o.items.length > 0)) {
@@ -741,18 +756,24 @@ export const getWelfareSearchsForm = (form, condition, onChange = () => void (0)
...pre, cur,
({ ...o, title: `${o.title}(${getLabel(500201, "个人")})` }))}
- value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}/>,
+ value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}
+ showOperateBtn={showOperateBtn}
+ />,
({
...o, title: `${o.title}(${getLabel(1851, "公司")})`,
items: _.map(o.items, g => ({ ...g, domkey: [`${getKey(g)}_com`] }))
}))}
- value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}/>
+ value={payload} onChange={onExtraChange} onSameChange={onSameChange} runStatuses={runStatuses}
+ showOperateBtn={showOperateBtn}
+ />
];
} else {
return [...pre, cur,
];
+ onSameChange={onSameChange} runStatuses={runStatuses}
+ showOperateBtn={showOperateBtn}
+ />];
}
}
return [...pre, cur];
@@ -760,7 +781,7 @@ export const getWelfareSearchsForm = (form, condition, onChange = () => void (0)
};
const BenefitBaseComponent = (props) => {
- const { dataSource, value, onChange, onSameChange, runStatuses } = props;
+ const { dataSource, value, onChange, onSameChange, runStatuses, showOperateBtn } = props;
return
{
_.map(dataSource, item => {
@@ -773,14 +794,14 @@ const BenefitBaseComponent = (props) => {
min={child.min !== "0.000" ? child.min : -999999999999999}
max={child.max !== "0.000" ? child.max : 999999999999999}
onChange={v => onChange(getKey(child), v)}
- viewAttr={runStatuses === "4,5" ? 1 : 2}
+ viewAttr={(runStatuses === "4,5" || !showOperateBtn) ? 1 : 2}
/>
}))}
customComponent={
{getLabel(543195, "各项福利基数一致")}
onSameChange(items, v)}
- disabled={runStatuses === "4,5"}/>
+ disabled={runStatuses === "4,5" || !showOperateBtn}/>
}
title={title} col={2} showGroup className="twoColumns-welfare-info-wrapper"
/>;
diff --git a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/index.less b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/index.less
index 65aaa543..604c613f 100644
--- a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/index.less
+++ b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/welfareArchive/index.less
@@ -157,6 +157,17 @@
.basic-welfare-info-wrapper {
.wea-form-cell-wrapper {
+ .wea-field-readonly {
+ vertical-align: bottom;
+
+ span.child-item {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ max-width: 125px;
+ }
+ }
+
& > div:nth-child(1), & > div:nth-child(2) {
border-right: 1px solid #e5e5e5;
border-bottom: 1px solid #e5e5e5;
diff --git a/pc4mobx/hrmSalary/stores/payrollFiles.js b/pc4mobx/hrmSalary/stores/payrollFiles.js
index 5e12dd0a..c9095936 100644
--- a/pc4mobx/hrmSalary/stores/payrollFiles.js
+++ b/pc4mobx/hrmSalary/stores/payrollFiles.js
@@ -14,6 +14,11 @@ export class PayrollFilesStore {
@action initAdjustForm = () => this.adjustForm = new WeaForm();//调薪记录-初始化核算form
/*薪资档案页面重构*/
@observable salaryFileQueryForm = new WeaForm(); // 薪资档案查询form
+ @observable salaryFileForm = new WeaForm(); // 薪资档案form
+ @action initSalaryFileForm = () => this.salaryFileForm = new WeaForm(); // 薪资档案form初始化
+
+ @observable hasBeenModify = false; //薪资档案-员工薪资档案-是否修改过
+ @action setHasBeenModify = (v) => this.hasBeenModify = v;//薪资档案-员工薪资档案数据
/*薪资档案页面重构*/
@action("薪资档案-列表查询")