Merge branch 'feature/2.12.1.2404.02-薪资核算判断账套是否修改提示' into release/2.14.2.2405.02
This commit is contained in:
commit
a4b98f253c
|
|
@ -266,4 +266,13 @@ export const deleteExportTemplate = (params) => {
|
|||
export const getExportTemplateForm = (params) => {
|
||||
return postFetch("/api/bs/hrmsalary/salaryacct/acctresult/getExportTemplateForm", params);
|
||||
};
|
||||
//薪资核算-薪资项目改变否
|
||||
export const getCompareSobConfig = params => {
|
||||
return WeaTools.callApi("/api/bs/hrmsalary/salaryacct/compareSobConfig", "GET", params);
|
||||
};
|
||||
//薪资核算-更新薪资账套
|
||||
export const updateSobConfig = params => {
|
||||
return WeaTools.callApi("/api/bs/hrmsalary/salaryacct/updateSobConfig", "GET", params);
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -6,12 +6,12 @@
|
|||
*/
|
||||
import React, { Component } from "react";
|
||||
import { WeaHelpfulTip, WeaLocaleProvider } from "ecCom";
|
||||
import { Button } from "antd";
|
||||
import { getColumnDesc, getSalarySobCycle } from "../../../../../apis/calculate";
|
||||
import { sysConfCodeRule } from "../../../../../apis/ruleconfig";
|
||||
import EditCalcAdvanceSearchPannel from "./editCalcAdvanceSearchPannel";
|
||||
import EditCalcTable from "./editCalcTable";
|
||||
import SalaryMonthTip from "../salaryMonthTip";
|
||||
import SalaryCalcLayout from "./salaryCalcLayout";
|
||||
import cs from "classnames";
|
||||
import "./index.less";
|
||||
|
||||
|
|
@ -26,10 +26,6 @@ class Index extends Component {
|
|||
};
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
const promise = this.init();
|
||||
}
|
||||
|
||||
openAdvanceSearch = () => this.setState({ showSearchAd: !this.state.showSearchAd });
|
||||
onAdSearch = (bool = true) => {
|
||||
this.calcTableRef.wrappedInstance.queryCalcResultList();
|
||||
|
|
@ -57,7 +53,7 @@ class Index extends Component {
|
|||
const { salarySobCycle, showSearchAd, formulaTd, columnDesc, showTotalCell } = this.state;
|
||||
const { routeParams: { salaryAcctRecordId } } = this.props;
|
||||
const formulaObj = _.get(columnDesc, [formulaTd]) || {};
|
||||
return (
|
||||
return (<SalaryCalcLayout {...this.props} init={this.init} onConfirm={() => this.onAdSearch(false)}>
|
||||
<div className="salary-edit-calc-content">
|
||||
<div className="salary-flex-between weapp-salary-tb-tip">
|
||||
<div>
|
||||
|
|
@ -92,7 +88,7 @@ class Index extends Component {
|
|||
{...this.props} showTotalCell={showTotalCell}
|
||||
onShowFormulaTd={this.handleShowFormulaTa}/>
|
||||
</div>
|
||||
);
|
||||
</SalaryCalcLayout>);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -207,3 +207,39 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
.infoConfirmDialog {
|
||||
.confirm-content {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 16px;
|
||||
overflow: auto;
|
||||
position: relative;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
|
||||
.contract {
|
||||
text-align: center;
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
}
|
||||
|
||||
.confirm-container {
|
||||
flex-grow: 0;
|
||||
flex-shrink: 0;
|
||||
margin-top: 8px;
|
||||
width: 100%;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.loadingLayout {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
text-align: center;
|
||||
border-radius: 4px;
|
||||
padding: 30px 50px;
|
||||
margin: 20px 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,96 @@
|
|||
/*
|
||||
* Author: 黎永顺
|
||||
* name: 薪资核算-layout
|
||||
* Description:
|
||||
* Date: 2024/4/26
|
||||
*/
|
||||
import React, { Component } from "react";
|
||||
import { WeaCheckbox, WeaDialog, WeaLocaleProvider } from "ecCom";
|
||||
import { Button, message, Spin } from "antd";
|
||||
import * as API from "../../../../../apis/calculate";
|
||||
import "./index.less";
|
||||
|
||||
const getLabel = WeaLocaleProvider.getLabel;
|
||||
|
||||
class SalaryCalcLayout extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
fieldInformationConfirm: { visible: false, data: {} }, userConfirmed: "0", show: false
|
||||
};
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
this.getCompareSobConfig();
|
||||
}
|
||||
|
||||
getCompareSobConfig = () => {
|
||||
const { fieldInformationConfirm } = this.state;
|
||||
const { routeParams: { salaryAcctRecordId: id } } = this.props;
|
||||
API.getCompareSobConfig({ id }).then(({ status, data }) => {
|
||||
if (status && data) {
|
||||
this.setState({
|
||||
fieldInformationConfirm: { ...fieldInformationConfirm, visible: data }
|
||||
});
|
||||
} else {
|
||||
this.setState({ show: true }, () => this.props.init());
|
||||
}
|
||||
}).catch(() => this.setState({ show: true }, () => this.props.init()));
|
||||
};
|
||||
onOk = () => {
|
||||
const { fieldInformationConfirm } = this.state;
|
||||
const { routeParams: { salaryAcctRecordId: id } } = this.props;
|
||||
API.updateSobConfig({ id }).then(({ status, errormsg }) => {
|
||||
if (status) {
|
||||
message.success(getLabel(30700, "操作成功!"));
|
||||
this.setState({
|
||||
show: true,
|
||||
fieldInformationConfirm: { ...fieldInformationConfirm, visible: false }
|
||||
}, () => {
|
||||
this.props.init();
|
||||
this.props.onConfirm();
|
||||
});
|
||||
} else {
|
||||
message.error(errormsg);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
render() {
|
||||
const { fieldInformationConfirm, userConfirmed, show } = this.state;
|
||||
const buttons = [
|
||||
<Button type="primary" onClick={this.onOk}
|
||||
disabled={userConfirmed === "0"}>{getLabel(111, "是,更新账套设置")}</Button>,
|
||||
<Button type="ghost" onClick={() => this.setState({
|
||||
show: true,
|
||||
fieldInformationConfirm: { ...fieldInformationConfirm, visible: false }
|
||||
}, () => this.props.init())}>{getLabel(111, "否,忽略该提示")}</Button>
|
||||
];
|
||||
return (
|
||||
<React.Fragment>
|
||||
{
|
||||
show ? this.props.children : <div className="loadingLayout"><Spin/></div>
|
||||
}
|
||||
<WeaDialog
|
||||
title={getLabel(131329, "信息确认")} visible={fieldInformationConfirm.visible} initLoadCss hasScroll
|
||||
style={{ width: 380 }} className="infoConfirmDialog" buttons={buttons} onCancel={() =>
|
||||
this.setState({
|
||||
show: true,
|
||||
fieldInformationConfirm: { ...fieldInformationConfirm, visible: false }
|
||||
}, () => this.props.init())}>
|
||||
<div className="confirm-content">
|
||||
<div className="contract">
|
||||
{getLabel("111", "账套发生变更,是否需要更新账套设置?更新后核算将按照最新的账套进行核算,请谨慎操作。")}
|
||||
</div>
|
||||
<div className="confirm-container">
|
||||
<WeaCheckbox value={userConfirmed} content={getLabel("111", "已认真阅读,知晓风险")}
|
||||
onChange={v => this.setState({ userConfirmed: v })}/>
|
||||
</div>
|
||||
</div>
|
||||
</WeaDialog>
|
||||
</React.Fragment>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export default SalaryCalcLayout;
|
||||
|
|
@ -216,23 +216,17 @@ class Index extends Component {
|
|||
/>
|
||||
}
|
||||
{/* 薪资核算-自定义导出*/}
|
||||
<CustomCalcExportDialog
|
||||
{...customExpDialog}
|
||||
onCancel={() => {
|
||||
this.setState({
|
||||
customExpDialog: { ...customExpDialog, visible: false }
|
||||
});
|
||||
}}
|
||||
/>
|
||||
<CustomCalcExportDialog {...customExpDialog} onCancel={() => {
|
||||
this.setState({
|
||||
customExpDialog: { ...customExpDialog, visible: false }
|
||||
});
|
||||
}}/>
|
||||
{/* 薪资核算-导入*/}
|
||||
<SalaryEditCalcImport
|
||||
{...salaryImpDialog}
|
||||
onCancel={(isFresh) => {
|
||||
this.setState({
|
||||
salaryImpDialog: { ...salaryImpDialog, visible: false }
|
||||
}, () => isFresh && this.calc.onAdSearch(false));
|
||||
}}
|
||||
/>
|
||||
<SalaryEditCalcImport {...salaryImpDialog} onCancel={(isFresh) => {
|
||||
this.setState({
|
||||
salaryImpDialog: { ...salaryImpDialog, visible: false }
|
||||
}, () => isFresh && this.calc.onAdSearch(false));
|
||||
}}/>
|
||||
</WeaReqTop>
|
||||
</div>
|
||||
</Layout>
|
||||
|
|
|
|||
Loading…
Reference in New Issue