no message

This commit is contained in:
setthawutttty 2024-02-21 11:28:54 +07:00
parent c23af7ec9b
commit 3375421ef5
4 changed files with 171 additions and 15 deletions

View file

@ -1,5 +1,5 @@
<script setup lang="ts">
import { ref, reactive, watch } from "vue";
import { ref, reactive, watch,defineProps } from "vue";
import { useQuasar } from "quasar";
import http from "@/plugins/http";
import config from "@/app.config";
@ -33,12 +33,16 @@ const formPositionSelect = reactive<FormPositionSelectDialog>({
});
const $q = useQuasar();
const props = defineProps({
getData:Function
})
const { dialogConfirm, showLoader, success, hideLoader, messageError } =
useCounterMixin();
const isReadonly = ref<boolean>(false); //
const modal = defineModel<boolean>("addPosition", { required: true });
const formData = defineModel<any>("formData", { required: true });
const editCheck = defineModel<boolean>("editCheck", { required: true });
const positionNameRef = ref<Object | null>(null);
const positionFieldRef = ref<Object | null>(null);
@ -71,10 +75,54 @@ function validateFormPositionEdit() {
}
}
if (hasError.every((result) => result === true)) {
onSubmitSelectEdit();
if (editCheck.value == true) {
saveSelectEdit();
} else {
onSubmitSelectEdit();
}
}
}
/** ฟังชั่น บันทึก */
function saveSelectEdit() {
console.log(formPositionSelect.positionExecutive)
console.log(formPositionSelect.positionArea)
dialogConfirm(
$q,
async () => {
showLoader();
const body = {
posDictName: formPositionSelect.positionName,
posDictField: formPositionSelect.positionField, //
posTypeId: formPositionSelect.positionType, //*
posLevelId: formPositionSelect.positionLevel, //*
posExecutiveId:
formPositionSelect.positionExecutive == null
? ''
: formPositionSelect.positionExecutive, //
posDictExecutiveField: formPositionSelect.positionExecutiveField!==null?formPositionSelect.positionExecutiveField:'', //
posDictArea: formPositionSelect.positionArea !== null ? formPositionSelect.positionArea:'', ///
};
await http
.put(config.API.orgPosPositionById(formPositionSelect.positionId), body)
.then(() => {
success($q, "เพิ่มข้อมูลสำเร็จ");
clearFormPositionSelect();
modal.value = false;
editCheck.value = false;
props.getData?.()
})
.catch((err) => {
messageError($q, err);
})
.finally(() => {
hideLoader();
});
},
"ยืนยันการเพิ่มตำแหน่ง",
"ต้องการยืนยันการเพิ่มตำแหน่งนี้ใช่หรือไม่?"
);
}
/** ฟังชั่น บันทึก */
function onSubmitSelectEdit() {
dialogConfirm(
@ -86,7 +134,10 @@ function onSubmitSelectEdit() {
posDictField: formPositionSelect.positionField, //
posTypeId: formPositionSelect.positionType, //*
posLevelId: formPositionSelect.positionLevel, //*
posExecutiveId: formPositionSelect.positionExecutive == '' ? null:formPositionSelect.positionExecutive, //
posExecutiveId:
formPositionSelect.positionExecutive == ""
? null
: formPositionSelect.positionExecutive, //
posDictExecutiveField: formPositionSelect.positionExecutiveField, //
posDictArea: formPositionSelect.positionArea, ///
};
@ -96,6 +147,7 @@ function onSubmitSelectEdit() {
success($q, "เพิ่มข้อมูลสำเร็จ");
clearFormPositionSelect();
modal.value = false;
editCheck.value = false;
})
.catch((err) => {
messageError($q, err);
@ -206,6 +258,11 @@ function updateSelectType(val: string) {
}));
levelOps.value = levelOpsMain.value;
}
function close() {
modal.value = false;
editCheck.value = false;
}
</script>
<template>
@ -213,8 +270,8 @@ function updateSelectType(val: string) {
<q-card style="min-width: 50vw">
<form @submit.prevent="validateFormPositionEdit">
<DialogHeader
:tittle="`เพิ่มข้อมูลตำแหน่ง`"
:close="() => (modal = false)"
:tittle="`${editCheck ? 'แก้ไขข้อมูลตำแหน่ง' : 'เพิ่มข้อมูลตำแหน่ง'}`"
:close="close"
/>
<q-separator />