diff --git a/src/apis/Users.js b/src/apis/Users.js
index 39a11fc..b60d65f 100644
--- a/src/apis/Users.js
+++ b/src/apis/Users.js
@@ -42,7 +42,7 @@ export const UserChangeNickName = async (token, params) => {
headers: { Authorization: `Bearer ${token}` },
});
- return res;
+ return res.data;
} catch (e) {
if (e instanceof Error) {
throw new Error('UserChangeNickName Error', e);
diff --git a/src/components/DataManage/NicknameChangeModal.js b/src/components/DataManage/NicknameChangeModal.js
index f184e93..63b86db 100644
--- a/src/components/DataManage/NicknameChangeModal.js
+++ b/src/components/DataManage/NicknameChangeModal.js
@@ -2,16 +2,19 @@ import { styled } from 'styled-components';
import { useEffect, useState } from 'react';
import { Title } from '../../styles/Components';
-import { TextInput, BtnWrapper, ButtonClose, ModalText } from '../../styles/Components';
+import { TextInput, BtnWrapper } from '../../styles/Components';
import Button from '../../components/common/button/Button';
import Modal from '../../components/common/modal/Modal';
import { UserChangeNickName } from '../../apis';
+import { alertTypes } from '../../assets/data/types';
+import { useAlert } from '../../context/AlertProvider';
+import { useLoading } from '../../context/LoadingProvider';
const NicknameChangeModal = ({ pwPop, handleClick, dataList }) => {
+ const {showModal, showToast} = useAlert();
+ const {withLoading} = useLoading();
+
let nickName = dataList.char_info && dataList.char_info.character_name;
- const [modifyModal, setModifyModal] = useState('hidden');
- const [completeModal, setCompleteModal] = useState('hidden');
- const [completeText, setCompleteText] = useState('');
const [resultData, setResultData] = useState({
guid: '',
@@ -20,42 +23,42 @@ const NicknameChangeModal = ({ pwPop, handleClick, dataList }) => {
});
useEffect(() => {
- setResultData({ ...resultData, guid: dataList.user_info && dataList.user_info.aid, nickname: dataList.char_info && dataList.char_info.character_name });
+ setResultData({ ...resultData,
+ guid: dataList.user_info && dataList.user_info.aid,
+ nickname: dataList.char_info && dataList.char_info.character_name
+ });
}, [dataList]);
- // 수정 모달창
- const handleModifyModal = () => {
- if (modifyModal === 'hidden') {
- setModifyModal('view');
- } else {
- setModifyModal('hidden');
+ const handleSubmit = async (type, param = null) => {
+ switch (type) {
+
+ case "nicknameChangeSubmit":
+ showModal('NICKNAME_CHANGES_CONFIRM', {
+ type: alertTypes.confirm,
+ onConfirm: () => handleSubmit('nicknameChange')
+ });
+ break;
+
+ case "nicknameChange":
+ const token = sessionStorage.getItem('token');
+
+ await withLoading(async () => {
+ return await UserChangeNickName(token, resultData);
+ }).then(data =>{
+ console.log(data);
+ if(data.result === 'ERROR'){
+ showToast(data.data.message, {type: alertTypes.error});
+ }else{
+ showToast('NICKNAME_CHANGES_COMPLETE', {type: alertTypes.success});
+ }
+ }).catch(error => {
+ showToast(error, {type: alertTypes.error});
+ }).finally(() => {
+ handleClick();
+ });
+ break;
}
- };
-
- // 완료 모달창
- const handleCompleteModal = () => {
- if (completeModal === 'hidden') {
- setCompleteModal('view');
- } else {
- setCompleteModal('hidden');
-
- handleClick();
- completeText === '변경이 완료되었습니다.' && window.location.reload();
- }
- };
-
- // 수정
- const handleModifyNotice = async () => {
- const token = sessionStorage.getItem('token');
-
- const message = await UserChangeNickName(token, resultData);
-
- // console.log(message);
- message.data.data.message !== '수정 하였습니다.' ? setCompleteText('변경 닉네임이 이미 존재합니다.\n다시 시도해주세요.') : setCompleteText('변경이 완료되었습니다.');
-
- handleCompleteModal();
- handleModifyModal();
- };
+ }
return (
<>
@@ -82,29 +85,7 @@ const NicknameChangeModal = ({ pwPop, handleClick, dataList }) => {