diff --git a/index.html b/index.html index e4377ad..baf4a5c 100644 --- a/index.html +++ b/index.html @@ -4,10 +4,10 @@ Gachi Taxi - + >
diff --git a/src/components/chat/bottomMenu/index.tsx b/src/components/chat/bottomMenu/index.tsx index 5141bd0..031541d 100644 --- a/src/components/chat/bottomMenu/index.tsx +++ b/src/components/chat/bottomMenu/index.tsx @@ -1,6 +1,6 @@ import MenuItem from './MenuItem'; import { MENUITEMS } from '@/constants'; -import { useState } from 'react'; +import { useEffect, useState } from 'react'; import SendAccountModal from '../modal/sendAccountModal'; import CallTaxiModal from '@/components/modal/CallTaxiModal'; import { useModal } from '@/contexts/ModalContext'; @@ -15,7 +15,8 @@ import getExitChatRoom from '@/libs/apis/getExitChatRoom'; import useSSEStore from '@/store/useSSEStore'; import useUserStore from '@/store/useUserStore'; import useChattingRoomIdStore from '@/store/useChattingRoomId'; -import exitManualMatchingRoom from '@/libs/apis/manual/exitManualMatchingRoom.api'; +import { MessagesArray } from 'gachTaxi-types'; +//import exitManualMatchingRoom from '@/libs/apis/manual/exitManualMatchingRoom.api'; const BottomMenu = ({ onSendAccount, @@ -35,13 +36,26 @@ const BottomMenu = ({ const { user } = useUserStore(); const { setChattingRoomId } = useChattingRoomIdStore(); const accountNumber = user?.accountNumber || '계좌번호 없음'; + const { reset } = useTimerStore.getState(); + console.log(user?.userId); + console.log(isOwner); - messages.forEach((eventMessage) => { - if (eventMessage.message.topic === 'match_room_created') { - const userId = localStorage.getItem('userId'); - setIsOwner(userId === String(eventMessage.message.roomMasterId)); + useEffect(() => { + if (messages) { + const eventMessage: MessagesArray | undefined = messages.find( + (event) => event.message.topic === 'match_room_created', + ); + + if ( + eventMessage && + eventMessage.message.topic === 'match_room_created' && + user + ) { + console.log(eventMessage); + setIsOwner(user.userId === eventMessage.message.roomMasterId); + } } - }); + }, [messages, user]); const handleSendClick = () => { if (!user?.accountNumber) { @@ -57,16 +71,16 @@ const BottomMenu = ({ const handleExitClick = async () => { try { - const { reset } = useTimerStore.getState(); - const [res, closeRes, closeManual] = await Promise.all([ + const [res1, res2] = await Promise.all([ getExitChatRoom(roomId), getCloseMatching(roomId), - exitManualMatchingRoom(roomId), + // exitManualMatchingRoom(roomId), ]); if ( - res.chatExit.code === 200 && - closeRes.matchingExit.code === 200 && - closeManual.code === 200 + res1.code >= 200 && + res1.code < 300 && + res2.code >= 200 && + res2.code < 300 ) { closeModal(); reset(); diff --git a/src/components/commons/BackButton.tsx b/src/components/commons/BackButton.tsx index b889e91..e495458 100644 --- a/src/components/commons/BackButton.tsx +++ b/src/components/commons/BackButton.tsx @@ -12,6 +12,8 @@ const BackButton = ({ usedPage }: BackButtonProps) => { const handleBack = () => { if (usedPage === 'signUpPage') { navigate('/'); + } else if (usedPage === 'chat') { + navigate('/home'); } else { navigate(-1); } diff --git a/src/libs/apis/getCloseMatching.api.ts b/src/libs/apis/getCloseMatching.api.ts index 846eb04..e6312ca 100644 --- a/src/libs/apis/getCloseMatching.api.ts +++ b/src/libs/apis/getCloseMatching.api.ts @@ -5,10 +5,7 @@ export const getCloseMatching = async (roomId: number) => { const res = await client.post(`/api/matching/auto/cancel`, { roomId, }); - console.log(res); - return { - matchingExit: res.data, - }; + return res.data; } catch (error) { throw new Error(`Error in handleExitMatch: ${error}`); } diff --git a/src/libs/apis/getExitChatRoom.ts b/src/libs/apis/getExitChatRoom.ts index a155ddd..ca7d176 100644 --- a/src/libs/apis/getExitChatRoom.ts +++ b/src/libs/apis/getExitChatRoom.ts @@ -2,10 +2,8 @@ import client from './clients'; const getExitChatRoom = async (roomId: number) => { try { - const chatExitResponse = await client.delete(`/api/chat/${roomId}`); - return { - chatExit: chatExitResponse.data, - }; + const res = await client.delete(`/api/chat/${roomId}`); + return res.data; } catch (error) { throw new Error(`Error get handleExitChatRoom: ${error}`); } diff --git a/src/pages/chat/index.tsx b/src/pages/chat/index.tsx index 2cfbd06..1f9e7a4 100644 --- a/src/pages/chat/index.tsx +++ b/src/pages/chat/index.tsx @@ -13,7 +13,7 @@ const ChatPage = () => { return (
- +

채팅방