Merge branch 'release/2.9.42310.01-个税' into custom-昂立/薪资账套配置流程审批地址

This commit is contained in:
黎永顺 2023-10-23 11:15:00 +08:00
commit 75aa87eef5
23 changed files with 597 additions and 78 deletions

View File

@ -7,6 +7,7 @@
import React, { Component } from "react";
import { WeaInputSearch, WeaLocaleProvider } from "ecCom";
import { Tree } from "antd";
import cs from "classnames";
import { formualSearchField, formualSearchGroup, getFormulaDes } from "../../../apis/item";
import "../index.less";
@ -139,7 +140,7 @@ class CodeAction extends Component {
return <TreeNode title={value} key={key}>
{
_.map([...children.slice(0, 1), ...itemChildren], (child, childIndex) => {
const { name, fieldId } = child;
const { name, fieldId, fieldType } = child;
return (
fieldId === "searchInput" ?
<TreeNode
@ -151,7 +152,17 @@ class CodeAction extends Component {
/>
}
key={fieldId + "_" + childIndex}/> :
<TreeNode title={name} key={fieldId}/>
<TreeNode title={
<div className="weapp-excel-code-action-list-variable">
<span className="weapp-excel-code-action-list-variable-name">{name}</span>
{
fieldType ?
<span
className={cs("weapp-excel-code-action-list-variable-tip", { "danger": fieldType === "string" })}>{fieldType === "number" ? "数字" : "文本"}</span> :
<span></span>
}
</div>
} key={fieldId}/>
);
})
}

View File

@ -186,14 +186,53 @@
.code-action-list {
padding: 10px 0;
.code-action-tips-title{
.code-action-tips-title {
height: 22px;
line-height: 22px;
}
.code-action-tips-info{
.code-action-tips-info {
color: #999
}
}
.weapp-excel-code-action-list-variable {
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
.weapp-excel-code-action-list-variable-name {
height: 20px;
line-height: 18px;
-webkit-flex: 1 1;
flex: 1 1;
overflow: hidden;
text-overflow: ellipsis;
word-break: keep-all;
white-space: nowrap;
cursor: pointer;
}
.danger {
color: rgb(255, 102, 106)!important;
border: 1px solid rgb(255, 193, 195)!important;
background-color: rgb(255, 223, 224)!important;
}
.weapp-excel-code-action-list-variable-tip {
width: 40px;
height: 20px;
line-height: 18px;
text-align: center;
vertical-align: middle;
color: rgb(255, 205, 80);
border: 1px solid rgb(255, 222, 138);
background-color: rgb(255, 245, 219);
border-radius: 2px;
}
}
}
}
}

View File

@ -20,12 +20,14 @@ import Calculate from "./pages/calculate/calculate"; //重构的薪资核算页
import Payroll from "./pages/payroll";
import PayrollGrant from "./pages/payroll/payrollGrant";
import PayrollDetail from "./pages/payroll/payrollDetail";
import Declare from "./pages/declare";
// import Declare from "./pages/declare";
import DeclareDetail from "./pages/declareDetail";
import Employeedeclare from "./pages/employeedeclare";
import EnterprisePayCertificationDetail from "./pages/enterprisePayCertificationDetail";
import BankVoucherDetail from "./pages/bankVoucherDetail";
import EmployeedeclareDetail from "./pages/employeedeclareDetail";
// import Declare from "./pages/declare";
import Declare from "./pages/declare/declare"; //重构的个税申报表
import TaxRate from "./pages/taxRate";
import TaxAgents from "./pages/taxAgent";
import TaxAgent from "./pages/salary/taxAgent";

View File

@ -50,7 +50,7 @@ class EditSalaryCalcSlide extends Component {
<div className="title">{getLabel(543559, "编辑薪资")}</div>
</div>
<div className="titleCol titleRightBox">
<Button type="primary" onClick={this.save} loading={loading}>{getLabel(111, "保存并核算")}</Button>
<Button type="primary" onClick={this.save} loading={loading}>{getLabel(537558, "保存")}</Button>
</div>
</div>;
};

View File

