diff --git a/src/components/TimesheetAmendment/TimesheetAmendment.tsx b/src/components/TimesheetAmendment/TimesheetAmendment.tsx index 9d1f5c2..c224486 100644 --- a/src/components/TimesheetAmendment/TimesheetAmendment.tsx +++ b/src/components/TimesheetAmendment/TimesheetAmendment.tsx @@ -51,6 +51,8 @@ export interface Props { companyHolidays: HolidaysResult[]; allProjects: ProjectWithTasks[]; miscTasks: Task[]; + isSaturdayWorker: boolean; + userId: number; } type MemberOption = TeamTimeSheets[0] & TeamLeaves[0] & { id: string }; @@ -79,6 +81,8 @@ const TimesheetAmendment: React.FC = ({ allProjects, leaveTypes, miscTasks, + isSaturdayWorker, + userId }) => { const { t, i18n:{language}} = useTranslation(["home", "common"]); const locale = language === "zh" ? "zh-tw" : "en"; @@ -121,12 +125,15 @@ const TimesheetAmendment: React.FC = ({ }, [localTeamLeaves, localTeamTimesheets]); const [selectedStaff, setSelectedStaff] = useState( - allMembers[0], + allMembers.find((member) => parseInt(member.id) === userId) ?? allMembers[0] ); useEffect(() => { + console.log(allMembers) + console.log(userId) setSelectedStaff( (currentStaff) => allMembers.find((member) => member.id === currentStaff.id) || + allMembers.find((member) => parseInt(member.id) === userId) || allMembers[0], ); }, [allMembers]); diff --git a/src/components/TimesheetAmendment/TimesheetAmendmentModal.tsx b/src/components/TimesheetAmendment/TimesheetAmendmentModal.tsx index 65725ed..0018419 100644 --- a/src/components/TimesheetAmendment/TimesheetAmendmentModal.tsx +++ b/src/components/TimesheetAmendment/TimesheetAmendmentModal.tsx @@ -38,6 +38,8 @@ export const TimesheetAmendmentModal: React.FC = ({ companyHolidays, allProjects, miscTasks, + isSaturdayWorker, + userId }) => { const { t } = useTranslation("home"); const isMobile = useIsMobile(); @@ -51,6 +53,8 @@ export const TimesheetAmendmentModal: React.FC = ({ teamTimesheets={teamTimesheets} allProjects={allProjects} miscTasks={miscTasks} + isSaturdayWorker={isSaturdayWorker} + userId={userId} /> ); diff --git a/src/components/UserWorkspacePage/UserWorkspacePage.tsx b/src/components/UserWorkspacePage/UserWorkspacePage.tsx index 80a233b..029129b 100644 --- a/src/components/UserWorkspacePage/UserWorkspacePage.tsx +++ b/src/components/UserWorkspacePage/UserWorkspacePage.tsx @@ -43,6 +43,8 @@ export interface Props { isFullTime: boolean; joinDate?: number | null; miscTasks: Task[]; + isSaturdayWorker: boolean; + userId: number; } const menuItemSx: SxProps = { @@ -65,6 +67,8 @@ const UserWorkspacePage: React.FC = ({ isFullTime, joinDate, miscTasks, + isSaturdayWorker, + userId }) => { const [anchorEl, setAnchorEl] = useState(null); @@ -234,6 +238,8 @@ const UserWorkspacePage: React.FC = ({ open={isTimesheetAmendmentVisible} onClose={handleAmendmentClose} miscTasks={miscTasks} + isSaturdayWorker={isSaturdayWorker} + userId={userId} /> )} diff --git a/src/components/UserWorkspacePage/UserWorkspaceWrapper.tsx b/src/components/UserWorkspacePage/UserWorkspaceWrapper.tsx index 1f82d8d..467863a 100644 --- a/src/components/UserWorkspacePage/UserWorkspaceWrapper.tsx +++ b/src/components/UserWorkspacePage/UserWorkspaceWrapper.tsx @@ -59,6 +59,10 @@ const UserWorkspaceWrapper: React.FC = async () => { const miscTasks = allTasks.filter((t) => t.taskGroup.id === 5); + const isSaturdayWorker = abilities.includes(SATURDAY_WORKERS) + + console.log(userStaff) + return ( { maintainManagementStaffWorkspaceAbility={ maintainManagementStaffWorkspaceAbility } + isSaturdayWorker={isSaturdayWorker} + userId={userStaff?.id} /> ); };