From bc513b59b6e3c952749ac95f3cd50ff60577dbef Mon Sep 17 00:00:00 2001 From: "MSI\\derek" Date: Tue, 28 May 2024 11:45:51 +0800 Subject: [PATCH] edit user fix --- src/app/api/user/actions.ts | 1 + src/components/EditTeam/EditTeam.tsx | 2 +- src/components/EditUser/EditUser.tsx | 7 +++++-- src/components/EditUser/EditUserWrapper.tsx | 14 ++++++++------ src/components/EditUser/UserDetail.tsx | 4 ++-- src/components/EditUserGroup/EditUserGroup.tsx | 16 ++++++++++++---- 6 files changed, 29 insertions(+), 15 deletions(-) diff --git a/src/app/api/user/actions.ts b/src/app/api/user/actions.ts index b655631..48aaea6 100644 --- a/src/app/api/user/actions.ts +++ b/src/app/api/user/actions.ts @@ -7,6 +7,7 @@ import { UserDetail, UserResult } from "."; import { cache } from "react"; export interface UserInputs { + username: string; name: string; email?: string; addAuthIds?: number[]; diff --git a/src/components/EditTeam/EditTeam.tsx b/src/components/EditTeam/EditTeam.tsx index 79d7ec2..f45d310 100644 --- a/src/components/EditTeam/EditTeam.tsx +++ b/src/components/EditTeam/EditTeam.tsx @@ -175,7 +175,7 @@ const EditTeam: React.FC = async ({ staff, teamInfo }) => { diff --git a/src/components/EditUser/EditUser.tsx b/src/components/EditUser/EditUser.tsx index 1d3c473..9a06b0c 100644 --- a/src/components/EditUser/EditUser.tsx +++ b/src/components/EditUser/EditUser.tsx @@ -50,6 +50,7 @@ interface Props { } const EditUser: React.FC = async ({ user, rules, auths }) => { + console.log(user) const { t } = useTranslation("user"); const formProps = useForm(); const searchParams = useSearchParams(); @@ -79,7 +80,7 @@ const EditUser: React.FC = async ({ user, rules, auths }) => { console.log(addAuthIds); try { formProps.reset({ - name: user.username, + username: user.username, email: user.email, addAuthIds: addAuthIds, removeAuthIds: [], @@ -145,7 +146,8 @@ const EditUser: React.FC = async ({ user, rules, auths }) => { } } const userData = { - name: data.name, + username: data.username, + name: user.name, locked: false, addAuthIds: data.addAuthIds || [], removeAuthIds: data.removeAuthIds || [], @@ -159,6 +161,7 @@ const EditUser: React.FC = async ({ user, rules, auths }) => { return; } console.log("passed"); + console.log(userData); await editUser(id, userData); if (data.password && data.password.length > 0) { await adminChangePassword(pwData); diff --git a/src/components/EditUser/EditUserWrapper.tsx b/src/components/EditUser/EditUserWrapper.tsx index f7d77eb..f62bef7 100644 --- a/src/components/EditUser/EditUserWrapper.tsx +++ b/src/components/EditUser/EditUserWrapper.tsx @@ -15,14 +15,16 @@ interface SubComponents { } const EditUserWrapper: React.FC & SubComponents = async ({ - searchParams + searchParams, }) => { - const id = parseInt(searchParams.id as string) - const pwRule = await fetchPwRules() - const user = await fetchUserDetails(id); - const auths = await fetchAuth("user", id); + const id = parseInt(searchParams.id as string); + const [pwRule, user, auths] = await Promise.all([ + fetchPwRules(), + fetchUserDetails(id), + fetchAuth("user", id), + ]); - return + return ; }; EditUserWrapper.Loading = EditUserLoading; diff --git a/src/components/EditUser/UserDetail.tsx b/src/components/EditUser/UserDetail.tsx index 1d251c4..cb98cdc 100644 --- a/src/components/EditUser/UserDetail.tsx +++ b/src/components/EditUser/UserDetail.tsx @@ -34,10 +34,10 @@ const UserDetail: React.FC = () => { diff --git a/src/components/EditUserGroup/EditUserGroup.tsx b/src/components/EditUserGroup/EditUserGroup.tsx index c523a58..c443b4e 100644 --- a/src/components/EditUserGroup/EditUserGroup.tsx +++ b/src/components/EditUserGroup/EditUserGroup.tsx @@ -13,7 +13,7 @@ import { useForm, useFormContext, } from "react-hook-form"; -import { Check, Close, Error } from "@mui/icons-material"; +import { Check, Close, Error, RestartAlt } from "@mui/icons-material"; import { StaffResult } from "@/app/api/staff"; import { CreateGroupInputs, auth, fetchAuth, saveGroup } from "@/app/api/group/actions"; import { IndivUserGroup, UserGroupResult } from "@/app/api/group"; @@ -86,11 +86,12 @@ const EditUserGroup: React.FC = ({ users, auths, group }) => { addAuthIds: group.authIds, addUserIds: group.userIds, }) - }, []); + }, [group, users]); useEffect(() => { resetGroup() - }, [group, users]); + }, []); + // }, [group, users]); return ( <> @@ -136,10 +137,17 @@ const EditUserGroup: React.FC = ({ users, auths, group }) => { {tabIndex === 1 && } {tabIndex === 2 && } +