ปรับระบบวินัยให้ใช้ข้อมูลทะเบียนประวัติใหม่

This commit is contained in:
Warunee Tamkoo 2024-05-23 17:20:19 +07:00
parent 4c01e5aa0d
commit 573eaff2ec
7 changed files with 320 additions and 293 deletions

View file

@ -15,7 +15,7 @@ import { useDisciplineMainStore } from "@/modules/11_discipline/store/main";
import config from "@/app.config";
import http from "@/plugins/http";
import PopupPersonal from "@/components/Dialogs/PopupPersonal.vue";
import PopupPersonal from "@/components/Dialogs/PopupPersonalNew.vue";
import DialogAddPersonal from "@/components/Dialogs/AddPersonal.vue";
const $q = useQuasar();
@ -152,7 +152,6 @@ function validateForm() {
if (property.value && typeof property.value.validate === "function") {
const isValid = property.value.validate();
hasError.push(isValid);
}
}
}
@ -165,16 +164,13 @@ function validateForm() {
/** ฟังชั่น บันทึก */
function onSubmit() {
dialogConfirm(
$q,
async () => {
if (mainStore.rowsAdd) {
formData.persons = await mainStore.rowsAdd;
}
await props.onSubmit(formData);
isSave.value = false;
dialogConfirm($q, async () => {
if (mainStore.rowsAdd) {
formData.persons = await mainStore.rowsAdd;
}
);
await props.onSubmit(formData);
isSave.value = false;
});
}
/**
@ -359,8 +355,8 @@ onMounted(() => {
</script>
<template>
<div class="row col-12 bg-white">
<div v-if="isSave" class=" col-12">
<div class="row col-12 bg-white">
<div v-if="isSave" class="col-12">
<q-banner
inline-actions
bordered
@ -500,86 +496,86 @@ onMounted(() => {
<div class="col-12"><q-separator /></div>
<div class="col-12 row q-pa-sm">
<d-table
ref="table"
:columns="mainStore.columnsRespondent"
:rows="mainStore.rowsAdd"
row-key="idcard"
flat
bordered
:paging="true"
dense
class="col-12"
:visible-columns="mainStore.visibleColumnsRespondent"
>
<template v-slot:header="props">
<q-tr :props="props">
<q-th auto-width></q-th>
<q-th
v-for="col in props.cols"
:key="col.name"
:props="props"
style="color: #000000; font-weight: 500"
<d-table
ref="table"
:columns="mainStore.columnsRespondent"
:rows="mainStore.rowsAdd"
row-key="idcard"
flat
bordered
:paging="true"
dense
class="col-12"
:visible-columns="mainStore.visibleColumnsRespondent"
>
<template v-slot:header="props">
<q-tr :props="props">
<q-th auto-width></q-th>
<q-th
v-for="col in props.cols"
:key="col.name"
:props="props"
style="color: #000000; font-weight: 500"
>
<span class="text-weight-medium">{{
col.label
}}</span>
</q-th>
<q-th auto-width></q-th>
</q-tr>
</template>
<template v-slot:body="props">
<q-tr :props="props" class="cursor-pointer">
<td>
<q-btn
dense
flat
round
color="info"
icon="info"
@click="onclickViewinfo(props.row.personId)"
>
<span class="text-weight-medium">{{
col.label
}}</span>
</q-th>
<q-th auto-width></q-th>
</q-tr>
</template>
<template v-slot:body="props">
<q-tr :props="props" class="cursor-pointer">
<td>
<q-btn
dense
flat
round
color="info"
icon="info"
@click="onclickViewinfo(props.row.personId)"
>
<q-tooltip>อมลในทะเบยนประว</q-tooltip>
</q-btn>
</td>
<q-td
v-for="col in props.cols"
:key="col.name"
:props="props"
<q-tooltip>อมลในทะเบยนประว</q-tooltip>
</q-btn>
</td>
<q-td
v-for="col in props.cols"
:key="col.name"
:props="props"
>
<div v-if="col.name == 'no'">
{{ props.rowIndex + 1 }}
</div>
<div
v-else-if="col.name === 'organization'"
class="table_ellipsis"
>
<div v-if="col.name == 'no'">
{{ props.rowIndex + 1 }}
</div>
<div
v-else-if="col.name === 'organization'"
class="table_ellipsis"
>
{{ props.row.organization }}
</div>
<div v-else-if="col.name === 'salary'">
{{ props.row.salary.toLocaleString() }}
</div>
<div v-else>
{{ col.value }}
</div>
</q-td>
<q-td auto-width>
<q-btn
v-if="!isReadonly"
size="12px"
flat
round
dense
color="red"
class="q-ml-sm"
icon="mdi-delete-outline"
@click="deletePerson(props.row.personId)"
><q-tooltip>ลบผกรองเรยน</q-tooltip></q-btn
>
</q-td>
</q-tr>
</template>
</d-table>
{{ props.row.organization }}
</div>
<div v-else-if="col.name === 'salary'">
{{ props.row.salary.toLocaleString() }}
</div>
<div v-else>
{{ col.value }}
</div>
</q-td>
<q-td auto-width>
<q-btn
v-if="!isReadonly"
size="12px"
flat
round
dense
color="red"
class="q-ml-sm"
icon="mdi-delete-outline"
@click="deletePerson(props.row.personId)"
><q-tooltip>ลบผกรองเรยน</q-tooltip></q-btn
>
</q-td>
</q-tr>
</template>
</d-table>
</div>
</q-card>
</div>
@ -655,7 +651,6 @@ onMounted(() => {
:rules="[
(val) => !!val || `${'กรุณาเลือกวันที่รับเรื่อง'}`,
]"
>
<template v-slot:prepend>
<q-icon
@ -736,10 +731,15 @@ onMounted(() => {
>
</q-icon>
</template>
<template v-if="formData.dateConsideration && !isReadonly" v-slot:append>
<template
v-if="formData.dateConsideration && !isReadonly"
v-slot:append
>
<q-icon
name="cancel"
@click.stop.prevent="formData.dateConsideration = null"
@click.stop.prevent="
formData.dateConsideration = null
"
class="cursor-pointer"
/>
</template>
@ -811,14 +811,16 @@ onMounted(() => {
>
</q-icon>
</template>
<template v-if="formData.dateNotification && !isReadonly" v-slot:append>
<template
v-if="formData.dateNotification && !isReadonly"
v-slot:append
>
<q-icon
name="cancel"
@click.stop.prevent="formData.dateNotification = null"
class="cursor-pointer"
/>
</template>
</q-input>
</template>
</datepicker>
@ -880,11 +882,11 @@ onMounted(() => {
</div>
</div>
<div class="row"><q-separator vertical /></div>
</div>
</div>
<!-- พโหลดไฟล -->
<div class="col-sm-12 col-md-3">
<div flat class="q-pa-md" >
<div flat class="q-pa-md">
<div class="col-12 row q-col-gutter-md">
<div class="row col-12">
<q-card
@ -892,9 +894,13 @@ onMounted(() => {
class="row col-12"
style="border: 1px solid #d6dee1"
>
<div class="col-12 text-weight-medium bg-grey-1 q-py-sm q-px-md">
<div
class="col-12 text-weight-medium bg-grey-1 q-py-sm q-px-md"
>
{{
!isReadonly ? "อัปโหลดไฟล์เอกสารหลักฐาน" : "ไฟล์เอกสารหลักฐาน"
!isReadonly
? "อัปโหลดไฟล์เอกสารหลักฐาน"
: "ไฟล์เอกสารหลักฐาน"
}}
</div>
<div class="col-12"><q-separator /></div>
@ -920,15 +926,16 @@ onMounted(() => {
</template>
<template v-slot:after>
<q-btn
size="14px"
v-if="formData.documentFile"
flat
round
dense
color="add"
icon="mdi-upload"
@click="upLoadFileDoc()"
><q-tooltip>ปโหลดไฟล</q-tooltip></q-btn>
size="14px"
v-if="formData.documentFile"
flat
round
dense
color="add"
icon="mdi-upload"
@click="upLoadFileDoc()"
><q-tooltip>ปโหลดไฟล</q-tooltip></q-btn
>
</template>
</q-file>
@ -941,13 +948,13 @@ onMounted(() => {
bordered
separator
>
<q-item
clickable
v-ripple
<q-item
clickable
v-ripple
v-for="data in fileList"
:key="data.id"
class="items-center"
>
>
<q-item-section>{{ data.fileName }}</q-item-section>
<q-space />
<div>
@ -979,7 +986,9 @@ onMounted(() => {
</div>
<div class="col-12" v-else>
<q-card class="q-pa-md" bordered> ไมรายการเอกสาร </q-card>
<q-card class="q-pa-md" bordered>
ไมรายการเอกสาร
</q-card>
</div>
</div>
</q-card>
@ -988,7 +997,7 @@ onMounted(() => {
</div>
</div>
<div class="col-12 "><q-separator /></div>
<div class="col-12"><q-separator /></div>
<div class="row col-12 q-pa-sm" v-if="!isReadonly">
<q-space />
<q-btn
@ -1002,8 +1011,6 @@ onMounted(() => {
</div>
</div>
</form>
</div>
<!-- Popup กรองเรยน -->