57 lines
1.6 KiB
JavaScript
57 lines
1.6 KiB
JavaScript
import { request } from "@cqsjjb/jjb-common-lib/http.js";
|
|
import { useEffect, useState } from "react";
|
|
import BasicLeftTree from "../../Basic";
|
|
|
|
/**
|
|
* 部门左侧树组件(港务局版本)
|
|
*/
|
|
function DepartmentLeftTree(props) {
|
|
const {
|
|
params = {},
|
|
searchType = "current",
|
|
...restProps
|
|
} = props;
|
|
|
|
const [treeData, setTreeData] = useState([]);
|
|
|
|
const getData = async () => {
|
|
let requestUrl = "";
|
|
const actualParams = { ...params, time: new Date().getTime() };
|
|
if (searchType === "current") {
|
|
requestUrl = "/basicInfo/department/listTree";
|
|
delete actualParams.inType;
|
|
delete actualParams.enterpriseType;
|
|
}
|
|
if (searchType === "all") {
|
|
requestUrl = "/basicInfo/department/listAllTree";
|
|
delete actualParams.inType;
|
|
delete actualParams.enterpriseType;
|
|
delete actualParams.eqCorpinfoId;
|
|
delete actualParams.eqParentId;
|
|
}
|
|
if (searchType === "inType") {
|
|
requestUrl = "/basicInfo/department/listAllTreeByCorpType";
|
|
delete actualParams.eqCorpinfoId;
|
|
delete actualParams.eqParentId;
|
|
if (actualParams.enterpriseType && !Array.isArray(actualParams.enterpriseType)) {
|
|
actualParams.enterpriseType = [actualParams.enterpriseType];
|
|
}
|
|
}
|
|
|
|
const { data } = await request(requestUrl, "post", actualParams);
|
|
setTreeData(data);
|
|
};
|
|
|
|
useEffect(() => {
|
|
getData();
|
|
}, []);
|
|
|
|
return (
|
|
<BasicLeftTree treeData={treeData} childrenKey="childrenList" {...restProps} />
|
|
);
|
|
}
|
|
|
|
DepartmentLeftTree.displayName = "DepartmentLeftTree";
|
|
|
|
export default DepartmentLeftTree;
|