hotfix/2.9.9.2312.02-个税

申报表-动态增删tab
This commit is contained in:
黎永顺 2024-01-02 10:33:31 +08:00
parent 28d8ebe64d
commit 9eec50099d
5 changed files with 14 additions and 10 deletions

View File

@ -31,9 +31,9 @@ class IncomeTaxDeclarationPersonnelSlide extends Component {
} }
componentWillReceiveProps(nextProps, nextContext) { componentWillReceiveProps(nextProps, nextContext) {
const { declareStore: { initTaxDecForm } } = nextProps;
if (nextProps.visible !== this.props.visible && nextProps.visible) this.getTaxDecForm(nextProps); if (nextProps.visible !== this.props.visible && nextProps.visible) this.getTaxDecForm(nextProps);
if (nextProps.visible !== this.props.visible && !nextProps.visible) { if (nextProps.visible !== this.props.visible && !nextProps.visible) {
const { declareStore: { initTaxDecForm } } = nextProps;
this.setState({ this.setState({
conditions: [], employeeDeclares: [], taxReportColumns: [], conditions: [], employeeDeclares: [], taxReportColumns: [],
loading: false, detailInfo: {} loading: false, detailInfo: {}

View File

@ -81,7 +81,7 @@ class TabEditDialog extends Component {
const { declareStore: { tabDecForm } } = this.props; const { declareStore: { tabDecForm } } = this.props;
return ( return (
<WeaDialog <WeaDialog
{...this.props} style={{ width: 480 }} initLoadCss title={getLabel(1421, "新增")} {...this.props} style={{ width: 480, height: 80 }} initLoadCss title={getLabel(1421, "新增")}
buttons={[ buttons={[
<Button type="primary" onClick={this.save} loading={loading}>{getLabel(826, "确定")}</Button> <Button type="primary" onClick={this.save} loading={loading}>{getLabel(826, "确定")}</Button>
]} ]}

View File

@ -72,9 +72,9 @@ class TaxDeclarationInfo extends Component {
<span className="value"> <span className="value">
{declareInfo[item["key"]]} {declareInfo[item["key"]]}
{ {
(item["key"] === "declareStatusDesc" && declareInfo["displayIcon"]) && ((item["key"] === "declareStatusDesc" && declareInfo["displayIcon"]) || declareInfo["declareErrorMsg"]) &&
<span <span
title={declareInfo["declareErrorMsg"] || getLabel(111, "该个税申报表对应的核算数据被重新核算")} title={declareInfo["declareErrorMsg"] || getLabel(545219, "该个税申报表对应的核算数据被重新核算")}
className="icon-span"> className="icon-span">
<Tag closable onClose={this.handleUpdateicon}> <Tag closable onClose={this.handleUpdateicon}>
<i className="icon-coms02-Warning-01"/> <i className="icon-coms02-Warning-01"/>

View File

@ -72,7 +72,7 @@ class Index extends Component {
window.removeEventListener("message", this.handleReceive, false); window.removeEventListener("message", this.handleReceive, false);
} }
init = async () => { init = async (isInit = true) => {
const [tabsResult, infoResult, calcResult] = await Promise.all([this.getTaxDeclarationTab(), this.getDeclareInfo(), this.apiflowBillingConfigStatus()]); const [tabsResult, infoResult, calcResult] = await Promise.all([this.getTaxDeclarationTab(), this.getDeclareInfo(), this.apiflowBillingConfigStatus()]);
const { data: tabDataSource, status: tabStatus } = tabsResult; const { data: tabDataSource, status: tabStatus } = tabsResult;
const { data: infoDataSource, status: infoStatus } = infoResult; const { data: infoDataSource, status: infoStatus } = infoResult;
@ -82,7 +82,9 @@ class Index extends Component {
viewcondition: `${it.incomeCategory}%%${it.taxDeclarationId}`, viewcondition: `${it.incomeCategory}%%${it.taxDeclarationId}`,
title: it.tabName, editable: true title: it.tabName, editable: true
})) : this.state.tabs, })) : this.state.tabs,
selectedKey: tabStatus ? `${_.take(tabDataSource)[0].incomeCategory}%%${_.take(tabDataSource)[0].taxDeclarationId}` : this.state.selectedKey, selectedKey: (tabStatus && isInit) ?
`${_.first(tabDataSource).incomeCategory}%%${_.first(tabDataSource).taxDeclarationId}` :
`${_.last(tabDataSource).incomeCategory}%%${_.last(tabDataSource).taxDeclarationId}`,
declareInfo: infoStatus ? infoDataSource : this.state.declareInfo, declareInfo: infoStatus ? infoDataSource : this.state.declareInfo,
intelCalcSalaryStatus: calcStatus && calcSalaryStatus intelCalcSalaryStatus: calcStatus && calcSalaryStatus
}); });
@ -269,11 +271,11 @@ class Index extends Component {
window.open(`${window.ecologyContentPath || ""}/api/bs/hrmsalary/taxdeclaration/detail/export?${convertToUrlString(payload)}`, "_blank"); window.open(`${window.ecologyContentPath || ""}/api/bs/hrmsalary/taxdeclaration/detail/export?${convertToUrlString(payload)}`, "_blank");
}; };
handleTaxDescPerSlide = (params) => { handleTaxDescPerSlide = (params) => {
const { callback, ...module } = params; const { callback, ...extra } = params;
const { taxDecPersonSlide, selectedKey } = this.state; const { taxDecPersonSlide, selectedKey } = this.state;
const [__, taxDeclarationId] = selectedKey.split("%%"); const [__, taxDeclarationId] = selectedKey.split("%%");
this.setState({ this.setState({
taxDecPersonSlide: { ...taxDecPersonSlide, ...module, taxDeclarationId } taxDecPersonSlide: { ...taxDecPersonSlide, ...extra, taxDeclarationId }
}, () => callback && this.getDetailList()); }, () => callback && this.getDetailList());
}; };
exportGetDeclareTaxResultFeedback = () => { exportGetDeclareTaxResultFeedback = () => {
@ -401,7 +403,7 @@ class Index extends Component {
<div className="declareDetail-layout-content"> <div className="declareDetail-layout-content">
<WeaTab <WeaTab
datas={tabs} keyParam="viewcondition" selectedKey={selectedKey} showAddBtn buttons={btns} datas={tabs} keyParam="viewcondition" selectedKey={selectedKey} showAddBtn buttons={btns}
type="editable-inline" onEdit={this.handleTabEdit} type="editable-inline" onEdit={this.handleTabEdit} leftStyle={{ width: "calc(100% - 450px)" }}
onChange={(v) => this.setState({ selectedKey: v }, () => this.getDetailList())} onChange={(v) => this.setState({ selectedKey: v }, () => this.getDetailList())}
/> />
{/*个税申报表-新增编辑框*/} {/*个税申报表-新增编辑框*/}
@ -415,7 +417,7 @@ class Index extends Component {
/> />
{/*个税申报表-新增tab弹框*/} {/*个税申报表-新增tab弹框*/}
<TabEditDialog visible={editTabVisible} <TabEditDialog visible={editTabVisible}
onCancel={(isRefresh) => this.setState({ editTabVisible: false }, () => isRefresh && this.init())}/> onCancel={(isRefresh) => this.setState({ editTabVisible: false }, () => isRefresh && this.init(false))}/>
</div> </div>
<div className="declareDetail-layout-table-content"> <div className="declareDetail-layout-table-content">
<Spin spinning={loading.query}> <Spin spinning={loading.query}>

View File

@ -15,6 +15,8 @@ export class DeclareStore {
@action @action
initDeclareForm = () => this.declareForm = new WeaForm(); initDeclareForm = () => this.declareForm = new WeaForm();
@action @action
initTaxDecForm = () => this.taxDecForm = new WeaForm();
@action
initTabDecForm = () => this.tabDecForm = new WeaForm(); initTabDecForm = () => this.tabDecForm = new WeaForm();