ปรับ dialog บรรจุ
This commit is contained in:
parent
508fb3b02b
commit
1881aa1b2f
23 changed files with 1064 additions and 1072 deletions
|
|
@ -9,7 +9,14 @@ import config from "@/app.config";
|
|||
|
||||
const $q = useQuasar();
|
||||
const mixin = useCounterMixin(); //เรียกฟังก์ชันกลาง
|
||||
const { date2Thai, hideLoader, messageError, showLoader, success } = mixin; //ฟังก์ชันกลางที่เรียกใช้
|
||||
const {
|
||||
date2Thai,
|
||||
hideLoader,
|
||||
messageError,
|
||||
showLoader,
|
||||
success,
|
||||
dialogConfirm,
|
||||
} = mixin; //ฟังก์ชันกลางที่เรียกใช้
|
||||
|
||||
const notFound = ref<string>("ไม่พบข้อมูลที่ค้นหา");
|
||||
const noData = ref<string>("ไม่พบข้อมูลผังโครงสร้าง");
|
||||
|
|
@ -204,16 +211,21 @@ const clickEditRow = () => {
|
|||
|
||||
const closeModal = () => {
|
||||
if (editDataStatus.value == true) {
|
||||
$q.dialog({
|
||||
title: `ข้อมูลมีการแก้ไข`,
|
||||
message: `ยืนยันที่จะปิดโดยไม่บันทึกใช่หรือไม่?`,
|
||||
cancel: "ยกเลิก",
|
||||
ok: "ยืนยัน",
|
||||
persistent: true,
|
||||
}).onOk(() => {
|
||||
editDataStatus.value = false;
|
||||
closeAndClear();
|
||||
});
|
||||
dialogConfirm(
|
||||
$q,
|
||||
() => closeAndClear(),
|
||||
"ข้อมูลมีการแก้ไข",
|
||||
"ยืนยันที่จะปิดโดยไม่บันทึกใช่หรือไม่"
|
||||
);
|
||||
// $q.dialog({
|
||||
// title: `ข้อมูลมีการแก้ไข`,
|
||||
// message: `ยืนยันที่จะปิดโดยไม่บันทึกใช่หรือไม่?`,
|
||||
// cancel: "ยกเลิก",
|
||||
// ok: "ยืนยัน",
|
||||
// persistent: true,
|
||||
// }).onOk(() => {
|
||||
// closeAndClear();
|
||||
// });
|
||||
} else {
|
||||
closeAndClear();
|
||||
}
|
||||
|
|
@ -234,6 +246,7 @@ const closeAndClear = async () => {
|
|||
// dataForm.salaryAmount = null;
|
||||
// dataForm.mouthSalaryAmount = null;
|
||||
// dataForm.positionSalaryAmount = null;
|
||||
editDataStatus.value = false;
|
||||
};
|
||||
// ตำแหน่งเลขที่
|
||||
const posNoOptions = ref<Object[]>([
|
||||
|
|
@ -431,32 +444,53 @@ function findByPerson(element: any): any {
|
|||
return null;
|
||||
}
|
||||
const clearPosition = () => {
|
||||
console.log(personal.value);
|
||||
$q.dialog({
|
||||
title: "ยืนยันการคืนตำแหน่ง",
|
||||
message: "ต้องการยืนยันการคืนตำแหน่งนี้ใช่หรือไม่ ?",
|
||||
cancel: {
|
||||
flat: true,
|
||||
const: "negative",
|
||||
},
|
||||
persistent: true,
|
||||
})
|
||||
.onOk(async () => {
|
||||
showLoader();
|
||||
await http
|
||||
.post(config.API.clearPosition(personal.value.personalId), {})
|
||||
.then((res: Object) => success($q, "คืนตำแหน่งสำเร็จ"))
|
||||
|
||||
.catch((e: Object) => {
|
||||
console.log(e);
|
||||
})
|
||||
.finally(async () => {
|
||||
hideLoader();
|
||||
await closeAndClear();
|
||||
});
|
||||
// console.log(personal.value);
|
||||
dialogConfirm(
|
||||
$q,
|
||||
async () => postClearPosition(),
|
||||
"ยืนยันการคืนตำแหน่ง",
|
||||
"ต้องการยืนยันการคืนตำแหน่งนี้ใช่หรือไม่ ?"
|
||||
);
|
||||
// $q.dialog({
|
||||
// title: "ยืนยันการคืนตำแหน่ง",
|
||||
// message: "ต้องการยืนยันการคืนตำแหน่งนี้ใช่หรือไม่ ?",
|
||||
// cancel: {
|
||||
// flat: true,
|
||||
// const: "negative",
|
||||
// },
|
||||
// persistent: true,
|
||||
// })
|
||||
// .onOk(async () => {
|
||||
// showLoader();
|
||||
// await http
|
||||
// .post(config.API.clearPosition(personal.value.personalId), {})
|
||||
// .then((res: Object) => success($q, "คืนตำแหน่งสำเร็จ"))
|
||||
// .catch((e: Object) => {
|
||||
// console.log(e);
|
||||
// })
|
||||
// .finally(async () => {
|
||||
// hideLoader();
|
||||
// await closeAndClear();
|
||||
// });
|
||||
// })
|
||||
// .onCancel(() => {})
|
||||
// .onDismiss(() => {});
|
||||
};
|
||||
const postClearPosition = async () => {
|
||||
showLoader();
|
||||
await http
|
||||
.post(config.API.clearPosition(personal.value.personalId), {})
|
||||
.then(() => {
|
||||
success($q, "คืนตำแหน่งสำเร็จ");
|
||||
})
|
||||
.onCancel(() => {})
|
||||
.onDismiss(() => {});
|
||||
|
||||
.catch((e: Object) => {
|
||||
console.log(e);
|
||||
})
|
||||
.finally(async () => {
|
||||
hideLoader();
|
||||
await closeAndClear();
|
||||
});
|
||||
};
|
||||
</script>
|
||||
|
||||
|
|
|
|||
|
|
@ -43,7 +43,14 @@ const files = ref<any>(null);
|
|||
const mixin = useCounterMixin(); //เรียกฟังก์ชันกลาง
|
||||
const $q = useQuasar(); // show dialog
|
||||
|
||||
const { messageError, showLoader, hideLoader, dateText, success } = mixin;
|
||||
const {
|
||||
messageError,
|
||||
showLoader,
|
||||
hideLoader,
|
||||
dateText,
|
||||
success,
|
||||
dialogConfirm,
|
||||
} = mixin;
|
||||
|
||||
const route = useRoute();
|
||||
const examId = route.params.examId;
|
||||
|
|
@ -273,84 +280,85 @@ const appointModal = ref<boolean>(false);
|
|||
const saveDeferment = async () => {
|
||||
myForm.value.validate().then(async (result: boolean) => {
|
||||
if (result) {
|
||||
const formData = new FormData();
|
||||
formData.append("personalId", personalId.value);
|
||||
formData.append("note", userNote.value);
|
||||
formData.append("files", files.value[0]);
|
||||
$q.dialog({
|
||||
title: "ยืนยันการขอผ่อนผัน",
|
||||
message: "ต้องการยืนยันการขอผ่อนผันข้อมูลนี้ใช่หรือไม่ ?",
|
||||
cancel: {
|
||||
flat: true,
|
||||
const: "negative",
|
||||
},
|
||||
persistent: true,
|
||||
})
|
||||
.onOk(async () => {
|
||||
showLoader();
|
||||
console.log("ยืนยันการขอผ่อนผัน");
|
||||
await http
|
||||
.post(config.API.deferment(), formData)
|
||||
.then(() => {
|
||||
success($q, "บันทึกสำเร็จ");
|
||||
})
|
||||
.catch((e) => {
|
||||
console.log(e);
|
||||
})
|
||||
.finally(async () => {
|
||||
await getTable();
|
||||
props.statCard();
|
||||
userNote.value = "";
|
||||
modalDefermentDisclaim.value = false;
|
||||
hideLoader();
|
||||
});
|
||||
})
|
||||
.onCancel(() => {})
|
||||
.onDismiss(() => {});
|
||||
dialogConfirm(
|
||||
$q,
|
||||
async () => await postDeferment(),
|
||||
"ยืนยันการขอผ่อนผัน",
|
||||
"ต้องการยืนยันการขอผ่อนผันข้อมูลนี้ใช่หรือไม่ ?"
|
||||
);
|
||||
// $q.dialog({
|
||||
// title: "ยืนยันการขอผ่อนผัน",
|
||||
// message: "ต้องการยืนยันการขอผ่อนผันข้อมูลนี้ใช่หรือไม่ ?",
|
||||
// cancel: {
|
||||
// flat: true,
|
||||
// const: "negative",
|
||||
// },
|
||||
// persistent: true,
|
||||
// })
|
||||
// .onOk(async () => {})
|
||||
// .onCancel(() => {})
|
||||
// .onDismiss(() => {});
|
||||
}
|
||||
});
|
||||
};
|
||||
const postDeferment = async () => {
|
||||
const formData = new FormData();
|
||||
formData.append("personalId", personalId.value);
|
||||
formData.append("note", userNote.value);
|
||||
formData.append("files", files.value[0]);
|
||||
showLoader();
|
||||
await http
|
||||
.post(config.API.deferment(), formData)
|
||||
.then(() => {
|
||||
success($q, "บันทึกสำเร็จ");
|
||||
})
|
||||
.catch((e) => {
|
||||
console.log(e);
|
||||
})
|
||||
.finally(async () => {
|
||||
await getTable();
|
||||
props.statCard();
|
||||
userNote.value = "";
|
||||
modalDefermentDisclaim.value = false;
|
||||
hideLoader();
|
||||
});
|
||||
};
|
||||
|
||||
const saveDisclaim = async () => {
|
||||
myForm.value.validate().then(async (result: boolean) => {
|
||||
if (result) {
|
||||
// showLoader();
|
||||
const dataPost = {
|
||||
note: userNote.value,
|
||||
personId: personalId.value,
|
||||
};
|
||||
$q.dialog({
|
||||
title: "ยืนยันการสละสิทธิ์",
|
||||
message: "ต้องการยืนยันการสละสิทธิ์ข้อมูลนี้ใช่หรือไม่ ?",
|
||||
cancel: {
|
||||
flat: true,
|
||||
const: "negative",
|
||||
},
|
||||
})
|
||||
.onOk(async () => {
|
||||
showLoader();
|
||||
console.log("ยืนยันการสละสิทธิ์");
|
||||
await http
|
||||
.post(config.API.disclaimF(), {
|
||||
note: dataPost.note,
|
||||
personalId: dataPost.personId,
|
||||
})
|
||||
.then(() => {
|
||||
success($q, "บันทึกสำเร็จ");
|
||||
})
|
||||
.finally(async () => {
|
||||
await getTable();
|
||||
props.statCard();
|
||||
userNote.value = "";
|
||||
modalDefermentDisclaim.value = false;
|
||||
hideLoader();
|
||||
});
|
||||
})
|
||||
.onCancel(() => {})
|
||||
.onDismiss(() => {});
|
||||
dialogConfirm(
|
||||
$q,
|
||||
async () => await postDisclaimf(),
|
||||
"ยืนยันการสละสิทธิ์",
|
||||
"ต้องการยืนยันการสละสิทธิ์ข้อมูลนี้ใช่หรือไม่ ?"
|
||||
);
|
||||
}
|
||||
});
|
||||
};
|
||||
const postDisclaimf = async () => {
|
||||
const dataPost = {
|
||||
note: userNote.value,
|
||||
personId: personalId.value,
|
||||
};
|
||||
showLoader();
|
||||
console.log("ยืนยันการสละสิทธิ์");
|
||||
await http
|
||||
.post(config.API.disclaimF(), {
|
||||
note: dataPost.note,
|
||||
personalId: dataPost.personId,
|
||||
})
|
||||
.then(() => {
|
||||
success($q, "บันทึกสำเร็จ");
|
||||
})
|
||||
.finally(async () => {
|
||||
await getTable();
|
||||
props.statCard();
|
||||
userNote.value = "";
|
||||
modalDefermentDisclaim.value = false;
|
||||
hideLoader();
|
||||
});
|
||||
};
|
||||
|
||||
const clickEditRow = () => {
|
||||
editRow.value = true;
|
||||
|
|
@ -371,7 +379,6 @@ const selectData = (pid: string) => {
|
|||
router.push("/placement/personal-detail/" + pid);
|
||||
}
|
||||
};
|
||||
|
||||
const getNumFile = ref(0);
|
||||
const dataInfo = reactive({
|
||||
reason: "",
|
||||
|
|
@ -456,19 +463,19 @@ const clickCloseSendModal = () => {
|
|||
|
||||
const clickClose = async () => {
|
||||
userNote.value = "";
|
||||
|
||||
if (editRow.value == true) {
|
||||
$q.dialog({
|
||||
title: `ข้อมูลมีการแก้ไข`,
|
||||
message: `ยืนยันที่จะปิดโดยไม่บันทึกใช่หรือไม่?`,
|
||||
cancel: "ยกเลิก",
|
||||
ok: "ยืนยัน",
|
||||
persistent: true,
|
||||
}).onOk(async () => {
|
||||
modalDefermentDisclaim.value = false;
|
||||
modalwaitInfo.value = false;
|
||||
modal.value = false;
|
||||
files.value = null;
|
||||
});
|
||||
dialogConfirm(
|
||||
$q,
|
||||
() => {
|
||||
modalDefermentDisclaim.value = false;
|
||||
modalwaitInfo.value = false;
|
||||
modal.value = false;
|
||||
files.value = null;
|
||||
},
|
||||
`ข้อมูลมีการแก้ไข`,
|
||||
`ยืนยันที่จะปิดโดยไม่บันทึกใช่หรือไม่?`
|
||||
);
|
||||
} else {
|
||||
modalDefermentDisclaim.value = false;
|
||||
modalwaitInfo.value = false;
|
||||
|
|
@ -587,6 +594,7 @@ const paginationLabel = (start: number, end: number, total: number) => {
|
|||
:saveNoDraft="true"
|
||||
:role-admin="roleAdmin"
|
||||
:displayAdd="displayAdd"
|
||||
row-key="fullname"
|
||||
>
|
||||
<template #columns="props">
|
||||
<q-tr :props="props">
|
||||
|
|
@ -604,21 +612,21 @@ const paginationLabel = (start: number, end: number, total: number) => {
|
|||
v-else-if="col.name === 'fullName'"
|
||||
class="table_ellipsis"
|
||||
>
|
||||
<div
|
||||
class="row col-12 text-no-wrap items-center"
|
||||
style="width: 270px"
|
||||
>
|
||||
<img
|
||||
v-if="props.row.avatar == null"
|
||||
src="@/assets/avatar_user.jpg"
|
||||
class="col-4 img-info"
|
||||
/>
|
||||
<img v-else :src="props.row.avatar" class="col-4 img-info" />
|
||||
<div class="col-4">
|
||||
<q-item v-ripple>
|
||||
<q-item-section avatar>
|
||||
<img
|
||||
v-if="props.row.avatar == null"
|
||||
src="@/assets/avatar_user.jpg"
|
||||
class="col-4 img-info"
|
||||
/>
|
||||
<img v-else :src="props.row.avatar" class="col-4 img-info" />
|
||||
</q-item-section>
|
||||
|
||||
<q-item-section>
|
||||
<div class="text-weight-medium">{{ props.row.name }}</div>
|
||||
<div class="text-weight-light">{{ props.row.idCard }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</template>
|
||||
<template v-else-if="col.name === 'examNumber'">
|
||||
<div class="text-weight-medium">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue