薪资账套-薪资项目移动到功能

This commit is contained in:
黎永顺 2023-03-08 17:12:17 +08:00
parent 96ae39c241
commit f166ae83fa
4 changed files with 130 additions and 11 deletions

View File

@ -220,7 +220,8 @@
font-size: 20px;
line-height: 20px;
}
.icon-coms-leading-in-btn:hover, .icon-coms-leading-in-btn:active{
.icon-coms-leading-in-btn:hover, .icon-coms-leading-in-btn:active {
background: transparent;
}
@ -231,3 +232,15 @@
.icon-coms-leading-in-btn.ant-btn-primary {
color: #55a1f8;
}
.moveModalWrapper {
.ant-radio-group {
display: flex;
flex-direction: column;
.ant-radio-wrapper {
margin: 4px 16px;
}
}
}

View File

@ -0,0 +1,38 @@
/*
* Author: 黎永顺
* name: 薪资账套-薪资项目移动到的功能
* Description:
* Date: 2023/3/8
*/
import React, { Component } from "react";
import { WeaDialog, WeaSearchGroup, WeaSelect } from "ecCom";
import { Button } from "antd";
import "./index.less";
class LedgerMovoTo extends Component {
render() {
const { dataList, value, onChangeMoveVal, onSubmitMoveTo, ...extraProps } = this.props;
const buttons = [
<Button type="primary" onClick={onSubmitMoveTo}>移动</Button>,
<Button type="ghost" onClick={extraProps.onCancel}>取消</Button>
];
return (
<WeaDialog
{...extraProps} style={{ width: 440, height: 232 }}
buttons={buttons} hasScroll initLoadCss
className="moveModalWrapper"
>
<WeaSearchGroup showGroup needTigger={false}>
<WeaSelect
options={dataList}
detailtype={3} value={value}
onChange={onChangeMoveVal}
/>
</WeaSearchGroup>
</WeaDialog>
);
}
}
export default LedgerMovoTo;

View File

@ -295,6 +295,39 @@ class LedgerSalaryItem extends Component {
onSaveSalaryItem(empFields, itemGroups);
});
};
/*
* Author: 黎永顺
* Description:确认移动薪资项目项
* Params:
* Date: 2023/3/8
*/
handleMoveSalaryItem = (moveToItemId, items) => {
const { itemGroups } = this.state;
const { salaryItemGroupId: deleteItemId } = items;
if (moveToItemId === deleteItemId) return;
this.setState({
itemGroups: _.map(itemGroups, it => {
if (moveToItemId === it.uuid) {
return {
...it,
items: [...it.items, items]
};
}
if (deleteItemId === it.uuid) {
return {
...it,
items: _.unionWith(it.items, [items], _.isEqual)
};
}
return { ...it };
})
}, () => {
const { empFields, itemGroups } = this.state;
const { onSaveSalaryItem } = this.props;
onSaveSalaryItem(empFields, itemGroups);
});
};
/*
* Author: 黎永顺
@ -334,6 +367,7 @@ class LedgerSalaryItem extends Component {
onChangeSelectedRowKeys={this.handleChangeSelectedRowKeys}
onAddSalaryItems={this.handleAddSalaryItems}
onSaveFormnul={this.handleSaveFormnul}
onMoveSalaryItem={this.handleMoveSalaryItem}
/>
</div>
);

View File

@ -12,6 +12,7 @@ import CategoryAddModal from "./categoryAddModal";
import LedgerSalaryItemAddModal from "./ledgerSalaryItemAddModal";
import LedgerSalaryItemTable from "./ledgerSalaryItemTable";
import FormalFormModal from "../../salaryItem/formalFormModal";
import LedgerMovoTo from "./ledgerMovoTo";
import "./index.less";
@inject("ledgerStore")
@ -36,9 +37,9 @@ class LedgerSalaryItemNormal extends Component {
//公式保存数据
formnulField: {},
formnulId: "",
moveModalPayload:{
moveModalPayload: {
visible: false, title: "",
dataList:[]
dataList: [], record: null, value: ""
}
};
}
@ -143,14 +144,41 @@ class LedgerSalaryItemNormal extends Component {
formnulId: ""
});
};
handleMoveTo=()=>{
const {}= this.props;
console.log(this.props);
handleCancelMove = () => {
this.setState({
visible: true, title: "移动到",
dataList:[]
})
}
moveModalPayload: {
visible: false, title: "",
dataList: [], value: "",
record: null
}
});
};
handleChangeMoveVal = (value) => {
const { moveModalPayload } = this.state;
this.setState({
moveModalPayload: {
...moveModalPayload, value
}
});
};
handleMoveTo = (record) => {
const { salaryItemGroupId } = record;
const { dataSource } = this.props;
this.setState({
moveModalPayload: {
visible: true, title: "移动到",
value: salaryItemGroupId, record,
dataList: _.map(dataSource, item => ({ key: item.id || item.uuid, showname: item.name }))
}
});
};
handleSubmitMoveTo = () => {
const { onMoveSalaryItem } = this.props;
const { moveModalPayload } = this.state;
const { record, value }=moveModalPayload;
this.handleCancelMove();
onMoveSalaryItem(value, record)
};
render() {
const {
@ -164,7 +192,7 @@ class LedgerSalaryItemNormal extends Component {
taxAgentStore
} = this.props;
const { showOperateBtn } = taxAgentStore;
const { categoryModal, addCategoryItemsVisible, editFormulModal } = this.state;
const { categoryModal, addCategoryItemsVisible, editFormulModal, moveModalPayload } = this.state;
return (
<WeaSearchGroup needTigger={false} showGroup
title={<TitleComp showOperateBtn={showOperateBtn} titleName={incomeCategoriesTitleName}
@ -201,6 +229,12 @@ class LedgerSalaryItemNormal extends Component {
</WeaSearchGroup>;
})
}
<LedgerMovoTo
{...moveModalPayload}
onCancel={this.handleCancelMove}
onChangeMoveVal={this.handleChangeMoveVal}
onSubmitMoveTo={this.handleSubmitMoveTo}
/>
<LedgerSalaryItemAddModal
{...addCategoryItemsVisible}
itemGroups={dataSource}