취소 비밀번호 변경 기능 추가 및 사용자 계정 관리 개선
🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -4,9 +4,6 @@ import { useNavigate } from '@/shared/lib/hooks/use-navigate';
|
||||
export const PasswordManageWrap = () => {
|
||||
const { navigate } = useNavigate();
|
||||
|
||||
const onClickTonavigation = () => {
|
||||
navigate(PATHS.account.password.modifyLoginPassword);
|
||||
};
|
||||
return (
|
||||
<>
|
||||
<div className="ing-list">
|
||||
@@ -15,11 +12,12 @@ export const PasswordManageWrap = () => {
|
||||
<button
|
||||
className="btn-44 btn-white pwd-btn"
|
||||
type="button"
|
||||
onClick={ () => onClickTonavigation() }
|
||||
onClick={ () => navigate(PATHS.account.password.modifyLoginPassword) }
|
||||
>로그인 비밀번호 변경</button>
|
||||
<button
|
||||
className="btn-44 btn-white pwd-btn"
|
||||
type="button"
|
||||
onClick={ () => navigate(PATHS.account.password.modifyCancelPassword) }
|
||||
>거래취소 비밀번호 변경</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -3,6 +3,9 @@ import { useUserFindAuthMethodMutation } from '@/entities/user/api/use-user-find
|
||||
import { DEFAULT_PAGE_PARAM } from '@/entities/common/model/constant';
|
||||
import { useEffect, useState } from 'react';
|
||||
import { useUserModifyAuthMethodMutation } from '@/entities/user/api/use-user-modify-authmethod-mutation';
|
||||
import { snackBar } from '@/shared/lib/toast';
|
||||
import { PATHS } from '@/shared/constants/paths';
|
||||
import { useNavigate } from '@/shared/lib/hooks/use-navigate';
|
||||
|
||||
export const UserLoginAuthInfoWrap = ({
|
||||
mid,
|
||||
@@ -10,8 +13,7 @@ export const UserLoginAuthInfoWrap = ({
|
||||
idCl,
|
||||
status,
|
||||
}: UserFindAuthMethodParams) => {
|
||||
const { mutateAsync: userFindAuthMethod } = useUserFindAuthMethodMutation();
|
||||
const { mutateAsync: userModifyAuthMethod } = useUserModifyAuthMethodMutation();
|
||||
const { navigate } = useNavigate();
|
||||
const [pageParam] = useState(DEFAULT_PAGE_PARAM);
|
||||
const [authMethodData, setAuthMethodData] = useState<UserAuthMethodData>();
|
||||
const [initialData, setInitialData] = useState<UserAuthMethodData>();
|
||||
@@ -21,6 +23,20 @@ export const UserLoginAuthInfoWrap = ({
|
||||
const [editablePhoneIndex, setEditablePhoneIndex] = useState<number>(-1);
|
||||
const [readOnlyEmails, setReadOnlyEmails] = useState<Set<number>>(new Set());
|
||||
const [readOnlyPhones, setReadOnlyPhones] = useState<Set<number>>(new Set());
|
||||
const { mutateAsync: userFindAuthMethod } = useUserFindAuthMethodMutation();
|
||||
const { mutateAsync: userModifyAuthMethod } = useUserModifyAuthMethodMutation({
|
||||
onSuccess: () => {
|
||||
snackBar('사용자 정보가 성공적으로 저장되었습니다.');
|
||||
navigate(PATHS.account.user.manage, {
|
||||
state: {
|
||||
mid: mid,
|
||||
}
|
||||
});
|
||||
},
|
||||
onError: (error) => {
|
||||
snackBar(error?.response?.data?.message || '사용자 정보 저장에 실패했습니다.');
|
||||
}
|
||||
});
|
||||
|
||||
console.log("UserLoginAuthInfoWrap", mid, usrid, idCl, status);
|
||||
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
import axios from 'axios';
|
||||
import { API_URL_USER } from '@/shared/api/api-url-user';
|
||||
import { resultify } from '@/shared/lib/resultify';
|
||||
import { CBDCAxiosError } from '@/shared/@types/error';
|
||||
import {
|
||||
ChangeCancelPasswordParams,
|
||||
ChangeCancelPasswordResponse
|
||||
} from '../model/types';
|
||||
import {
|
||||
useMutation,
|
||||
UseMutationOptions
|
||||
} from '@tanstack/react-query';
|
||||
|
||||
export const userChangeCancelPassword = (params: ChangeCancelPasswordParams) => {
|
||||
return resultify(
|
||||
axios.post<ChangeCancelPasswordResponse>(API_URL_USER.userChangeCancelPassword(), params),
|
||||
);
|
||||
};
|
||||
|
||||
export const useUserChangeCancelPasswordMutation = (options?: UseMutationOptions<ChangeCancelPasswordResponse, CBDCAxiosError, ChangeCancelPasswordParams>) => {
|
||||
const mutation = useMutation<ChangeCancelPasswordResponse, CBDCAxiosError, ChangeCancelPasswordParams>({
|
||||
...options,
|
||||
mutationFn: (params: ChangeCancelPasswordParams) => userChangeCancelPassword(params),
|
||||
});
|
||||
|
||||
return {
|
||||
...mutation,
|
||||
};
|
||||
};
|
||||
@@ -133,9 +133,9 @@ export interface UserMenuPermissionData {
|
||||
}
|
||||
|
||||
export interface ChangePasswordParams {
|
||||
mid: string;
|
||||
usrid: string;
|
||||
password: string;
|
||||
newPassword: string;
|
||||
}
|
||||
|
||||
export interface ChangePasswordResponse {
|
||||
@@ -143,6 +143,16 @@ export interface ChangePasswordResponse {
|
||||
error?: ErrorResponse;
|
||||
}
|
||||
|
||||
export interface ChangeCancelPasswordParams {
|
||||
mid: string;
|
||||
password: string;
|
||||
}
|
||||
|
||||
export interface ChangeCancelPasswordResponse {
|
||||
status: boolean;
|
||||
error?: ErrorResponse;
|
||||
}
|
||||
|
||||
export interface VerificationsItem {
|
||||
type: string;
|
||||
contact: string;
|
||||
|
||||
Reference in New Issue
Block a user