เพิ่ม field posNumCodeSit , posNumCodeSitAbb

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2025-03-28 14:28:41 +07:00
parent b8b812c319
commit 5abf3c5945
6 changed files with 121 additions and 5 deletions

View file

@ -7,7 +7,7 @@ import type { DataHistory } from "@/modules/04_registryPerson/interface/index/Ma
import DialogHeader from "@/components/DialogHeader.vue";
const { onSearchDataTable } = useCounterMixin();
const { onSearchDataTable, findOrgNameHtml } = useCounterMixin();
const modal = defineModel<boolean>("modal", { required: true });
const title = defineModel<string>("title", { required: true });
@ -117,6 +117,19 @@ watch(
<div v-if="col.name === 'no'">
{{ props.rowIndex + 1 }}
</div>
<div v-else-if="col.name == 'organization'" class="text-html">
{{
props.row
? findOrgNameHtml({
root: props.row.orgRoot,
child1: props.row.orgChild1,
child2: props.row.orgChild2,
child3: props.row.orgChild3,
child4: props.row.orgChild4,
})
: "-"
}}
</div>
<div v-else>
{{ col.value ? col.value : "-" }}
</div>

View file

@ -86,6 +86,22 @@ const baseColumns = ref<QTableColumn[]>([
.toString()
.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
},
{
name: "posNumCodeSit",
align: "left",
label: "หน่วยงานที่ออกคำสั่ง",
sortable: false,
field: "posNumCodeSit",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format(val, row) {
return row.posNumCodeSitAbb && row.posNumCodeSit
? `${row.posNumCodeSit} (${row.posNumCodeSitAbb})`
: row.posNumCodeSit
? row.posNumCodeSit
: "-";
},
},
{
name: "posNo",
align: "left",
@ -276,6 +292,7 @@ const baseColumns = ref<QTableColumn[]>([
]);
const baseVisibleColumns = ref<string[]>([
"commandDateAffect",
"posNumCodeSit",
"posNo",
"positionName",
"positionType",
@ -349,6 +366,8 @@ const formData = reactive<FormPostition>({
orgChild3: "", // 3
orgChild4: "", // 4
remark: "", //
posNumCodeSit: "",
posNumCodeSitAbb: "",
});
const columnsHistory = computed<QTableColumn[]>(() => {
@ -658,6 +677,9 @@ async function onClickOpenDialog(
formData.orgChild3 = statusEdit ? data.orgChild3 : "";
formData.orgChild4 = statusEdit ? data.orgChild4 : "";
formData.remark = statusEdit ? data.remark : "";
formData.posNumCodeSit = statusEdit ? data.posNumCodeSit : "";
formData.posNumCodeSitAbb = statusEdit ? data.posNumCodeSitAbb : "";
hideLoader();
}
@ -995,7 +1017,7 @@ onMounted(async () => {
<q-card-section style="max-height: 100%" class="scroll">
<div class="row col-12 q-col-gutter-sm">
<div class="col-xs-12 col-sm-12 col-md-8">
<div class="col-xs-12 col-sm-6 col-md-8">
<!-- :rules="[(val: string) => !!val || 'กรุณาเลือกประเภทคำสั่ง']" -->
<q-select
outlined
@ -1030,7 +1052,7 @@ onMounted(async () => {
</q-select>
</div>
<div class="col-xs-6 col-sm-6 col-md-4">
<div class="col-xs-12 col-sm-6 col-md-4">
<!-- :rules="[ (val: string) => !!val || `${'กรุณาเลือกวันที่คำสั่งมีผล'}`, ]" -->
<datepicker
v-model="formData.commandDateAffect"
@ -1066,6 +1088,33 @@ onMounted(async () => {
</datepicker>
</div>
<div class="col-xs-12 col-sm-6 col-md-8">
<q-input
:class="classInput(true)"
outlined
dense
lazy-rules
borderless
v-model="formData.posNumCodeSit"
hide-bottom-space
:label="`${'หน่วยงานที่ออกคำสั่ง'}`"
hint="*ชื่อเต็มหน่วยงานที่ออกคำสั่ง"
/>
</div>
<div class="col-xs-12 col-sm-6 col-md-4">
<q-input
:class="classInput(true)"
outlined
dense
lazy-rules
borderless
v-model="formData.posNumCodeSitAbb"
hide-bottom-space
:label="`${'ตัวย่อหน่วยงานที่ออกคำสั่ง'}`"
/>
</div>
<div class="col-xs-6 col-sm-12 col-md-8">
<div class="row q-col-gutter-sm">
<div class="col-6">

View file

@ -91,6 +91,22 @@ const baseColumns = ref<QTableColumn[]>([
.toString()
.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
},
{
name: "posNumCodeSit",
align: "left",
label: "หน่วยงานที่ออกคำสั่ง",
sortable: false,
field: "posNumCodeSit",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format(val, row) {
return row.posNumCodeSitAbb && row.posNumCodeSit
? `${row.posNumCodeSit} (${row.posNumCodeSitAbb})`
: row.posNumCodeSit
? row.posNumCodeSit
: "-";
},
},
{
name: "posNo",
align: "left",
@ -309,6 +325,7 @@ const baseColumns = ref<QTableColumn[]>([
]);
const baseVisibleColumns = ref<string[]>([
"commandDateAffect",
"posNumCodeSit",
"posNo",
"positionName",
"positionType",
@ -389,6 +406,8 @@ const formData = reactive<FormSalary>({
orgChild3: "", // 3
orgChild4: "", // 4
remark: "", //
posNumCodeSit: "",
posNumCodeSitAbb: "",
});
const modalDialogSalary = ref<boolean>(false); // popup
@ -626,6 +645,8 @@ async function onClickOpenDialog(
formData.orgChild3 = statusEdit ? data.orgChild3 : "";
formData.orgChild4 = statusEdit ? data.orgChild4 : "";
formData.remark = statusEdit ? data.remark : "";
formData.posNumCodeSit = statusEdit ? data.posNumCodeSit : "";
formData.posNumCodeSitAbb = statusEdit ? data.posNumCodeSitAbb : "";
hideLoader();
}
@ -940,7 +961,7 @@ onMounted(async () => {
<q-card-section style="max-height: 100%" class="scroll">
<div class="row col-12 q-col-gutter-sm">
<div class="col-xs-12 col-sm-12 col-md-8">
<div class="col-xs-12 col-sm-6 col-md-8">
<!-- :rules="[(val: string) => !!val || 'กรุณาเลือกประเภทคำสั่ง']" -->
<q-select
outlined
@ -975,7 +996,7 @@ onMounted(async () => {
</q-select>
</div>
<div class="col-xs-6 col-sm-6 col-md-4">
<div class="col-xs-12 col-sm-6 col-md-4">
<!-- :rules="[ (val: string) => !!val || `${'กรุณาเลือกวันที่คำสั่งมีผล'}`, ]" -->
<datepicker
v-model="formData.commandDateAffect"
@ -1011,6 +1032,33 @@ onMounted(async () => {
</datepicker>
</div>
<div class="col-xs-12 col-sm-6 col-md-8">
<q-input
:class="classInput(true)"
outlined
dense
lazy-rules
borderless
v-model="formData.posNumCodeSit"
hide-bottom-space
:label="`${'หน่วยงานที่ออกคำสั่ง'}`"
hint="*ชื่อเต็มหน่วยงานที่ออกคำสั่ง"
/>
</div>
<div class="col-xs-12 col-sm-6 col-md-4">
<q-input
:class="classInput(true)"
outlined
dense
lazy-rules
borderless
v-model="formData.posNumCodeSitAbb"
hide-bottom-space
:label="`${'ตัวย่อหน่วยงานที่ออกคำสั่ง'}`"
/>
</div>
<div class="col-xs-6 col-sm-12 col-md-8">
<div class="row q-col-gutter-sm">
<div class="col-6">

View file

@ -81,5 +81,7 @@ interface FormPostition {
orgChild3: string; //ส่วนราชการระดับ 3
orgChild4: string; //ส่วนราชการระดับ 4
remark: string; //หมายเหตุstring
posNumCodeSit: string;
posNumCodeSitAbb: string;
}
export type { RequestItemsHistoryObject, FormMain, DataCardPos, FormPostition };

View file

@ -23,6 +23,8 @@ interface FormSalary {
orgChild3: string; //ส่วนราชการระดับ 3
orgChild4: string; //ส่วนราชการระดับ 4
remark: string; //หมายเหตุstring
posNumCodeSit: string;
posNumCodeSitAbb: string;
}
interface RequestNoPaidObject {

View file

@ -39,6 +39,8 @@ interface DataPositions {
profileId: string;
refId: string;
remark: string;
posNumCodeSit: string;
posNumCodeSitAbb: string;
}
interface DataCommandCode {