@@ -21,14 +21,21 @@ class Index extends Component {
this.props.onChange({ dateRange: v })}/>
-
-
this.props.onChange({ name: v })}
- onSearch={this.props.onSearch}
- />
- {getLabel(111, "高级搜索")}
+
+ 状态:
+ this.props.onChange({ status: v })}
+ viewAttr={2}
+ value={status}
+ options={[{"key": "0","selected": true,"showname": ""}, {"key": "1","selected": false,"showname": "未归档"}, {"key": "2","selected": false,"showname": "已归档"}, {"key": "3","selected": false,"showname": "已申报"}]} />
+ this.props.onChange({ name: v })}
+ onSearch={this.props.onSearch}
+ />
);
}
diff --git a/pc4mobx/hrmSalary/pages/calculate/components/calculateTablelist/index.js b/pc4mobx/hrmSalary/pages/calculate/components/calculateTablelist/index.js
index 0b4ea0a0..6a57a7f5 100644
--- a/pc4mobx/hrmSalary/pages/calculate/components/calculateTablelist/index.js
+++ b/pc4mobx/hrmSalary/pages/calculate/components/calculateTablelist/index.js
@@ -29,14 +29,12 @@ class Index extends Component {
}
getSalaryAcctList = (props) => {
- const { pageInfo } = this.state, { queryParams, form } = props;
- const { taxAgentIds } = form.getFormParams();
- const { dateRange, ...extra } = queryParams;
+ const { pageInfo } = this.state;
+ const { queryParams } = props;
+ const { dateRange,status, ...extra } = queryParams;
const [startMonthStr, endMonthStr] = dateRange || [];
- const params = { startMonthStr, endMonthStr, ...extra };
- const payload = {
- ...pageInfo, ...params, taxAgentIds: taxAgentIds ? taxAgentIds.split(",") : []
- };
+ const params = { startMonthStr, endMonthStr, status, ...extra };
+ const payload = { ...pageInfo, ...params };
this.setState({ loading: true });
getSalaryAcctList(payload).then(({ status, data }) => {
this.setState({ loading: false });
diff --git a/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryCalcPersonConfirm/index.js b/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryCalcPersonConfirm/index.js
index e06144ba..74ab9dd9 100644
--- a/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryCalcPersonConfirm/index.js
+++ b/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryCalcPersonConfirm/index.js
@@ -15,7 +15,8 @@ import {
deleteAcctemployee,
reducedemployeeList,
refreshAcctemployee,
- saveAcctemployee
+ saveAcctemployee,
+ getGzceList
} from "../../../../../apis/calculate";
import { personConfirmSearchConditions } from "./condition";
import { getSearchs } from "../../../../../util";
@@ -26,7 +27,8 @@ const getLabel = WeaLocaleProvider.getLabel;
const api = {
range: acctemployeeList,
sub: reducedemployeeList,
- add: addedemployeeList
+ add: addedemployeeList,
+ gzce: getGzceList
};
@inject("calculateStore")
@@ -45,9 +47,11 @@ class Index extends Component {
componentDidMount() {
if ($) {
const domTabInnerList = $(".salary-calculate-do-calc-content .ant-tabs-tab-inner");
- domTabInnerList[0].setAttribute("title", "");
- domTabInnerList[1].setAttribute("title", "");
- domTabInnerList[2].setAttribute("title", "");
+ if (domTabInnerList && domTabInnerList.length > 0){
+ domTabInnerList[0].setAttribute("title", "");
+ domTabInnerList[1].setAttribute("title", "");
+ domTabInnerList[2].setAttribute("title", "");
+ }
}
this.setState({
searchConditions: _.map(personConfirmSearchConditions, item => {
@@ -79,24 +83,34 @@ class Index extends Component {
renderTabBtns = () => {
const { selectedKey, selectedRowKeys } = this.state;
- const { calcDetail } = this.props;
+ const { calcDetail,readOnly } = this.props;
let tabBtns = [];
switch (selectedKey) {
case "range":
+ tabBtns = [
+
this.handleDeletePCitem()}/>,
+ ids && this.handleUserBrowserChange(ids.split(","))}
+ >
+
+ ,
+ ,
+
+ ];
+ calcDetail && tabBtns.splice(0, 2);
+ if (readOnly) {
+ tabBtns = [
+
+ ];
+ }
+ break;
+ case "gzce":
tabBtns = [
- this.handleDeletePCitem()}/>,
- ids && this.handleUserBrowserChange(ids.split(","))}
- >
-
- ,
- ,
];
- calcDetail && tabBtns.splice(0, 2);
break;
case "add":
case "sub":
@@ -163,6 +177,9 @@ class Index extends Component {
url = `${window.location.origin}/api/bs/hrmsalary/salaryacct/acctemployee/export?salaryAcctRecordId=${salaryAcctRecordId}&${convertToUrlString(PCSearchForm.getFormParams())}`;
} else if (this.state.selectedKey === "sub") {
url = `${window.location.origin}/api/bs/hrmsalary/salaryacct/reducedemployee/export?salaryAcctRecordId=${salaryAcctRecordId}&${convertToUrlString(PCSearchForm.getFormParams())}`;
+ // 2025-12-11 by ydh 新增环比上月实发工资差额页签
+ } else if (this.state.selectedKey === "gzce") {
+ url = `${window.location.origin}/api/bs/hrmsalary/salaryacct/gzceList/export?salaryAcctRecordId=${salaryAcctRecordId}&${convertToUrlString(PCSearchForm.getFormParams())}`;
} else {
url = `${window.location.origin}/api/bs/hrmsalary/salaryacct/addedemployee/export?salaryAcctRecordId=${salaryAcctRecordId}&${convertToUrlString(PCSearchForm.getFormParams())}`;
}
@@ -239,6 +256,11 @@ class Index extends Component {
style={{ marginLeft: 8 }}
/>
, viewcondition: "add"
+ },
+ {
+ title:
+ 环比上月实发工资差额
+ , viewcondition: "gzce"
}
];
const pagination = {
@@ -281,6 +303,27 @@ class Index extends Component {
searchsBaseValue={PCSearchForm.getFormParams().employeeName}
onAdReset={() => PCSearchForm.resetForm()} autoCalculateWidth
/>
+ {selectedKey === "gzce" && {
+ let width = "";
+ const {dataIndex} = item;
+ switch (dataIndex) {
+ case "taxAgentName":
+ case "departmentName":
+ width = "15%";
+ break;
+ default:
+ width = "45%";
+ break;
+ }
+ return {...item, width};
+ })
+ ]}
+ />
+ }
+ {selectedKey !== "gzce" &&
+ }
);
}
diff --git a/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryEditCalc/condition.js b/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryEditCalc/condition.js
deleted file mode 100644
index 9340de40..00000000
--- a/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryEditCalc/condition.js
+++ /dev/null
@@ -1,176 +0,0 @@
-export const editCalcSearchConditions = [
- {
- items: [
- {
- colSpan: 2,
- conditionType: "INPUT",
- domkey: ["employeeName"],
- fieldcol: 12,
- label: "姓名",
- lanId: 25034,
- labelcol: 6,
- value: "",
- viewAttr: 2
- },
- {
- colSpan: 2,
- conditionType: "INPUT",
- domkey: ["workcode"],
- fieldcol: 12,
- label: "工号",
- lanId: 1933,
- labelcol: 6,
- value: "",
- viewAttr: 2
- },
- {
- browserConditionParam: {
- completeParams: {},
- conditionDataParams: {},
- dataParams: {},
- destDataParams: {},
- hasAddBtn: false,
- hasAdvanceSerach: false,
- idSeparator: ",",
- isAutoComplete: 1,
- isDetail: 0,
- isMultCheckbox: false,
- isSingle: false,
- icon: "icon-coms-hrm",
- linkUrl: "",
- pageSize: 10,
- quickSearchName: "",
- replaceDatas: [],
- title: "",
- type: "164",
- viewAttr: 2
- },
- colSpan: 1,
- conditionType: "BROWSER",
- domkey: ["subcompanyIds"],
- fieldcol: 12,
- label: "分部",
- lanId: 33553,
- labelcol: 6,
- viewAttr: 2
- },
- {
- browserConditionParam: {
- completeParams: {},
- conditionDataParams: {},
- dataParams: {},
- destDataParams: {},
- hasAddBtn: false,
- hasAdvanceSerach: false,
- idSeparator: ",",
- isAutoComplete: 1,
- isDetail: 0,
- isMultCheckbox: false,
- isSingle: false,
- icon: "icon-coms-hrm",
- linkUrl: "",
- pageSize: 10,
- quickSearchName: "",
- replaceDatas: [],
- title: "",
- type: "57",
- viewAttr: 2
- },
- colSpan: 2,
- conditionType: "BROWSER",
- domkey: ["departmentIds"],
- fieldcol: 12,
- label: "部门",
- lanId: 27511,
- labelcol: 6,
- viewAttr: 2
- },
- {
- browserConditionParam: {
- completeParams: {},
- conditionDataParams: {},
- dataParams: {},
- destDataParams: {},
- hasAddBtn: false,
- hasAdvanceSerach: false,
- idSeparator: ",",
- isAutoComplete: 1,
- isDetail: 0,
- isMultCheckbox: false,
- isSingle: false,
- icon: "icon-coms-hrm",
- linkUrl: "",
- pageSize: 10,
- quickSearchName: "",
- replaceDatas: [],
- title: "",
- type: "24",
- viewAttr: 2
- },
- colSpan: 2,
- conditionType: "BROWSER",
- domkey: ["positionIds"],
- fieldcol: 12,
- label: "岗位",
- lanId: 6086,
- labelcol: 6,
- viewAttr: 2
- },
- {
- colSpan: 2,
- conditionType: "SELECT",
- domkey: ["statuses"],
- fieldcol: 12,
- multiple: true,
- label: "状态",
- lanId: 535101,
- labelcol: 6,
- options: [],
- viewAttr: 2
- },
- {
- colSpan: 2,
- conditionType: "CHECKBOX",
- domkey: ["consolidatedTaxation"],
- fieldcol: 12,
- isQuickSearch: false,
- label: "合并计税",
- labelcol: 6,
- viewAttr: 2
- }
- ],
- defaultshow: true,
- title: "常用条件"
- }
-];
-export const batchUpdateConditions = [
- {
- items: [
- {
- colSpan: 1,
- conditionType: "INPUT",
- domkey: ["salaryItemName"],
- fieldcol: 14,
- label: "批量编辑项目",
- lanId: 111,
- labelcol: 6,
- value: "",
- viewAttr: 1
- },
- {
- colSpan: 1,
- conditionType: "INPUTNUMBER",
- domkey: ["value"],
- fieldcol: 14,
- label: "批量编辑为",
- lanId: 111,
- labelcol: 6,
- value: "",
- rules: "required",
- viewAttr: 3
- }
- ],
- defaultshow: true,
- title: ""
- }
-];
diff --git a/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryEditCalc/editCalcAdvanceSearchPannel.js b/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryEditCalc/editCalcAdvanceSearchPannel.js
deleted file mode 100644
index 4ddc7908..00000000
--- a/pc4mobx/hrmSalary/pages/calculate/doCalc/components/salaryEditCalc/editCalcAdvanceSearchPannel.js
+++ /dev/null
@@ -1,206 +0,0 @@
-/*
- * Author: 黎永顺
- * name: 薪资核算-高级搜索面板
- * Description:
- * Date: 2023/9/14
- */
-import React, { Component } from "react";
-import { WeaFormItem, WeaInput, WeaLocaleProvider, WeaSearchGroup, WeaSelect, WeaTools } from "ecCom";
-import { Button, Col, Row } from "antd";
-import { inject, observer } from "mobx-react";
-import uuidV4 from "uuid/v4";
-import { editCalcSearchConditions } from "./condition";
-import { getExportField } from "../../../../../apis/calculate";
-import { commonEnumList } from "../../../../../apis/ruleconfig";
-import { getSearchs } from "../../../../../util";
-
-const getKey = WeaTools.getKey;
-const getLabel = WeaLocaleProvider.getLabel;
-
-@inject("calculateStore")
-@observer
-class EditCalcAdvanceSearchPannel extends Component {
- constructor(props) {
- super(props);
- this.state = {
- searchConditions: [], salaryItems: [],
- customSearchConditions: [], filterEnum: []
- };
- }
-
- componentDidMount() {
- this.getExportField();
- this.getFilterEnumList();
- this.setState({
- searchConditions: _.map(editCalcSearchConditions, item => {
- return {
- ...item,
- items: _.map(item.items, o => {
- if (getKey(o) === "statuses") {
- return {
- ...o,
- options: [
- { key: "0", showname: getLabel(18883, "试用") }, { key: "1", showname: getLabel(15711, "正式") },
- { key: "2", showname: getLabel(480, "临时") }, { key: "3", showname: getLabel(15844, "试用延期") },
- { key: "4", showname: getLabel(542707, "解雇") }, { key: "5", showname: getLabel(6091, "离职") },
- { key: "6", showname: getLabel(6092, "退休") }
- ]
- };
- }
- return { ...o };
- }),
- title: getLabel(32905, "常用条件")
- };
- })
- }, () => {
- const { calculateStore: { ECSearchForm } } = this.props;
- ECSearchForm.initFormFields(this.state.searchConditions);
- });
- }
-
- getFilterEnumList = () => {
- commonEnumList({ enumClass: "com.engine.salary.enums.common.FilterEnum" })
- .then(({ status, data }) => {
- if (status) {
- this.setState({
- filterEnum: _.map(data, item => ({
- key: item.value,
- showname: item.defaultLabel
- }))
- });
- }
- });
- };
- getExportField = () => {
- getExportField({ salaryAcctRecordId: this.props.salaryAcctRecordId })
- .then(({ status, data }) => {
- if (status) {
- const { itemsByGroup } = data;
- this.setState({
- salaryItems: _.map(itemsByGroup, item => ({
- key: item.salarySobItemGroupId.toString(),
- label: item.salarySobItemGroupName,
- options: _.map(item.salaryItems, o => ({
- key: o.salaryItemId.toString(), showname: o.salaryItemName
- }))
- }))
- });
- }
- });
- };
- handleAddCustomSearchForm = () => {
- const { calculateStore: { setOtherConditions } } = this.props;
- const { customSearchConditions, salaryItems, filterEnum } = this.state;
- const uuid = uuidV4();
- this.setState({
- customSearchConditions: [
- ...customSearchConditions,
- {
- com: CustomFormFields({
- uuid, salaryItems, filterEnum, onDelete: this.handleDelete, onChange: this.handleChange
- }),
- uuid, itemId: "", filter: "", params: ""
- }
- ]
- }, () => {
- setOtherConditions(_.map(this.state.customSearchConditions, o => ({
- itemId: o.itemId, filter: o.filter, params: o.params
- })));
- });
- };
- handleChange = (uuid, params) => {
- const { calculateStore: { setOtherConditions } } = this.props;
- const { customSearchConditions } = this.state;
- this.setState({
- customSearchConditions: _.map(customSearchConditions, o => {
- if (o.uuid === uuid) {
- return { ...o, ...params };
- }
- return { ...o };
- })
- }, () => {
- setOtherConditions(_.map(this.state.customSearchConditions, o => ({
- itemId: o.itemId, filter: o.filter, params: o.params
- })));
- });
- };
- handleDelete = (uuid) => {
- const { calculateStore: { setOtherConditions } } = this.props;
- const { customSearchConditions } = this.state;
- this.setState({
- customSearchConditions: _.filter(customSearchConditions, o => o.uuid !== uuid)
- }, () => {
- setOtherConditions(_.map(this.state.customSearchConditions, o => ({
- itemId: o.itemId, filter: o.filter, params: o.params
- })));
- });
- };
-
- render() {
- const { searchConditions, customSearchConditions } = this.state;
- const { calculateStore: { ECSearchForm, setOtherConditions } } = this.props;
- return (
-