Skip to content
Snippets Groups Projects
Commit 918ab777 authored by 석찬 윤's avatar 석찬 윤
Browse files

fix: event전달 함수 누락 오류 해결

parent a9c5635f
No related branches found
No related tags found
1 merge request!57fix: event전달 함수 누락 오류 해결
Pipeline #11055 failed
......@@ -24,7 +24,7 @@ const cardVariants = cva(
export default function Card({
meeting,
theme = "black",
onClick,
onDetail,
onJoin,
onDelete,
onClose,
......@@ -55,7 +55,7 @@ export default function Card({
const deadlineTime = convertIndexToTime(time_idx_deadline);
return (
<div className={cn(variantClass)} onClick={onClick} role="button">
<div className={cn(variantClass)} onClick={onDetail}>
<h3 className="mb-2 text-xl font-bold">{title}</h3>
<Label size="sm" theme="black">
장소: {location}
......
......@@ -39,9 +39,9 @@ const CreateMeetingModal = ({ isOpen, onClose, onMeetingCreated }) => {
parseInt(minuteEnd)
);
const time_idx_deadline = convertTimeToIndex(
dayDeadline,
parseInt(hourDeadline),
parseInt(minuteDeadline)
dayStart,
parseInt(hourStart),
parseInt(minuteStart)
);
const meetingData = {
......@@ -202,46 +202,6 @@ const CreateMeetingModal = ({ isOpen, onClose, onMeetingCreated }) => {
</select>
</div>
</div>
<div>
<label className="block mb-2 font-semibold">
참가 마감 시간 (선택)
</label>
<div className="flex items-center gap-2">
<select
value={dayDeadline}
onChange={(e) => setDayDeadline(e.target.value)}
className="p-2 border rounded"
>
{days.map((day) => (
<option key={day} value={day}>
{day}
</option>
))}
</select>
<select
value={hourDeadline}
onChange={(e) => setHourDeadline(e.target.value)}
className="p-2 border rounded"
>
{hours.map((hour) => (
<option key={hour} value={hour}>
{hour}
</option>
))}
</select>
<select
value={minuteDeadline}
onChange={(e) => setMinuteDeadline(e.target.value)}
className="p-2 border rounded"
>
{minutes.map((minute) => (
<option key={minute} value={minute}>
{minute}
</option>
))}
</select>
</div>
</div>
<div>
<label className="block mb-2 font-semibold">최대 참가 인원</label>
<select
......
......@@ -112,13 +112,10 @@ const MeetingPage = () => {
alert("번개 모임에 성공적으로 참가했습니다!");
// 최신 데이터 다시 가져오기
if (activeTab === "all") {
const updatedData = await getAllMeetings(0, meetingPage * 20);
setMeetings(updatedData.content);
} else if (activeTab === "my") {
const updatedData = await getMyMeetings(0, myMeetingPage * 20);
setMyMeetings(updatedData.content);
}
const updatedAllMeetingData = await getAllMeetings(0, meetingPage * 20);
setMeetings(updatedAllMeetingData.content);
const updatedMyMeetingData = await getMyMeetings(0, myMeetingPage * 20);
setMyMeetings(updatedMyMeetingData.content);
} catch (error) {
alert("번개 모임 참가에 실패했습니다.");
console.error("Error joining meeting:", error);
......@@ -143,13 +140,10 @@ const MeetingPage = () => {
alert("번개 모임을 삭제했습니다!");
// 최신 데이터 다시 가져오기
if (activeTab === "all") {
const updatedData = await getAllMeetings(0, meetingPage * 20);
setMeetings(updatedData.content);
} else if (activeTab === "my") {
const updatedData = await getMyMeetings(0, myMeetingPage * 20);
setMyMeetings(updatedData.content);
}
const updatedAllMeetingData = await getAllMeetings(0, meetingPage * 20);
setMeetings(updatedAllMeetingData.content);
const updatedMyMeetingData = await getMyMeetings(0, myMeetingPage * 20);
setMyMeetings(updatedMyMeetingData.content);
} catch (error) {
alert("번개 모임 삭제에 실패했습니다.");
console.error("Error deleting meeting:", error);
......@@ -163,13 +157,10 @@ const MeetingPage = () => {
alert("번개 모임을 나갔습니다!");
// 최신 데이터 다시 가져오기
if (activeTab === "all") {
const updatedData = await getAllMeetings(0, meetingPage * 20);
setMeetings(updatedData.content);
} else if (activeTab === "my") {
const updatedData = await getMyMeetings(0, myMeetingPage * 20);
setMyMeetings(updatedData.content);
}
const updatedAllMeetingData = await getAllMeetings(0, meetingPage * 20);
setMeetings(updatedAllMeetingData.content);
const updatedMyMeetingData = await getMyMeetings(0, myMeetingPage * 20);
setMyMeetings(updatedMyMeetingData.content);
} catch (error) {
alert("번개 모임 나가기에 실패했습니다.");
console.error("Error leaving meeting:", error);
......@@ -183,13 +174,10 @@ const MeetingPage = () => {
alert("번개 모임을 마감했습니다!");
// 최신 데이터 다시 가져오기
if (activeTab === "all") {
const updatedData = await getAllMeetings(0, meetingPage * 20);
setMeetings(updatedData.content);
} else if (activeTab === "my") {
const updatedData = await getMyMeetings(0, myMeetingPage * 20);
setMyMeetings(updatedData.content);
}
const updatedAllMeetingData = await getAllMeetings(0, meetingPage * 20);
setMeetings(updatedAllMeetingData.content);
const updatedMyMeetingData = await getMyMeetings(0, myMeetingPage * 20);
setMyMeetings(updatedMyMeetingData.content);
} catch (error) {
alert("번개 모임 마감에 실패했습니다.");
console.error("Error closing meeting:", error);
......@@ -245,7 +233,7 @@ const MeetingPage = () => {
key={meeting.id}
meeting={meeting}
theme="white"
onClick={() => handleCardClick(meeting.id)}
onDetail={() => handleCardClick(meeting.id)}
onJoin={(e) => handleJoinButtonClick(e, meeting.id)}
onClose={(e) => handleCloseButtonClick(e, meeting.id)}
onDelete={(e) => handleDeleteButtonClick(e, meeting.id)}
......@@ -277,8 +265,11 @@ const MeetingPage = () => {
key={meeting.id}
meeting={meeting}
theme="white"
onClick={() => handleCardClick(meeting.id)}
onDetail={() => handleCardClick(meeting.id)}
onJoin={(e) => handleJoinButtonClick(e, meeting.id)}
onClose={(e) => handleCloseButtonClick(e, meeting.id)}
onDelete={(e) => handleDeleteButtonClick(e, meeting.id)}
onLeave={(e) => handleLeaveButtonClick(e, meeting.id)}
/>
))}
</div>
......
......@@ -121,22 +121,19 @@ const MyPage = () => {
const handleAcceptRequest = async (requesterId) => {
try {
await acceptFriendRequest(requesterId);
alert("친구 요청을 수락했습니다.");
// 받은 요청 상태 업데이트
setReceivedRequests((prev) =>
prev.filter((request) => request.requester.id !== requesterId)
);
setIsLoading(true);
const response = await getAllFriends(page, 10);
const content = Array.isArray(response?.content) ? response.content : [];
const nextPage = response?.hasNext ?? false;
setFriends((prev) => [...prev, ...content]);
setHasNext(nextPage);
setPage((prev) => prev + 1);
// 친구 목록 동기화
const response = await getAllFriends(0, (page + 1) * 10);
setFriends(response.content);
setHasNext(response.hasNext);
} catch (error) {
console.error("Failed to accept request:", error);
} finally {
setIsLoading(false);
}
};
......@@ -144,9 +141,17 @@ const MyPage = () => {
const handleRejectRequest = async (requesterId) => {
try {
await rejectFriendRequest(requesterId);
alert("친구 요청을 거절했습니다.");
// 받은 요청 상태 업데이트
setReceivedRequests((prev) =>
prev.filter((request) => request.requester.id !== requesterId)
);
// 친구 목록 동기화
const response = await getAllFriends(0, (page + 1) * 10);
setFriends(response.content);
setHasNext(response.hasNext);
} catch (error) {
console.error("Failed to reject request:", error);
}
......@@ -156,10 +161,12 @@ const MyPage = () => {
const handleDeleteFriend = async (friendId) => {
try {
await deleteFriend(friendId);
setFriends((prev) =>
prev.filter((friend) => friend.friendInfo.id !== friendId)
);
alert("성공적으로 삭제되었습니다.");
alert("친구를 삭제했습니다.");
// 친구 목록 동기화
const response = await getAllFriends(0, (page + 1) * 10);
setFriends(response.content);
setHasNext(response.hasNext);
} catch (error) {
console.error("Failed to delete friend:", error);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment