dev #755

Merged
ysCha merged 2 commits from dev into dev-deploy 2026-04-03 13:36:03 +09:00
3 changed files with 42 additions and 1 deletions

View File

@ -3,6 +3,7 @@
import { useState } from 'react'
import { useMessage } from '@/hooks/useMessage'
import { setSession, login } from '@/lib/authActions'
import Cookies from 'js-cookie'
import { sessionStore } from '@/store/commonAtom'
import { useRecoilState } from 'recoil'
import { useAxios } from '@/hooks/useAxios'
@ -31,6 +32,7 @@ export default function AutoLoginPage({ autoLoginParam }) {
setIsLoading(false)
if (response.data) {
const res = response.data
if (res.sessionId) Cookies.set('sessionId', res.sessionId)
const result = { ...res, storeLvl: res.groupId === '60000' ? '1' : '2', pwdInitYn: 'Y' }
setSession(result)
setSessionState(result)

View File

@ -48,6 +48,7 @@ export default function Login() {
post({ url: '/api/login/v1.0/user', data: { loginId: res.data } }).then((response) => {
setIsLoading(false)
if (response) {
if (response.sessionId) Cookies.set('sessionId', response.sessionId)
const result = { ...response, storeLvl: response.groupId === '60000' ? '1' : '2', pwdInitYn: 'Y' }
setSession(result)
setSessionState(result)
@ -107,7 +108,7 @@ export default function Login() {
if (res) {
setIsLoading(false)
if (res.data.result.resultCode === 'S') {
Cookies.set('sessionId', res.data.sessionId)
if (res.data.sessionId) Cookies.set('sessionId', res.data.sessionId)
setSession(res.data.data)
setSessionState(res.data.data)
// ID SAVE ,

38
src/hooks/useLogout.js Normal file
View File

@ -0,0 +1,38 @@
import { useRecoilState, useRecoilValue } from 'recoil'
import { sessionStore } from '@/store/commonAtom'
import { globalLocaleStore } from '@/store/localeAtom'
import { stuffSearchState } from '@/store/stuffAtom'
import { useAxios } from '@/hooks/useAxios'
import { logout } from '@/lib/authActions'
import Cookies from 'js-cookie'
export function useLogout() {
const [sessionState] = useRecoilState(sessionStore)
const [stuffSearch, setStuffSearch] = useRecoilState(stuffSearchState)
const globalLocaleState = useRecoilValue(globalLocaleStore)
const { promisePost } = useAxios(globalLocaleState)
const logoutProcess = async () => {
const param = {
loginId: sessionState.userId,
requestId: Cookies.get('sessionId'),
}
await promisePost({ url: '/api/login/v1.0/logout', data: param })
.then(async (res) => {
if (res.data.result.resultCode === 'S') {
setStuffSearch({
...stuffSearch,
code: 'DELETE',
})
Cookies.remove('sessionId')
await logout()
window.location.href = '/login'
}
})
.catch((error) => {
alert(error.response?.data?.message || 'ログアウトに失敗しました。')
})
}
return { logoutProcess }
}