퇴근취소시에 탑바 셀렉트박스 바로 안따라옴
This commit is contained in:
parent
e75ca56f7d
commit
3d147076ef
@ -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;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user