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

@ -26,10 +26,12 @@ import type {
const isSpecial = ref<boolean>(false)
const props = defineProps({
emitSearch: Function,
getData: Function,
data: Object,
levelOp: Object,
});
const modal = defineModel<boolean>("modalAdd", { required: true });
const isEditCheck = defineModel<boolean>("isEdit", { required: true });
const dataLevel = ref<any>();
const $q = useQuasar();
const mixin = useCounterMixin();
@ -94,12 +96,16 @@ function validateFormPositionEdit() {
}
}
if (hasError.every((result) => result === true)) {
onSubmitSelectEdit();
if(isEditCheck.value == true){
saveSelectEdit();
}else{
onSubmitSelectEdit();
}
}
}
/** ฟังชั่น บันทึก */
function onSubmitSelectEdit() {
function saveSelectEdit(){
console.log(formPositionSelect.positionExecutive)
dialogConfirm(
$q,
async () => {
@ -110,11 +116,50 @@ function onSubmitSelectEdit() {
posTypeId: formPositionSelect.positionType, //*
posLevelId: formPositionSelect.positionLevel, //*
posExecutiveId:
formPositionSelect.positionExecutive !== ""
formPositionSelect.positionExecutive !== null
? formPositionSelect.positionExecutive
: null, //
posDictExecutiveField: formPositionSelect.positionExecutiveField, //
posDictArea: formPositionSelect.positionArea, ///
: '', //
posDictExecutiveField: formPositionSelect.positionExecutiveField !== null ? formPositionSelect.positionExecutiveField :'', //
posDictArea: formPositionSelect.positionArea !== null ? formPositionSelect.positionArea :'', ///
isSpecial:isSpecial.value
};
await http
.put(config.API.orgPosPositionById(formPositionSelect.positionId), body)
.then(() => {
success($q, "เพิ่มข้อมูลสำเร็จ");
props.getData?.()
close();
})
.catch((err) => {
messageError($q, err);
})
.finally(() => {
hideLoader();
});
},
"ยืนยันการแก้ไขตำแหน่ง",
"ต้องการยืนยันแก้ไขตำแหน่งนี้ใช่หรือไม่?"
);
}
/** ฟังชั่น บันทึก */
function onSubmitSelectEdit() {
console.log(formPositionSelect.positionExecutive)
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 :'', ///
isSpecial:isSpecial.value
};
await http
@ -138,6 +183,7 @@ function onSubmitSelectEdit() {
}
async function clearFormPositionSelect() {
isEditCheck.value = false
isDisValidate.value = await true;
formPositionSelect.positionId = "";
formPositionSelect.positionName = "";
@ -238,6 +284,7 @@ watch(
formPositionSelect.positionExecutiveField =
dataList.positionExecutiveField;
formPositionSelect.positionArea = dataList.positionArea;
isSpecial.value = dataList.isSpecial
}
}
}
@ -246,7 +293,7 @@ watch(
<template>
<q-dialog v-model="modal" persistent>
<q-card style="min-width: 50vw">
<DialogHeader :tittle="'เพิ่มข้อมูลตำแหน่ง'" :close="close" />
<DialogHeader :tittle="`${isEditCheck ? `แก้ไขข้อมูลตำแหน่ง`:`เพิ่มข้อมูลตำแหน่ง`}`" :close="close" />
<q-separator />
<q-card-section class="q-pa-none">
@ -383,7 +430,7 @@ watch(
</div>
<q-separator />
<q-card-actions align="right" class="bg-white text-teal q-pa-sm">
<q-btn type="submit" label="เพิ่มตำแหน่ง" color="public" />
<q-btn type="submit" :label="`${isEditCheck ? 'แก้ไขตำแหน่ง':'เพิ่มตำแหน่ง'}`" color="public" />
</q-card-actions>
</form>
</q-card-section>

View file

@ -37,6 +37,7 @@ const props = defineProps({
shortName: { type: String, required: true },
});
const isEdit = ref<boolean>(false)
const modalAdd = ref<boolean>(false);
const reqMaster = defineModel<FilterMaster>("reqMaster", { required: true });
const isReadonly = ref<boolean>(false); //
@ -82,6 +83,12 @@ const listMenu = ref<ListMenu[]>([
type: "copy",
color: "blue-6",
},
{
label: "แก้ไข",
icon: "mdi-pencil",
type: "edit",
color: "edit",
},
{
label: "ลบ",
icon: "delete",
@ -486,6 +493,16 @@ function copyDetiail(data: RowDetailPositions) {
modalAdd.value = true;
dataCopy.value = data;
}
/**
* แกไขขอม
* @param data อมลตำแหน
*/
function editDetiail(data: RowDetailPositions) {
isEdit.value = true;
modalAdd.value = true;
dataCopy.value = data;
console.log(isEdit.value)
}
/**
* งค css ออกไปตามเงอนไข
@ -908,7 +925,7 @@ async function emitSearch(keyword: string, typeSelect: string) {
@click="
item.type === 'copy'
? copyDetiail(props.row)
: deletePos(props.row.id)
: item.type === 'edit' ? editDetiail(props.row) : deletePos(props.row.id)
"
>
<q-item-section avatar>
@ -946,6 +963,8 @@ async function emitSearch(keyword: string, typeSelect: string) {
v-model:modalAdd="modalAdd"
:emitSearch="emitSearch"
:data="dataCopy"
v-model:is-edit="isEdit"
:get-data="searchInput"
/>
</template>