Skip to content

Commit

Permalink
feat: 전역변수 설정중
Browse files Browse the repository at this point in the history
  • Loading branch information
zzzzzuuuuu committed Aug 23, 2024
1 parent 373adb3 commit ca71bf5
Show file tree
Hide file tree
Showing 7 changed files with 88 additions and 22 deletions.
3 changes: 1 addition & 2 deletions src/components/management/member/Members.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,8 @@ export const Members = () => {

const fetchMembers = async () => {
try {
const response = await getMembers(1);
const response = await getMembers(teamId);
setMembers(Array.isArray(response) ? response : []);
// console.log(response);
} catch (error) {
console.error('Error fetching members:', error);
}
Expand Down
8 changes: 5 additions & 3 deletions src/components/management/schedule/AddSchedule.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,14 @@ interface AddScheduleProps {
onSubmit: (schedule: ScheduleDto | null) => void;
initialSchedules?: ScheduleDto | null;
isScheduled: boolean;
teamId: number;
}

export const AddSchedule = ({
onSubmit,
initialSchedules,
isScheduled
isScheduled,
teamId
}: AddScheduleProps) => {
// 요일별로 시간 지정
const [weeklyTimes, setWeeklyTimes] = useState<DayTimeSlots>({
Expand Down Expand Up @@ -126,7 +128,7 @@ export const AddSchedule = ({
sunday: { value: convertTimeSlotToTimeTable(weeklyTimes.Sunday) }
};

const response = await createSchedule(1, requestBody);
const response = await createSchedule(teamId, requestBody);
onSubmit(response.scheduleDto);
} else if (initialSchedules && isEmpty) {
await deleteSchedule(31); // 아이디 값 변경하기
Expand All @@ -144,7 +146,7 @@ export const AddSchedule = ({
sunday: { value: convertTimeSlotToTimeTable(weeklyTimes.Sunday) }
};

const response = await updateSchedule(1, requestBody);
const response = await updateSchedule(teamId, requestBody);
onSubmit(response.scheduleDto);
}
} catch (error) {
Expand Down
9 changes: 7 additions & 2 deletions src/components/management/schedule/Schedule.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,14 @@ import { MemberTypes } from '../../../types/member.ts';
interface ScheduleProps {
onAddSchedule: () => void;
isScheduled: boolean;
teamId: number;
}

export const Schedule = ({ onAddSchedule, isScheduled }: ScheduleProps) => {
export const Schedule = ({
onAddSchedule,
isScheduled,
teamId
}: ScheduleProps) => {
const [members, setMembers] = useState<MemberTypes[]>([]);
const [isSubmitted, setIsSubmitted] = useState<boolean>(false);
const [isOpened, setIsOpened] = useState<boolean>(false);
Expand All @@ -24,7 +29,7 @@ export const Schedule = ({ onAddSchedule, isScheduled }: ScheduleProps) => {
const addBtnRef = useRef<HTMLDivElement>(null);

const fetchMembers = async () => {
const response = await getMembers(1);
const response = await getMembers(teamId);
setMembers(response);
setSelectedPeople(
response.map((member: MemberTypes) => member.teamManageId)
Expand Down
9 changes: 5 additions & 4 deletions src/components/management/team-code/TeamCode.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@ export const TeamCode = ({
imageUrl,
tagList,
onTeamNameChange,
refreshTeamData
refreshTeamData,
teamId
}: TeamCodeProps) => {
const [profileImage, setProfileImage] = useState<string | null>(
imageUrl || null
Expand All @@ -44,7 +45,7 @@ export const TeamCode = ({
// 태그 수정 시 호출됨
const handleTagUpdate = async (tagId: number, newName: string) => {
try {
await updateTag(1, tagId, newName);
await updateTag(teamId, tagId, newName);
refreshTeamData();
} catch (error) {
console.error(error);
Expand All @@ -67,7 +68,7 @@ export const TeamCode = ({
const file = e.target.files?.[0];
if (file) {
try {
const response = await updateProfile(1, title, file);
const response = await updateProfile(teamId, title, file);

if (response?.result?.team?.imageUrl) {
setProfileImage(response.result.team.imageUrl);
Expand Down Expand Up @@ -95,7 +96,7 @@ export const TeamCode = ({
try {
// 팀 이름 수정
await updateProfile(
1,
teamId,
teamName,
fileInputRef.current?.files?.[0] || null
);
Expand Down
29 changes: 27 additions & 2 deletions src/components/sidebar/SideBar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ import Alarm from '@components/alarm/alarm';
import { useGetAlarmList } from '@hooks/alarm/useGetAlarmList';
import { getMyTeam } from '@apis/management.ts';
import { TeamProps } from '../../types/management.ts';
import { useIdStore } from '@store/idStore.ts';
import { syncTodos } from '@utils/todoUtils.ts';

export const SideBar = () => {
const [teams, setTeams] = useState<TeamProps[]>([]);
Expand All @@ -34,6 +36,27 @@ export const SideBar = () => {
const navigate = useNavigate();
const location = useLocation();

const { data, isLoading, isError } = useGetAlarmList(
Number(localStorage.getItem('teamId')) || null
);

const { teamId, setTeamId } = useIdStore((state) => ({
teamId: state.teamId,
setTeamId: state.setTeamId
}));

const getTeamId = () => {
const id = localStorage.getItem('teamId');
setTeamId(Number(id));
};

useEffect(() => {
getTeamId();
}, [teamId]);

if (isLoading) {
return null;
}
const teamId = Number(localStorage.getItem('teamId'));
const { result } = teamId && useGetAlarmList(teamId);

Expand All @@ -60,7 +83,9 @@ export const SideBar = () => {
setTeams(response);

// 현재 속한 팀 아이디에 해당하는 팀을 찾음
const foundTeam = response.find((team: TeamProps) => team.teamId === 1);
const foundTeam = response.find(
(team: TeamProps) => team.teamId === teamId
);
if (foundTeam) {
setCurrentTeam(foundTeam);
}
Expand Down Expand Up @@ -126,7 +151,7 @@ export const SideBar = () => {
{isAlarmOpen ? <BellClick /> : <Bell />}
{hover && <SideBarText selected={isAlarmOpen}>알림</SideBarText>}
<Alarm
data={result?.alarmList}
data={data?.result.alarmList}
isAlarmOpen={isAlarmOpen}
toggleAlarm={toggleAlarm}
setHover={setHover}
Expand Down
33 changes: 25 additions & 8 deletions src/pages/management/management.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import { ShowSchedule } from '@components/management/schedule/ShowSchedule.tsx';
import { NoSchedule } from '@components/management/schedule/NoSchedule.tsx';
import { getMySchedules, getSchedules, getTeamData } from '@apis/management.ts';
import { ScheduleDto, TeamData, TeamTag } from '../../types/management.ts';
import { useIdStore } from '@store/idStore.ts';

export const ManagementPage = () => {
const [showAddSchedule, setShowAddSchedule] = useState<boolean>(false);
Expand All @@ -18,6 +19,21 @@ export const ManagementPage = () => {
const [teamData, setTeamData] = useState<TeamData | null>(null);
const [tags, setTags] = useState<TeamTag[]>([]);

const { teamId, setTeamId } = useIdStore((state) => ({
teamId: state.teamId,
setTeamId: state.setTeamId
}));
const getTeamId = () => {
const id = localStorage.getItem('teamId');
setTeamId(Number(id));
};

useEffect(() => {
getTeamId();
console.log(teamId);
console.log(getTeamId());
}, [teamId]);

const handleAddSchedule = () => {
setShowAddSchedule(true);
};
Expand All @@ -32,27 +48,23 @@ export const ManagementPage = () => {
await refreshTeamData(); // 스케줄 제출 후 데이터 갱신
};

useEffect(() => {
console.log('팀스케줄: ', schedules);
}, [schedules]);

const fetchTeamData = async () => {
const response = await getTeamData(1);
const response = await getTeamData(teamId);
setTeamData(response);
const newTags = response.teamTagList || [];
setTags(newTags);
};

// 팀 스케줄 조회
const fetchSchedules = async () => {
const response = await getSchedules(1);
const response = await getSchedules(teamId);
setSchedules(response.scheduleDto);
setIsScheduled(response.isScheduled);
};

// 내 스케줄 조회
const fetchMySchedules = async () => {
const response = await getMySchedules(1);
const response = await getMySchedules(teamId);
console.log('내스케줄 패치:', response);
setMySchedules(response);
};
Expand All @@ -79,6 +91,8 @@ export const ManagementPage = () => {
fetchData();
}, []);

console.log(teamId);

return (
<Container>
<TeamCode
Expand All @@ -88,13 +102,15 @@ export const ManagementPage = () => {
tagList={tags}
onTeamNameChange={handleTeamNameChange}
refreshTeamData={refreshTeamData}
teamId={teamId}
/>
<Members />
<Members teamId={teamId} />
{!showAddSchedule ? (
<>
<Schedule
onAddSchedule={handleAddSchedule}
isScheduled={isScheduled}
teamId={teamId}
/>
{schedules && Object.keys(schedules).length > 0 ? (
<ShowSchedule schedule={schedules} />
Expand All @@ -107,6 +123,7 @@ export const ManagementPage = () => {
onSubmit={handleScheduleSubmit}
initialSchedules={mySchedules && mySchedules}
isScheduled={isScheduled}
teamId={teamId}
/>
)}
</Container>
Expand Down
19 changes: 18 additions & 1 deletion src/pages/memo/memo.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,31 @@ import { AddMemoLarge } from '@components/memo/AddMemoLarge.tsx';
import { MemoList } from '@components/memo/MemoList.tsx';
import { useEffect, useState } from 'react';
import { getMemos } from '@apis/memo.ts';
import { useIdStore } from '@store/idStore.ts';

export const MemoPage = () => {
const [hasMemo, setHasMemo] = useState<boolean>(false);

const { teamId, setTeamId } = useIdStore((state) => ({
teamId: state.teamId,
setTeamId: state.setTeamId
}));

const getTeamId = () => {
const id = localStorage.getItem('teamId');
setTeamId(Number(id));
};

useEffect(() => {
getTeamId();
console.log(teamId);
}, [teamId]);
console.log(teamId);

useEffect(() => {
const fetchMemos = async () => {
try {
const response = await getMemos(1);
const response = await getMemos(teamId);
const memos = response.result.memoList;
setHasMemo(memos.length > 0);
} catch (error) {
Expand Down

0 comments on commit ca71bf5

Please sign in to comment.