diff --git a/src/common/model/global/i18n/LangEn.ts b/src/common/model/global/i18n/LangEn.ts index ac84846..f1b43f4 100644 --- a/src/common/model/global/i18n/LangEn.ts +++ b/src/common/model/global/i18n/LangEn.ts @@ -234,6 +234,8 @@ let LangEn = { disable: "Disable", active: "Active", activeUser: "Active this user", + deleteUser: "Delete this user", + deleteHint: "This action will delete {}'s all records, including files,shares,user infos etc. Continue?", welcomeLogin: "Welcome Login", logining: "Login...", login: "Login", diff --git a/src/common/model/global/i18n/LangZh.ts b/src/common/model/global/i18n/LangZh.ts index 99668fe..9c94e9c 100644 --- a/src/common/model/global/i18n/LangZh.ts +++ b/src/common/model/global/i18n/LangZh.ts @@ -234,6 +234,8 @@ let LangZh = { disabled: "已禁用", disableUser: "禁用该用户", activeUser: "激活该用户", + deleteUser: "删除该用户", + deleteHint: "此操作将删除用户【{}】的所有记录,包括文件,分享,用户信息等内容,确定继续?", disable: "禁用", active: "激活", welcomeLogin: "欢迎登录", diff --git a/src/pages/user/Edit.tsx b/src/pages/user/Edit.tsx index 24a3e4d..181bfbe 100644 --- a/src/pages/user/Edit.tsx +++ b/src/pages/user/Edit.tsx @@ -251,7 +251,7 @@ export default class Edit extends TankComponent {
diff --git a/src/pages/user/List.tsx b/src/pages/user/List.tsx index 6cccd13..beae8f0 100644 --- a/src/pages/user/List.tsx +++ b/src/pages/user/List.tsx @@ -12,16 +12,16 @@ import TableEmpty from '../widget/TableEmpty'; import User from "../../common/model/user/User"; import TankComponent from "../../common/component/TankComponent"; import TankTitle from "../widget/TankTitle"; -import {Button, Tag, Tooltip} from "antd"; +import {Button, Modal, Tag, Tooltip} from "antd"; import {CheckCircleOutlined, PlusOutlined, StopOutlined, UserSwitchOutlined} from '@ant-design/icons'; import {UserRoleMap} from "../../common/model/user/UserRole"; import {UserStatus, UserStatusMap} from "../../common/model/user/UserStatus"; -import {EditOutlined} from "@ant-design/icons/lib"; +import {DeleteOutlined, EditOutlined, ExclamationCircleFilled} from "@ant-design/icons/lib"; import MessageBoxUtil from "../../common/util/MessageBoxUtil"; import Color from "../../common/model/base/option/Color"; import TransfigurationModal from "./widget/TransfigurationModal"; -import Moon from "../../common/model/global/Moon"; import Lang from "../../common/model/global/Lang"; +import Moon from "../../common/model/global/Moon"; interface IProps extends RouteComponentProps { @@ -82,6 +82,22 @@ export default class List extends TankComponent { } + delete(user: User) { + let that = this + Modal.confirm({ + title: Lang.t("user.deleteHint", user.username), + icon: , + onOk: () => { + user.httpDel(function () { + MessageBoxUtil.success(Lang.t("operationSuccess")) + that.refresh() + }) + }, + }); + + } + + transfiguration(user: User) { let that = this @@ -100,6 +116,8 @@ export default class List extends TankComponent { //pager对象 let pager = this.pager; + let user: User = Moon.getSingleton().user + const columns: ColumnProps[] = [{ title: Lang.t("user.avatar"), dataIndex: 'avatarUrl', @@ -111,9 +129,18 @@ export default class List extends TankComponent { }, { title: Lang.t("user.username"), dataIndex: 'username', - render: (text: any, record: User, index: number): React.ReactNode => ( - {record.username} - ), + render: (text: any, record: User, index: number): React.ReactNode => { + return
+
+ {record.username} +
+ { + user.uuid === record.uuid && ( +
(It's you)
+ ) + } +
+ }, }, { title: Lang.t("user.role"), dataIndex: 'role', @@ -176,7 +203,7 @@ export default class List extends TankComponent { { - record.status === UserStatus.OK && ( + record.status === UserStatus.OK && record.uuid !== user.uuid && ( @@ -185,7 +212,7 @@ export default class List extends TankComponent { } { - record.status === UserStatus.DISABLED && ( + record.status === UserStatus.DISABLED && record.uuid !== user.uuid && ( @@ -193,10 +220,25 @@ export default class List extends TankComponent { ) } - + { + record.status === UserStatus.DISABLED && record.uuid !== user.uuid && ( + + + + ) + } + + { + record.uuid !== user.uuid && ( + + ) + } + +