ปรับยกเลิกการลา
This commit is contained in:
parent
818f9d7723
commit
cab7450748
2 changed files with 63 additions and 43 deletions
|
|
@ -1125,8 +1125,11 @@ onMounted(async () => {
|
|||
</div>
|
||||
<div class="col-12 text-detail">
|
||||
{{
|
||||
formData.reasonOligarch !== "-"
|
||||
? formData.status
|
||||
rows && rows.approvers[0]?.approveStatus == "APPROVE"
|
||||
? "อนุญาต"
|
||||
: rows &&
|
||||
rows.approvers[0]?.approveStatus == "REJECT"
|
||||
? "ไม่อนุญาต"
|
||||
: "-"
|
||||
}}
|
||||
</div>
|
||||
|
|
@ -1137,7 +1140,7 @@ onMounted(async () => {
|
|||
</div>
|
||||
|
||||
<div class="col-12 text-detail">
|
||||
{{ formData.reasonOligarch }}
|
||||
{{ formData.reasonOligarch ?? "-" }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,13 +8,11 @@ import config from "@/app.config";
|
|||
import genReport from "@/plugins/genreport";
|
||||
import { useCounterMixin } from "@/stores/mixin";
|
||||
import { useLeavelistDataStore } from "@/modules/09_leave/stores/LeaveStore";
|
||||
import { checkPermission } from "@/utils/permissions";
|
||||
|
||||
/** importType */
|
||||
import type {
|
||||
LeaveType,
|
||||
FormReject,
|
||||
SeqTypeRow,
|
||||
RowsType,
|
||||
} from "@/modules/09_leave/interface/response/leave";
|
||||
import type { FremData } from "@/modules/09_leave/interface/request/leave";
|
||||
|
|
@ -33,7 +31,6 @@ import FormLeaveToTraining from "@/modules/09_leave/components/05_Leave/formDeta
|
|||
import FormLeaveToWorkInternational from "@/modules/09_leave/components/05_Leave/formDetail/formLeaveToWorkInternational.vue"; // ลาไปปฏิบัติงานในองค์การระหว่างประเทศ
|
||||
import FormSpouse from "@/modules/09_leave/components/05_Leave/formDetail/formSpouse.vue"; // ลาติดตามคู่สมรส
|
||||
import FormVocationalRehabilitation from "@/modules/09_leave/components/05_Leave/formDetail/formVocationalRehabilitation.vue"; //ลาไปฟื้นฟูสมรรถภาพด้านอาชีพ
|
||||
import WorkFlow from "@/components/Workflow/Main.vue";
|
||||
|
||||
/** use */
|
||||
const $q = useQuasar();
|
||||
|
|
@ -54,8 +51,7 @@ const paramsId = route.params.id.toString();
|
|||
const typeDocx = ref<string>("docx");
|
||||
const typePdf = ref<string>("pdf");
|
||||
const modalApprove = ref(false);
|
||||
const dialogTitleUnapprove = ref<string>("ไม่อนุมัติ");
|
||||
const dialogTitle = ref<string>("อนุมัติ");
|
||||
const dialogTitle = ref<string>("อนุญาต");
|
||||
|
||||
/** ฟังก์ชั่น อัปโหลด
|
||||
* consolelog ไว้ก่อน
|
||||
|
|
@ -364,11 +360,11 @@ function checkLeaveType(leaveTypeId: string, leaveTypeName: string) {
|
|||
const openModal = async (data: string) => {
|
||||
if (data === "approve") {
|
||||
modalApprove.value = true;
|
||||
dialogTitle.value = "อนุมัติการยกเลิก";
|
||||
dialogTitle.value = "อนุญาตให้ยกเลิกการลา";
|
||||
}
|
||||
if (data === "UnApprove") {
|
||||
modalApprove.value = true;
|
||||
dialogTitle.value = "ไม่อนุมัติการยกเลิก";
|
||||
dialogTitle.value = "ไม่อนุญาตให้ยกเลิกการลา";
|
||||
}
|
||||
};
|
||||
|
||||
|
|
@ -377,10 +373,11 @@ function clickSave(reason: string) {
|
|||
const body = {
|
||||
reason: reason,
|
||||
};
|
||||
if (dialogTitle.value === "อนุมัติการยกเลิก") {
|
||||
if (dialogTitle.value === "อนุญาตให้ยกเลิกการลา") {
|
||||
dialogConfirm(
|
||||
$q,
|
||||
async () => {
|
||||
showLoader();
|
||||
await http
|
||||
.put(config.API.leaveDeleteApprove(formDataReject.id), body)
|
||||
.then(() => {
|
||||
|
|
@ -392,16 +389,18 @@ function clickSave(reason: string) {
|
|||
.finally(async () => {
|
||||
await fetchDetailDeleteLeave(paramsId);
|
||||
modalApprove.value = false;
|
||||
hideLoader();
|
||||
});
|
||||
},
|
||||
"ยืนยันการอนุมัติการยกเลิก",
|
||||
"ต้องการยืนยันการอนุมัติการยกเลิกใช่หรือไม่ ?"
|
||||
"ยืนยันการพิจารณา",
|
||||
"ต้องการยืนยันการพิจารณานี้ใช่หรือไม่?"
|
||||
);
|
||||
}
|
||||
if (dialogTitle.value === "ไม่อนุมัติการยกเลิก") {
|
||||
if (dialogTitle.value === "ไม่อนุญาตให้ยกเลิกการลา") {
|
||||
dialogConfirm(
|
||||
$q,
|
||||
async () => {
|
||||
showLoader();
|
||||
await http
|
||||
.put(config.API.leaveDeleteReject(formDataReject.id), body)
|
||||
.then(() => {
|
||||
|
|
@ -413,10 +412,11 @@ function clickSave(reason: string) {
|
|||
.finally(async () => {
|
||||
await fetchDetailDeleteLeave(paramsId);
|
||||
modalApprove.value = false;
|
||||
hideLoader();
|
||||
});
|
||||
},
|
||||
"ยืนยันไม่อนุมัติการยกเลิก",
|
||||
"ต้องการยืนยันไม่อนุมัติการยกเลิกใช่หรือไม่ ?"
|
||||
"ยืนยันการพิจารณา",
|
||||
"ต้องการยืนยันการพิจารณานี้ใช่หรือไม่?"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -720,10 +720,7 @@ async function checkOfficer() {
|
|||
</div>
|
||||
|
||||
<!-- ความคิดเห็นของผู้มีอำนาจ -->
|
||||
<div
|
||||
class="col-xs-12 col-sm-12 row"
|
||||
v-if="formDataReject.status !== 'NEW'"
|
||||
>
|
||||
<div class="col-xs-12 col-sm-12 row">
|
||||
<q-card bordered class="row col-12 text-dark q-mt-sm">
|
||||
<div
|
||||
class="bg-grey-1 q-pa-sm col-12 row items-center text-primary"
|
||||
|
|
@ -735,12 +732,42 @@ async function checkOfficer() {
|
|||
<q-separator />
|
||||
<div class="row col-12 q-pa-md">
|
||||
<div class="col-12 row bg-white q-col-gutter-md">
|
||||
<div class="col-xs-6 row items-start">
|
||||
<div class="col-12 text-weight-bold text-top">
|
||||
ชื่อ - นามสกุล
|
||||
</div>
|
||||
<div class="col-12 text-detail">
|
||||
{{
|
||||
rows && rows.approvers[0]?.firstName
|
||||
? `${rows?.approvers[0].prefix}${rows?.approvers[0].firstName} ${rows?.approvers[0].lastName}`
|
||||
: "-"
|
||||
}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-6 row items-start">
|
||||
<div class="col-12 text-weight-bold text-top">
|
||||
ตำแหน่ง
|
||||
</div>
|
||||
|
||||
<div class="col-12 text-detail">
|
||||
{{
|
||||
rows && rows.approvers[0]?.positionName
|
||||
? rows?.approvers[0].positionName
|
||||
: "-"
|
||||
}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-6 row items-start">
|
||||
<div class="col-12 text-weight-bold text-top">
|
||||
ผลการพิจารณา
|
||||
</div>
|
||||
<div class="col-12 text-detail">
|
||||
{{ stores.convertSatatus(formDataReject.status) }}
|
||||
{{
|
||||
formDataReject.status == "NEW"
|
||||
? "-"
|
||||
: stores.convertSatatus(formDataReject.status)
|
||||
}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-6 row items-start">
|
||||
|
|
@ -748,7 +775,11 @@ async function checkOfficer() {
|
|||
ความคิดเห็น
|
||||
</div>
|
||||
<div class="col-12 text-detail">
|
||||
{{ formDataReject.leaveReasonDelete }}
|
||||
{{
|
||||
formDataReject.status == "NEW"
|
||||
? "-"
|
||||
: formDataReject.leaveReasonDelete
|
||||
}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -771,39 +802,25 @@ async function checkOfficer() {
|
|||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
<q-separator
|
||||
v-if="
|
||||
checkPermission($route)?.attrIsUpdate &&
|
||||
statusCheck == 'NEW' &&
|
||||
(isOfficer || isStaff)
|
||||
"
|
||||
/>
|
||||
<q-separator v-if="formDataReject.status == 'NEW'" />
|
||||
<div
|
||||
class="row q-pa-md q-gutter-md justify-end"
|
||||
v-if="statusCheck == 'NEW' && (isOfficer || isStaff)"
|
||||
class="row q-pa-md q-gutter-sm justify-end"
|
||||
v-if="formDataReject.status == 'NEW'"
|
||||
>
|
||||
<q-btn
|
||||
v-if="
|
||||
formDataReject.status === 'NEW' &&
|
||||
checkPermission($route)?.attrIsUpdate
|
||||
"
|
||||
unelevated
|
||||
:disable="rows?.approvers.length == 0 || rows?.commanders.length == 0"
|
||||
color="orange-5"
|
||||
label="ไม่อนุมัติการยกเลิก"
|
||||
label="ไม่อนุญาต"
|
||||
@click="openModal('UnApprove')"
|
||||
><q-tooltip>ไม่อนุมัติการยกเลิก</q-tooltip>
|
||||
><q-tooltip>ไม่อนุญาตให้ทำการยกเลิก</q-tooltip>
|
||||
</q-btn>
|
||||
<q-btn
|
||||
v-if="
|
||||
formDataReject.status === 'NEW' &&
|
||||
checkPermission($route)?.attrIsUpdate
|
||||
"
|
||||
unelevated
|
||||
color="primary"
|
||||
label="อนุมัติการยกเลิก"
|
||||
label="อนุญาต"
|
||||
@click="openModal('approve')"
|
||||
><q-tooltip>อนุมัติการยกเลิก</q-tooltip>
|
||||
><q-tooltip>อนุญาตให้ทำการยกเลิก</q-tooltip>
|
||||
</q-btn>
|
||||
</div>
|
||||
</q-card>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue