|
@@ -72,6 +72,15 @@ export type OptionType = {
|
|
|
export default function User() {
|
|
export default function User() {
|
|
|
const { push } = useRouter();
|
|
const { push } = useRouter();
|
|
|
|
|
|
|
|
|
|
+ // 添加用于控制删除确认模态框的状态
|
|
|
|
|
+ const [deleteModalVisible, setDeleteModalVisible] = useState(false);
|
|
|
|
|
+ const [deleteUserId, setDeleteUserId] = useState<string | number | null>(null);
|
|
|
|
|
+
|
|
|
|
|
+ // 添加用于控制切换状态确认模态框的状态
|
|
|
|
|
+ const [statusModalVisible, setStatusModalVisible] = useState(false);
|
|
|
|
|
+ const [statusChecked, setStatusChecked] = useState<boolean>(true);
|
|
|
|
|
+ const [statusRecord, setStatusRecord] = useState<any>(null);
|
|
|
|
|
+
|
|
|
//新建用户预置密码值
|
|
//新建用户预置密码值
|
|
|
const [defaultPassword, setDefaultPassword] = useState("");
|
|
const [defaultPassword, setDefaultPassword] = useState("");
|
|
|
|
|
|
|
@@ -347,20 +356,10 @@ export default function User() {
|
|
|
//展示切换用户状态对话框
|
|
//展示切换用户状态对话框
|
|
|
const showSwitchUserStatusModal = (checked: boolean, record: any) => {
|
|
const showSwitchUserStatusModal = (checked: boolean, record: any) => {
|
|
|
setRowStatusMap({ ...rowStatusMap, [record.userId]: checked });
|
|
setRowStatusMap({ ...rowStatusMap, [record.userId]: checked });
|
|
|
-
|
|
|
|
|
- Modal.confirm({
|
|
|
|
|
- title: "系统提示",
|
|
|
|
|
- icon: <ExclamationCircleFilled />,
|
|
|
|
|
- content: `确认要${checked ? "启用" : "停用"}"${record.userName}"用户吗?`,
|
|
|
|
|
- onOk() {
|
|
|
|
|
- executeSwitchStatus(checked, record.userId, () => {
|
|
|
|
|
- setRowStatusMap({ ...rowStatusMap, [record.userId]: !checked });
|
|
|
|
|
- });
|
|
|
|
|
- },
|
|
|
|
|
- onCancel() {
|
|
|
|
|
- setRowStatusMap({ ...rowStatusMap, [record.userId]: !checked });
|
|
|
|
|
- },
|
|
|
|
|
- });
|
|
|
|
|
|
|
+
|
|
|
|
|
+ setStatusChecked(checked);
|
|
|
|
|
+ setStatusRecord(record);
|
|
|
|
|
+ setStatusModalVisible(true);
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
//确认变更用户状态
|
|
//确认变更用户状态
|
|
@@ -391,6 +390,26 @@ export default function User() {
|
|
|
}
|
|
}
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+ //确定切换状态
|
|
|
|
|
+ const confirmSwitchStatus = () => {
|
|
|
|
|
+ if (!statusRecord) return;
|
|
|
|
|
+
|
|
|
|
|
+ executeSwitchStatus(statusChecked, statusRecord.userId, () => {
|
|
|
|
|
+ setRowStatusMap({ ...rowStatusMap, [statusRecord.userId]: !statusChecked });
|
|
|
|
|
+ });
|
|
|
|
|
+ setStatusModalVisible(false);
|
|
|
|
|
+ setStatusRecord(null);
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
|
|
+ //取消切换状态
|
|
|
|
|
+ const cancelSwitchStatus = () => {
|
|
|
|
|
+ if (!statusRecord) return;
|
|
|
|
|
+
|
|
|
|
|
+ setRowStatusMap({ ...rowStatusMap, [statusRecord.userId]: !statusChecked });
|
|
|
|
|
+ setStatusModalVisible(false);
|
|
|
|
|
+ setStatusRecord(null);
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
//删除按钮是否可用,选中行时才可用
|
|
//删除按钮是否可用,选中行时才可用
|
|
|
const [rowCanDelete, setRowCanDelete] = useState(false);
|
|
const [rowCanDelete, setRowCanDelete] = useState(false);
|
|
|
|
|
|
|
@@ -702,17 +721,38 @@ export default function User() {
|
|
|
|
|
|
|
|
//点击删除按钮
|
|
//点击删除按钮
|
|
|
const onClickDeleteRow = (record?: any) => {
|
|
const onClickDeleteRow = (record?: any) => {
|
|
|
- const userId =
|
|
|
|
|
- record != undefined ? record.userId : selectedRowKeys.join(",");
|
|
|
|
|
- Modal.confirm({
|
|
|
|
|
- title: "系统提示",
|
|
|
|
|
- icon: <ExclamationCircleFilled />,
|
|
|
|
|
- content: `确定删除用户编号为“${userId}”的数据项?`,
|
|
|
|
|
- onOk() {
|
|
|
|
|
- executeDeleteRow(userId);
|
|
|
|
|
- },
|
|
|
|
|
- onCancel() {},
|
|
|
|
|
|
|
+ const userId = record !== undefined ? record.userId : selectedRowKeys.join(",");
|
|
|
|
|
+ setDeleteUserId(userId);
|
|
|
|
|
+ setDeleteModalVisible(true);
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
|
|
+ //确定删除选中的用户
|
|
|
|
|
+ const executeDeleteRow = async () => {
|
|
|
|
|
+ if (deleteUserId === null) return;
|
|
|
|
|
+
|
|
|
|
|
+ const body = await fetchApi(`/api/system/user/${deleteUserId}`, push, {
|
|
|
|
|
+ method: "DELETE",
|
|
|
});
|
|
});
|
|
|
|
|
+ if (body !== undefined) {
|
|
|
|
|
+ if (body.code == 200) {
|
|
|
|
|
+ message.success("删除成功");
|
|
|
|
|
+
|
|
|
|
|
+ //修改按钮变回不可点击
|
|
|
|
|
+ setRowCanModify(false);
|
|
|
|
|
+ //删除按钮变回不可点击
|
|
|
|
|
+ setRowCanDelete(false);
|
|
|
|
|
+ //选中行数据重置为空
|
|
|
|
|
+ setSelectedRowKeys([]);
|
|
|
|
|
+ //刷新列表
|
|
|
|
|
+ if (actionRef.current) {
|
|
|
|
|
+ actionRef.current.reload();
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+ message.error(body.msg);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ setDeleteModalVisible(false);
|
|
|
|
|
+ setDeleteUserId(null);
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
//选中上传文件列表
|
|
//选中上传文件列表
|
|
@@ -767,31 +807,6 @@ export default function User() {
|
|
|
setShowImportModal(true);
|
|
setShowImportModal(true);
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
- //确定删除选中的用户
|
|
|
|
|
- const executeDeleteRow = async (userId: any) => {
|
|
|
|
|
- const body = await fetchApi(`/api/system/user/${userId}`, push, {
|
|
|
|
|
- method: "DELETE",
|
|
|
|
|
- });
|
|
|
|
|
- if (body !== undefined) {
|
|
|
|
|
- if (body.code == 200) {
|
|
|
|
|
- message.success("删除成功");
|
|
|
|
|
-
|
|
|
|
|
- //修改按钮变回不可点击
|
|
|
|
|
- setRowCanModify(false);
|
|
|
|
|
- //删除按钮变回不可点击
|
|
|
|
|
- setRowCanDelete(false);
|
|
|
|
|
- //选中行数据重置为空
|
|
|
|
|
- setSelectedRowKeys([]);
|
|
|
|
|
- //刷新列表
|
|
|
|
|
- if (actionRef.current) {
|
|
|
|
|
- actionRef.current.reload();
|
|
|
|
|
- }
|
|
|
|
|
- } else {
|
|
|
|
|
- message.error(body.msg);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- };
|
|
|
|
|
-
|
|
|
|
|
//确定导入
|
|
//确定导入
|
|
|
const executeImport = async () => {
|
|
const executeImport = async () => {
|
|
|
if (fileList.length == 0) {
|
|
if (fileList.length == 0) {
|
|
@@ -1341,6 +1356,43 @@ export default function User() {
|
|
|
</Typography.Text>
|
|
</Typography.Text>
|
|
|
</Flex>
|
|
</Flex>
|
|
|
</Modal>
|
|
</Modal>
|
|
|
|
|
+
|
|
|
|
|
+ {/* 删除确认模态框 */}
|
|
|
|
|
+ <Modal
|
|
|
|
|
+ title={
|
|
|
|
|
+ <div style={{ display: 'flex', alignItems: 'center' }}>
|
|
|
|
|
+ <ExclamationCircleFilled style={{ color: '#faad14', marginRight: 8 }} />
|
|
|
|
|
+ <span>系统提示</span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ }
|
|
|
|
|
+ open={deleteModalVisible}
|
|
|
|
|
+ onOk={executeDeleteRow}
|
|
|
|
|
+ onCancel={() => {
|
|
|
|
|
+ setDeleteModalVisible(false);
|
|
|
|
|
+ setDeleteUserId(null);
|
|
|
|
|
+ }}
|
|
|
|
|
+ okText="确认"
|
|
|
|
|
+ cancelText="取消"
|
|
|
|
|
+ >
|
|
|
|
|
+ <p>{`确定删除用户编号为“${deleteUserId}”的数据项?`}</p>
|
|
|
|
|
+ </Modal>
|
|
|
|
|
+
|
|
|
|
|
+ {/* 切换状态确认模态框 */}
|
|
|
|
|
+ <Modal
|
|
|
|
|
+ title={
|
|
|
|
|
+ <div style={{ display: 'flex', alignItems: 'center' }}>
|
|
|
|
|
+ <ExclamationCircleFilled style={{ color: '#faad14', marginRight: 8 }} />
|
|
|
|
|
+ <span>系统提示</span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ }
|
|
|
|
|
+ open={statusModalVisible}
|
|
|
|
|
+ onOk={confirmSwitchStatus}
|
|
|
|
|
+ onCancel={cancelSwitchStatus}
|
|
|
|
|
+ okText="确认"
|
|
|
|
|
+ cancelText="取消"
|
|
|
|
|
+ >
|
|
|
|
|
+ <p>{`确认要${statusChecked ? "启用" : "停用"}"${statusRecord?.userName}"用户吗?`}</p>
|
|
|
|
|
+ </Modal>
|
|
|
</PageContainer>
|
|
</PageContainer>
|
|
|
);
|
|
);
|
|
|
}
|
|
}
|