@ -6,7 +6,6 @@
*/
import React, { Component } from "react";
import { WeaHelpfulTip, WeaLocaleProvider } from "ecCom";
import { Alert } from "antd";
import { getColumnDesc, getSalarySobCycle } from "../../../../../apis/calculate";
import { sysConfCodeRule } from "../../../../../apis/ruleconfig";
import EditCalcAdvanceSearchPannel from "./editCalcAdvanceSearchPannel";
@ -52,14 +51,10 @@ class Index extends Component {
render() {
const { salarySobCycle, showSearchAd, formulaTd, columnDesc, showTotalCell } = this.state;
const { accountExceptInfo, routeParams: { salaryAcctRecordId } } = this.props;
const { routeParams: { salaryAcctRecordId } } = this.props;
const formulaObj = _.get(columnDesc, [formulaTd]) || {};
return (
<div className="salary-edit-calc-content">
{
accountExceptInfo &&
<Alert message="" description={accountExceptInfo} type="error" closable/>
}
<div className="salary-flex-between weapp-salary-tb-tip">
<div>
<span>{getLabel(542604, "薪资所属月")}</span>

View File

@ -130,7 +130,7 @@ class Index extends Component {
}
};
renderReqBtns = () => {
const { selectedKey } = this.state;
const { selectedKey, accountExceptInfo } = this.state;
let reqBtns = [];
switch (selectedKey) {
case "calc":
@ -155,21 +155,32 @@ class Index extends Component {
<AdvanceInputBtn onOpenAdvanceSearch={() => this.calc.openAdvanceSearch()}
onAdvanceSearch={() => this.calc.onAdSearch(false)}/>
];
accountExceptInfo && reqBtns.unshift(<i className="iconfont icon-jinggao"
title={getLabel(111, "存在异常信息,点击下载!")}
onClick={() => this.downloadTxtfile(accountExceptInfo)}/>);
break;
default:
break;
}
return reqBtns;
};
downloadTxtfile = (value) => {
const element = document.createElement("a");
const file = new Blob([value], { type: "text/plain" });
element.href = URL.createObjectURL(file);
element.download = "核算异常信息.txt";
document.body.appendChild(element);
element.click();
};
renderContent = () => {
const { selectedKey, accountExceptInfo } = this.state;
const { selectedKey } = this.state;
let dom = null;
switch (selectedKey) {
case "person":
dom = <SalaryCalcPersonConfirm {...this.props}/>;
break;
case "calc":
dom = <SalaryEditCalc {...this.props} accountExceptInfo={accountExceptInfo} ref={dom => this.calc = dom}/>;
dom = <SalaryEditCalc {...this.props} ref={dom => this.calc = dom}/>;
break;
default:
break;

View File

@ -5,6 +5,13 @@
height: 100%;
background: #f6f6f6;
.icon-jinggao {
color: red;
font-size: 20px;
margin-right: 10px;
cursor: pointer;
}
.wea-new-top-req {
z-index: 0 !important;
}

View File

@ -1,37 +0,0 @@
export const columns = [
{
title: "姓名",
dataIndex: 'title',
key: 'title',
},
{
title: "个税扣缴义务人",
dataIndex: 'title',
key: 'title',
},
{
title: "部门",
dataIndex: 'title',
key: 'title',
},
{
title: "手机号",
dataIndex: 'title',
key: 'title',
},
{
title: "员工状态",
dataIndex: 'title',
key: 'title',
},
{
title: "基本工资",
dataIndex: 'title',
key: 'title',
},
{
title: "操作",
dataIndex: 'cz',
key: 'cz',
}
]

View File

@ -0,0 +1,43 @@
export const declareConditions = [
{
items: [
{
colSpan: 1,
conditionType: "MONTHPICKER",
domkey: ["salaryMonthStr"],
fieldcol: 14,
label: "薪资所属月",
lanId: 542604,
labelcol: 6,
value: "",
rules: "required|string",
viewAttr: 3
},
{
colSpan: 1,
conditionType: "SELECT",
domkey: ["taxAgentId"],
fieldcol: 14,
label: "个税扣缴义务人",
lanId: 537996,
labelcol: 6,
options: [],
rules: "required|string",
viewAttr: 3,
},
{
colSpan: 1,
conditionType: "INPUT",
domkey: ["description"],
fieldcol: 14,
label: "备注",
lanId: 536726,
labelcol: 6,
value: "",
viewAttr: 2
}
],
defaultshow: true,
title: ""
}
];

View File

@ -0,0 +1,92 @@
/*
* Author: 黎永顺
* name: 个税申报重构- 申报
* Description:
* Date: 2023/10/12
*/
import React, { Component } from "react";
import { inject, observer } from "mobx-react";
import { WeaDialog, WeaLocaleProvider, WeaTools } from "ecCom";
import { Button, message } from "antd";
import { getSearchs } from "../../../../util";
import { getTaxAgentSelectListAsAdmin } from "../../../../apis/taxAgent";
import { saveDeclare } from "../../../../apis/declare";
import { declareConditions } from "./condition";
const getKey = WeaTools.getKey;
const getLabel = WeaLocaleProvider.getLabel;
@inject("declareStore")
@observer
class Index extends Component {
constructor(props) {
super(props);
this.state = {
conditions: [], loading: false
};
}
componentWillReceiveProps(nextProps, nextContext) {
if (nextProps.visible !== this.props.visible && nextProps.visible) this.getTaxAgentSelectListAsAdmin(nextProps);
if (nextProps.visible !== this.props.visible && !nextProps.visible) this.props.declareStore.initDeclareForm();
}
getTaxAgentSelectListAsAdmin = (props) => {
const { declareStore: { declareForm } } = props;
getTaxAgentSelectListAsAdmin().then(({ status, data }) => {
if (status) {
this.setState({
conditions: _.map(declareConditions, item => ({
...item,
items: _.map(item.items, o => {
if (getKey(o) === "taxAgentId") {
return {
...o, options: _.map(data, g => ({ key: g.id, showname: g.content }))
// helpfulTitle: getLabel(563420, "提示:可选择单个个税扣缴义务人进行申报,若不选择,则批量对管理下的所有个税扣缴义务人进行申报;")
};
}
return { ...o };
})
}))
}, () => declareForm.initFormFields(this.state.conditions));
}
});
};
save = () => {
const { declareStore: { declareForm } } = this.props;
declareForm.validateForm().then(f => {
if (f.isValid) {
const payload = declareForm.getFormParams();
this.setState({ loading: true });
saveDeclare({ ...payload }).then(({ status, errormsg }) => {
this.setState({ loading: false });
if (status) {
message.success(getLabel(30700, "操作成功"));
this.props.onCancel("refresh");
} else {
message.error(errormsg);
}
}).catch(() => this.setState({ loading: false }));
} else {
f.showErrors();
}
});
};
render() {
const { conditions, loading } = this.state;
const { declareStore: { declareForm } } = this.props;
return (
<WeaDialog
{...this.props} style={{ width: 500 }} initLoadCss
buttons={[
<Button type="primary" onClick={this.save} loading={loading}>{getLabel(543618, "生成申报表")}</Button>
]}
>
<div className="declare-dialog-layout">{getSearchs(declareForm, conditions, 1, false)}</div>
</WeaDialog>
);
}
}
export default Index;

View File

@ -0,0 +1,34 @@
/*
* Author: 黎永顺
* name: 个税申报表重构-查询
* Description:
* Date: 2023/10/12
*/
import React, { Component } from "react";
import { WeaInputSearch, WeaLocaleProvider } from "ecCom";
import { MonthRangePicker } from "../../../reportView/components/statisticalMicroSettingsSlide";
const getLabel = WeaLocaleProvider.getLabel;
class Index extends Component {
render() {
const { queryParams } = this.props;
const { dateRange, name } = queryParams;
return (
<div className="salary-btn-flex">
<div className="mounth-range">
<span className="label">{getLabel(543549, "薪资所属月:")}</span>
<MonthRangePicker dateRange={dateRange} viewAttr={2}
onChange={v => this.props.onChange({ dateRange: v })}/>
</div>
<WeaInputSearch value={name}
placeholder={getLabel(111, "请输入个税扣缴义务人")}
onChange={v => this.props.onChange({ taxAgentName: v })}
onSearch={this.props.onSearch}
/>
</div>
);
}
}
export default Index;

View File

@ -0,0 +1,144 @@
/*
* Author: 黎永顺
* name: 个税申报重构-列表
* Description:
* Date: 2023/10/12
*/
import React, { Component } from "react";
import { WeaLocaleProvider, WeaTable } from "ecCom";
import { message, Modal } from "antd";
import { getDeclareList, withDrawTaxDeclaration } from "../../../../apis/declare";
import { sysConfCodeRule } from "../../../../apis/ruleconfig";
const getLabel = WeaLocaleProvider.getLabel;
class Index extends Component {
constructor(props) {
super(props);
this.state = {
loading: false, columns: [], dataSource: [], showWithDrawBtn: false,
pageInfo: { current: 1, pageSize: 10, total: 0 }
};
}
componentDidMount() {
this.getDeclareList(this.props);
this.sysConfCodeRule();
}
componentWillReceiveProps(nextProps, nextContext) {
if (nextProps.isRefresh !== this.props.isRefresh) this.getDeclareList(nextProps);
}
sysConfCodeRule = () => {
sysConfCodeRule({ code: "WITHDRAW_TAX_DECLARATION" }).then(({ status, data }) => {
if (status && data === "1") this.setState({ showWithDrawBtn: data === "1" });
});
};
getDeclareList = (props) => {
const { pageInfo } = this.state;
const { queryParams } = props;
const { dateRange, ...extra } = queryParams;
const [fromSalaryMonthStr, endSalaryMonthStr] = dateRange || [];
const params = { fromSalaryMonthStr, endSalaryMonthStr, ...extra };
const payload = { ...pageInfo, ...params };
this.setState({ loading: true });
getDeclareList(payload).then(({ status, data }) => {
this.setState({ loading: false });
if (status) {
const { columns, list: dataSource, pageNum, pageSize, total } = data;
this.setState({
dataSource, pageInfo: { ...pageInfo, pageNum, pageSize, total },
columns: _.map(columns, o => {
const { dataIndex } = o;
let width = "";
switch (dataIndex) {
case "taxAgentName":
case "operateTime":
width = "15%";
break;
case "description":
width = "20%";
break;
default:
width = "10%";
break;
}
return { ...o, width };
})
});
}
}).catch(() => this.setState({ loading: false }));
};
taxdeclarationDelete = (taxDeclarationId) => {
withDrawTaxDeclaration({ taxDeclarationId }).then(({ status, errormsg }) => {
if (status) {
message.success(getLabel(505793, "撤回成功"));
this.getDeclareList(this.props);
} else {
message.error(errormsg);
}
});
};
render() {
const { loading, dataSource, columns, pageInfo, showWithDrawBtn } = this.state;
const pagination = {
...pageInfo,
showTotal: total => `${getLabel(18609, "共")} ${total} ${getLabel(18256, "条")}`,
showQuickJumper: true,
showSizeChanger: true,
pageSizeOptions: ["10", "20", "50", "100"],
onShowSizeChange: (current, pageSize) => {
this.setState({
pageInfo: { ...pageInfo, current, pageSize }
}, () => this.getDeclareList(this.props));
},
onChange: current => {
this.setState({
pageInfo: { ...pageInfo, current }
}, () => this.getDeclareList(this.props));
}
};
return (
<WeaTable
rowKey="id"
dataSource={dataSource} loading={loading}
pagination={pagination} columns={[
...columns,
{
dataIndex: "operate", title: getLabel(30585, "操作"),
width: 170, render: (__, record) => {
const { id } = record;
return <React.Fragment>
<a
href={`${window.ecologyContentPath || ""}/spa/hrmSalary/static/index.html#/main/hrmSalary/declareDetail?id=${id}`}
target="_blank"
>
{getLabel(83110, "查看详情")}
</a>
{
showWithDrawBtn &&
<a
href="javascript:void(0);" style={{ marginLeft: 10 }}
onClick={() => {
Modal.confirm({
title: getLabel(131329, "信息确认"),
content: getLabel(543848, "确认撤回该条数据吗?"),
onOk: () => this.taxdeclarationDelete(id)
});
}}
>
{getLabel(32025, "撤回")}
</a>
}
</React.Fragment>;
}
}
]}
/>
);
}
}
export default Index;

View File

@ -0,0 +1,81 @@
/*
* Author: 黎永顺
* name: 个税申报表-重构页面
* Description:
* Date: 2023/10/12
*/
import React, { Component } from "react";
import { inject, observer } from "mobx-react";
import { WeaHelpfulTip, WeaLocaleProvider, WeaTop } from "ecCom";
import { Button } from "antd";
import moment from "moment";
import DeclareQuery from "./components/declareQuery";
import DeclareTablelist from "./components/declareTablelist";
import DeclareDialog from "./components/declareDialog";
import "./index.less";
const getLabel = WeaLocaleProvider.getLabel;
@inject("taxAgentStore")
@observer
class Calculate extends Component {
constructor(props) {
super(props);
this.state = {
queryParams: {
taxAgentName: "",
dateRange: [
moment(new Date()).startOf("year").format("YYYY-MM"),
moment(new Date()).startOf("month").format("YYYY-MM")
]
}, isRefresh: false,
declareDaialog: { visible: false, title: "" }
};
this.handleDebounce = null;
}
renderCalculateOpts = () => {
const { taxAgentStore: { showOperateBtn } } = this.props;
const { queryParams, isRefresh } = this.state;
let calculateOpts = [
<Button type="primary" onClick={() => this.setState({
declareDaialog: {
visible: true,
title: <div style={{ display: "flex", alignItems: "center" }}>
<span style={{ marginRight: 10 }}>{getLabel(15366, "申报")}</span>
<WeaHelpfulTip
width={200} placement="topLeft"
title={getLabel(543617, "提示:一个薪资所属月下一个个税扣缴义务人的所有核算数据都归档后才可以申报")}
/>
</div>
}
})}>{getLabel(543618, "生成申报表")}</Button>,
<DeclareQuery queryParams={queryParams} onChange={v => this.setState({
isRefresh: _.keys(v)[0] === "taxAgentName" ? isRefresh : !isRefresh,
queryParams: { ...queryParams, ...v }
})} onSearch={() => this.setState({ isRefresh: !isRefresh })}/>
];
return !showOperateBtn ? calculateOpts.slice(1) : calculateOpts;
};
render() {
const { queryParams, isRefresh, declareDaialog } = this.state;
return (
<WeaTop title={getLabel(543353, "个税申报")} icon={<i className="icon-coms-fa"/>} iconBgcolor="#F14A2D"
buttons={this.renderCalculateOpts()} className="declare-main-layout"
>
<div className="declare-body">
<DeclareTablelist queryParams={queryParams} isRefresh={isRefresh}/>
<DeclareDialog {...declareDaialog}
onCancel={(bool) => this.setState({
declareDaialog: { ...declareDaialog, visible: false },
isRefresh: bool === "refresh" ? !isRefresh : isRefresh
})}
/>
</div>
</WeaTop>
);
}
}
export default Calculate;

View File

@ -26,6 +26,70 @@
}
}
//个税申报表页面-重构
.declare-main-layout {
.wea-new-top-content {
overflow-y: hidden;
}
.declare-body {
height: 100%;
width: 100%;
padding: 16px;
overflow-y: auto;
.wea-new-table {
background: #fff;
}
.ant-table-tbody {
td {
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
}
}
.declare-dialog-layout {
background: #f6f6f6;
.wea-search-group {
padding: 16px;
}
.wea-select, .ant-select-selection, .ant-select {
width: 100%;
}
.wea-select {
display: inline-block;
position: relative;
}
.ant-select-selection {
height: 30px;
border-radius: 0;
}
.wea-content {
padding: 0;
.wea-form-cell-wrapper {
background: #FFF;
border: 1px solid #e5e5e5;
border-bottom: none;
.wea-form-cell {
border-bottom: 1px solid #e5e5e5;
}
}
}
}
.declare-status-box {
.icon-span {
cursor: pointer;

View File

@ -306,20 +306,25 @@ class FieldSlide extends Component {
onChange={value => this.handleChangeFields("dataType", value)}
/>
</WeaFormItem>
<WeaFormItem label="舍入规则" labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
<WeaSelect
value={roundingMode}
options={roundingModeOptions}
onChange={value => this.handleChangeFields("roundingMode", value)}
/>
</WeaFormItem>
<WeaFormItem label="保留小数位" labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
<WeaSelect
value={pattern}
options={patternOptions}
onChange={value => this.handleChangeFields("pattern", value)}
/>
</WeaFormItem>
{
dataType === "number" &&
<React.Fragment>
<WeaFormItem label="舍入规则" labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
<WeaSelect
value={roundingMode}
options={roundingModeOptions}
onChange={value => this.handleChangeFields("roundingMode", value)}
/>
</WeaFormItem>
<WeaFormItem label="保留小数位" labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
<WeaSelect
value={pattern}
options={patternOptions}
onChange={value => this.handleChangeFields("pattern", value)}
/>
</WeaFormItem>
</React.Fragment>
}
<WeaFormItem label="显示顺序" labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
<WeaInputNumber value={sortedIndex} precision={0}
onChange={value => this.handleChangeFields("sortedIndex", value)}/>

View File

@ -287,11 +287,11 @@ class LedgerSalaryItemTable extends Component {
return <span> {key.toString() === "1" ? "输入" : key.toString() === "2" ? formulaContent : key.toString() === "3" ? formulaContent : ""} </span>;
}
},
{
title: "个税申请表对应字段",
dataIndex: "taxDeclarationColumn",
key: "taxDeclarationColumn"
},
// {
// title: "个税申请表对应字段",
// dataIndex: "taxDeclarationColumn",
// key: "taxDeclarationColumn"
// },
{
title: <span>
<WeaCheckbox

View File

@ -163,7 +163,7 @@ export const salarySetConditions = [
checkboxValue: false,
conditionType: "SELECT",
domkey: ["salarySobIds"],
fieldcol: 18,
fieldcol: 14,
label: "薪资账套",
lanId: 538010,
labelcol: 6,

View File

@ -323,7 +323,7 @@ export default class SalaryItem extends React.Component {
})}
>{getLabel(111, "同步到薪资账套")}</Button>,
<Button type="primary" onClick={() => {
handleSlideSave(false);
handleSlideSave(true);
}}>保存</Button>
];
}

View File

@ -105,6 +105,26 @@
.salarySetDialog {
.salarySetDialogContent {
background: #f6f6f6;
.wea-search-group {
padding: 16px;
}
.wea-content {
padding: 0;
.wea-form-cell-wrapper {
background: #FFF;
border: 1px solid #e5e5e5;
border-bottom: none;
.wea-form-cell {
border-bottom: 1px solid #e5e5e5;
}
}
}
.wea-select, .ant-select, .ant-select-selection {
width: 100%;
}
@ -125,7 +145,7 @@
height: 30px;
white-space: nowrap;
min-width: 100px;
max-width: 345px;
max-width: 237px;
width: 100%;
display: inline-block;
padding: 4px 17px 4px 4px;

View File

@ -30,7 +30,7 @@ class SalaryItemForm extends Component {
componentDidMount() {
const { salaryItemFieldsList } = this.state;
const { request, editable, record, isAdd = false, taxAgentAdminOption, isLedger = false } = this.props;
const { systemType = "", sharedType, valueType, useInEmployeeSalary } = request;
const { systemType = "", sharedType, valueType, useInEmployeeSalary, dataType } = request;
this.setState({
salaryItemFieldsList: _.map(salaryItemFieldsList, item => {
const { key } = item;
@ -43,6 +43,9 @@ class SalaryItemForm extends Component {
viewAttr: (!isLedger && ((editable && record.canEdit) || isAdd)) ? 2 : 1,
display: !isLedger
};
case "pattern":
case "roundingMode":
return { ...item, display: dataType === "number" };
case "sortedIndex":
return { ...item };
case "useInEmployeeSalary":
@ -101,6 +104,8 @@ class SalaryItemForm extends Component {
salaryItemFieldsList: _.map(salaryItemFieldsList, item => {
if (key === "sharedType" && item.key === "taxAgentIds") {
return { ...item, display: v === "1", viewAttr: 3 };
} else if (key === "dataType" && (item.key === "roundingMode" || item.key === "pattern")) {
return { ...item, display: v === "number" };
} else if (key === "valueType" && (item.key === "originSqlContent" || item.key === "originFormulaContent")) {
return {
...item,

View File

@ -80,7 +80,7 @@ class SyncToSalaryAccountSetDialog extends Component {
return (
<WeaDialog
{...this.props} className="salarySetDialog" initLoadCss
style={{ width: 550 }}
style={{ width: 480 }}
buttons={[<Button type="primary" onClick={this.save}
loading={this.state.loading}>{getLabel(537558, "确定")}</Button>]}
>

View File

@ -8,6 +8,10 @@ const { TableStore } = WeaTableNew;
export class DeclareStore {
@observable paymentForm = new WeaForm(); // declareDetail----在线申报-缴款Form
@observable declareForm = new WeaForm(); //薪资核算重构-核算form
// ** 薪资核算重构-初始化核算form **
@action
initDeclareForm = () => this.declareForm = new WeaForm();
@observable tableStore = new TableStore(); // new table
@ -16,7 +20,6 @@ export class DeclareStore {
@observable hasRight = true; // 判断用户是有权限查看当前页面: 没有权限渲染无权限页面,有权限渲染数据
@observable showSearchAd = false; // 高级搜索面板显示
@observable loading = true; // 数据加载状态
// 列表
@observable listDataSource = [];
@observable listColumns = [];

View File

@ -309,7 +309,7 @@ export class SalaryItemStore {
if (!continueFlag) {
this.editSlideVisible = false;
}
this.initRequest();
((!params.id && continueFlag) || !continueFlag) && this.initRequest();
message.success("保存成功");
resolve();
} else {