diff --git a/pc4mobx/hrmSalary/pages/calculateDetail/compareDetail.js b/pc4mobx/hrmSalary/pages/calculateDetail/compareDetail.js index 70ca863b..946329e6 100644 --- a/pc4mobx/hrmSalary/pages/calculateDetail/compareDetail.js +++ b/pc4mobx/hrmSalary/pages/calculateDetail/compareDetail.js @@ -145,6 +145,11 @@ export default class CompareDetail extends React.Component { exportComparisonResult(this.id) } + // 线下对比导入 + handleComparisonFinish() { + this.handleSearch(this.state.searchValue) + } + render() { const { calculateStore: {comparisonResultPageInfo, comparisonResultTableStore, loading}} = this.props; const { importModalVisible, searchValue } = this.state; @@ -210,6 +215,9 @@ export default class CompareDetail extends React.Component { importModalVisible && { + this.handleComparisonFinish() + }} onCancel={() => { this.setState({ importModalVisible: false diff --git a/pc4mobx/hrmSalary/pages/calculateDetail/compareDetailImportModal.js b/pc4mobx/hrmSalary/pages/calculateDetail/compareDetailImportModal.js index 1fd7c451..c875f1ac 100644 --- a/pc4mobx/hrmSalary/pages/calculateDetail/compareDetailImportModal.js +++ b/pc4mobx/hrmSalary/pages/calculateDetail/compareDetailImportModal.js @@ -50,7 +50,8 @@ export default class CompareDetailImportModal extends React.Component { slideDataSource={comparisonPreviewDataSource} importResult={comparisonImportAcctResult} onFinish={() => { - this.handleFinish() + this.props.onCancel(); + this.props.onFinish(); }} previewImport={(params) => {previewComparisonResult(params)}} importFile={(params) => {importComparisonExcelAcctResult(params)}} diff --git a/pc4mobx/hrmSalary/pages/ledger/salaryItemForm.js b/pc4mobx/hrmSalary/pages/ledger/salaryItemForm.js index 2ebf1b22..07e2ba27 100644 --- a/pc4mobx/hrmSalary/pages/ledger/salaryItemForm.js +++ b/pc4mobx/hrmSalary/pages/ledger/salaryItemForm.js @@ -43,6 +43,17 @@ export default class SalaryItemForm extends React.Component { setItemGroups(groups) } + // 薪资项目 + handleItemDataSourceChange(dataSource, item) { + const { ledgerStore: {itemGroups, setItemGroups} } = this.props; + let newItemGroups = [...itemGroups] + newItemGroups.map(group => { + group.id = item.id + group.items = dataSource + }) + setItemGroups(newItemGroups) + } + render() { const {ledgerStore: {itemGroups, salaryItems, empBrowserList, setAddCategoryVisible, addCategoryVisible}} = this.props; return ( @@ -79,7 +90,7 @@ export default class SalaryItemForm extends React.Component { itemGroups && itemGroups.map(item => { item.items.map(i => {i.key = i.id}) return ( - {this.handleCanMoveItemChange(dataSource, item)}}/> + {this.handleItemDataSourceChange(dataSource, item)}}title={item.name} onChange={(dataSource) => {this.handleCanMoveItemChange(dataSource, item)}}/> ) } ) diff --git a/pc4mobx/hrmSalary/pages/ledger/step3/canMoveItem.js b/pc4mobx/hrmSalary/pages/ledger/step3/canMoveItem.js index 48fce2ef..fd8f5dc4 100644 --- a/pc4mobx/hrmSalary/pages/ledger/step3/canMoveItem.js +++ b/pc4mobx/hrmSalary/pages/ledger/step3/canMoveItem.js @@ -18,7 +18,7 @@ export default class CanMoveItem extends React.Component { if(record.canEdit) { return ( { - this.handleFormulaClick(record.formulaId) + this.handleFormulaClick(record.formulaId, record) }}>{text} ) } else { @@ -39,11 +39,13 @@ export default class CanMoveItem extends React.Component { } this.formulaId = "" + this.record = {} } // 编辑公式 - handleFormulaClick(formulaId) { + handleFormulaClick(formulaId, record) { this.formulaId = formulaId + this.record = record this.setState({ formalModalVisible: true }) @@ -81,7 +83,16 @@ export default class CanMoveItem extends React.Component { // 保存 handleSaveFormal(data) { - console.log("data: " + data); + let record = {...this.record} + record.formulaId = data.id + let dataSource = [...this.props.dataSource] + dataSource.map(item => { + if(item.id == record.id) { + item.formulaId = data.id + item.formulaContent = data.formula + } + }) + this.props.onDataSourceChange(dataSource) } render() { diff --git a/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js b/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js index 4e2b9cb3..d185433a 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/customSalaryItemSlide.js @@ -109,16 +109,17 @@ export default class CustomSalaryItemSlide extends React.Component { { this.handleChange({valueType: e.target.value}) }}> - 输入 - 公式 + 输入 + 公式 + SQL { - valueType == 2 && + ( valueType == 2 || valueType == 3 ) && 公式 -
this.handleShowFormal()} > {formulaContent} @@ -140,6 +141,7 @@ export default class CustomSalaryItemSlide extends React.Component { { this.handleSaveFormal(data) }} diff --git a/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js b/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js index 29d11cd8..a071d681 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/formalFormModal.js @@ -14,6 +14,7 @@ export default class FormalFormModal extends React.Component { this.group = {}; this.field = {}; this.parameters = [] + this.referenceType = "" } componentWillMount() { @@ -27,6 +28,7 @@ export default class FormalFormModal extends React.Component { value: data.formula }) this.parameters = data.parameters + this.referenceType = data.referenceType }) } } @@ -60,7 +62,8 @@ export default class FormalFormModal extends React.Component { validateType:'number', extendParam:'{}', formula: this.state.value, - parameters: this.parameters + parameters: this.parameters, + referenceType: this.referenceType == "" ? this.props.valueType == "2" ? "formula" : this.props.valueType == "3" ? "SQL" : "" : this.referenceType } saveFormual(params).then(data => { diff --git a/pc4mobx/hrmSalary/stores/calculate.js b/pc4mobx/hrmSalary/stores/calculate.js index aa2f5e2f..9bf5182a 100644 --- a/pc4mobx/hrmSalary/stores/calculate.js +++ b/pc4mobx/hrmSalary/stores/calculate.js @@ -254,6 +254,7 @@ export class calculateStore { // 核算结果--列表 @action acctResultList = (salaryAcctRecordId, employeeName = "", current = 1) => { + this.loading = true API.acctResultList({salaryAcctRecordId, employeeName, current}).then(res => { if(res.status) { this.acctResultListTableStore.getDatas(res.data.dataKey.datas) @@ -263,6 +264,7 @@ export class calculateStore { } else { message.error(res.errormsg || "") } + this.loading = false }) }