From b622351545d0df19146a4d8aea0b5c8992700da9 Mon Sep 17 00:00:00 2001 From: JINGYJ <1458671527@qq.com> Date: Fri, 17 Nov 2023 17:45:02 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AD=97=E4=BD=93=E3=80=81=E5=BC=B9?= =?UTF-8?q?=E6=A1=86=E6=A0=B7=E5=BC=8F=E3=80=81=E5=88=97=E8=A1=A8=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F=E3=80=81=E8=BF=9B=E8=A1=8C=E8=B0=83=E6=95=B4=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/IconSelector/icon.ts | 8 +- src/locales/zh-CN/system.ts | 16 ++ .../System/ApiList/components/CreateForm.tsx | 2 +- .../System/ApiList/components/UpdateForm.tsx | 2 +- src/pages/System/ApiList/index.tsx | 129 ++++++++----- .../DepartmentList/components/CreateForm.tsx | 11 +- .../DepartmentList/components/UpdateForm.tsx | 2 +- src/pages/System/DepartmentList/index.tsx | 155 +++++++++++----- .../System/MenuList/component/CreateForm.tsx | 3 +- .../System/MenuList/component/UpdateForm.tsx | 2 +- src/pages/System/MenuList/index.tsx | 170 ++++++++++++------ .../components/CreateForm.tsx | 22 ++- .../System/OperationRecordList/index.tsx | 133 +++++++++----- .../System/PostList/components/CreateForm.tsx | 2 +- .../System/PostList/components/UpdateForm.tsx | 2 +- src/pages/System/PostList/index.tsx | 128 ++++++++----- .../System/RoleList/components/CreateForm.tsx | 2 +- .../RoleList/components/SetPermissionForm.tsx | 5 +- .../System/RoleList/components/UpdateForm.tsx | 2 +- src/pages/System/RoleList/index.tsx | 151 +++++++++++----- .../System/UserList/components/CreateForm.tsx | 2 +- .../System/UserList/components/UpdateForm.tsx | 2 +- src/pages/System/UserList/index.tsx | 128 ++++++++----- 23 files changed, 736 insertions(+), 343 deletions(-) diff --git a/src/components/IconSelector/icon.ts b/src/components/IconSelector/icon.ts index d271244..041a68e 100644 --- a/src/components/IconSelector/icon.ts +++ b/src/components/IconSelector/icon.ts @@ -1,10 +1,10 @@ import React from 'react' import * as icons from '@ant-design/icons' - -const Icon = (props: { icon: string}) => { - const { icon } = props; +// 自定义样式style +const Icon = (props: { icon: string, style?: object}) => { + const { icon, style } = props; const antIcon: { [key: string]: any } = icons; - return React.createElement(antIcon[icon]); + return React.createElement(antIcon[icon], { style }); }; diff --git a/src/locales/zh-CN/system.ts b/src/locales/zh-CN/system.ts index 04be3ed..bde69eb 100644 --- a/src/locales/zh-CN/system.ts +++ b/src/locales/zh-CN/system.ts @@ -4,6 +4,8 @@ export const interface_api: { [key: string]: string } = { 'system.interface.table.list.value': '权限值', 'system.interface.table.list.method': '请求方式', 'system.interface.table.list.url': '接口地址', + 'system.interface.table.list.add': '新建接口', + 'system.interface.table.list.update': '更新接口', 'system.interface.table.rule.required.name': '权限名称为必填项', 'system.interface.table.rule.required.value': '权限值为必填项', 'system.interface.table.rule.required.method': '请求方式为必填项', @@ -32,6 +34,9 @@ export const dynamic_menu: { [key: string]: string } = { 'system.menu.table.list.hidden': '是否隐藏', 'system.menu.table.list.remark': '备注', 'system.menu.table.list.externalLink': '外链地址', + 'system.menu.table.list.add': '添加根菜单', + 'system.menu.table.list.create_son_menu': '添加子菜单', + 'system.menu.table.list.update': '更新菜单', 'system.menu.table.rule.required.name': '菜单名称为必填项', 'system.menu.table.rule.required.value': '菜单值为必填项', @@ -66,6 +71,9 @@ export const role: { [key: string]: string } = { 'system.role.table.list.api_permission': 'api权限', 'system.role.table.list.menu_permission': '菜单权限', 'system.role.table.list.resource_permission': '资源权限', + 'system.role.table.list.create': '新建角色', + 'system.role.table.list.set_permission': '设置权限', + 'system.role.table.list.update': '更新角色', 'system.role.table.rule.required.name': '角色名称为必填项', 'system.role.table.rule.required.code': '角色代码为必填项', } @@ -86,6 +94,8 @@ export const user: { [key: string]: string } = { 'system.user.table.list.deptId': '部门', 'system.user.table.list.enable': '是否启用', 'system.user.table.list.remark': '备注', + 'system.user.table.list.create': '新建用户', + 'system.user.table.list.update': '更新用户', 'system.user.table.rule.required.userName': '用户名为必填项', 'system.user.table.rule.required.nickName': '昵称为必填项', 'system.user.table.rule.required.password': '密码为必填项', @@ -99,6 +109,8 @@ export const post: { [key: string]: string } = { 'system.post.table.list.sort': '排序', 'system.post.table.list.status': '状态', 'system.post.table.list.remark': '备注', + 'system.post.table.list.create': '新建岗位', + 'system.post.table.list.update': '更新岗位', 'system.post.table.rule.required.name': '岗位名称为必填项', 'system.post.table.rule.required.code': '岗位代码为必填项', } @@ -113,6 +125,9 @@ export const department: { [key: string]: string } = { 'system.department.table.list.sort': '排序', 'system.department.table.list.status': '状态', 'system.department.table.list.remark': '备注', + 'system.department.table.list.create': '添加根部门', + 'system.department.table.list.create_son_department': '添加子部门', + 'system.department.table.list.update': '更新部门', 'system.department.table.rule.required.name': '部门名称为必填项', 'system.department.table.rule.required.code': '部门代码为必填项', } @@ -130,6 +145,7 @@ export const operation_record: { [key: string]: string } = { 'system.operation.table.list.user_id': '用户ID', 'system.operation.table.list.sort': '排序', 'system.operation.table.list.remark': '备注', + 'system.operation.table.list.create': '新建操作日志', 'system.operation.table.list.createTime': '创建时间', 'system.operation.table.list.updateTime': '更新时间', diff --git a/src/pages/System/ApiList/components/CreateForm.tsx b/src/pages/System/ApiList/components/CreateForm.tsx index d06e763..172ff49 100644 --- a/src/pages/System/ApiList/components/CreateForm.tsx +++ b/src/pages/System/ApiList/components/CreateForm.tsx @@ -23,7 +23,7 @@ const CreateForm: React.FC = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.create.title', + id: 'system.interface.table.list.add', defaultMessage: '$$$', })} open={props.createModalOpen} diff --git a/src/pages/System/ApiList/components/UpdateForm.tsx b/src/pages/System/ApiList/components/UpdateForm.tsx index f14bfa5..00983f1 100644 --- a/src/pages/System/ApiList/components/UpdateForm.tsx +++ b/src/pages/System/ApiList/components/UpdateForm.tsx @@ -23,7 +23,7 @@ const UpdateForm: React.FC = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.update.title', + id: 'system.interface.table.list.update', defaultMessage: '$$$', })} open={props.updateModalOpen} diff --git a/src/pages/System/ApiList/index.tsx b/src/pages/System/ApiList/index.tsx index 3ab22e7..1d927a8 100644 --- a/src/pages/System/ApiList/index.tsx +++ b/src/pages/System/ApiList/index.tsx @@ -6,12 +6,17 @@ import { ProTable, } from '@ant-design/pro-components'; import {FormattedMessage, useIntl, useAccess, Access, history} from '@umijs/max'; -import {Button, Popconfirm, message} from 'antd'; +import {Button, message} from 'antd'; import React, {useRef, useState} from 'react'; import UpdateForm from './components/UpdateForm'; import CreateForm from "./components/CreateForm"; import {ColumnDrawer} from "./components/ColumnDrawer"; import {postApiGetApiList, deleteApiDeleteApi, deleteApiDeleteApisByIds} from "@/services/system/Api"; +// 列表操作栏组件 +import TableActionCard from '@/components/TableActionCard'; +import IsDelete from '@/components/TableActionCard/isDelete'; +// 批量删除 +import IsBatchDelete from '@/components/BatchOperation/isBatchDelete'; const ApiList: React.FC = () => { /** @@ -76,11 +81,11 @@ const ApiList: React.FC = () => { defaultMessage="id"/>), dataIndex: "id", sorter: true, - valueType: "digit", filters: true, onFilter: true, render: (dom, entity) => { return ( { setCurrentRow(entity); setShowDetail(true); @@ -142,45 +147,65 @@ const ApiList: React.FC = () => { valueType: 'option', fixed: 'right', render: (_, record) => [ - - { - setUpdateModalOpen(true); - setCurrentRow(record); - }} - > - - - { - handleDestroy(record).then(() => {}); - }} - > - - - {/* { - handleDestroy(record).then(() => { - }) - }}> - - */} - + { + setUpdateModalOpen(true); + setCurrentRow(record); + }} + > + + + ), + }, + { + key: 'destroy', + renderDom: ( + { + handleDestroy(record).then(() => {}); + }} + > + ), + }, + ]} + > + // + // { + // setUpdateModalOpen(true); + // setCurrentRow(record); + // }} + // > + // + // + // { + // handleDestroy(record).then(() => {}); + // }} + // > + // + // + // ], },]; return ( @@ -246,8 +271,26 @@ const ApiList: React.FC = () => { setSelectedRows(selectedRows); }, }} + tableAlertOptionRender={() => { + return ( + <> + {selectedRowsState?.length > 0 && ( + { + const ids = selectedRowsState.map((v: API.Api) => { + return v.id + }) + deleteApiDeleteApisByIds({ids: ids as number[]}).then(() => { + actionRef.current?.reloadAndRest?.(); + }) + }} + /> + )} + + ); + }} /> - {selectedRowsState?.length > 0 && ( + {/* {selectedRowsState?.length > 0 && ( @@ -273,7 +316,7 @@ const ApiList: React.FC = () => { /> - )} + )} */} = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.create.title', + id: props.values.id ? 'system.department.table.list.create_son_department': 'system.department.table.list.create', defaultMessage: '$$$', })} open={props.createModalOpen} @@ -79,6 +79,11 @@ const CreateForm: React.FC = (props) => { label={} placeholder={`${intl.formatMessage({id: 'common.please_input', defaultMessage: '$$$'})}${intl.formatMessage({id: 'system.department.table.list.parentId', defaultMessage: '$$$'})}`} /> + } + placeholder={`${intl.formatMessage({id: 'common.please_input', defaultMessage: '$$$'})}${intl.formatMessage({id: 'system.department.table.list.sort', defaultMessage: '$$$'})}`} + initialValue={1} + /> = (props) => { placeholder={`${intl.formatMessage({id: 'common.please_input', defaultMessage: '$$$'})}${intl.formatMessage({id: 'system.department.table.list.code', defaultMessage: '$$$'})}`} /> - + {/* } placeholder={`${intl.formatMessage({id: 'common.please_input', defaultMessage: '$$$'})}${intl.formatMessage({id: 'system.department.table.list.sort', defaultMessage: '$$$'})}`} initialValue={1} /> - + */} } diff --git a/src/pages/System/DepartmentList/components/UpdateForm.tsx b/src/pages/System/DepartmentList/components/UpdateForm.tsx index c8b7f81..a267ede 100644 --- a/src/pages/System/DepartmentList/components/UpdateForm.tsx +++ b/src/pages/System/DepartmentList/components/UpdateForm.tsx @@ -34,7 +34,7 @@ const UpdateForm: React.FC = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.create.title', + id: 'system.department.table.list.update', defaultMessage: '$$$', })} open={props.updateModalOpen} diff --git a/src/pages/System/DepartmentList/index.tsx b/src/pages/System/DepartmentList/index.tsx index 3fd5b24..ead1683 100644 --- a/src/pages/System/DepartmentList/index.tsx +++ b/src/pages/System/DepartmentList/index.tsx @@ -12,6 +12,12 @@ import React, { useRef, useState } from 'react'; import UpdateForm from '@/pages/System/DepartmentList/components/UpdateForm' import CreateForm from '@/pages/System/DepartmentList/components/CreateForm' import {ColumnDrawer} from '@/pages/System/DepartmentList/components/ColumnDrawer' +// 列表操作栏组件 +import TableActionCard from '@/components/TableActionCard'; +import IsDelete from '@/components/TableActionCard/isDelete'; +// 批量删除 +import IsBatchDelete from '@/components/BatchOperation/isBatchDelete'; + const DepartmentList: React.FC = () => { /** * @en-US Pop-up window of new window @@ -77,6 +83,7 @@ const DepartmentList: React.FC = () => { render: (dom, entity) => { return ( { setCurrentRow(entity); setShowDetail(true); @@ -201,53 +208,90 @@ const DepartmentList: React.FC = () => { valueType: 'option', fixed:'right', render: (_, record) => [ - - { - setCreateModalOpen(true); - setCurrentRow(record); - }} - > - - - { - setUpdateModalOpen(true); - setCurrentRow(record); - }} - > - - - { - handleDestroy(record).then(() => {}); - }} - > - - - {/* { - handleDestroy(record).then(()=>{}) - }}> - - */} - + { + setCreateModalOpen(true); + setCurrentRow(record); + }} + > + + + ), + }, + { + key: 'update', + renderDom: ( + + ), + }, + { + key: 'destroy', + renderDom: ( + { + handleDestroy(record).then(() => {}); + }} + > + ), + }, + ]} + > + // + // { + // setCreateModalOpen(true); + // setCurrentRow(record); + // }} + // > + // + // + // { + // setUpdateModalOpen(true); + // setCurrentRow(record); + // }} + // > + // + // + // { + // handleDestroy(record).then(() => {}); + // }} + // > + // + // + // ], },]; return ( @@ -313,8 +357,21 @@ const DepartmentList: React.FC = () => { setSelectedRows(selectedRows); }, }} + tableAlertOptionRender={() => { + return ( + <> + {selectedRowsState?.length > 0 && ( + { + actionRef.current?.reloadAndRest?.(); + }} + /> + )} + + ); + }} /> - {selectedRowsState?.length > 0 && ( + {/* {selectedRowsState?.length > 0 && ( @@ -335,7 +392,7 @@ const DepartmentList: React.FC = () => { /> - )} + )} */} = (props) => { setParentId(0) } }, [props.createModalOpen]) + console.log(props); return ( width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.create.title', + id: props.values.id ? 'system.menu.table.list.create_son_menu': 'system.menu.table.list.add', defaultMessage: '$$$', })} open={props.createModalOpen} diff --git a/src/pages/System/MenuList/component/UpdateForm.tsx b/src/pages/System/MenuList/component/UpdateForm.tsx index 678d052..9767fa9 100644 --- a/src/pages/System/MenuList/component/UpdateForm.tsx +++ b/src/pages/System/MenuList/component/UpdateForm.tsx @@ -41,7 +41,7 @@ const UpdateForm: React.FC = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.create.title', + id: 'system.menu.table.list.update', defaultMessage: '$$$', })} open={props.updateModalOpen} diff --git a/src/pages/System/MenuList/index.tsx b/src/pages/System/MenuList/index.tsx index d2da2ee..04901a7 100644 --- a/src/pages/System/MenuList/index.tsx +++ b/src/pages/System/MenuList/index.tsx @@ -12,6 +12,9 @@ import React, { useRef, useState } from 'react'; import UpdateForm from './component/UpdateForm' import CreateForm from './component/CreateForm' import ColumnDrawer from './component/ColumnDrawer' +// 列表操作栏组件 +import TableActionCard from '@/components/TableActionCard'; +import IsDelete from '@/components/TableActionCard/isDelete'; import Icon from '@/components/IconSelector/icon' const MenuList: React.FC = () => { /** @@ -75,6 +78,7 @@ const MenuList: React.FC = () => { render: (dom, entity) => { return ( { setCurrentRow(entity); setShowDetail(true); @@ -133,7 +137,7 @@ const MenuList: React.FC = () => { if (record.icon === undefined || record.icon === '') { return - } else { - return + return } } }, @@ -193,53 +197,90 @@ const MenuList: React.FC = () => { valueType: 'option', fixed:'right', render: (_, record) => [ - - { - setCreateModalOpen(true); - setCurrentRow(record); - }} - > - - - { - setUpdateModalOpen(true); - setCurrentRow(record); - }} - > - - - { - handleDestroy(record).then(() => {}); - }} - > - - - {/* { - handleDestroy(record).then(()=>{}) - }}> - - */} - + { + setCreateModalOpen(true); + setCurrentRow(record); + }} + > + + + ), + }, + { + key: 'update', + renderDom: ( + + ), + }, + { + key: 'destroy', + renderDom: ( + { + handleDestroy(record).then(() => {}); + }} + > + ), + }, + ]} + > + // + // { + // setCreateModalOpen(true); + // setCurrentRow(record); + // }} + // > + // + // + // { + // setUpdateModalOpen(true); + // setCurrentRow(record); + // }} + // > + // + // + // { + // handleDestroy(record).then(() => {}); + // }} + // > + // + // + // ], },]; return ( @@ -305,8 +346,37 @@ const MenuList: React.FC = () => { setSelectedRows(selectedRows); }, }} + tableAlertOptionRender={() => { + return ( + <> + {selectedRowsState?.length > 0 && ( + // { + // const ids = selectedRowsState.map((v: API.Api) => { + // return v.id + // }) + // deleteApiDeleteApisByIds({ids: ids as number[]}).then(() => { + // actionRef.current?.reloadAndRest?.(); + // }) + // }} + // /> + + )} + + ); + }} /> - {selectedRowsState?.length > 0 && ( + {/* {selectedRowsState?.length > 0 && ( @@ -327,7 +397,7 @@ const MenuList: React.FC = () => { /> - )} + )} */} = (props) => { return ( - width={proFormModelWidth} + width={proFormSmallModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.create.title', + id: 'system.operation.table.list.create', defaultMessage: '$$$', })} open={props.createModalOpen} @@ -47,7 +47,7 @@ const CreateForm: React.FC = (props) => { > - } placeholder={`${intl.formatMessage({id: 'common.please_input', defaultMessage: '$$$'})}${intl.formatMessage({id: 'system.operation.table.list.ip', defaultMessage: '$$$'})}`} required={true} @@ -63,7 +63,7 @@ const CreateForm: React.FC = (props) => { }, ]} /> - } placeholder={`${intl.formatMessage({id: 'common.please_input', defaultMessage: '$$$'})}${intl.formatMessage({id: 'system.operation.table.list.path', defaultMessage: '$$$'})}`} required={true} @@ -79,18 +79,22 @@ const CreateForm: React.FC = (props) => { }, ]} /> - } placeholder={`${intl.formatMessage({id: 'common.please_input', defaultMessage: '$$$'})}${intl.formatMessage({id: 'system.operation.table.list.sort', defaultMessage: '$$$'})}`} initialValue={1} /> + {/* } + placeholder={`${intl.formatMessage({id: 'common.please_input', defaultMessage: '$$$'})}${intl.formatMessage({id: 'system.operation.table.list.remark', defaultMessage: '$$$'})}`} + required={false}/> */} - } placeholder={`${intl.formatMessage({id: 'common.please_input', defaultMessage: '$$$'})}${intl.formatMessage({id: 'system.operation.table.list.remark', defaultMessage: '$$$'})}`} required={false}/> - } required={false}> diff --git a/src/pages/System/OperationRecordList/index.tsx b/src/pages/System/OperationRecordList/index.tsx index d3640ba..37e3c26 100644 --- a/src/pages/System/OperationRecordList/index.tsx +++ b/src/pages/System/OperationRecordList/index.tsx @@ -12,6 +12,12 @@ import CreateForm from "./components/CreateForm"; import {ColumnDrawer} from "./components/ColumnDrawer"; import {getSysOperationRecordGetOperationRecordList} from "@/services/system/OperationRecord"; // import UpdateForm from './components/UpdateForm'; +// 列表操作栏组件 +import TableActionCard from '@/components/TableActionCard'; +import IsDelete from '@/components/TableActionCard/isDelete'; +// 批量删除 +import IsBatchDelete from '@/components/BatchOperation/isBatchDelete'; +import { proTableCommonOptions } from '../../../../config/defaultTable'; const OperationRecordList: React.FC = () => { /** @@ -75,13 +81,16 @@ const OperationRecordList: React.FC = () => { id="system.operation.table.list.id" defaultMessage="id"/>), dataIndex: "id", + key:"ID", sorter: true, - valueType: "digit", - + // valueType: "digit", + fixed: 'left', + width: 80, filters: true, onFilter: true, render: (dom, entity) => { return ( { setCurrentRow(entity); setShowDetail(true); @@ -99,6 +108,7 @@ const OperationRecordList: React.FC = () => { id="system.operation.table.list.ip" defaultMessage="$$$"/>), dataIndex: "ip", + width: 120, hideInSearch: true, }, @@ -108,6 +118,9 @@ const OperationRecordList: React.FC = () => { id="system.operation.table.list.path" defaultMessage="$$$"/>), dataIndex: "path", + width: 120, + tooltip: true, + ellipsis: true, hideInSearch: true, }, { @@ -115,6 +128,7 @@ const OperationRecordList: React.FC = () => { id="system.operation.table.list.method" defaultMessage="$$$"/>), dataIndex: "method", + width: 120, valueEnum: { 'GET': intl.formatMessage({id: 'system.api.enum.GET', defaultMessage: '$$$',}), 'POST': intl.formatMessage({id: 'system.api.enum.POST', defaultMessage: '$$$',}), @@ -144,6 +158,7 @@ const OperationRecordList: React.FC = () => { status: 'Error' } }, + width: 120, filters: true, onFilter: true, hideInSearch: true, }, @@ -154,6 +169,7 @@ const OperationRecordList: React.FC = () => { defaultMessage="$$$"/>), dataIndex: "latency", valueType: 'time', + width: 120, hideInSearch: true, }, @@ -164,6 +180,7 @@ const OperationRecordList: React.FC = () => { dataIndex: "agent", tooltip: true, ellipsis: true, + width: 120, hideInSearch: true, }, @@ -172,6 +189,7 @@ const OperationRecordList: React.FC = () => { id="system.operation.table.list.error_message" defaultMessage="$$$"/>), dataIndex: "error_message", + width: 120, hideInSearch: true, }, @@ -182,6 +200,7 @@ const OperationRecordList: React.FC = () => { dataIndex: "body", tooltip: true, ellipsis: true, + width: 120, hideInSearch: true, }, @@ -192,6 +211,7 @@ const OperationRecordList: React.FC = () => { dataIndex: "resp", tooltip: true, ellipsis: true, + width: 120, hideInSearch: true, }, @@ -200,6 +220,7 @@ const OperationRecordList: React.FC = () => { id="system.operation.table.list.user_id" defaultMessage="$$$"/>), dataIndex: "user_id", + width: 120, hideInSearch: true, }, @@ -209,6 +230,7 @@ const OperationRecordList: React.FC = () => { defaultMessage="$$$"/>), dataIndex: "createTime", valueType: 'dateTime', + width: 120, hideInSearch: true, }, @@ -218,6 +240,7 @@ const OperationRecordList: React.FC = () => { defaultMessage="$$$"/>), dataIndex: "updateTime", valueType: 'dateTime', + width: 120, hideInSearch: true, }, @@ -225,47 +248,52 @@ const OperationRecordList: React.FC = () => { title: , dataIndex: 'option', valueType: 'option', + width: 120, fixed: 'right', render: (_, record) => [ - - {/* { - setUpdateModalOpen(true); - setCurrentRow(record); - }} - > - - */} - { - handleDestroy(record).then(() => {}); - }} - > - - - {/* { - handleDestroy(record).then(() => { - }) - }}> - - */} - + { + handleDestroy(record).then(() => {}); + }} + > + ), + }, + ]} + > + // + // { + // setUpdateModalOpen(true); + // setCurrentRow(record); + // }} + // > + // + // + // { + // handleDestroy(record).then(() => {}); + // }} + // > + // + // + // ], },]; return ( @@ -275,6 +303,7 @@ const OperationRecordList: React.FC = () => { id: 'pages.searchTable.title', defaultMessage: '$$$', })} + scroll={{ x: proTableCommonOptions.commscrollX}} options={{fullScreen: true, setting: true, density: true, reload: true}} actionRef={actionRef} rowKey="key" @@ -330,8 +359,26 @@ const OperationRecordList: React.FC = () => { setSelectedRows(selectedRows); }, }} + tableAlertOptionRender={() => { + return ( + <> + {selectedRowsState?.length > 0 && ( + { + const ids = selectedRowsState.map((v: API.OperationRecord) => { + return v.id + }) + // deleteOperationRecordDeleteOperationRecordsByIds({ids: ids as number[]}).then(() => { + // actionRef.current?.reloadAndRest?.(); + // }) + }} + /> + )} + + ); + }} /> - {selectedRowsState?.length > 0 && ( + {/* {selectedRowsState?.length > 0 && ( @@ -357,7 +404,7 @@ const OperationRecordList: React.FC = () => { /> - )} + )} */} = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.create.title', + id: 'system.post.table.list.create', defaultMessage: '$$$', })} open={props.createModalOpen} diff --git a/src/pages/System/PostList/components/UpdateForm.tsx b/src/pages/System/PostList/components/UpdateForm.tsx index 7074aac..8063def 100644 --- a/src/pages/System/PostList/components/UpdateForm.tsx +++ b/src/pages/System/PostList/components/UpdateForm.tsx @@ -23,7 +23,7 @@ const UpdateForm: React.FC = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.update.title', + id: 'system.post.table.list.update', defaultMessage: '$$$', })} open={props.updateModalOpen} diff --git a/src/pages/System/PostList/index.tsx b/src/pages/System/PostList/index.tsx index a314d31..439316a 100644 --- a/src/pages/System/PostList/index.tsx +++ b/src/pages/System/PostList/index.tsx @@ -12,6 +12,11 @@ import UpdateForm from './components/UpdateForm'; import CreateForm from "./components/CreateForm"; import {ColumnDrawer} from "./components/ColumnDrawer"; import {postPostGetPostList} from "@/services/system/Post"; +// 列表操作栏组件 +import TableActionCard from '@/components/TableActionCard'; +import IsDelete from '@/components/TableActionCard/isDelete'; +// 批量删除 +import IsBatchDelete from '@/components/BatchOperation/isBatchDelete'; const PostList: React.FC = () => { /** @@ -76,11 +81,12 @@ const PostList: React.FC = () => { defaultMessage="id"/>), dataIndex: "id", sorter: true, - valueType: "digit", + // valueType: "digit", filters: true, onFilter: true, render: (dom, entity) => { return ( { setCurrentRow(entity); setShowDetail(true); @@ -144,45 +150,65 @@ const PostList: React.FC = () => { valueType: 'option', fixed: 'right', render: (_, record) => [ - - { - setUpdateModalOpen(true); - setCurrentRow(record); - }} - > - - - { - handleDestroy(record).then(() => {}); - }} - > - - - {/* { - handleDestroy(record).then(() => { - }) - }}> - - */} - + { + setUpdateModalOpen(true); + setCurrentRow(record); + }} + > + + + ), + }, + { + key: 'destroy', + renderDom: ( + { + handleDestroy(record).then(() => {}); + }} + > + ), + }, + ]} + > + // + // { + // setUpdateModalOpen(true); + // setCurrentRow(record); + // }} + // > + // + // + // { + // handleDestroy(record).then(() => {}); + // }} + // > + // + // + // ], },]; return ( @@ -249,8 +275,26 @@ const PostList: React.FC = () => { setSelectedRows(selectedRows); }, }} + tableAlertOptionRender={() => { + return ( + <> + {selectedRowsState?.length > 0 && ( + { + const ids = selectedRowsState.map((v: API.Post) => { + return v.id + }) + // deletePostDeletePostsByIds({ids: ids as number[]}).then(() => { + // actionRef.current?.reloadAndRest?.(); + // }) + }} + /> + )} + + ); + }} /> - {selectedRowsState?.length > 0 && ( + {/* {selectedRowsState?.length > 0 && ( @@ -276,7 +320,7 @@ const PostList: React.FC = () => { /> - )} + )} */} = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.create.title', + id: 'system.role.table.list.create', defaultMessage: '$$$', })} open={props.createModalOpen} diff --git a/src/pages/System/RoleList/components/SetPermissionForm.tsx b/src/pages/System/RoleList/components/SetPermissionForm.tsx index dbcdec7..e242c92 100644 --- a/src/pages/System/RoleList/components/SetPermissionForm.tsx +++ b/src/pages/System/RoleList/components/SetPermissionForm.tsx @@ -72,7 +72,7 @@ const SetPermissionForm: React.FC = (props) => { return ( title={intl.formatMessage({ - id: 'common.modal.table.update.title', + id: 'system.role.table.list.set_permission', defaultMessage: '$$$', })} open={props.updateModalOpen} @@ -127,6 +127,7 @@ const SetPermissionForm: React.FC = (props) => { onCheck={(checkedKeys) => { form.setFieldsValue({menuIds: checkedKeys}) }} + height={820} treeData={treeData} // loadData={({treeNode}) => { // return treeData @@ -152,6 +153,7 @@ const SetPermissionForm: React.FC = (props) => { onCheck={(checkedKeys) => { form.setFieldsValue({apiIds: checkedKeys}) }} + height={820} treeData={apitreeData} // loadData={({treeNode}) => { // return treeData @@ -186,6 +188,7 @@ const SetPermissionForm: React.FC = (props) => { onCheck={(checkedKeys: any) => { form.setFieldsValue({deptIds: checkedKeys}) }} + height={760} treeData={deptTreeData} /> diff --git a/src/pages/System/RoleList/components/UpdateForm.tsx b/src/pages/System/RoleList/components/UpdateForm.tsx index 973c122..c72d4c1 100644 --- a/src/pages/System/RoleList/components/UpdateForm.tsx +++ b/src/pages/System/RoleList/components/UpdateForm.tsx @@ -23,7 +23,7 @@ const UpdateForm: React.FC = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.update.title', + id: 'system.role.table.list.update', defaultMessage: '$$$', })} open={props.updateModalOpen} diff --git a/src/pages/System/RoleList/index.tsx b/src/pages/System/RoleList/index.tsx index 1ff1296..4ebc0ea 100644 --- a/src/pages/System/RoleList/index.tsx +++ b/src/pages/System/RoleList/index.tsx @@ -13,6 +13,11 @@ import CreateForm from "./components/CreateForm"; import SetPermissionForm from "./components/SetPermissionForm"; import {ColumnDrawer} from "./components/ColumnDrawer"; import {postRoleGetRoleList} from "@/services/system/Role"; +// 列表操作栏组件 +import TableActionCard from '@/components/TableActionCard'; +import IsDelete from '@/components/TableActionCard/isDelete'; +// 批量删除 +import IsBatchDelete from '@/components/BatchOperation/isBatchDelete'; const RoleList: React.FC = () => { /** @@ -86,7 +91,7 @@ const RoleList: React.FC = () => { defaultMessage="id"/>), dataIndex: "id", sorter: true, - valueType: "digit", + // valueType: "digit", filters: true, onFilter: true, render: (dom, entity) => { return ( @@ -154,51 +159,87 @@ const RoleList: React.FC = () => { valueType: 'option', fixed: 'right', render: (_, record) => [ - - { - setUpdateModalOpen(true); - setCurrentRow(record); - }} - > - - - { - setSetPermissionModalOpen(true) - setCurrentRow(record) - }} - > - { - handleDestroy(record).then(() => {}); - }} - > - - - {/* { - handleDestroy(record).then(() => { - }) - }}> - - */} - + { + setUpdateModalOpen(true); + setCurrentRow(record); + }} + > + + + ), + }, + { + key: 'set_permissions', + renderDom: ( + + ), + }, + { + key: 'destroy', + renderDom: ( + { + handleDestroy(record).then(() => {}); + }} + > + ), + }, + ]} + > + // + // { + // setUpdateModalOpen(true); + // setCurrentRow(record); + // }} + // > + // + // + // { + // setSetPermissionModalOpen(true) + // setCurrentRow(record) + // }} + // > + // { + // handleDestroy(record).then(() => {}); + // }} + // > + // + // + // ], },]; return ( @@ -266,6 +307,24 @@ const RoleList: React.FC = () => { setSelectedRows(selectedRows); }, }} + tableAlertOptionRender={() => { + return ( + <> + {selectedRowsState?.length > 0 && ( + { + const ids = selectedRowsState.map((v: API.Role) => { + return v.id + }) + // deleteRoleDeleteRolesByIds({ids: ids as number[]}).then(() => { + // actionRef.current?.reloadAndRest?.(); + // }) + }} + /> + )} + + ); + }} /> {selectedRowsState?.length > 0 && ( = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.create.title', + id: 'system.user.table.list.create', defaultMessage: '$$$', })} open={props.createModalOpen} diff --git a/src/pages/System/UserList/components/UpdateForm.tsx b/src/pages/System/UserList/components/UpdateForm.tsx index 7b72ea7..3fb23a1 100644 --- a/src/pages/System/UserList/components/UpdateForm.tsx +++ b/src/pages/System/UserList/components/UpdateForm.tsx @@ -38,7 +38,7 @@ const UpdateForm: React.FC = (props) => { width={proFormModelWidth} title={intl.formatMessage({ - id: 'common.modal.table.update.title', + id: 'system.user.table.list.update', defaultMessage: '$$$', })} open={props.updateModalOpen} diff --git a/src/pages/System/UserList/index.tsx b/src/pages/System/UserList/index.tsx index 9517135..8ba6fd3 100644 --- a/src/pages/System/UserList/index.tsx +++ b/src/pages/System/UserList/index.tsx @@ -18,6 +18,11 @@ import { Tree } from 'antd'; import type { DataNode } from 'antd/es/tree'; import {postDepartmentGetDepartmentTree} from "@/services/system/Department"; import {RedoOutlined} from "@ant-design/icons"; +// 列表操作栏组件 +import TableActionCard from '@/components/TableActionCard'; +import IsDelete from '@/components/TableActionCard/isDelete'; +// 批量删除 +import IsBatchDelete from '@/components/BatchOperation/isBatchDelete'; const UserList: React.FC = () => { /** @@ -93,11 +98,12 @@ const UserList: React.FC = () => { defaultMessage="id"/>), dataIndex: "id", sorter: true, - valueType: "digit", + // valueType: "digit", filters: true, onFilter: true, render: (dom, entity) => { return ( { setCurrentRow(entity); setShowDetail(true); @@ -171,45 +177,65 @@ const UserList: React.FC = () => { valueType: 'option', fixed: 'right', render: (_, record) => [ - - { - setUpdateModalOpen(true); - setCurrentRow(record); - }} - > - - - { - handleDestroy(record).then(() => {}); - }} - > - - - {/* { - handleDestroy(record).then(() => { - }) - }}> - - */} - + { + setUpdateModalOpen(true); + setCurrentRow(record); + }} + > + + + ), + }, + { + key: 'destroy', + renderDom: ( + { + handleDestroy(record).then(() => {}); + }} + > + ), + }, + ]} + > + // + // { + // setUpdateModalOpen(true); + // setCurrentRow(record); + // }} + // > + // + // + // { + // handleDestroy(record).then(() => {}); + // }} + // > + // + // + // ], },]; return ( @@ -296,8 +322,26 @@ const UserList: React.FC = () => { setSelectedRows(selectedRows); }, }} + tableAlertOptionRender={() => { + return ( + <> + {selectedRowsState?.length > 0 && ( + { + const ids = selectedRowsState.map((v: API.User) => { + return v.id + }) + // deleteUserDeleteUsersByIds({ids: ids as number[]}).then(() => { + // actionRef.current?.reloadAndRest?.(); + // }) + }} + /> + )} + + ); + }} /> - {selectedRowsState?.length > 0 && ( + {/* {selectedRowsState?.length > 0 && ( @@ -323,7 +367,7 @@ const UserList: React.FC = () => { /> - )} + )} */}