Merge branch 'hotfix/2.9.42311.02' into release/2.9.42311.02-个税
This commit is contained in:
commit
4ffd2731ee
|
|
@ -84,7 +84,7 @@ class SalaryCalcOcList extends Component {
|
||||||
render: (__, record) => {
|
render: (__, record) => {
|
||||||
const formulaDesc = record["customParameters"][`${o["dataIndex"]}`];
|
const formulaDesc = record["customParameters"][`${o["dataIndex"]}`];
|
||||||
const showDifference = record[`${o["dataIndex"]}_type`] === "number";
|
const showDifference = record[`${o["dataIndex"]}_type`] === "number";
|
||||||
const { acctResultValue, excelResultValue } = record[o["dataIndex"]];
|
const { acctResultValue, excelResultValue } = record[o["dataIndex"]] || {};
|
||||||
return <div className="comparison-column-item-container"
|
return <div className="comparison-column-item-container"
|
||||||
onClick={() => this.setState({ formulaDesc })}>
|
onClick={() => this.setState({ formulaDesc })}>
|
||||||
<div className="comparison-single-row">
|
<div className="comparison-single-row">
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ import { Button } from "antd";
|
||||||
import { WeaCheckbox, WeaInputSearch, WeaLocaleProvider } from "ecCom";
|
import { WeaCheckbox, WeaInputSearch, WeaLocaleProvider } from "ecCom";
|
||||||
import SalaryCalcOcList from "./components/salaryCalcOcList";
|
import SalaryCalcOcList from "./components/salaryCalcOcList";
|
||||||
import SalaryCalcOcImport from "./components/salaryCalcOcImport";
|
import SalaryCalcOcImport from "./components/salaryCalcOcImport";
|
||||||
|
import { convertToUrlString } from "../../../util/url";
|
||||||
import Layout from "../doCalc/layout";
|
import Layout from "../doCalc/layout";
|
||||||
import "./index.less";
|
import "./index.less";
|
||||||
|
|
||||||
|
|
@ -34,8 +35,12 @@ class Index extends Component {
|
||||||
};
|
};
|
||||||
|
|
||||||
handleExportClick = () => {
|
handleExportClick = () => {
|
||||||
|
const { form: { onlyDiffEmployee, onlyDiffSalaryItem } } = this.state;
|
||||||
const { routeParams: { salaryAcctRecordId } } = this.props;
|
const { routeParams: { salaryAcctRecordId } } = this.props;
|
||||||
window.open(`/api/bs/hrmsalary/salaryacct/comparisonresult/export?salaryAcctRecordId=${salaryAcctRecordId}`, "_blank");
|
const payload = {
|
||||||
|
salaryAcctRecordId, onlyDiffEmployee, onlyDiffSalaryItem
|
||||||
|
};
|
||||||
|
window.open(`/api/bs/hrmsalary/salaryacct/comparisonresult/export?${convertToUrlString(payload)}`, "_blank");
|
||||||
};
|
};
|
||||||
handleImportClick = () => {
|
handleImportClick = () => {
|
||||||
const { routeParams: { salaryAcctRecordId } } = this.props;
|
const { routeParams: { salaryAcctRecordId } } = this.props;
|
||||||
|
|
|
||||||
|
|
@ -114,7 +114,7 @@ class Index extends Component {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
return { ...o, width };
|
return { ...o, width, render: (txt) => (<span title={txt}>{txt}</span>) };
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
@ -142,7 +142,7 @@ class Index extends Component {
|
||||||
};
|
};
|
||||||
return (
|
return (
|
||||||
<WeaTable
|
<WeaTable
|
||||||
rowKey="id"
|
rowKey="id" scroll={{ y: "calc(100vh - 152px)" }}
|
||||||
dataSource={dataSource} loading={loading}
|
dataSource={dataSource} loading={loading}
|
||||||
pagination={pagination} columns={columns}
|
pagination={pagination} columns={columns}
|
||||||
/>
|
/>
|
||||||
|
|
|
||||||
|
|
@ -210,7 +210,7 @@ class Index extends Component {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: <React.Fragment>
|
title: <React.Fragment>
|
||||||
<span>{getLabel(542308, "环比上月增加人员")}</span>
|
<span>{getLabel(542309, "环比上月增加人员")}</span>
|
||||||
<WeaHelpfulTip
|
<WeaHelpfulTip
|
||||||
width={200} placement="topLeft"
|
width={200} placement="topLeft"
|
||||||
title={getLabel(543553, "提示:环比上期当前选择的账套归档的各个税扣缴义务人下增加的人员")}
|
title={getLabel(543553, "提示:环比上期当前选择的账套归档的各个税扣缴义务人下增加的人员")}
|
||||||
|
|
|
||||||
|
|
@ -40,10 +40,10 @@ class EditSalaryBaseInfo extends Component {
|
||||||
"esf-form-last-item": (index === baseInfo.length - 1 && (index + 1) % 2 === 1)
|
"esf-form-last-item": (index === baseInfo.length - 1 && (index + 1) % 2 === 1)
|
||||||
})}>
|
})}>
|
||||||
<Col span={(index === baseInfo.length - 1 && (index + 1) % 2 === 1) ? 3 : 6}>
|
<Col span={(index === baseInfo.length - 1 && (index + 1) % 2 === 1) ? 3 : 6}>
|
||||||
<span className="label">{fieldName}</span>
|
<span className="label" title={fieldName}>{fieldName}</span>
|
||||||
</Col>
|
</Col>
|
||||||
<Col span={(index === baseInfo.length - 1 && (index + 1) % 2 === 1) ? 21 : 18}>
|
<Col span={(index === baseInfo.length - 1 && (index + 1) % 2 === 1) ? 21 : 18}>
|
||||||
<span className="value">{fieldValue}</span>
|
<span className="value" title={fieldValue}>{fieldValue}</span>
|
||||||
</Col>
|
</Col>
|
||||||
</Row>
|
</Row>
|
||||||
</Col>
|
</Col>
|
||||||
|
|
|
||||||
|
|
@ -168,6 +168,10 @@
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
line-height: 24px;
|
line-height: 24px;
|
||||||
padding: 8px 16px;
|
padding: 8px 16px;
|
||||||
|
width: 100%;
|
||||||
|
overflow: hidden;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,6 @@
|
||||||
.calculate-body {
|
.calculate-body {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 16px;
|
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
|
|
||||||
.wea-new-table {
|
.wea-new-table {
|
||||||
|
|
@ -84,10 +83,12 @@
|
||||||
|
|
||||||
.ant-table-tbody {
|
.ant-table-tbody {
|
||||||
td {
|
td {
|
||||||
width: 100%;
|
span {
|
||||||
overflow: hidden;
|
width: 100%;
|
||||||
text-overflow: ellipsis;
|
overflow: hidden;
|
||||||
white-space: nowrap;
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -114,6 +114,7 @@ class FieldTable extends Component {
|
||||||
pagination={pagination}
|
pagination={pagination}
|
||||||
loading={loading}
|
loading={loading}
|
||||||
columns={this.getColumns()}
|
columns={this.getColumns()}
|
||||||
|
scroll={{ y: "calc(100vh - 152px)" }}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -200,6 +200,7 @@ class LedgerTable extends Component {
|
||||||
pagination={pagination}
|
pagination={pagination}
|
||||||
loading={loading}
|
loading={loading}
|
||||||
columns={this.getColumns()}
|
columns={this.getColumns()}
|
||||||
|
scroll={{ y: "calc(100vh - 152px)" }}
|
||||||
/>
|
/>
|
||||||
<CopyLedgerModal
|
<CopyLedgerModal
|
||||||
{...copyLedgerModal}
|
{...copyLedgerModal}
|
||||||
|
|
|
||||||
|
|
@ -13,10 +13,12 @@ export const loginCondition = [
|
||||||
fieldcol: 18,
|
fieldcol: 18,
|
||||||
label: getLabel(388431, "登录密码"),
|
label: getLabel(388431, "登录密码"),
|
||||||
labelcol: 6,
|
labelcol: 6,
|
||||||
detailtype: 3,
|
detailtype: 1,
|
||||||
rules: "required|string",
|
rules: "required|string",
|
||||||
type: "password",
|
viewAttr: 3,
|
||||||
viewAttr: 3
|
otherParams: {
|
||||||
|
type: "password"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
title: "",
|
title: "",
|
||||||
|
|
@ -35,10 +37,12 @@ export const condition = [
|
||||||
fieldcol: 18,
|
fieldcol: 18,
|
||||||
label: getLabel(409, "密码"),
|
label: getLabel(409, "密码"),
|
||||||
labelcol: 6,
|
labelcol: 6,
|
||||||
detailtype: 3,
|
detailtype: 1,
|
||||||
rules: "required|string",
|
rules: "required|string",
|
||||||
viewAttr: 3,
|
viewAttr: 3,
|
||||||
type: "password"
|
otherParams: {
|
||||||
|
type: "password"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
colSpan: 1,
|
colSpan: 1,
|
||||||
|
|
@ -49,7 +53,10 @@ export const condition = [
|
||||||
labelcol: 6,
|
labelcol: 6,
|
||||||
rules: "required|string",
|
rules: "required|string",
|
||||||
viewAttr: 3,
|
viewAttr: 3,
|
||||||
type: "password"
|
detailtype: 1,
|
||||||
|
otherParams: {
|
||||||
|
type: "password"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
colSpan: 1,
|
colSpan: 1,
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
* Date: 2023/9/4
|
* Date: 2023/9/4
|
||||||
*/
|
*/
|
||||||
import React, { Component } from "react";
|
import React, { Component } from "react";
|
||||||
import { WeaDialog, WeaLocaleProvider, WeaSearchGroup, WeaTableEdit, WeaTools } from "ecCom";
|
import { WeaDialog, WeaInput, WeaInputNumber, WeaLocaleProvider, WeaSearchGroup, WeaTableEdit, WeaTools } from "ecCom";
|
||||||
import { Button, message, Spin } from "antd";
|
import { Button, message, Spin } from "antd";
|
||||||
import {
|
import {
|
||||||
editSingleSalaryItem,
|
editSingleSalaryItem,
|
||||||
|
|
@ -59,7 +59,13 @@ class SalaryArchiveEditAdjLogRecordDialog extends Component {
|
||||||
const { salaryArchiveItemForm, salaryArchiveItemDetail, canOperator } = data;
|
const { salaryArchiveItemForm, salaryArchiveItemDetail, canOperator } = data;
|
||||||
const { adjustReasonList } = salaryArchiveItemForm;
|
const { adjustReasonList } = salaryArchiveItemForm;
|
||||||
this.setState({
|
this.setState({
|
||||||
canOperator, salaryArchiveItemDetail,
|
canOperator,
|
||||||
|
salaryArchiveItemDetail: {
|
||||||
|
...salaryArchiveItemDetail,
|
||||||
|
list: _.map(salaryArchiveItemDetail.list, o => ({
|
||||||
|
...o, dataType: _.find(salaryArchiveItemDetail.salaryItemList, g => g.id === o.salaryItem).dataType
|
||||||
|
}))
|
||||||
|
},
|
||||||
conditions: _.map(adjCondition, item => {
|
conditions: _.map(adjCondition, item => {
|
||||||
return {
|
return {
|
||||||
...item,
|
...item,
|
||||||
|
|
@ -100,7 +106,10 @@ class SalaryArchiveEditAdjLogRecordDialog extends Component {
|
||||||
...salaryArchiveItemDetail,
|
...salaryArchiveItemDetail,
|
||||||
list: _.map(list, o => {
|
list: _.map(list, o => {
|
||||||
if (o.salaryItem === salaryItemId) {
|
if (o.salaryItem === salaryItemId) {
|
||||||
return { ...o, salaryBefore: data };
|
return {
|
||||||
|
...o, salaryBefore: data,
|
||||||
|
dataType: _.find(salaryArchiveItemDetail.salaryItemList, g => g.id === salaryItemId).dataType
|
||||||
|
};
|
||||||
}
|
}
|
||||||
return { ...o };
|
return { ...o };
|
||||||
})
|
})
|
||||||
|
|
@ -109,6 +118,23 @@ class SalaryArchiveEditAdjLogRecordDialog extends Component {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
handleChangeAdjustAfter = (record, v) => {
|
||||||
|
const { salaryArchiveItemDetail } = this.state;
|
||||||
|
const { list } = salaryArchiveItemDetail;
|
||||||
|
this.setState({
|
||||||
|
salaryArchiveItemDetail: {
|
||||||
|
...salaryArchiveItemDetail,
|
||||||
|
list: _.map(list, o => {
|
||||||
|
if (o.salaryItem === record.salaryItem) {
|
||||||
|
return {
|
||||||
|
...o, adjustAfter: v
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return { ...o };
|
||||||
|
})
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
save = () => {
|
save = () => {
|
||||||
const { salaryFileStore: { adjForm, fetchSingleSalaryItemList, getArchiveForm } } = this.props;
|
const { salaryFileStore: { adjForm, fetchSingleSalaryItemList, getArchiveForm } } = this.props;
|
||||||
const { pass } = this.tableEdit.refs.edit.doRequiredCheck();
|
const { pass } = this.tableEdit.refs.edit.doRequiredCheck();
|
||||||
|
|
@ -201,13 +227,31 @@ class SalaryArchiveEditAdjLogRecordDialog extends Component {
|
||||||
<WeaSearchGroup title={getLabel(543333, "调薪明细")} showGroup needTigger={false}>
|
<WeaSearchGroup title={getLabel(543333, "调薪明细")} showGroup needTigger={false}>
|
||||||
<WeaTableEdit
|
<WeaTableEdit
|
||||||
ref={dom => this.tableEdit = dom} deleteConfirm
|
ref={dom => this.tableEdit = dom} deleteConfirm
|
||||||
columns={adjColumns} datas={list} showCopy={false}
|
datas={list} showCopy={false} showAdd={!id} showDelete={!id}
|
||||||
showAdd={!id} showDelete={!id}
|
|
||||||
onChange={o => this.setState({
|
onChange={o => this.setState({
|
||||||
salaryArchiveItemDetail: {
|
salaryArchiveItemDetail: {
|
||||||
...salaryArchiveItemDetail, list: o
|
...salaryArchiveItemDetail, list: _.map(o, it => ({ ...it, dataType: "" }))
|
||||||
}
|
}
|
||||||
})}
|
})} columns={_.map(adjColumns, o => {
|
||||||
|
if (o.dataIndex === "adjustAfter") {
|
||||||
|
return {
|
||||||
|
...o, render: (__, record) => {
|
||||||
|
if (record.dataType === "number") {
|
||||||
|
return <WeaInputNumber
|
||||||
|
precision={3} viewAttr={3} value={record["adjustAfter"]}
|
||||||
|
onChange={v => this.handleChangeAdjustAfter(record, v)}
|
||||||
|
/>;
|
||||||
|
} else {
|
||||||
|
return <WeaInput
|
||||||
|
value={record["adjustAfter"]} viewAttr={3}
|
||||||
|
onChange={v => this.handleChangeAdjustAfter(record, v)}
|
||||||
|
/>;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return { ...o };
|
||||||
|
})}
|
||||||
/>
|
/>
|
||||||
</WeaSearchGroup>
|
</WeaSearchGroup>
|
||||||
</React.Fragment> : <div className="empty"><Spin/></div>
|
</React.Fragment> : <div className="empty"><Spin/></div>
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ class InputPaymentAmount extends Component {
|
||||||
render: (text, record) => {
|
render: (text, record) => {
|
||||||
return (
|
return (
|
||||||
<WeaInputNumber
|
<WeaInputNumber
|
||||||
value={record[`${record.insuranceId}_per`]} min={0}
|
value={record[`${record.insuranceId}_per`]}
|
||||||
precision={2} onChange={(val) => this.handleChangeBaseItem(record, val, type, "per")}
|
precision={2} onChange={(val) => this.handleChangeBaseItem(record, val, type, "per")}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
|
|
@ -30,7 +30,7 @@ class InputPaymentAmount extends Component {
|
||||||
render: (text, record) => {
|
render: (text, record) => {
|
||||||
return (
|
return (
|
||||||
<WeaInputNumber
|
<WeaInputNumber
|
||||||
value={record[`${record.insuranceId}_com`]} min={0}
|
value={record[`${record.insuranceId}_com`]}
|
||||||
precision={2} onChange={(val) => this.handleChangeBaseItem(record, val, type, "com")}
|
precision={2} onChange={(val) => this.handleChangeBaseItem(record, val, type, "com")}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue