import React, { useState, useEffect } from "react"; import { Modal, Select, Switch, Form, Input, message } from "antd"; import styles from "./create.module.less"; import { adminUser } from "../../../../api/index"; interface PropInterface { roleId: number; refresh: boolean; open: boolean; onCancel: () => void; } type selRoleModel = { label: string; value: number; }; export const SystemAdministratorCreate: React.FC = ({ roleId, refresh, open, onCancel, }) => { const [form] = Form.useForm(); const [loading, setLoading] = useState(true); const [roles, setRoles] = useState([]); useEffect(() => { if (open) { getParams(); } }, [refresh, open]); useEffect(() => { let roleIds = []; if (roleId) { roleIds.push(roleId); } form.setFieldsValue({ email: "", name: "", password: "", is_ban_login: 0, roleIds: roleIds, }); }, [form, open, roleId]); const getParams = () => { adminUser.createAdminUser().then((res: any) => { const arr = []; let roles: RoleModel[] = res.data.roles; for (let i = 0; i < roles.length; i++) { arr.push({ label: roles[i].name, value: roles[i].id, }); } setRoles(arr); }); }; const onFinish = (values: any) => { adminUser .storeAdminUser( values.name, values.email, values.password, values.is_ban_login, values.roleIds ) .then((res: any) => { message.success("保存成功!"); onCancel(); }); }; const onFinishFailed = (errorInfo: any) => { console.log("Failed:", errorInfo); }; const handleChange = (value: any) => {}; const onChange = (checked: boolean) => { if (checked) { form.setFieldsValue({ is_ban_login: 1 }); } else { form.setFieldsValue({ is_ban_login: 0 }); } }; return ( <> {open ? ( form.submit()} onCancel={() => onCancel()} maskClosable={false} >
) : null} ); };