Merge branch 'release/2.9.42308.02' into release/2.9.42308.02-个税
# Conflicts: # pc4mobx/hrmSalary/pages/calculateDetail/index.less
This commit is contained in:
commit
dac0ec3197
|
|
@ -139,16 +139,8 @@ const Routes = (
|
||||||
</Route>
|
</Route>
|
||||||
<Route key="ledger" path="ledger" component={Ledger}/>
|
<Route key="ledger" path="ledger" component={Ledger}/>
|
||||||
<Route key="calculate" path="calculate" component={Calculate}/>
|
<Route key="calculate" path="calculate" component={Calculate}/>
|
||||||
<Route
|
<Route key="calculateDetail" path="calculateDetail" component={CalculateDetail}/>
|
||||||
key="calculateDetail"
|
<Route key="placeOnFileDetail" path="placeOnFileDetail" component={PlaceOnFileDetail}/>
|
||||||
path="calculateDetail"
|
|
||||||
component={CalculateDetail}
|
|
||||||
/>
|
|
||||||
<Route
|
|
||||||
key="placeOnFileDetail"
|
|
||||||
path="placeOnFileDetail"
|
|
||||||
component={PlaceOnFileDetail}
|
|
||||||
/>
|
|
||||||
<Route key="compareDetail" path="compareDetail" component={CompareDetail}/>
|
<Route key="compareDetail" path="compareDetail" component={CompareDetail}/>
|
||||||
<Route key="payroll" path="payroll" component={Payroll}/>
|
<Route key="payroll" path="payroll" component={Payroll}/>
|
||||||
<Route key="watermarkPreview" path="payroll/watermark/preview" component={WatermarkPreview}/>
|
<Route key="watermarkPreview" path="payroll/watermark/preview" component={WatermarkPreview}/>
|
||||||
|
|
|
||||||
|
|
@ -353,18 +353,10 @@ export default class CalculateDetail extends React.Component {
|
||||||
onClick={() => this.downloadTxtfile(accountExceptInfo)}/>);
|
onClick={() => this.downloadTxtfile(accountExceptInfo)}/>);
|
||||||
return buttons;
|
return buttons;
|
||||||
};
|
};
|
||||||
|
|
||||||
const topTab = [
|
const topTab = [
|
||||||
{
|
{ title: "人员确认", viewcondition: "0" },
|
||||||
title: "人员确认",
|
{ title: "薪资核算", viewcondition: "1" }
|
||||||
viewcondition: "0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "薪资核算",
|
|
||||||
viewcondition: "1"
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
|
|
||||||
const adBtn = [
|
const adBtn = [
|
||||||
// 高级搜索内部按钮
|
// 高级搜索内部按钮
|
||||||
<Button type="primary" onClick={() => {
|
<Button type="primary" onClick={() => {
|
||||||
|
|
@ -407,19 +399,19 @@ export default class CalculateDetail extends React.Component {
|
||||||
return (
|
return (
|
||||||
<Authority ecId={`${this && this.props && this.props.ecId || ""}_Authority@lulowc`}
|
<Authority ecId={`${this && this.props && this.props.ecId || ""}_Authority@lulowc`}
|
||||||
store={{ loading: false, hasRight: payrollPermission && calculateAuth }}>
|
store={{ loading: false, hasRight: payrollPermission && calculateAuth }}>
|
||||||
<div style={{ overflowY: "hidden", height: "100%" }}>
|
<div className="calculate-layout">
|
||||||
<WeaTab
|
<WeaTab
|
||||||
datas={topTab}
|
datas={topTab}
|
||||||
selectedKey={selectedKey}
|
selectedKey={selectedKey}
|
||||||
keyParam="viewcondition"
|
keyParam="viewcondition"
|
||||||
onChange={v => this.setState({ selectedKey: v })}
|
onChange={v => this.setState({ selectedKey: v })}
|
||||||
searchType={selectedKey == 1 ? ["base", "advanced"] : []} // base:基础搜索框 advanced:显示高级搜索按钮
|
searchType={selectedKey === "1" ? ["base", "advanced"] : []} // base:基础搜索框 advanced:显示高级搜索按钮
|
||||||
showSearchAd={showSearchAd} // 是否展开高级搜索面板
|
showSearchAd={showSearchAd} // 是否展开高级搜索面板
|
||||||
setShowSearchAd={(bool) => this.setState({ showSearchAd: bool })} //高级搜索面板受控
|
setShowSearchAd={(bool) => this.setState({ showSearchAd: bool })} //高级搜索面板受控
|
||||||
searchsAd={renderSearch()} // 高级搜索内部数据getSearchs(form, toJS(condition), 2)
|
searchsAd={renderSearch()} // 高级搜索内部数据getSearchs(form, toJS(condition), 2)
|
||||||
buttonsAd={adBtn} // 高级搜索内部按钮
|
buttonsAd={adBtn} // 高级搜索内部按钮
|
||||||
onSearch={() => this.handleSearch(this.state.searchItemsValue)} // 点搜索按钮时的回调
|
onSearch={() => this.handleSearch(this.state.searchItemsValue)} // 点搜索按钮时的回调
|
||||||
buttons={selectedKey == 1 ? renderRightOperation() : []}
|
buttons={selectedKey === "1" ? renderRightOperation() : []}
|
||||||
searchsBasePlaceHolder={"请输入姓名"}
|
searchsBasePlaceHolder={"请输入姓名"}
|
||||||
onSearchChange={(v) =>
|
onSearchChange={(v) =>
|
||||||
this.setState({
|
this.setState({
|
||||||
|
|
@ -431,9 +423,9 @@ export default class CalculateDetail extends React.Component {
|
||||||
} // 在搜索框中输入的文字改变时的回调: 这里需要同步高级搜索和外部搜索框的值form.updateFields({ username: v })
|
} // 在搜索框中输入的文字改变时的回调: 这里需要同步高级搜索和外部搜索框的值form.updateFields({ username: v })
|
||||||
searchsBaseValue={this.state.searchItemsValue.employeeName} // 外部input搜索值受控: 这里和高级搜索的requestname同步form.getFormParams().username
|
searchsBaseValue={this.state.searchItemsValue.employeeName} // 外部input搜索值受控: 这里和高级搜索的requestname同步form.getFormParams().username
|
||||||
/>
|
/>
|
||||||
{selectedKey == 0 && <UserSure/>}
|
{selectedKey === "0" && <UserSure/>}
|
||||||
{selectedKey == 1 && <SalaryDetail onChangeAccountIds={(ids) => this.setState({ accountIds: ids })}
|
{selectedKey === "1" && <SalaryDetail onChangeAccountIds={(ids) => this.setState({ accountIds: ids })}
|
||||||
employeeName={this.state.searchItemsValue}/>}
|
employeeName={this.state.searchItemsValue}/>}
|
||||||
{acctResultImportVisiable &&
|
{acctResultImportVisiable &&
|
||||||
<AcctResultImportModal
|
<AcctResultImportModal
|
||||||
visiable={acctResultImportVisiable}
|
visiable={acctResultImportVisiable}
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,17 @@
|
||||||
|
.calculate-layout {
|
||||||
|
height: 100%;
|
||||||
|
overflow-y: hidden;
|
||||||
|
background: #f6f6f6;
|
||||||
|
|
||||||
|
.wea-tab .wea-tab-right {
|
||||||
|
background: #f6f6f6;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wea-input-focus {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.userSure {
|
.userSure {
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
|
|
||||||
|
|
@ -9,6 +23,7 @@
|
||||||
.formWrapper {
|
.formWrapper {
|
||||||
line-height: 40px;
|
line-height: 40px;
|
||||||
border: 1px solid #eee;
|
border: 1px solid #eee;
|
||||||
|
background: #fff;
|
||||||
|
|
||||||
.ant-col-12 {
|
.ant-col-12 {
|
||||||
padding: 0 16px;
|
padding: 0 16px;
|
||||||
|
|
@ -71,8 +86,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.salaryDetail {
|
.salaryDetail {
|
||||||
padding: 10px 20px;
|
padding: 10px;
|
||||||
overflow-y: scroll;
|
overflow-y: auto;
|
||||||
|
|
||||||
.salaryBarWrapper {
|
.salaryBarWrapper {
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
|
|
@ -152,7 +167,8 @@
|
||||||
|
|
||||||
.placeOnFileDetail {
|
.placeOnFileDetail {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
overflow-y: auto;
|
overflow-y: hidden;
|
||||||
|
background: #f6f6f6;
|
||||||
|
|
||||||
.tabWrapper {
|
.tabWrapper {
|
||||||
height: 47px;
|
height: 47px;
|
||||||
|
|
@ -254,3 +270,9 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.salaryMonthTip-layout{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -29,11 +29,11 @@ class IssuedAndReissueTable extends Component {
|
||||||
/>
|
/>
|
||||||
</span>,
|
</span>,
|
||||||
render: (text, record) => {
|
render: (text, record) => {
|
||||||
const { canEdit } = record;
|
const { canEdit, pattern } = record;
|
||||||
return <WeaInputNumber
|
return <WeaInputNumber
|
||||||
disabled={!canEdit}
|
disabled={!canEdit}
|
||||||
min={0}
|
min={0}
|
||||||
precision={2}
|
precision={pattern || 2}
|
||||||
value={text || 0}
|
value={text || 0}
|
||||||
onChange={(value) => onChangeIssueReissueValue(record.salaryItemName, value, "issuedAndReissueItems")}
|
onChange={(value) => onChangeIssueReissueValue(record.salaryItemName, value, "issuedAndReissueItems")}
|
||||||
/>;
|
/>;
|
||||||
|
|
|
||||||
|
|
@ -37,10 +37,10 @@ class PayrollItemsTable extends Component {
|
||||||
</span>,
|
</span>,
|
||||||
width: "20%",
|
width: "20%",
|
||||||
render: (text, record) => {
|
render: (text, record) => {
|
||||||
const { canEdit, dataType } = record;
|
const { canEdit, dataType, pattern } = record;
|
||||||
return dataType === "number" ? <WeaInputNumber
|
return dataType === "number" ? <WeaInputNumber
|
||||||
disabled={!canEdit}
|
disabled={!canEdit}
|
||||||
precision={2}
|
precision={pattern || 2}
|
||||||
value={text || 0}
|
value={text || 0}
|
||||||
onChange={(value) => onChangeIssueReissueValue(record.salaryItemId, value, "itemsByGroup", salarySobItemGroupId)}
|
onChange={(value) => onChangeIssueReissueValue(record.salaryItemId, value, "itemsByGroup", salarySobItemGroupId)}
|
||||||
/> : <WeaInput
|
/> : <WeaInput
|
||||||
|
|
|
||||||
|
|
@ -162,7 +162,6 @@ export default class PlaceOnFileDetail extends React.Component {
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|
||||||
<div className="placeOnFileDetail">
|
<div className="placeOnFileDetail">
|
||||||
<CustomTab
|
<CustomTab
|
||||||
searchOperationItem={
|
searchOperationItem={
|
||||||
|
|
@ -170,7 +169,7 @@ export default class PlaceOnFileDetail extends React.Component {
|
||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
<div className="tabWrapper" style={{ borderBottom: "none" }}>
|
<div className="tabWrapper" style={{ borderBottom: "none" }}>
|
||||||
<span>薪资所属月:{baseSalarySobCycle.salaryMonth}</span>
|
<span style={{ marginRight: 10 }}>薪资所属月:{baseSalarySobCycle.salaryMonth}</span>
|
||||||
<WeaHelpfulTip
|
<WeaHelpfulTip
|
||||||
width={100}
|
width={100}
|
||||||
title={`薪资周期\n
|
title={`薪资周期\n
|
||||||
|
|
|
||||||
|
|
@ -6,9 +6,10 @@ import EditSalaryDetail from "./editSalaryDetail";
|
||||||
import SlideModalTitle from "../../components/slideModalTitle";
|
import SlideModalTitle from "../../components/slideModalTitle";
|
||||||
import { getQueryString } from "../../util/url";
|
import { getQueryString } from "../../util/url";
|
||||||
import { inject, observer } from "mobx-react";
|
import { inject, observer } from "mobx-react";
|
||||||
|
import ProgressModal from "../../components/progressModal";
|
||||||
|
import { SalaryMonthTip } from "./userSure";
|
||||||
import { toJS } from "mobx";
|
import { toJS } from "mobx";
|
||||||
import "./index.less";
|
import "./index.less";
|
||||||
import ProgressModal from "../../components/progressModal";
|
|
||||||
|
|
||||||
@inject("calculateStore", "taxAgentStore")
|
@inject("calculateStore", "taxAgentStore")
|
||||||
@observer
|
@observer
|
||||||
|
|
@ -151,6 +152,7 @@ export default class SalaryDetail extends React.Component {
|
||||||
progressVisible: false,
|
progressVisible: false,
|
||||||
progress: 0
|
progress: 0
|
||||||
}, () => {
|
}, () => {
|
||||||
|
const { current, pageSize } = this.pageInfo;
|
||||||
const childFrameObj = document.getElementById("atdTable");
|
const childFrameObj = document.getElementById("atdTable");
|
||||||
const payload = {
|
const payload = {
|
||||||
type: "PR",
|
type: "PR",
|
||||||
|
|
@ -158,7 +160,8 @@ export default class SalaryDetail extends React.Component {
|
||||||
url: "/api/bs/hrmsalary/salaryacct/acctresult/list",
|
url: "/api/bs/hrmsalary/salaryacct/acctresult/list",
|
||||||
queryParams: {
|
queryParams: {
|
||||||
salaryAcctRecordId,
|
salaryAcctRecordId,
|
||||||
...this.props.employeeName
|
...this.props.employeeName,
|
||||||
|
current, pageSize
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*");
|
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*");
|
||||||
|
|
@ -186,13 +189,15 @@ export default class SalaryDetail extends React.Component {
|
||||||
this.setState({ loading: false });
|
this.setState({ loading: false });
|
||||||
const childFrameObj = document.getElementById("atdTable");
|
const childFrameObj = document.getElementById("atdTable");
|
||||||
const salaryAcctRecordId = getQueryString("id");
|
const salaryAcctRecordId = getQueryString("id");
|
||||||
|
const { current, pageSize } = this.pageInfo;
|
||||||
const payload = {
|
const payload = {
|
||||||
type: "PR",
|
type: "PR",
|
||||||
listType: "",
|
listType: "",
|
||||||
url: "/api/bs/hrmsalary/salaryacct/acctresult/list",
|
url: "/api/bs/hrmsalary/salaryacct/acctresult/list",
|
||||||
queryParams: {
|
queryParams: {
|
||||||
salaryAcctRecordId,
|
salaryAcctRecordId,
|
||||||
...this.props.employeeName
|
...this.props.employeeName,
|
||||||
|
current, pageSize
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*");
|
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*");
|
||||||
|
|
@ -211,17 +216,9 @@ export default class SalaryDetail extends React.Component {
|
||||||
<div className="salaryBarWrapper">
|
<div className="salaryBarWrapper">
|
||||||
<span>薪资所属月:{baseSalarySobCycle.salaryMonth}</span>
|
<span>薪资所属月:{baseSalarySobCycle.salaryMonth}</span>
|
||||||
<WeaHelpfulTip
|
<WeaHelpfulTip
|
||||||
style={{ marginLeft: "10px" }}
|
style={{ marginLeft: 10 }}
|
||||||
width={200}
|
title={!_.isEmpty(baseSalarySobCycle) ?
|
||||||
title={
|
<SalaryMonthTip baseSalarySobCycle={baseSalarySobCycle}/> : ""}
|
||||||
`薪资周期\n
|
|
||||||
${baseSalarySobCycle.salaryCycle && baseSalarySobCycle.salaryCycle.fromDate}至${baseSalarySobCycle.salaryCycle && baseSalarySobCycle.salaryCycle.endDate}\n
|
|
||||||
税款所属期\n
|
|
||||||
${baseSalarySobCycle.taxCycle}\n
|
|
||||||
考勤取值周期\n
|
|
||||||
${baseSalarySobCycle.attendCycle && baseSalarySobCycle.attendCycle.fromDate}至${baseSalarySobCycle.attendCycle && baseSalarySobCycle.attendCycle.endDate}\n
|
|
||||||
福利台账月份\n
|
|
||||||
引用${baseSalarySobCycle.socialSecurityCycle}的福利台账数据`}
|
|
||||||
placement="topLeft"
|
placement="topLeft"
|
||||||
/>
|
/>
|
||||||
{/*暂时隐藏*/}
|
{/*暂时隐藏*/}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,20 @@
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { Button, Col, Icon, message, Modal, Row } from "antd";
|
import { Button, Col, Icon, message, Modal, Row } from "antd";
|
||||||
import { WeaBrowser, WeaFormItem, WeaHelpfulTip, WeaInput, WeaSearchGroup, WeaSelect, WeaTab } from "ecCom";
|
import {
|
||||||
|
WeaBrowser,
|
||||||
|
WeaFormItem,
|
||||||
|
WeaHelpfulTip,
|
||||||
|
WeaInput,
|
||||||
|
WeaLocaleProvider,
|
||||||
|
WeaSearchGroup,
|
||||||
|
WeaSelect,
|
||||||
|
WeaTab
|
||||||
|
} from "ecCom";
|
||||||
import { inject, observer } from "mobx-react";
|
import { inject, observer } from "mobx-react";
|
||||||
import "./index.less";
|
|
||||||
import { getQueryString } from "../../util/url";
|
import { getQueryString } from "../../util/url";
|
||||||
|
import "./index.less";
|
||||||
|
|
||||||
|
const { getLabel } = WeaLocaleProvider;
|
||||||
@inject("calculateStore", "salaryFileStore")
|
@inject("calculateStore", "salaryFileStore")
|
||||||
@observer
|
@observer
|
||||||
export default class UserSure extends React.Component {
|
export default class UserSure extends React.Component {
|
||||||
|
|
@ -120,7 +130,7 @@ export default class UserSure extends React.Component {
|
||||||
url: "/api/bs/hrmsalary/salaryacct/acctemployee/list",
|
url: "/api/bs/hrmsalary/salaryacct/acctemployee/list",
|
||||||
queryParams: {
|
queryParams: {
|
||||||
salaryAcctRecordId,
|
salaryAcctRecordId,
|
||||||
...this.state.searchItemsValue,
|
...this.state.searchItemsValue
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*"); //window.postMessage
|
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*"); //window.postMessage
|
||||||
|
|
@ -375,12 +385,8 @@ export default class UserSure extends React.Component {
|
||||||
<Row>
|
<Row>
|
||||||
<Col span={6}>
|
<Col span={6}>
|
||||||
薪资所属月:<WeaHelpfulTip
|
薪资所属月:<WeaHelpfulTip
|
||||||
width={100}
|
title={!_.isEmpty(baseSalarySobCycle) ?
|
||||||
title={`薪资周期\n${baseSalarySobCycle.salaryCycle &&
|
<SalaryMonthTip baseSalarySobCycle={baseSalarySobCycle}/> : ""}
|
||||||
baseSalarySobCycle.salaryCycle.fromDate}至${baseSalarySobCycle.salaryCycle &&
|
|
||||||
baseSalarySobCycle.salaryCycle.endDate}\n税款所属期\n${baseSalarySobCycle.taxCycle}\n考勤取值周期\n${baseSalarySobCycle.attendCycle &&
|
|
||||||
baseSalarySobCycle.attendCycle.fromDate}至${baseSalarySobCycle.attendCycle &&
|
|
||||||
baseSalarySobCycle.attendCycle.endDate}\n福利台账月份\n引用${baseSalarySobCycle.socialSecurityCycle}的福利台账数据`}
|
|
||||||
placement="topLeft"
|
placement="topLeft"
|
||||||
/>
|
/>
|
||||||
</Col>
|
</Col>
|
||||||
|
|
@ -430,7 +436,7 @@ export default class UserSure extends React.Component {
|
||||||
url: "/api/bs/hrmsalary/salaryacct/acctemployee/list",
|
url: "/api/bs/hrmsalary/salaryacct/acctemployee/list",
|
||||||
queryParams: {
|
queryParams: {
|
||||||
salaryAcctRecordId,
|
salaryAcctRecordId,
|
||||||
...this.state.searchItemsValue,
|
...this.state.searchItemsValue
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*"); //window.postMessage
|
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*"); //window.postMessage
|
||||||
|
|
@ -460,7 +466,7 @@ export default class UserSure extends React.Component {
|
||||||
url: "/api/bs/hrmsalary/salaryacct/reducedemployee/list",
|
url: "/api/bs/hrmsalary/salaryacct/reducedemployee/list",
|
||||||
queryParams: {
|
queryParams: {
|
||||||
salaryAcctRecordId,
|
salaryAcctRecordId,
|
||||||
...this.state.searchItemsValue,
|
...this.state.searchItemsValue
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*");
|
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*");
|
||||||
|
|
@ -490,7 +496,7 @@ export default class UserSure extends React.Component {
|
||||||
url: "/api/bs/hrmsalary/salaryacct/addedemployee/list",
|
url: "/api/bs/hrmsalary/salaryacct/addedemployee/list",
|
||||||
queryParams: {
|
queryParams: {
|
||||||
salaryAcctRecordId,
|
salaryAcctRecordId,
|
||||||
...this.state.searchItemsValue,
|
...this.state.searchItemsValue
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*");
|
childFrameObj.contentWindow.postMessage(JSON.stringify(payload), "*");
|
||||||
|
|
@ -587,3 +593,32 @@ export default class UserSure extends React.Component {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const SalaryMonthTip = (props) => {
|
||||||
|
const { baseSalarySobCycle } = props;
|
||||||
|
const { salaryCycle, taxCycle, attendCycle, socialSecurityCycle } = baseSalarySobCycle;
|
||||||
|
const { fromDate: salaryCycleFromDate, endDate: salaryCycleEndDate } = salaryCycle;
|
||||||
|
const { fromDate: attendCycleFromDate, endDate: attendCycleEndDate } = attendCycle;
|
||||||
|
return (
|
||||||
|
<div className="salaryMonthTip-layout">
|
||||||
|
<div className="salaryMonthTipItem">
|
||||||
|
<div className="label">{getLabel(543375, "薪资周期")}</div>
|
||||||
|
<div className="value">{`${salaryCycleFromDate}${getLabel(15322, "至")}${salaryCycleEndDate}`}</div>
|
||||||
|
</div>
|
||||||
|
<div className="salaryMonthTipItem">
|
||||||
|
<div className="label">{getLabel(542240, "税款所属期")}</div>
|
||||||
|
<div className="value">{taxCycle}</div>
|
||||||
|
</div>
|
||||||
|
<div className="salaryMonthTipItem">
|
||||||
|
<div className="label">{getLabel(543475, "考勤取值周期")}</div>
|
||||||
|
<div className="value">{`${attendCycleFromDate}${getLabel(15322, "至")}${attendCycleEndDate}`}</div>
|
||||||
|
</div>
|
||||||
|
<div className="salaryMonthTipItem">
|
||||||
|
<div className="label">{getLabel(543466, "福利台账月份")}</div>
|
||||||
|
<div className="value">
|
||||||
|
{`${getLabel(19422, "引用")}${socialSecurityCycle}${getLabel(543476, "的福利台账数据")}`}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ class LedgerSalaryItemEditSlide extends Component {
|
||||||
const key = Object.keys(params)[0];
|
const key = Object.keys(params)[0];
|
||||||
this.props.onUpdateRequest(request, key);
|
this.props.onUpdateRequest(request, key);
|
||||||
};
|
};
|
||||||
handleShowFormal = () => this.props.onEditFormnul();
|
handleShowFormal = (salaryItemName) => this.props.onEditFormnul(salaryItemName);
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
|
|
|
||||||
|
|
@ -147,7 +147,7 @@ class LedgerSalaryItemNormal extends Component {
|
||||||
const newDateSource = _.map(dataSource, item => {
|
const newDateSource = _.map(dataSource, item => {
|
||||||
return {
|
return {
|
||||||
...item,
|
...item,
|
||||||
items: _.filter(item.items || [], child => child.name.indexOf(salaryItemKeywords) !== -1)
|
items: _.filter(item.items || [], child => (child.name.indexOf(salaryItemKeywords) !== -1 || child.formulaContent.indexOf(salaryItemKeywords) !== -1))
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
return (
|
return (
|
||||||
|
|
@ -262,7 +262,7 @@ const TitleComp = (props) => {
|
||||||
<Button type="ghost" onClick={() => onAddCategory()} style={{ marginRight: 10 }}>新增分类</Button>
|
<Button type="ghost" onClick={() => onAddCategory()} style={{ marginRight: 10 }}>新增分类</Button>
|
||||||
}
|
}
|
||||||
<WeaInputSearch value={salaryItemKeywords} onChange={onChange}
|
<WeaInputSearch value={salaryItemKeywords} onChange={onChange}
|
||||||
placeholder={getLabel(111, "请输入薪资项目名称")}
|
placeholder={getLabel(111, "请输入薪资项目名称或者公式名称")}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>;
|
</div>;
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,8 @@ class LedgerSalaryItemTable extends Component {
|
||||||
visible: false,
|
visible: false,
|
||||||
formulaId: "",
|
formulaId: "",
|
||||||
valueType: "",
|
valueType: "",
|
||||||
dataType: ""
|
dataType: "",
|
||||||
|
name: ""
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
@ -163,13 +164,13 @@ class LedgerSalaryItemTable extends Component {
|
||||||
originSqlContent: ((valueType.toString() === "2" && (!originFormulaContent || originFormulaContent === " ")) || (valueType.toString() === "1") || (valueType.toString() === "2" && originFormulaContent)) ? " " : originSqlContent
|
originSqlContent: ((valueType.toString() === "2" && (!originFormulaContent || originFormulaContent === " ")) || (valueType.toString() === "1") || (valueType.toString() === "2" && originFormulaContent)) ? " " : originSqlContent
|
||||||
}, salaryItemId);
|
}, salaryItemId);
|
||||||
};
|
};
|
||||||
handleEditFormnul = () => {
|
handleEditFormnul = (salaryItemName) => {
|
||||||
const { salaryItemPayload, editFormulModal } = this.state;
|
const { salaryItemPayload, editFormulModal } = this.state;
|
||||||
const { record } = salaryItemPayload;
|
const { record } = salaryItemPayload;
|
||||||
const { valueType, formulaId, dataType, originFormulaContent, originSqlContent } = record;
|
const { valueType, formulaId, dataType, originFormulaContent, originSqlContent } = record;
|
||||||
this.setState({
|
this.setState({
|
||||||
editFormulModal: {
|
editFormulModal: {
|
||||||
...editFormulModal, visible: true, valueType, dataType,
|
...editFormulModal, visible: true, valueType, dataType, name: salaryItemName,
|
||||||
formulaId: ((valueType.toString() === "2" && (originFormulaContent || originFormulaContent !== " ")) || valueType.toString() === "3" && (originSqlContent || originSqlContent === " ")) ? formulaId : ""
|
formulaId: ((valueType.toString() === "2" && (originFormulaContent || originFormulaContent !== " ")) || valueType.toString() === "3" && (originSqlContent || originSqlContent === " ")) ? formulaId : ""
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
@ -180,7 +181,7 @@ class LedgerSalaryItemTable extends Component {
|
||||||
editFormulModal: {
|
editFormulModal: {
|
||||||
...editFormulModal,
|
...editFormulModal,
|
||||||
visible: false,
|
visible: false,
|
||||||
formulaId: "",
|
formulaId: "", name: "",
|
||||||
valueType: "", dataType: ""
|
valueType: "", dataType: ""
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
@ -255,9 +256,9 @@ class LedgerSalaryItemTable extends Component {
|
||||||
dataIndex: "valueType",
|
dataIndex: "valueType",
|
||||||
key: "valueType",
|
key: "valueType",
|
||||||
render: (e, record) => {
|
render: (e, record) => {
|
||||||
const { valueType } = record;
|
const { valueType, formulaContent } = record;
|
||||||
const key = !_.isNil(valueType) ? valueType : "";
|
const key = !_.isNil(valueType) ? valueType : "";
|
||||||
return <span> {key.toString() === "1" ? "输入" : key.toString() === "2" ? "自定义公式" : key.toString() === "3" ? "SQL" : ""} </span>;
|
return <span> {key.toString() === "1" ? "输入" : key.toString() === "2" ? formulaContent : key.toString() === "3" ? formulaContent : ""} </span>;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -189,7 +189,7 @@ export default class MobilePayroll extends React.Component {
|
||||||
salaryItemSet={!_.isEmpty(salaryGroups) ? JSON.stringify([employeeInformation, ...salaryGroups]) : []}
|
salaryItemSet={!_.isEmpty(salaryGroups) ? JSON.stringify([employeeInformation, ...salaryGroups]) : []}
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
(_.isNil(mySalaryBillData.confirmStatus) || mySalaryBillData.confirmStatus === "0") &&
|
(!_.isEmpty(salaryGroups) && (_.isNil(mySalaryBillData.confirmStatus) || mySalaryBillData.confirmStatus === "0")) &&
|
||||||
<ConfirmBtns
|
<ConfirmBtns
|
||||||
confirmSalaryBill={this.confirmSalaryBill}
|
confirmSalaryBill={this.confirmSalaryBill}
|
||||||
goFeedback={this.handleGoFeedback}
|
goFeedback={this.handleGoFeedback}
|
||||||
|
|
@ -210,7 +210,7 @@ export default class MobilePayroll extends React.Component {
|
||||||
salaryItemSet={!_.isEmpty(salaryGroups) ? JSON.stringify([employeeInformation, ...salaryGroups]) : JSON.stringify([])}
|
salaryItemSet={!_.isEmpty(salaryGroups) ? JSON.stringify([employeeInformation, ...salaryGroups]) : JSON.stringify([])}
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
(_.isNil(mySalaryBillData.confirmStatus) || mySalaryBillData.confirmStatus === "0") &&
|
(!_.isEmpty(salaryGroups) && (_.isNil(mySalaryBillData.confirmStatus) || mySalaryBillData.confirmStatus === "0")) &&
|
||||||
<ConfirmBtns
|
<ConfirmBtns
|
||||||
confirmSalaryBill={this.confirmSalaryBill}
|
confirmSalaryBill={this.confirmSalaryBill}
|
||||||
goFeedback={this.handleGoFeedback}
|
goFeedback={this.handleGoFeedback}
|
||||||
|
|
|
||||||
|
|
@ -99,7 +99,7 @@ class MySalaryView extends Component {
|
||||||
salaryItemSet={!_.isEmpty(salaryGroups) ? JSON.stringify([employeeInformation, ...salaryGroups]) : []}
|
salaryItemSet={!_.isEmpty(salaryGroups) ? JSON.stringify([employeeInformation, ...salaryGroups]) : []}
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
(_.isNil(mySalaryStore.confirmStatus) || mySalaryStore.confirmStatus === "0") &&
|
(!_.isEmpty(salaryGroups) && (_.isNil(mySalaryStore.confirmStatus) || mySalaryStore.confirmStatus === "0")) &&
|
||||||
<ConfirmBtns
|
<ConfirmBtns
|
||||||
confirmSalaryBill={this.confirmSalaryBill}
|
confirmSalaryBill={this.confirmSalaryBill}
|
||||||
goFeedback={this.handleGoFeedback}
|
goFeedback={this.handleGoFeedback}
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ import ImportModal from "../../../components/importModal";
|
||||||
import * as API from "../../../apis/payrollFiles";
|
import * as API from "../../../apis/payrollFiles";
|
||||||
import { Menu, Modal } from "antd";
|
import { Menu, Modal } from "antd";
|
||||||
import "../index.less";
|
import "../index.less";
|
||||||
|
import { convertToUrlString } from "../../../util/url";
|
||||||
|
|
||||||
class ImportMenu extends Component {
|
class ImportMenu extends Component {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
|
|
@ -114,7 +115,7 @@ class ImportMenu extends Component {
|
||||||
};
|
};
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
const { importType, refreshList, isExtEmp } = this.props;
|
const { importType, refreshList, isExtEmp, searchItemsValue = {} } = this.props;
|
||||||
const { importParams, previewColumns, previewDataSource } = this.state;
|
const { importParams, previewColumns, previewDataSource } = this.state;
|
||||||
let params = "";
|
let params = "";
|
||||||
if (importParams.importType === "init" || importParams.importType === "salaryItemAdjust") {
|
if (importParams.importType === "init" || importParams.importType === "salaryItemAdjust") {
|
||||||
|
|
@ -153,8 +154,7 @@ class ImportMenu extends Component {
|
||||||
}}
|
}}
|
||||||
previewImport={(params) => this.salaryArchivePreview(params)}
|
previewImport={(params) => this.salaryArchivePreview(params)}
|
||||||
importFile={(params) => this.handleImportFile(params)}
|
importFile={(params) => this.handleImportFile(params)}
|
||||||
templateLink={
|
templateLink={`/api/bs/hrmsalary/salaryArchive/downloadTemplate?importType=${params}&${convertToUrlString(searchItemsValue)}`
|
||||||
"/api/bs/hrmsalary/salaryArchive/downloadTemplate?importType=" + params
|
|
||||||
}
|
}
|
||||||
visiable={importParams.visible}
|
visiable={importParams.visible}
|
||||||
onCancel={() => {
|
onCancel={() => {
|
||||||
|
|
|
||||||
|
|
@ -433,6 +433,7 @@ class Index extends Component {
|
||||||
<Dropdown overlay={
|
<Dropdown overlay={
|
||||||
<ImportMenu
|
<ImportMenu
|
||||||
importType={importType}
|
importType={importType}
|
||||||
|
searchItemsValue={searchItemsValue}
|
||||||
refreshList={() => {
|
refreshList={() => {
|
||||||
this.query();
|
this.query();
|
||||||
this.setState({ selectedRowKeys: [] });
|
this.setState({ selectedRowKeys: [] });
|
||||||
|
|
@ -523,6 +524,7 @@ class Index extends Component {
|
||||||
<Dropdown overlay={
|
<Dropdown overlay={
|
||||||
<ImportMenu
|
<ImportMenu
|
||||||
isExtEmp importType={importType}
|
isExtEmp importType={importType}
|
||||||
|
searchItemsValue={searchItemsValue}
|
||||||
refreshList={() => {
|
refreshList={() => {
|
||||||
this.query();
|
this.query();
|
||||||
this.setState({ selectedRowKeys: [] });
|
this.setState({ selectedRowKeys: [] });
|
||||||
|
|
@ -834,6 +836,7 @@ class Index extends Component {
|
||||||
<div style={{ display: "none" }}>
|
<div style={{ display: "none" }}>
|
||||||
<ImportMenu
|
<ImportMenu
|
||||||
ref={(dom) => this.importRef = dom}
|
ref={(dom) => this.importRef = dom}
|
||||||
|
searchItemsValue={this.state.searchItemsValue}
|
||||||
refreshList={() => {
|
refreshList={() => {
|
||||||
this.query();
|
this.query();
|
||||||
this.setState({ selectedRowKeys: [] });
|
this.setState({ selectedRowKeys: [] });
|
||||||
|
|
|
||||||
|
|
@ -152,7 +152,7 @@ export default class SalaryFileViewSlide extends React.Component {
|
||||||
item.dataType === "number" ?
|
item.dataType === "number" ?
|
||||||
<WeaInputNumber
|
<WeaInputNumber
|
||||||
value={!_.isNil(item.value) ? item.value : 0}
|
value={!_.isNil(item.value) ? item.value : 0}
|
||||||
precision={2}
|
precision={item.pattern || 2}
|
||||||
viewAttr={selectedKey === "pending" ? 2 : 1}
|
viewAttr={selectedKey === "pending" ? 2 : 1}
|
||||||
onChange={value => {
|
onChange={value => {
|
||||||
item.value = value;
|
item.value = value;
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,8 @@ export default class CustomSalaryItemSlide extends React.Component {
|
||||||
super(props);
|
super(props);
|
||||||
this.state = {
|
this.state = {
|
||||||
showForm: false,
|
showForm: false,
|
||||||
formalModalVisible: false
|
formalModalVisible: false,
|
||||||
|
salaryItemName: ""
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -16,9 +17,10 @@ export default class CustomSalaryItemSlide extends React.Component {
|
||||||
this.props.onChange({ ...this.props.request, ...params });
|
this.props.onChange({ ...this.props.request, ...params });
|
||||||
};
|
};
|
||||||
|
|
||||||
handleShowFormal = () => {
|
handleShowFormal = (salaryItemName) => {
|
||||||
this.setState({
|
this.setState({
|
||||||
formalModalVisible: true
|
formalModalVisible: true,
|
||||||
|
salaryItemName
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -34,12 +36,13 @@ export default class CustomSalaryItemSlide extends React.Component {
|
||||||
render() {
|
render() {
|
||||||
const { request } = this.props;
|
const { request } = this.props;
|
||||||
const { valueType, dataType, formulaId } = request;
|
const { valueType, dataType, formulaId } = request;
|
||||||
const { formalModalVisible } = this.state;
|
const { formalModalVisible, salaryItemName } = this.state;
|
||||||
return (
|
return (
|
||||||
<div className="customSalaryItemSlide">
|
<div className="customSalaryItemSlide">
|
||||||
<SalaryItemForm {...this.props} onChangeFieldsItem={this.handleChange} onShowFormal={this.handleShowFormal}/>
|
<SalaryItemForm {...this.props} onChangeFieldsItem={this.handleChange} onShowFormal={this.handleShowFormal}/>
|
||||||
{formalModalVisible &&
|
{formalModalVisible &&
|
||||||
<FormalFormModal
|
<FormalFormModal
|
||||||
|
name={salaryItemName}
|
||||||
formulaId={formulaId}
|
formulaId={formulaId}
|
||||||
visible={formalModalVisible}
|
visible={formalModalVisible}
|
||||||
valueType={valueType}
|
valueType={valueType}
|
||||||
|
|
@ -49,7 +52,8 @@ export default class CustomSalaryItemSlide extends React.Component {
|
||||||
}}
|
}}
|
||||||
onCancel={() =>
|
onCancel={() =>
|
||||||
this.setState({
|
this.setState({
|
||||||
formalModalVisible: false
|
formalModalVisible: false,
|
||||||
|
salaryItemName: ""
|
||||||
})}
|
})}
|
||||||
/>}
|
/>}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -208,7 +208,7 @@ export default class FormalFormModal extends React.Component {
|
||||||
});
|
});
|
||||||
this.parameters = result;
|
this.parameters = result;
|
||||||
let params = {
|
let params = {
|
||||||
name: "公式1",
|
name: this.props.name || "公式1",
|
||||||
description: "备注",
|
description: "备注",
|
||||||
module: "salary",
|
module: "salary",
|
||||||
useFor: "salaryitem",
|
useFor: "salaryitem",
|
||||||
|
|
|
||||||
|
|
@ -133,7 +133,7 @@ class SalaryItemForm extends Component {
|
||||||
(type === "INPUT" && display) ?
|
(type === "INPUT" && display) ?
|
||||||
<WeaFormItem label={label} labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
|
<WeaFormItem label={label} labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
|
||||||
<WeaInput viewAttr={viewAttr} value={value}
|
<WeaInput viewAttr={viewAttr} value={value}
|
||||||
onClick={() => (key === "originSqlContent" || key === "originFormulaContent") && onShowFormal()}
|
onClick={() => (key === "originSqlContent" || key === "originFormulaContent") && onShowFormal(request["name"])}
|
||||||
onChange={v => this.handleChangeSalaryFiledItems(key, v)}/></WeaFormItem> :
|
onChange={v => this.handleChangeSalaryFiledItems(key, v)}/></WeaFormItem> :
|
||||||
(type === "SWITCH" && display) ?
|
(type === "SWITCH" && display) ?
|
||||||
<WeaFormItem label={label} labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
|
<WeaFormItem label={label} labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
|
||||||
|
|
|
||||||
|
|
@ -293,8 +293,10 @@ export default class Archives extends React.Component {
|
||||||
|
|
||||||
// 模板点击
|
// 模板点击
|
||||||
handleTemplateLinkClick = (exportData) => {
|
handleTemplateLinkClick = (exportData) => {
|
||||||
|
const { archivesStore: { form } } = this.props;
|
||||||
|
const formParams = form.getFormParams() || {};
|
||||||
const { selectedKey } = this.state;
|
const { selectedKey } = this.state;
|
||||||
let url = `/api/bs/hrmsalary/scheme/template/export?exportData=${exportData}&runStatuses=${selectedKey === "pending" ? "1" : "2,3"}`;
|
let url = `/api/bs/hrmsalary/scheme/template/export?exportData=${exportData}&runStatuses=${selectedKey === "pending" ? "1" : "2,3"}&${convertToUrlString(formParams)}`;
|
||||||
window.open(`${window.location.origin}${url}`);
|
window.open(`${window.location.origin}${url}`);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -203,7 +203,7 @@ export default class DefaultSlideForm extends React.Component {
|
||||||
return (
|
return (
|
||||||
<WeaInputNumber
|
<WeaInputNumber
|
||||||
min={0}
|
min={0}
|
||||||
precision={3}
|
precision={4}
|
||||||
value={text}
|
value={text}
|
||||||
onChange={v => {
|
onChange={v => {
|
||||||
this.updateDataSource(record, v, "paymentProportion");
|
this.updateDataSource(record, v, "paymentProportion");
|
||||||
|
|
|
||||||
|
|
@ -2,12 +2,26 @@
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
background: #f6f6f6;
|
||||||
|
|
||||||
|
.wea-new-top-req-wapper .wea-new-top-req-main {
|
||||||
|
background: #f6f6f6 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wea-new-top-req-wapper .wea-new-top-req {
|
||||||
|
z-index: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wea-search-tab, .wea-input-focus {
|
||||||
|
background: #f6f6f6;
|
||||||
|
}
|
||||||
|
|
||||||
.normalWapper {
|
.normalWapper {
|
||||||
flex: 1;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
padding: 0 16px;
|
||||||
|
|
||||||
.tableWrapper {
|
.tableWrapper {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
|
@ -16,12 +30,18 @@
|
||||||
.ant-spin-nested-loading, .ant-spin-container {
|
.ant-spin-nested-loading, .ant-spin-container {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.wea-new-table {
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.topContent {
|
.topContent {
|
||||||
padding: 8px 20px;
|
padding: 8px 20px;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
background: #fff;
|
||||||
|
margin-top: 16px;
|
||||||
|
|
||||||
.month {
|
.month {
|
||||||
margin-right: 26px;
|
margin-right: 26px;
|
||||||
|
|
@ -69,14 +89,16 @@
|
||||||
|
|
||||||
//退差;补差
|
//退差;补差
|
||||||
.regressionWrapper, .differenceWrapper {
|
.regressionWrapper, .differenceWrapper {
|
||||||
flex: 1;
|
height: 100%;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
padding: 16px;
|
||||||
|
|
||||||
.tableWrapper {
|
.tableWrapper {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
|
||||||
.ant-spin-nested-loading, .ant-spin-container {
|
.ant-spin-nested-loading, .ant-spin-container {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,13 +6,15 @@
|
||||||
*/
|
*/
|
||||||
import React, { Component } from "react";
|
import React, { Component } from "react";
|
||||||
import { inject, observer } from "mobx-react";
|
import { inject, observer } from "mobx-react";
|
||||||
import { WeaTab } from "ecCom";
|
import { WeaLocaleProvider, WeaReqTop } from "ecCom";
|
||||||
import NormalIndex from "./components/normal";
|
import NormalIndex from "./components/normal";
|
||||||
import OverViewIndex from "./components/overView";
|
import OverViewIndex from "./components/overView";
|
||||||
import AbnormalListIndex from "./components/abnormalList";
|
import AbnormalListIndex from "./components/abnormalList";
|
||||||
import Regression from "./components/regression";
|
import Regression from "./components/regression";
|
||||||
import MakeupDifference from "./components/makeupDifference";
|
import MakeupDifference from "./components/makeupDifference";
|
||||||
|
|
||||||
|
const { getLabel } = WeaLocaleProvider;
|
||||||
|
|
||||||
@inject("standingBookStore")
|
@inject("standingBookStore")
|
||||||
@observer
|
@observer
|
||||||
class StandingBookDetail extends Component {
|
class StandingBookDetail extends Component {
|
||||||
|
|
@ -43,7 +45,7 @@ class StandingBookDetail extends Component {
|
||||||
newTabList.push(newTabList.splice(_.findIndex(newTabList, it => it.id === "4"), 1)[0]);
|
newTabList.push(newTabList.splice(_.findIndex(newTabList, it => it.id === "4"), 1)[0]);
|
||||||
this.setState({
|
this.setState({
|
||||||
selectedKey: newTabList[0].id,
|
selectedKey: newTabList[0].id,
|
||||||
tabList: _.map(newTabList, it => ({ title: it.content, viewcondition: it.id })),
|
tabList: _.map(newTabList, it => ({ title: it.content, key: it.id })),
|
||||||
remarks, billMonth
|
remarks, billMonth
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
@ -53,33 +55,31 @@ class StandingBookDetail extends Component {
|
||||||
const { selectedKey, tabList, remarks, billMonth } = this.state;
|
const { selectedKey, tabList, remarks, billMonth } = this.state;
|
||||||
return (
|
return (
|
||||||
<div className="standingBookDetailWapper">
|
<div className="standingBookDetailWapper">
|
||||||
<WeaTab
|
<WeaReqTop
|
||||||
datas={tabList}
|
title={getLabel(538002, "社保福利台账")} icon={<i className="icon-coms-fa"/>}
|
||||||
keyParam="viewcondition" //主键
|
iconBgcolor="#F14A2D" showDropIcon={false} tabDatas={tabList} selectedKey={selectedKey}
|
||||||
selectedKey={selectedKey}
|
onChange={selectedKey => this.setState({ selectedKey })}
|
||||||
onChange={(selectedKey) => {
|
>
|
||||||
this.setState({ selectedKey });
|
{
|
||||||
}}
|
(selectedKey === "1" || selectedKey === "3") &&
|
||||||
/>
|
<NormalIndex selectedKey={selectedKey} remarks={remarks} billMonth={billMonth} type={this.type}
|
||||||
{
|
paymentOrganization={this.paymentOrganization} location={this.props.location}/>
|
||||||
(selectedKey === "1" || selectedKey === "3") &&
|
}
|
||||||
<NormalIndex selectedKey={selectedKey} remarks={remarks} billMonth={billMonth} type={this.type}
|
{
|
||||||
paymentOrganization={this.paymentOrganization} location={this.props.location}/>
|
selectedKey === "2" &&
|
||||||
}
|
<AbnormalListIndex billMonth={billMonth} type={this.type} paymentOrganization={this.paymentOrganization}/>
|
||||||
{
|
}
|
||||||
selectedKey === "2" &&
|
{
|
||||||
<AbnormalListIndex billMonth={billMonth} type={this.type} paymentOrganization={this.paymentOrganization}/>
|
selectedKey === "4" &&
|
||||||
}
|
<OverViewIndex billMonth={billMonth} type={this.type} paymentOrganization={this.paymentOrganization}/>
|
||||||
{
|
}
|
||||||
selectedKey === "4" &&
|
{
|
||||||
<OverViewIndex billMonth={billMonth} type={this.type} paymentOrganization={this.paymentOrganization}/>
|
selectedKey === "5" && <Regression/>
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
selectedKey === "5" && <Regression/>
|
selectedKey === "6" && <MakeupDifference/>
|
||||||
}
|
}
|
||||||
{
|
</WeaReqTop>
|
||||||
selectedKey === "6" && <MakeupDifference/>
|
|
||||||
}
|
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue