Browse Source

마이페이지-(비밀번호 찾기)

pull/2/head
sanguu 2 years ago
parent
commit
e26a5ffe41
  1. 17
      src/components/account/mypage/AccountMypagePwForm.js
  2. 20
      src/containers/account/mypage/AccountMypageContainer.js
  3. 5
      src/modules/account/login/apis/authApi.ts
  4. 7
      src/modules/account/login/models/authModel.ts
  5. 16
      src/modules/account/login/reducers/authReducer.ts
  6. 27
      src/modules/account/login/sagas/authSaga.ts
  7. 2
      src/modules/comn/message/reducers/comnMessageReducer.ts
  8. 3
      src/redux/reducers/rootReducer.ts

17
src/components/account/mypage/AccountMypagePwForm.js

@ -5,7 +5,7 @@ import * as yup from 'yup';
import { useForm } from 'react-hook-form';
import { useSelector, useDispatch } from 'react-redux'
import {
Card, CardBody, Row, Col, Nav, NavItem, NavLink, TabContent, TabPane, Alert, FormGroup,FormFeedback, Form, Input, Label, Button,
Card, CardBody, Row, Col, Nav, NavItem, NavLink,TabContent, TabPane, Alert, FormGroup,FormFeedback, Form, Input, Label, Button,
Modal, ModalHeader, ModalBody, ModalFooter
} from 'reactstrap'
// ** Styles
@ -30,6 +30,8 @@ import { pwUpdateAction } from '../../../modules/account/login/actions/authActio
});
const AccountMypagePwForm = ({user}) => {
const { register,errors,handleSubmit } = useForm({
defaultValues: {
cstmrSno:user.cstmrSno,
@ -40,15 +42,9 @@ const AccountMypagePwForm = ({user}) => {
resolver: yupResolver(SignupSchema)
});
const dispatch = useDispatch();
const onSubmit = data => {
console.log("sdds",data);
dispatch(pwUpdateAction.request(data));
}
// const res = await pwAPI.register({
// data: data,
// agreeTerms: agreeTerms
// });
const onSubmit = data => {
dispatch(pwUpdateAction.request(data));
}
return (
<form onSubmit={handleSubmit(onSubmit)}>
<TabPane tabId='2'>
@ -89,6 +85,7 @@ const AccountMypagePwForm = ({user}) => {
</div>
</TabPane>
</form>
)
}
export default AccountMypagePwForm;

20
src/containers/account/mypage/AccountMypageContainer.js

@ -15,6 +15,9 @@ import AccountMypagePwForm from '../../../components/account/mypage/AccountMypag
import AccountMypageForm from '../../../components/account/mypage/AccountMypageForm';
import { userPageAction, userupdateAction } from '../../../modules/account/login/actions/authAction';
import { MessageErrorModal } from '../../../components/message/MessageErrorModal';
import { MessageInfoModal } from '../../../components/message/MessageInfoModal';
// ** Function to toggle tabs
const AccountMypageContainer = () => {
const [activeTab, setActiveTab] = useState('1'),
@ -26,18 +29,18 @@ const AccountMypageContainer = () => {
const [formModal, setFormModal] = useState(false)
const { userPage } = useSelector(state => state.UserPageState);
const { user } = useSelector(state => state.authState);
const { userpw } = useSelector(state => state.authState);
const { userPwPage } = useSelector(state => state.UserPwState);
const [userInfo, setUserInfo] = useState();
console.log("data>>>>",userpw);
useEffect(() => {
setUserInfo(userPage)
}, [userPage])
useEffect(() => {
if (user) {
console.log(">>>",user);
dispatch(userPageAction.request(user.cstmrSno));
}
}, []);
@ -50,8 +53,7 @@ const AccountMypageContainer = () => {
const handlerUpdate = () => {
dispatch(userupdateAction.request(user));
};
return (
<div className='pal-card'>
<div className='card-body-tab-menu'>
@ -81,14 +83,14 @@ const AccountMypageContainer = () => {
<></>
}
{activeTab == 2 ?
<AccountMypagePwForm
user={user}
//pwsubmit={pwsubmit}
//pwdata={pwdata}
<AccountMypagePwForm
user={user}
/>
:
<></>
}
<MessageErrorModal />
<MessageInfoModal />
</div>
)
}

5
src/modules/account/login/apis/authApi.ts

@ -27,7 +27,8 @@ export const authAPI = {
return res;
},
pwupdate: async (data: UserPw) => {
return await axios.post('api/acnt/cstmr/profile/pswdupdate', data);
},
return await axios.post('api/acnt/cstmr/profile/pswdupdate', data);
},
}

7
src/modules/account/login/models/authModel.ts

@ -76,7 +76,12 @@ export interface UserPw{
newPswd:string;
newPswdConfirm:string;
}
export interface UserPwState {
userPwPage: UserPw | undefined;
}
export const initResponseUserPwPageData = {
userPwPage: undefined
}
export const initResponseUserPageData = {
userPage: undefined

16
src/modules/account/login/reducers/authReducer.ts

@ -10,10 +10,11 @@ import {
check,
login,
logout,
refresh
refresh,
pwUpdateAction,
} from '../actions/authAction';
import { UserPageState, UserPageData, initResponseUserPageData, UserData,UserPw} from '../models/authModel';
import { UserPageState, UserPageData, initResponseUserPageData,UserPwState,UserData,UserPw,initResponseUserPwPageData,} from '../models/authModel';
export interface AuthState {
pageLoading: boolean;
@ -21,7 +22,7 @@ export interface AuthState {
isLogin?: boolean;
message: string;
user?: UserData;
userpw?: UserPw;
UserPw?: UserPw;
}
// reducers
@ -30,7 +31,8 @@ const initialState: AuthState = {
isLogin: undefined,
isRefresh: false,
user: undefined,
message: ''
message: '',
UserPw:undefined,
};
@ -85,5 +87,11 @@ export const authReducer = createReducer<AuthState, AuthAction>(initialState)
draft.userPage = data;
})
)
export const userPwReducer = createReducer<UserPwState, AuthAction>(initResponseUserPwPageData).handleAction(pwUpdateAction.success, (state, action) =>
produce(state, draft => {
const data: UserPw = action.payload;
draft.userPwPage = data;
})
)

27
src/modules/account/login/sagas/authSaga.ts

@ -20,6 +20,7 @@ import {
COOKIE_REFRESH_TOKEN
} from '../service/cookie';
import * as MessageActions from '../../../comn/message/actions/comnMessageAction';
function* userLoginSaga(action: ActionType<typeof Actions.login.request>) {
const param = action.payload;
try {
@ -150,9 +151,29 @@ function* userPwSaga(
const param = action.payload;
try{
const { data,errorCode } = yield call(authAPI.pwupdate, param);
yield put(Actions.pwUpdateAction.success(data));
} catch (error) {
debugger
//yield put(Actions.pwUpdateAction.success(data));
console.log("saaa",data.errorCode);
if (data.errorCode==='-1') {
yield put(
MessageActions.IS_ERROR({
errorCode: ERROR_MESSAGE.code,
errorMessage: ERROR_MESSAGE.message,
isHistoryBack: false,
isRefresh: false
})
);
}
else{
yield put(
MessageActions.IS_MESSAGE({
messageCode: SAVE_MESSAGE.code,
message: SAVE_MESSAGE.message,
isHistoryBack: true,
isRefresh: true
})
);
}
} catch (error) {
yield put(
MessageActions.IS_ERROR({
errorCode: ERROR_MESSAGE.code,

2
src/modules/comn/message/reducers/comnMessageReducer.ts

@ -28,7 +28,7 @@ export const messageReducer = createReducer<
)
.handleAction(Actions.IS_ERROR, (state, action) =>
produce(state, draft => {
produce(state, draft => {
const { errorCode, errorMessage, isHistoryBack, isRefresh } =
action.payload;
draft.errorCode = errorCode;

3
src/redux/reducers/rootReducer.ts

@ -14,7 +14,7 @@ import { dronSaga } from '../../modules/basis/dron/sagas/basisDronSaga';
import { groupReducer } from '../../modules/basis/group/reducers/basisGroupReducer';
import { basGroupSaga } from '../../modules/basis/group/sagas/basisGroupSaga';
import { messageReducer } from '../../modules/comn/message/reducers/comnMessageReducer';
import { mypageReducer } from '../../modules/account/login/reducers/authReducer';
import { mypageReducer, userPwReducer } from '../../modules/account/login/reducers/authReducer';
import {
controlGpDtlReducer,
@ -66,6 +66,7 @@ const rootReducer = combineReducers({
authState: authReducer,
accountState: accountReducer,
UserPageState: mypageReducer,
UserPwState: userPwReducer,
controlGpState: controlGpReducer,
controlGpHisState: controlGpHisReducer,
controlGpLogState: controlGpLogReducer,

Loading…
Cancel
Save