非系统人员管理-新功能开发
This commit is contained in:
parent
eb207921cd
commit
efadb541f5
|
|
@ -71,6 +71,17 @@ export const saveLedgerBasic = params => {
|
|||
}).then(res => res.json());
|
||||
};
|
||||
|
||||
//薪资帐套外部人员范围(包含)列表
|
||||
export const getLedgerPersonRangeExtList = params => {
|
||||
return fetch("/api/bs/hrmsalary/salarysob/range/ext/list", {
|
||||
method: "POST",
|
||||
mode: "cors",
|
||||
headers: {
|
||||
"Content-Type": "application/json"
|
||||
},
|
||||
body: JSON.stringify(params)
|
||||
}).then(res => res.json());
|
||||
};
|
||||
//薪资帐套人员范围(包含)列表
|
||||
export const getLedgerPersonRangeInclude = params => {
|
||||
return fetch("/api/bs/hrmsalary/salarysob/range/listInclude", {
|
||||
|
|
@ -104,6 +115,28 @@ export const getLedgerPersonRangeForm = params => {
|
|||
);
|
||||
};
|
||||
|
||||
//保存薪资帐套外部人员范围
|
||||
export const saveLedgerPersonExtRange = params => {
|
||||
return fetch("/api/bs/hrmsalary/salarysob/ext/save", {
|
||||
method: "POST",
|
||||
mode: "cors",
|
||||
headers: {
|
||||
"Content-Type": "application/json"
|
||||
},
|
||||
body: JSON.stringify(params)
|
||||
}).then(res => res.json());
|
||||
};
|
||||
//删除薪资帐套外部人员范围
|
||||
export const deleteLedgerPersonExtRange = params => {
|
||||
return fetch("/api/bs/hrmsalary/salarysob/range/ext/delete", {
|
||||
method: "POST",
|
||||
mode: "cors",
|
||||
headers: {
|
||||
"Content-Type": "application/json"
|
||||
},
|
||||
body: JSON.stringify(params)
|
||||
}).then(res => res.json());
|
||||
};
|
||||
//保存薪资帐套人员范围
|
||||
export const saveLedgerPersonRange = params => {
|
||||
return fetch("/api/bs/hrmsalary/salarysob/range/save", {
|
||||
|
|
|
|||
|
|
@ -70,6 +70,18 @@ export const deleteTaxAgent = (params) => {
|
|||
export const taxAgentRangeSave = (params) => {
|
||||
return postFetch("/api/bs/hrmsalary/taxAgent/range/save", params);
|
||||
};
|
||||
//非系统人员范围查询
|
||||
export const taxAgentRangelistExt = (params) => {
|
||||
return postFetch("/api/bs/hrmsalary/taxAgent/range/listExt", params);
|
||||
};
|
||||
//非系统人员范围删除
|
||||
export const taxAgentRangeExtDelete = (params) => {
|
||||
return postFetch("/api/bs/hrmsalary/taxAgent/range/ext/delete", params);
|
||||
};
|
||||
//非系统人员范围保存
|
||||
export const taxAgentRangeExtSave = (params) => {
|
||||
return postFetch("/api/bs/hrmsalary/taxAgent/range/ext/save", params);
|
||||
};
|
||||
//人员范围删除
|
||||
export const taxAgentRangeDelete = (params) => {
|
||||
return postFetch("/api/bs/hrmsalary/taxAgent/range/delete", params);
|
||||
|
|
|
|||
|
|
@ -0,0 +1,86 @@
|
|||
/*
|
||||
* Author: 黎永顺
|
||||
* name: 外部人员添加弹框
|
||||
* Description:
|
||||
* Date: 2023/3/14
|
||||
*/
|
||||
import React, { Component } from "react";
|
||||
import { WeaBrowser, WeaDialog, WeaFormItem, WeaSearchGroup } from "ecCom";
|
||||
import { Button, Modal } from "antd";
|
||||
|
||||
class Index extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
targetIds: "",
|
||||
targetNames: ""
|
||||
};
|
||||
}
|
||||
|
||||
handleExternalPersonSave = () => {
|
||||
const { targetIds } = this.state;
|
||||
const { onExternalPersonSave } = this.props;
|
||||
if (!_.isEmpty(targetIds)) {
|
||||
onExternalPersonSave({ targetIds: targetIds.split(",") });
|
||||
} else {
|
||||
Modal.warning({
|
||||
title: "信息确认",
|
||||
content: "必要信息不完整,红色*为必填项!"
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
render() {
|
||||
const { targetIds, targetNames } = this.state;
|
||||
const { onCancel, visible, loading } = this.props;
|
||||
const buttons = [
|
||||
<Button type="primary" onClick={this.handleExternalPersonSave} loading={loading}>确定</Button>,
|
||||
<Button type="ghost" onClick={onCancel}>取消</Button>
|
||||
];
|
||||
return (
|
||||
<WeaDialog
|
||||
title="关联非系统人员"
|
||||
visible={visible}
|
||||
style={{ width: 600 }}
|
||||
buttons={buttons}
|
||||
onCancel={onCancel}
|
||||
>
|
||||
<WeaSearchGroup col={1} needTigger title="" showGroup center>
|
||||
<WeaFormItem label="外部人员" labelCol={{ span: 6 }} wrapperCol={{ span: 18 }}>
|
||||
<WeaBrowser
|
||||
title="外部人员"
|
||||
type={162}
|
||||
viewAttr={3}
|
||||
isSingle={false}
|
||||
value={targetIds}
|
||||
valueSpan={targetNames}
|
||||
completeParams={{
|
||||
type: 162,
|
||||
fielddbtype: "browser.salaryExtEmp",
|
||||
f_weaver_belongto_usertype: "0"
|
||||
}}
|
||||
conditionDataParams={{
|
||||
type: "browser.salaryExtEmp",
|
||||
fielddbtype: "browser.salaryExtEmp",
|
||||
f_weaver_belongto_usertype: "0"
|
||||
}}
|
||||
dataParams={{
|
||||
type: "browser.salaryExtEmp",
|
||||
f_weaver_belongto_usertype: "0"
|
||||
}}
|
||||
destDataParams={{
|
||||
type: "browser.salaryExtEmp",
|
||||
f_weaver_belongto_usertype: "0"
|
||||
}}
|
||||
isMultCheckbox
|
||||
inputStyle={{ width: 375 }}
|
||||
onChange={(targetIds, targetNames) => this.setState({ targetIds, targetNames })}
|
||||
/>
|
||||
</WeaFormItem>
|
||||
</WeaSearchGroup>
|
||||
</WeaDialog>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export default Index;
|
||||
|
|
@ -21,7 +21,7 @@ class ExternalPersonManageEditSlide extends Component {
|
|||
}
|
||||
|
||||
componentWillReceiveProps(nextProps, nextContext) {
|
||||
if (nextProps.visible !== this.props.visible && nextProps.visible) this.detail(nextProps);
|
||||
if (nextProps.visible !== this.props.visible && nextProps.visible && nextProps.id) this.detail(nextProps);
|
||||
}
|
||||
|
||||
detail = (props) => {
|
||||
|
|
@ -61,7 +61,7 @@ class ExternalPersonManageEditSlide extends Component {
|
|||
};
|
||||
|
||||
handleSubmit = () => {
|
||||
const { form, id, onCancel } = this.props;
|
||||
const { form, id, onCancel, title } = this.props;
|
||||
form.validateForm().then(f => {
|
||||
if (f.isValid) {
|
||||
const payload = _.omitBy(form.getFormParams(), _.isEmpty);
|
||||
|
|
@ -70,10 +70,10 @@ class ExternalPersonManageEditSlide extends Component {
|
|||
APIFOX(id ? { ...payload, id } : payload).then(({ status, errormsg }) => {
|
||||
this.setState({ loading: false });
|
||||
if (status) {
|
||||
message.success("创建成功");
|
||||
message.success(`${title}成功`);
|
||||
onCancel(true);
|
||||
} else {
|
||||
message.error(errormsg || "创建失败");
|
||||
message.error(errormsg || `${title}失败`);
|
||||
}
|
||||
}).catch(() => this.setState({ loading: false }));
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -11,19 +11,24 @@ import { WeaButtonIcon, WeaInputSearch, WeaTab } from "ecCom";
|
|||
import PersonalScopeTable from "../../../components/PersonalScopeTable";
|
||||
import PersonalScopeModal from "../../../components/PersonalScopeModal";
|
||||
import {
|
||||
deleteLedgerPersonExtRange,
|
||||
deleteLedgerPersonRange,
|
||||
getLedgerPersonRangeExclude,
|
||||
getLedgerPersonRangeExtList,
|
||||
getLedgerPersonRangeInclude,
|
||||
salarysobRangeImportData,
|
||||
salarysobRangePreview,
|
||||
saveLedgerPersonExtRange,
|
||||
saveLedgerPersonRange
|
||||
} from "../../../apis/ledger";
|
||||
import ImportModal from "../../../components/importModal";
|
||||
import { importEmployColumns } from "../../taxAgent/columns";
|
||||
import ExternalPersonModal from "../../../components/externalPersonModal";
|
||||
|
||||
const APIFox = {
|
||||
listInclude: getLedgerPersonRangeInclude,
|
||||
listExclude: getLedgerPersonRangeExclude
|
||||
listExclude: getLedgerPersonRangeExclude,
|
||||
externalList: getLedgerPersonRangeExtList
|
||||
};
|
||||
const APISaveFox = {
|
||||
save: saveLedgerPersonRange
|
||||
|
|
@ -39,6 +44,8 @@ class LedgerAssociatedPersonnel extends Component {
|
|||
selectedKey: "listInclude",
|
||||
rowKeys: [],
|
||||
previewDataSource: [],
|
||||
externalPersonModalVisible: false,
|
||||
loading: false,
|
||||
importParams: {
|
||||
visible: false,
|
||||
step: 0,
|
||||
|
|
@ -52,6 +59,25 @@ class LedgerAssociatedPersonnel extends Component {
|
|||
};
|
||||
}
|
||||
|
||||
/*
|
||||
* Author: 黎永顺
|
||||
* Description:外部人员保存
|
||||
* Params:
|
||||
* Date: 2023/3/14
|
||||
*/
|
||||
handleSaveExternalPerson = (val) => {
|
||||
const { editId: salarySobId } = this.props;
|
||||
saveLedgerPersonExtRange({ ...val, salarySobId }).then(({ status, errormsg }) => {
|
||||
this.setState({ loading: false });
|
||||
if (status) {
|
||||
message.success("保存成功");
|
||||
this.setState({ externalPersonModalVisible: false });
|
||||
this.personalScopeTableRef.getPersonalScopeList();
|
||||
} else {
|
||||
message.error(errormsg || "保存失败");
|
||||
}
|
||||
}).catch(() => this.setState({ loading: true }));
|
||||
};
|
||||
/*
|
||||
* Author: 黎永顺
|
||||
* Description: 删除人员范围
|
||||
|
|
@ -59,23 +85,55 @@ class LedgerAssociatedPersonnel extends Component {
|
|||
* Date: 2022/11/30
|
||||
*/
|
||||
taxAgentRangeDelete = () => {
|
||||
const { selectedKey } = this.state;
|
||||
Modal.confirm({
|
||||
title: "信息确认",
|
||||
content: "确认要删除吗?",
|
||||
onOk: () => {
|
||||
deleteLedgerPersonRange(this.state.rowKeys).then(({ status, errormsg }) => {
|
||||
if (status) {
|
||||
message.success("删除成功");
|
||||
this.setState({ rowKeys: [] }, () => {
|
||||
this.personalScopeTableRef.clearRowkeys();
|
||||
});
|
||||
} else {
|
||||
message.error(errormsg || "删除失败");
|
||||
}
|
||||
});
|
||||
return new Promise((resolve, reject) => {
|
||||
return selectedKey === "externalList" ? this.deleteLedgerPersonExtRange(resolve, reject) : this.deleteLedgerPersonRange(resolve, reject);
|
||||
}).catch(() => console.log("出错!"));
|
||||
}
|
||||
});
|
||||
};
|
||||
deleteLedgerPersonExtRange = (resolve, reject) => {
|
||||
message.destroy();
|
||||
message.loading("正在删除中...", 0);
|
||||
deleteLedgerPersonExtRange(this.state.rowKeys).then(({ status, errormsg }) => {
|
||||
message.destroy();
|
||||
resolve();
|
||||
if (status) {
|
||||
message.success("删除成功");
|
||||
this.setState({ rowKeys: [] }, () => {
|
||||
this.personalScopeTableRef.clearRowkeys();
|
||||
});
|
||||
} else {
|
||||
message.error(errormsg || "删除失败");
|
||||
}
|
||||
}).catch(() => {
|
||||
message.destroy();
|
||||
reject();
|
||||
});
|
||||
};
|
||||
deleteLedgerPersonRange = (resolve, reject) => {
|
||||
message.destroy();
|
||||
message.loading("正在删除中...", 0);
|
||||
deleteLedgerPersonRange(this.state.rowKeys).then(({ status, errormsg }) => {
|
||||
message.destroy();
|
||||
resolve();
|
||||
if (status) {
|
||||
message.success("删除成功");
|
||||
this.setState({ rowKeys: [] }, () => {
|
||||
this.personalScopeTableRef.clearRowkeys();
|
||||
});
|
||||
} else {
|
||||
message.error(errormsg || "删除失败");
|
||||
}
|
||||
}).catch(() => {
|
||||
message.destroy();
|
||||
reject();
|
||||
});
|
||||
};
|
||||
/*
|
||||
* Author: 黎永顺
|
||||
* Description:新增人员范围
|
||||
|
|
@ -84,13 +142,17 @@ class LedgerAssociatedPersonnel extends Component {
|
|||
*/
|
||||
handleAddPersonal = () => {
|
||||
const { personalAddModal, selectedKey } = this.state;
|
||||
this.setState({
|
||||
personalAddModal: {
|
||||
...personalAddModal,
|
||||
visible: true,
|
||||
includeType: selectedKey === "listInclude" ? 1 : 0
|
||||
}
|
||||
});
|
||||
if (selectedKey === "externalList") {
|
||||
this.setState({ externalPersonModalVisible: true });
|
||||
} else {
|
||||
this.setState({
|
||||
personalAddModal: {
|
||||
...personalAddModal,
|
||||
visible: true,
|
||||
includeType: selectedKey === "listInclude" ? 1 : 0
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
/*
|
||||
* Author: 黎永顺
|
||||
|
|
@ -138,7 +200,9 @@ class LedgerAssociatedPersonnel extends Component {
|
|||
rowKeys,
|
||||
personalAddModal,
|
||||
importParams,
|
||||
previewDataSource
|
||||
previewDataSource,
|
||||
externalPersonModalVisible,
|
||||
loading
|
||||
} = this.state;
|
||||
const { taxAgentStore: { showOperateBtn }, editId, saveSalarySobId } = this.props;
|
||||
const topTab = [
|
||||
|
|
@ -149,6 +213,10 @@ class LedgerAssociatedPersonnel extends Component {
|
|||
{
|
||||
title: "从范围中排除",
|
||||
viewcondition: "listExclude"
|
||||
},
|
||||
{
|
||||
title: "非系统人员范围",
|
||||
viewcondition: "externalList"
|
||||
}
|
||||
];
|
||||
const btns = showOperateBtn ? [
|
||||
|
|
@ -192,7 +260,7 @@ class LedgerAssociatedPersonnel extends Component {
|
|||
datas={topTab}
|
||||
keyParam="viewcondition" //主键
|
||||
selectedKey={selectedKey}
|
||||
buttons={showOperateBtn && selectedKey === "listExclude" ? btns.slice(1) : btns}
|
||||
buttons={showOperateBtn && selectedKey === "listInclude" ? btns : btns.slice(1)}
|
||||
onChange={selectedKey => this.setState({ selectedKey })}
|
||||
/>
|
||||
<PersonalScopeTable
|
||||
|
|
@ -234,6 +302,13 @@ class LedgerAssociatedPersonnel extends Component {
|
|||
}}
|
||||
/>
|
||||
)}
|
||||
{/*非系统人员添加*/}
|
||||
<ExternalPersonModal
|
||||
visible={externalPersonModalVisible}
|
||||
loading={loading}
|
||||
onCancel={() => this.setState({ externalPersonModalVisible: false })}
|
||||
onExternalPersonSave={this.handleSaveExternalPerson}
|
||||
/>
|
||||
{/*新增人员范围*/}
|
||||
<PersonalScopeModal
|
||||
{...personalAddModal}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ import { Button } from "antd";
|
|||
import { WeaDialog, WeaFormItem, WeaSearchGroup, WeaSteps, WeaTab } from "ecCom";
|
||||
import { WeaSwitch } from "comsMobx";
|
||||
import PersonalScope from "./personalScope";
|
||||
import "./index.less";
|
||||
|
||||
const titleOuter = {
|
||||
display: "flex",
|
||||
|
|
@ -136,6 +137,7 @@ export default class EditModal extends React.Component {
|
|||
</div>
|
||||
}
|
||||
initLoadCss
|
||||
className="taxagentModalWrapper"
|
||||
visible={visible}
|
||||
style={{ width: 800, height: 450 }}
|
||||
hasScroll>
|
||||
|
|
|
|||
|
|
@ -108,3 +108,46 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
.taxagentModalWrapper {
|
||||
.topMenuWrapper {
|
||||
height: 47px;
|
||||
line-height: 47px;
|
||||
padding: 0 10px;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
.topMenuTabWrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.menuTabItem {
|
||||
height: 24px;
|
||||
padding: 0 16px;
|
||||
border-radius: 3px;
|
||||
margin-right: 6px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
-webkit-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
cursor: pointer;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
flex: 1 1 auto;
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
.menuTabItem:hover {
|
||||
color: #5d9cec;
|
||||
background: #e9f7ff;
|
||||
}
|
||||
|
||||
.active {
|
||||
color: #5d9cec;
|
||||
background: #e9f7ff;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ export default class PersonalScope extends Component {
|
|||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
deleteLoading: false,
|
||||
queryLoading: false,
|
||||
submitLoading: false,
|
||||
targetTypeList: [],
|
||||
|
|
@ -46,7 +47,6 @@ export default class PersonalScope extends Component {
|
|||
}
|
||||
});
|
||||
};
|
||||
|
||||
getTaxAgentRangeListInclude = (pageModule = {}) => {
|
||||
const { taxAgentId } = this.props;
|
||||
const { getTaxAgentRangeListInclude } = this.props.taxAgentStore;
|
||||
|
|
@ -75,6 +75,35 @@ export default class PersonalScope extends Component {
|
|||
}
|
||||
);
|
||||
};
|
||||
|
||||
taxAgentRangelistExt = (pageModule = {}) => {
|
||||
const { taxAgentId } = this.props;
|
||||
const { taxAgentRangelistExt } = this.props.taxAgentStore;
|
||||
this.setState({ queryLoading: true });
|
||||
taxAgentRangelistExt({ ...pageModule, taxAgentId }).then(
|
||||
({ status, data }) => {
|
||||
this.setState({ queryLoading: false });
|
||||
if (status && !_.isEmpty(data)) {
|
||||
const {
|
||||
columns,
|
||||
list: dataSource,
|
||||
pageNum: current,
|
||||
pageSize,
|
||||
total
|
||||
} = data;
|
||||
this.setState({
|
||||
columns,
|
||||
dataSource,
|
||||
pageObj: {
|
||||
current,
|
||||
pageSize,
|
||||
total
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
);
|
||||
};
|
||||
getTaxAgentRangeListExclude = (pageModule = {}) => {
|
||||
const { taxAgentId } = this.props;
|
||||
const { getTaxAgentRangeListExclude } = this.props.taxAgentStore;
|
||||
|
|
@ -105,17 +134,93 @@ export default class PersonalScope extends Component {
|
|||
};
|
||||
|
||||
taxAgentRangeDelete = ({ ids, tab }) => {
|
||||
const { taxAgentRangeDelete } = this.props.taxAgentStore;
|
||||
const { pageObj } = this.state;
|
||||
Modal.confirm({
|
||||
title: "信息确认",
|
||||
content: `确认删除该条数据吗?`,
|
||||
onOk: () => {
|
||||
taxAgentRangeDelete(ids).then(({ status, errorMsg }) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
return tab == "2" ? this.taxAgentExtRangeDeleteComfirm(resolve, reject, ids) : this.taxAgentRangeDeleteComfirm(resolve, reject, ids, tab);
|
||||
}).catch(() => console.log("出错!"));
|
||||
}
|
||||
});
|
||||
};
|
||||
taxAgentExtRangeDeleteComfirm = (resolve, reject, ids) => {
|
||||
const { taxAgentRangeExtDelete } = this.props.taxAgentStore;
|
||||
const { pageObj } = this.state;
|
||||
message.destroy();
|
||||
message.loading("正在删除中...", 0);
|
||||
taxAgentRangeExtDelete(ids).then(({ status, errormsg }) => {
|
||||
message.destroy();
|
||||
resolve();
|
||||
if (status) {
|
||||
this.tagAgentRef.onSelectChange([]);
|
||||
message.success("删除成功");
|
||||
this.taxAgentRangelistExt({
|
||||
current: pageObj.current,
|
||||
pageSize: pageObj.pageSize
|
||||
});
|
||||
} else {
|
||||
message.error(errormsg || "删除失败");
|
||||
}
|
||||
}).catch(() => {
|
||||
message.destroy();
|
||||
reject();
|
||||
});
|
||||
};
|
||||
taxAgentRangeDeleteComfirm = (resolve, reject, ids, tab) => {
|
||||
const { taxAgentRangeDelete } = this.props.taxAgentStore;
|
||||
const { pageObj } = this.state;
|
||||
message.destroy();
|
||||
message.loading("正在删除中...", 0);
|
||||
taxAgentRangeDelete(ids).then(({ status, errormsg }) => {
|
||||
message.destroy();
|
||||
resolve();
|
||||
if (status) {
|
||||
this.tagAgentRef.onSelectChange([]);
|
||||
message.success("删除成功");
|
||||
tab == "1"
|
||||
? this.getTaxAgentRangeListInclude({
|
||||
current: pageObj.current,
|
||||
pageSize: pageObj.pageSize
|
||||
})
|
||||
: this.getTaxAgentRangeListExclude({
|
||||
current: pageObj.current,
|
||||
pageSize: pageObj.pageSize
|
||||
});
|
||||
} else {
|
||||
message.error(errormsg || "删除失败");
|
||||
}
|
||||
}).catch(() => {
|
||||
message.destroy();
|
||||
reject();
|
||||
});
|
||||
};
|
||||
|
||||
taxAgentRangeSave = (module) => {
|
||||
const { taxAgentId } = this.props;
|
||||
const { pageObj } = this.state;
|
||||
const { includeType } = module;
|
||||
const { taxAgentRangeSave, taxAgentRangeExtSave } = this.props.taxAgentStore;
|
||||
this.setState({ submitLoading: true });
|
||||
if (includeType === 2) {
|
||||
taxAgentRangeExtSave({ taxAgentId, ..._.pick(module, "targetIds") }).then(({ status, errormsg }) => {
|
||||
this.setState({ submitLoading: false });
|
||||
if (status) {
|
||||
this.tagAgentRef.closeModal();
|
||||
message.success("新增成功");
|
||||
this.taxAgentRangelistExt({ current: pageObj.current, pageSize: pageObj.pageSize });
|
||||
} else {
|
||||
message.error(errormsg || "新增失败");
|
||||
}
|
||||
});
|
||||
} else {
|
||||
taxAgentRangeSave({ ...module, taxAgentId }).then(
|
||||
({ status, errormsg }) => {
|
||||
this.setState({ submitLoading: false });
|
||||
if (status) {
|
||||
this.tagAgentRef.onSelectChange([]);
|
||||
message.success("删除成功");
|
||||
tab == "1"
|
||||
this.tagAgentRef.closeModal();
|
||||
message.success("新增成功");
|
||||
includeType == "1"
|
||||
? this.getTaxAgentRangeListInclude({
|
||||
current: pageObj.current,
|
||||
pageSize: pageObj.pageSize
|
||||
|
|
@ -125,41 +230,11 @@ export default class PersonalScope extends Component {
|
|||
pageSize: pageObj.pageSize
|
||||
});
|
||||
} else {
|
||||
message.error(errorMsg || "删除失败");
|
||||
message.error(errormsg || "新增失败");
|
||||
}
|
||||
});
|
||||
},
|
||||
onCancel() {
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
taxAgentRangeSave = (module) => {
|
||||
const { taxAgentId } = this.props;
|
||||
const { pageObj } = this.state;
|
||||
const { includeType } = module;
|
||||
const { taxAgentRangeSave } = this.props.taxAgentStore;
|
||||
this.setState({ submitLoading: true });
|
||||
taxAgentRangeSave({ ...module, taxAgentId }).then(
|
||||
({ status, errormsg }) => {
|
||||
this.setState({ submitLoading: false });
|
||||
if (status) {
|
||||
this.tagAgentRef.closeModal();
|
||||
message.success("新增成功");
|
||||
includeType == "1"
|
||||
? this.getTaxAgentRangeListInclude({
|
||||
current: pageObj.current,
|
||||
pageSize: pageObj.pageSize
|
||||
})
|
||||
: this.getTaxAgentRangeListExclude({
|
||||
current: pageObj.current,
|
||||
pageSize: pageObj.pageSize
|
||||
});
|
||||
} else {
|
||||
message.error(errormsg || "新增失败");
|
||||
}
|
||||
}
|
||||
);
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
render() {
|
||||
|
|
@ -209,12 +284,14 @@ export default class PersonalScope extends Component {
|
|||
onTaxAngetSearch={({ targetName, tab }) => {
|
||||
tab == "1"
|
||||
? this.getTaxAgentRangeListInclude({ targetName })
|
||||
: this.getTaxAgentRangeListExclude({ targetName });
|
||||
: tab == "0" ? this.getTaxAgentRangeListExclude({ targetName }) :
|
||||
this.taxAgentRangelistExt({ targetName });
|
||||
}}
|
||||
onChangeTab={(tab) => {
|
||||
this.tagAgentRef.onSelectChange([]);
|
||||
tab == "1"
|
||||
? this.getTaxAgentRangeListInclude()
|
||||
: this.getTaxAgentRangeListExclude();
|
||||
: tab == "0" ? this.getTaxAgentRangeListExclude() : this.taxAgentRangelistExt();
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -5,12 +5,14 @@ import AddTaxAgentModal from "./addTaxAgentModal";
|
|||
import ImportModal from "../../components/importModal";
|
||||
import { taxAgentRangeImportData, taxAgentRangePreview } from "../../apis/taxAgent";
|
||||
import { importEmployColumns } from "./columns";
|
||||
|
||||
import ExternalPersonModal from "../../components/externalPersonModal";
|
||||
import cs from "classnames";
|
||||
|
||||
export default class SlideTaxagentUser extends React.Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
externalPersonModalVisible: false, //外部人员关联弹框
|
||||
addTaxagentModalVisible: false,
|
||||
includeType: 1,
|
||||
selectedRowKeys: [],
|
||||
|
|
@ -42,8 +44,8 @@ export default class SlideTaxagentUser extends React.Component {
|
|||
|
||||
handleTabDelete = () => {
|
||||
const { onDeleteTaxAgent } = this.props;
|
||||
const { includeType } = this.state;
|
||||
if (this.state.selectedRowKeys.length == 0) {
|
||||
const { includeType, selectedRowKeys } = this.state;
|
||||
if (selectedRowKeys.length === 0) {
|
||||
message.warning("未选择条目");
|
||||
return;
|
||||
}
|
||||
|
|
@ -61,9 +63,10 @@ export default class SlideTaxagentUser extends React.Component {
|
|||
|
||||
closeModal = () => {
|
||||
this.setState({
|
||||
addTaxagentModalVisible: false
|
||||
addTaxagentModalVisible: false,
|
||||
externalPersonModalVisible: false
|
||||
}, () => {
|
||||
this.addTaxRef.handleReset();
|
||||
this.addTaxRef && this.addTaxRef.handleReset();
|
||||
});
|
||||
};
|
||||
handleInitModal = () => {
|
||||
|
|
@ -107,6 +110,7 @@ export default class SlideTaxagentUser extends React.Component {
|
|||
selectedRowKeys,
|
||||
searchValue,
|
||||
addTaxagentModalVisible,
|
||||
externalPersonModalVisible,
|
||||
importParams,
|
||||
previewDataSource
|
||||
} = this.state;
|
||||
|
|
@ -155,39 +159,23 @@ export default class SlideTaxagentUser extends React.Component {
|
|||
|
||||
return (
|
||||
<div className="slideRefereUser">
|
||||
<div
|
||||
style={{
|
||||
height: "47px",
|
||||
lineHeight: "47px",
|
||||
paddingLeft: "10px",
|
||||
paddingRight: "10px",
|
||||
display: "flex",
|
||||
justifyContent: "space-between"
|
||||
}}>
|
||||
<div
|
||||
style={{
|
||||
display: "inlineBlock",
|
||||
color: "#666"
|
||||
}}>
|
||||
<div className="topMenuWrapper">
|
||||
<div className="topMenuTabWrapper">
|
||||
<span
|
||||
style={{
|
||||
cursor: "pointer",
|
||||
color: includeType == 1 ? "#4ba9f2" : "#000"
|
||||
}}
|
||||
onClick={() => {
|
||||
this.handleTabClick(1);
|
||||
}}>
|
||||
className={cs("menuTabItem", { "active": includeType == 1 })}
|
||||
onClick={() => this.handleTabClick(1)}>
|
||||
人员范围
|
||||
</span>|<span
|
||||
style={{
|
||||
cursor: "pointer",
|
||||
color: includeType == 0 ? "#4ba9f2" : "#000"
|
||||
}}
|
||||
onClick={() => {
|
||||
this.handleTabClick(0);
|
||||
}}>
|
||||
</span>
|
||||
<span
|
||||
className={cs("menuTabItem", { "active": includeType == 0 })}
|
||||
onClick={() => this.handleTabClick(0)}>
|
||||
从范围中排除
|
||||
</span>
|
||||
<span
|
||||
className={cs("menuTabItem", { "active": includeType == 2 })}
|
||||
onClick={() => this.handleTabClick(2)}>
|
||||
非系统人员范围
|
||||
</span>
|
||||
</div>
|
||||
<div>
|
||||
<div
|
||||
|
|
@ -211,14 +199,15 @@ export default class SlideTaxagentUser extends React.Component {
|
|||
<div className="addOrDelBtn">
|
||||
<Button type="primary"
|
||||
size="small"
|
||||
onClick={() => {
|
||||
this.handleTabDelete();
|
||||
}}
|
||||
onClick={this.handleTabDelete}
|
||||
><span className="icon-coms-form-delete-hot" title="删除"></span></Button>
|
||||
<Button type="primary"
|
||||
size="small"
|
||||
style={{ marginRight: 10 }}
|
||||
onClick={() => this.setState({ addTaxagentModalVisible: true })}
|
||||
onClick={() => {
|
||||
const key = includeType === 2 ? "externalPersonModalVisible" : "addTaxagentModalVisible";
|
||||
this.setState({ [key]: true });
|
||||
}}
|
||||
><span className="icon-coms-Add-to-hot" title="添加"></span></Button>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -226,6 +215,7 @@ export default class SlideTaxagentUser extends React.Component {
|
|||
</div>
|
||||
<WeaInputSearch
|
||||
style={{ marginTop: "8px", float: "right" }}
|
||||
placeholder="请输入对象"
|
||||
value={searchValue}
|
||||
onChange={value => {
|
||||
this.setState({ searchValue: value });
|
||||
|
|
@ -246,7 +236,12 @@ export default class SlideTaxagentUser extends React.Component {
|
|||
pagination={pagination}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<ExternalPersonModal
|
||||
visible={externalPersonModalVisible}
|
||||
loading={submitLoading}
|
||||
onCancel={() => this.setState({ externalPersonModalVisible: false })}
|
||||
onExternalPersonSave={val => onTaxAgentSave({ ...val, includeType: includeType })}
|
||||
/>
|
||||
<AddTaxAgentModal
|
||||
ref={(ref) => this.addTaxRef = ref}
|
||||
loading={submitLoading}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import { WeaForm, WeaTableNew } from "comsMobx";
|
|||
|
||||
import * as API from "../apis/taxAgent"; // 引入API接口文件
|
||||
import { decentralizationConditions, editConditions } from "../pages/taxAgent/editConditions";
|
||||
import { taxAgentRangeExtDelete } from "../apis/taxAgent";
|
||||
|
||||
const { TableStore } = WeaTableNew;
|
||||
|
||||
|
|
@ -163,6 +164,21 @@ export class TaxAgentStore {
|
|||
getTaxAgentRangeForm = params => {
|
||||
return API.getTaxAgentRangeForm(params);
|
||||
};
|
||||
// 非系统人员范围保存
|
||||
@action
|
||||
taxAgentRangeExtSave = params => {
|
||||
return API.taxAgentRangeExtSave(params);
|
||||
};
|
||||
// 非系统人员范围查询
|
||||
@action
|
||||
taxAgentRangelistExt = params => {
|
||||
return API.taxAgentRangelistExt(params);
|
||||
};
|
||||
// 非系统人员范围删除
|
||||
@action
|
||||
taxAgentRangeExtDelete = params => {
|
||||
return API.taxAgentRangeExtDelete(params);
|
||||
};
|
||||
// 人员范围保存
|
||||
@action
|
||||
taxAgentRangeSave = params => {
|
||||
|
|
|
|||
Loading…
Reference in New Issue