diff --git a/src/api/02_organizational/api.organization.ts b/src/api/02_organizational/api.organization.ts index 6405e8fb5..15007200c 100644 --- a/src/api/02_organizational/api.organization.ts +++ b/src/api/02_organizational/api.organization.ts @@ -184,4 +184,8 @@ export default { profilePermission: `${orgProfile}/keycloak/permissionProfile`, profileidPosition: (type: string) => `${orgProfile}${type}/profileid/position`, + + workflowCommanderOperate:`${workflow}/commander/operate`, + workflowCommanderSign:`${workflow}/commander/sign`, + }; diff --git a/src/api/09_leave/api.leave.ts b/src/api/09_leave/api.leave.ts index e290a261b..f07fdd30c 100644 --- a/src/api/09_leave/api.leave.ts +++ b/src/api/09_leave/api.leave.ts @@ -49,4 +49,8 @@ export default { leaveReportLeavedayRetire: () => `${leaveReport}/leavedayRetire`, leaveReportLeave2: (type: string) => `${leaveReport}/leave2/${type}`, + + addApproverByType:(type:string,profileType:string,id:string)=>`${leave}/${profileType}/add-approver/${type}/${id}`, + sendApprove:(id:string)=>`${leave}/admin/approve/officer/${id}` + }; diff --git a/src/modules/09_leave/components/05_Leave/DetailLeavePage.vue b/src/modules/09_leave/components/05_Leave/DetailLeavePage.vue index 667fe49ea..78dbd26fa 100644 --- a/src/modules/09_leave/components/05_Leave/DetailLeavePage.vue +++ b/src/modules/09_leave/components/05_Leave/DetailLeavePage.vue @@ -1,7 +1,7 @@ @@ -762,31 +918,113 @@ onMounted(async () => {
ความคิดเห็นของผู้บังคับบัญชา
+ + เพิ่มรายชื่อผู้บังคับบัญชา + - ความคิดเห็นของผู้บังคับบัญชา -
+
+ + + -
-
-
-
- {{ formData.reasonCommander }} -
-
-
+ + +
@@ -800,6 +1038,18 @@ onMounted(async () => {
ความคิดเห็นของผู้มีอำนาจ
+ + เพิ่มรายชื่อผู้มีอำนาจ + @@ -807,7 +1057,10 @@ onMounted(async () => { class="row q-gutter-sm" v-if=" checkPermission($route)?.attrIsUpdate && - formData.reasonOligarch === '-' + formData.reasonOligarch === '-' && + rows && + rows.approvers[0]?.profileId == keycloakId && + approveCheck " > {
+
+
+ ชื่อ - นามสกุล +
+
+ {{ + rows && rows.approvers[0]?.firstName + ? `${rows?.approvers[0].prefix}${rows?.approvers[0].firstName} ${rows?.approvers[0].lastName}` + : "-" + }} +
+
+
+
+ ตำแหน่ง +
+ +
+ {{ + rows && rows.approvers[0]?.positionName + ? rows?.approvers[0].positionName + : "-" + }} +
+
ผลการพิจารณา @@ -930,6 +1208,16 @@ onMounted(async () => { >อนุมัติ
--> + + + + ส่งไปอนุมัติ +
@@ -939,4 +1227,12 @@ onMounted(async () => { :label="dialogLabel" :savaForm="clickSave" /> + + diff --git a/src/modules/09_leave/components/05_Leave/Dialog/DialogAddCommander.vue b/src/modules/09_leave/components/05_Leave/Dialog/DialogAddCommander.vue new file mode 100644 index 000000000..95b7775eb --- /dev/null +++ b/src/modules/09_leave/components/05_Leave/Dialog/DialogAddCommander.vue @@ -0,0 +1,323 @@ + + diff --git a/src/modules/09_leave/interface/response/leave.ts b/src/modules/09_leave/interface/response/leave.ts index bc8a54ed2..ee2a84858 100644 --- a/src/modules/09_leave/interface/response/leave.ts +++ b/src/modules/09_leave/interface/response/leave.ts @@ -34,6 +34,21 @@ interface FormData { status: string; } +interface RowsType{ + commanders:SeqTypeRow[] + approvers:SeqTypeRow[] +} +interface SeqTypeRow { + seq: number; + prefix: string; + firstName: string; + lastName: string; + positionName: string; + profileId: string; + keycloakId: string; + approveStatus: string; + comment: string; +} interface DataDateMonthObject { month: number; year: number; @@ -87,4 +102,6 @@ export type { LeaveType, FormReject, ResCalendar, + SeqTypeRow, + RowsType };