퇴근취소시에 탑바 셀렉트박스 바로 안따라옴

This commit is contained in:
nevermoregb 2025-04-10 21:12:41 +09:00
parent e75ca56f7d
commit 3d147076ef

View File

@ -14,7 +14,14 @@
{{ user.name }} {{ user.name }}
</p> </p>
<CommuterBtn :userId="user.id" :checkedInProject="checkedInProject || {}" ref="workTimeComponentRef" /> <CommuterBtn
ref="workTimeComponentRef"
:userId="user.id"
:checkedInProject="checkedInProject || {}"
:pendingProjectChange="pendingProjectChange"
@update:pendingProjectChange="pendingProjectChange = $event"
@leaveTimeUpdated="handleLeaveTimeUpdate"
/>
<MainEventList <MainEventList
:categoryList="categoryList" :categoryList="categoryList"
@ -99,6 +106,7 @@
const selectedProject = ref(null); const selectedProject = ref(null);
const checkedInProject = ref(null); const checkedInProject = ref(null);
const pendingProjectChange = ref(null);
// //
const showModal = ref(false); const showModal = ref(false);
@ -605,10 +613,48 @@
if (newProject) { if (newProject) {
selectedProject.value = newProject.PROJCTSEQ; selectedProject.value = newProject.PROJCTSEQ;
checkedInProject.value = newProject; checkedInProject.value = newProject;
} else {
selectedProject.value = null;
checkedInProject.value = null;
} }
}, },
); );
const handleLeaveTimeUpdate = async event => {
const memberSeq = user.value.id;
if (!memberSeq) return;
//
const { data } = await $api.post('main/getUserLeaveRecord', {
memberSeq: memberSeq,
});
const res = data?.data;
if (res && !res?.COMMUTLVE) {
await projectStore.getMemberProjects();
if (projectStore.activeMemberProjectList.length > 0) {
const previousProject =
projectStore.activeMemberProjectList.find(p => res.MEMBERSEQ === user.value.id && res.PROJCTLVE === p.PROJCTSEQ) ||
projectStore.activeMemberProjectList[0]; //
if (previousProject) {
selectedProject.value = previousProject.PROJCTSEQ;
projectStore.setSelectedProject(previousProject);
} else if (projectStore.activeProjectList.length > 0) {
selectedProject.value = projectStore.activeProjectList[0].PROJCTSEQ;
projectStore.setSelectedProject(projectStore.activeProjectList[0]);
} else {
selectedProject.value = null;
projectStore.setSelectedProject(null);
}
} else {
selectedProject.value = null;
projectStore.setSelectedProject(null);
}
}
};
onMounted(async () => { onMounted(async () => {
await userStore.userInfo(); await userStore.userInfo();
user.value = userStore.user; user.value = userStore.user;