diff --git a/src/pages/System/Department/index.tsx b/src/pages/System/Department/index.tsx
index c652ac8..4f361ac 100644
--- a/src/pages/System/Department/index.tsx
+++ b/src/pages/System/Department/index.tsx
@@ -142,7 +142,7 @@ const Index: React.FC<{}> = () => {
const { data } = await fetchAllDepartment(params);
console.log('org data:', data);
// orgSet(data.children);
- orgSet(data);
+ orgSet(data);
let result = {
// data: data.children,
data: data,
@@ -164,12 +164,13 @@ const Index: React.FC<{}> = () => {
options={false}
rowKey="orgId"
size="small"
- // pagination={{
- // defaultPageSize: 10,
- // showSizeChanger: false,
- // onChange: (page, pageSize) => pageDataSet({ pageNo: page, pageSize: pageSize }),
- // onShowSizeChange: (current, size) => pageDataSet({ pageNo: current, pageSize: size }),
- // }}
+ pagination={{
+ defaultPageSize: 10,
+ showSizeChanger: true,
+ showQuickJumper: true,
+ size: 'default',
+ showTotal: (total) => <>{`共${total}条`}>,
+ }}
pagination={false}
toolBarRender={() => [
}
+ onOk={onAssignsRoles}
+ onCancel={() => closeModal()}
+ >
+
+
+
+
+
+
+
+
+
+
+
+
+ {roles?.map((v: any, i: number) => (
+
+ {v.label}
+
+ ))}
+
+
+
+
+
+ );
+ const [treeDataList, treeDataListSet] = useState([]);
+ const [orgId, setOrgId] = useState('');
+ const [expandedKeys, setExpandedKeys] = useState([]);
+ const [searchValue, setSearchValue] = useState('');
+ const [autoExpandParent, setAutoExpandParent] = useState(true);
+ const [allData, allDataSet] = useState([]);
+ const onChange: (e: any) => void = (e) => {
+ const { value } = e.target;
+ let keys: any = [];
+ if (value !== '') {
+ const newExpandedKeys = treeDataList
+ .map((item: { title: string | any[]; key: any }) => {
+ if (item.title.indexOf(value) > -1) {
+ return getParentKey(item.key, allData);
+ }
+ return null;
+ })
+ .filter((item: any, i: any, self: string | any[]) => {
+ return item && self.indexOf(item) === i;
+ });
+ keys = newExpandedKeys;
+ }
+ setExpandedKeys(keys as React.Key[]);
+ setSearchValue(value);
+ setAutoExpandParent(value !== '');
+ };
+ const getDepartmentList = async () => {
+ try {
+ const { data } = await fetchAllDepartment({});
+ allDataSet(data);
+ const dataList: { key: React.Key; title: string }[] = [];
+ const generateList = (data: any[]) => {
+ for (let i = 0; i < data.length; i++) {
+ const node = data[i];
+ const { key } = node;
+ dataList.push({ key, title: node.title });
+ if (node.children) {
+ generateList(node.children);
+ }
+ }
+ };
+ generateList(data);
+ treeDataListSet(dataList);
+ } catch (e) { }
+ };
+
+ const getParentKey = (key: React.Key, tree: any): React.Key => {
+ let parentKey: React.Key;
+ for (let i = 0; i < tree.length; i++) {
+ const node = tree[i];
+ if (node.children) {
+ if (node.children.some((item) => item.key === key)) {
+ parentKey = node.key;
+ } else if (getParentKey(key, node.children)) {
+ parentKey = getParentKey(key, node.children);
+ }
+ }
+ }
+ return parentKey!;
+ };
+ const onExpand = (newExpandedKeys: any[]) => {
+ setExpandedKeys(newExpandedKeys);
+ setAutoExpandParent(false);
+ };
+ const onDepartmentClick = (selectedKeys: any, e: any) => {
+ setOrgId(selectedKeys[0]);
+ setTimeout(() => {
+ actionRef.current?.reload();
+ }, 200);
+ };
+ const treeData = useMemo(() => {
+ const loop = (data: any): any[] => {
+ console.log('data', data);
+ let res: any[] = [];
+ data.map((item: any, i: any) => {
+ const strTitle = item.title as string;
+ const index = strTitle.indexOf(searchValue);
+ const beforeStr = strTitle.substring(0, index);
+ const afterStr = strTitle.slice(index + searchValue.length);
+ const title =
+ index > -1 ? (
+
+ {beforeStr}
+ {searchValue}
+ {afterStr}
+
+ ) : (
+ {strTitle}
+ );
+ if (expandedKeys.includes(item.key) || index > -1) {
+ if (item.children) {
+ res.push({ title, key: item.key, children: loop(item.children) });
+ } else {
+ res.push({ title, key: item.key });
+ }
+ }
+ });
+ return res;
+ };
+ if (searchValue !== '') {
+ let returnData = loop(allData);
+ return returnData;
+ } else {
+ return allData;
+ }
+ }, [searchValue, allData]);
+ return (
+
+
+
+
+
+
+
+ actionRef={actionRef}//action触发后更新表格
+ columns={columns}//表格
+ options={false}
+ bordered={false}
+ className='tableSearch'
+ size='small'
+ search={{ labelWidth: 'auto', span: 6 }}
+ request={(params) =>
+ getPage({
+ ...params,
+ orgId: orgId,
+ basePageRequest: { pageNo: pageData.pageNo, pageSize: pageData.pageSize },
+ }).then((res) => {
+ const result = {
+ data: res.data.records,
+ total: res.data.total,
+ success: res.success,
+ pageSize: res.data.size,
+ current: res.data.current
+ }
+ return result;
+ })
+ }
+ toolBarRender={() => [
+ // { handleAdd() }} type="primary">
+ // 新增
+ // ,
+ ]
+ }
+ pagination={{
+ defaultPageSize: 10,
+ showSizeChanger: false,
+ onChange: (page, pageSize) => pageDataSet({ pageNo: page, pageSize: pageSize }),
+ onShowSizeChange: (current, size) => pageDataSet({ pageNo: current, pageSize: size }),
+ }}
+ onReset={() => { pageDataSet({ pageNo: 1, pageSize: 10 }); setOrgId(''); }}
+ />
+ {setRoleModal}
+
+
+
+ {/* 查看 */}
+
+ )
+};
+export default entrust;
\ No newline at end of file
diff --git a/src/pages/System/User/service.ts b/src/pages/System/User/service.ts
new file mode 100644
index 0000000..c0c6d65
--- /dev/null
+++ b/src/pages/System/User/service.ts
@@ -0,0 +1,89 @@
+import { request } from 'umi';
+
+// 分页查询角色
+export async function getPage(params: any) {
+ return request('/api/sys-manager-ebtp-project/v1/sysuser/getPage', {
+ method: 'post',
+ data: params,
+ });
+}
+export async function getDataById(id: any) {
+ return request(`/api/sys-manager-ebtp-project/v1/sysuser/${id}`, {
+ method: 'get',
+ });
+}
+export async function deleteRole(id: any) {
+ return request(`/api/sys-manager-ebtp-project/v1/sysuser/del/${id}`, {
+ method: 'get',
+ });
+}
+export async function addRole(params: any) {
+ return request('/api/sys-manager-ebtp-project/v1/sysuser/insert', {
+ method: 'post',
+ data: params,
+ });
+}
+export async function updateRole(params: any) {
+ return request('/api/sys-manager-ebtp-project/v1/sysuser/update', {
+ method: 'post',
+ data: params,
+ });
+}
+
+//分配人员查询数据
+export async function allocationIF(userId: any) {
+ return request(`/api/sys-manager-ebtp-project/v1/sysrole/role/assign/${userId}`, {
+ method: 'get',
+ });
+}
+
+export async function assignsRoles(params: any) {
+ return request('/api/sys-manager-ebtp-project/v1/sysuserrole/assignsRoles', {
+ method: 'post',
+ data: params,
+ });
+}
+// import { TreeDataNode } from 'antd';
+
+// export function userList(options?: { [key: string]: any }): Promise<{ data: any }> {
+// return request('/api/system/userList', {
+// method: 'GET',
+// ...(options || {}),
+// });
+// }
+
+// export function treeData(options?: { [key: string]: any }): Promise<{ data: TreeDataNode[] }> {
+// return request('/api/system/treeData', {
+// method: 'GET',
+// ...(options || {}),
+// });
+// }
+
+// export function fetchUserList(options?: any) {
+// return request('/api/sysuser/getPage', {
+// method: 'POST',
+// data: options,
+// });
+// }
+// //获取用户数据
+// export function getUser(userId?: any) {
+// return request(`/api/sysuser/${userId}`, {
+// method: 'get',
+// });
+// }
+
+// export function assignsRoles(options?: { [key: string]: any }): Promise {
+// return request('/api/sysuser/assignsRoles', {
+// method: 'post',
+// ...(options || {}),
+// });
+// }
+
+// //查询用户详情
+// export function getOneUserAll(options?: { [key: string]: any }): Promise<{ data: TreeDataNode[] }> {
+// return request(`/api/sysuser/getOneUserAll/${options?.id}`, {
+// method: 'GET',
+// params: options,
+// ...(options || {}),
+// });
+// }