Refactoring code module 10_registry
This commit is contained in:
parent
59393536f7
commit
779e33d2a5
25 changed files with 605 additions and 276 deletions
|
|
@ -4,19 +4,19 @@ import { useQuasar, type QTableColumn, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
||||||
const store = useRegistryInFormationStore();
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
|
const store = useRegistryInFormationStore();
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
const rowsHistory = ref<any[]>([]);
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
|
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
const formDataInformation = reactive<any>({
|
const formDataInformation = reactive<any>({
|
||||||
citizenId: "", //เลขประจำตัวประชาชน
|
citizenId: "", //เลขประจำตัวประชาชน
|
||||||
|
|
@ -26,7 +26,6 @@ const formDataInformation = reactive<any>({
|
||||||
birthDate: "", //วันเกิด
|
birthDate: "", //วันเกิด
|
||||||
gender: "", //เพศ
|
gender: "", //เพศ
|
||||||
relationship: "", //สถานภาพ
|
relationship: "", //สถานภาพ
|
||||||
|
|
||||||
nationality: "", //สัญชาติ
|
nationality: "", //สัญชาติ
|
||||||
ethnicity: "", //เชื้อชาติ
|
ethnicity: "", //เชื้อชาติ
|
||||||
religion: "", //ศาสนา
|
religion: "", //ศาสนา
|
||||||
|
|
@ -34,6 +33,24 @@ const formDataInformation = reactive<any>({
|
||||||
phone: "", //เบอร์โทร
|
phone: "", //เบอร์โทร
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const visibleColumnsHistory = ref<string[]>([
|
||||||
|
"citizenId",
|
||||||
|
"prefix",
|
||||||
|
"rank",
|
||||||
|
"firstName",
|
||||||
|
"lastName",
|
||||||
|
"birthDate",
|
||||||
|
"gender",
|
||||||
|
"relationship",
|
||||||
|
"bloodGroup",
|
||||||
|
"nationality",
|
||||||
|
"ethnicity",
|
||||||
|
"religion",
|
||||||
|
"phone",
|
||||||
|
"createdFullName",
|
||||||
|
"createdAt",
|
||||||
|
]);
|
||||||
|
|
||||||
const columnsHistory = ref<QTableProps["columns"]>([
|
const columnsHistory = ref<QTableProps["columns"]>([
|
||||||
{
|
{
|
||||||
name: "citizenId",
|
name: "citizenId",
|
||||||
|
|
@ -204,24 +221,6 @@ const columnsHistory = ref<QTableProps["columns"]>([
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const visibleColumnsHistory = ref<string[]>([
|
|
||||||
"citizenId",
|
|
||||||
"prefix",
|
|
||||||
"rank",
|
|
||||||
"firstName",
|
|
||||||
"lastName",
|
|
||||||
"birthDate",
|
|
||||||
"gender",
|
|
||||||
"relationship",
|
|
||||||
"bloodGroup",
|
|
||||||
"nationality",
|
|
||||||
"ethnicity",
|
|
||||||
"religion",
|
|
||||||
"phone",
|
|
||||||
"createdFullName",
|
|
||||||
"createdAt",
|
|
||||||
]);
|
|
||||||
|
|
||||||
function onHistory() {
|
function onHistory() {
|
||||||
modalHistory.value = true;
|
modalHistory.value = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,23 +1,24 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
||||||
const idByrow = ref<string>("");
|
import type { ChangNameRows } from "@/modules/10_registry/interface/response/01_Information";
|
||||||
const rows = ref<any[]>([]);
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
const filter = ref<string>("");
|
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
const rows = ref<ChangNameRows[]>([]);
|
||||||
|
const idByrow = ref<string>("");
|
||||||
|
const filter = ref<string>("");
|
||||||
|
const rowsHistory = ref<ChangNameRows[]>([]);
|
||||||
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
|
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,11 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
Address,
|
Address,
|
||||||
|
|
@ -15,8 +17,6 @@ import type {
|
||||||
//history dialog
|
//history dialog
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
|
||||||
|
|
||||||
const store = useRegistryInFormationStore();
|
const store = useRegistryInFormationStore();
|
||||||
const rowsHistory = ref<any[]>([]);
|
const rowsHistory = ref<any[]>([]);
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
|
|
|
||||||
|
|
@ -1,39 +1,28 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
import type { FormChildren } from "@/modules/10_registry/interface/index/Family";
|
|
||||||
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
|
||||||
|
import type { FormChildren } from "@/modules/10_registry/interface/index/Family";
|
||||||
|
|
||||||
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
|
const $q = useQuasar();
|
||||||
|
const mixin = useCounterMixin();
|
||||||
|
const { showLoader, hideLoader, messageError } = mixin;
|
||||||
|
|
||||||
const idFamily = ref<string>("");
|
const idFamily = ref<string>("");
|
||||||
const store = useRegistryInFormationStore();
|
const store = useRegistryInFormationStore();
|
||||||
const rowsHistory = ref<any[]>([]);
|
const rowsHistory = ref<any[]>([]);
|
||||||
const $q = useQuasar();
|
|
||||||
const mixin = useCounterMixin();
|
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
|
||||||
|
|
||||||
const typeForm = ref<string>("");
|
const typeForm = ref<string>("");
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
|
|
||||||
/** ข้อมูล*/
|
|
||||||
const fromData = reactive({
|
|
||||||
isLive: 1,
|
|
||||||
citizenId: "",
|
|
||||||
prefix: "",
|
|
||||||
firstName: "",
|
|
||||||
lastName: "",
|
|
||||||
job: "",
|
|
||||||
lastNameOld: "",
|
|
||||||
statusMarital: "",
|
|
||||||
});
|
|
||||||
|
|
||||||
const fatherData = reactive<any>({
|
const fatherData = reactive<any>({
|
||||||
isLive: null,
|
isLive: null,
|
||||||
citizenId: "",
|
citizenId: "",
|
||||||
|
|
@ -143,17 +132,17 @@ const columnsHistory = ref<QTableProps["columns"]>([
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
const checkFatherData = ref<boolean>(false);
|
||||||
|
const checkMotherData = ref<boolean>(false);
|
||||||
|
const checkCoupleData = ref<boolean>(false);
|
||||||
|
const checkChildData = ref<boolean>(false);
|
||||||
|
|
||||||
function onHistory(type: string, id: string) {
|
function onHistory(type: string, id: string) {
|
||||||
modalHistory.value = true;
|
modalHistory.value = true;
|
||||||
typeForm.value = type;
|
typeForm.value = type;
|
||||||
idFamily.value = id ? id : "user";
|
idFamily.value = id ? id : "user";
|
||||||
}
|
}
|
||||||
|
|
||||||
const checkFatherData = ref<boolean>(false);
|
|
||||||
const checkMotherData = ref<boolean>(false);
|
|
||||||
const checkCoupleData = ref<boolean>(false);
|
|
||||||
const checkChildData = ref<boolean>(false);
|
|
||||||
|
|
||||||
/** get data */
|
/** get data */
|
||||||
function getData(type: string) {
|
function getData(type: string) {
|
||||||
showLoader();
|
showLoader();
|
||||||
|
|
|
||||||
|
|
@ -1,23 +1,27 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
//history dialog
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
import type { EducationProfile } from "@/modules/10_registry/interface/index/Main";
|
||||||
const rows = ref<any[]>([]);
|
|
||||||
const filter = ref<string>("");
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
const rows = ref<EducationProfile[]>([]);
|
||||||
|
const rowsHistory = ref<EducationProfile[]>([]);
|
||||||
|
const idByRow = ref<string>("");
|
||||||
|
const filter = ref<string>("");
|
||||||
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
|
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
|
|
||||||
|
|
@ -428,6 +432,7 @@ const visibleColumnsHistory = ref<string[]>([
|
||||||
"lastUpdatedAt",
|
"lastUpdatedAt",
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
/** เปิด dialog ประวัติ */
|
||||||
function onHistory(id: string) {
|
function onHistory(id: string) {
|
||||||
modalHistory.value = true;
|
modalHistory.value = true;
|
||||||
idByRow.value = id;
|
idByRow.value = id;
|
||||||
|
|
|
||||||
|
|
@ -1,20 +1,21 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
|
||||||
|
import type { AbilityRows } from "@/modules/10_registry/interface/index/Main";
|
||||||
|
//history dialog
|
||||||
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
|
const rows = ref<AbilityRows[]>([]);
|
||||||
|
const rowsHistory = ref<AbilityRows[]>([]);
|
||||||
const idByRow = ref<string>("");
|
const idByRow = ref<string>("");
|
||||||
const rows = ref<any[]>([]);
|
|
||||||
const filter = ref<string>("");
|
const filter = ref<string>("");
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,29 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
||||||
|
|
||||||
|
import type {
|
||||||
|
ProfileAppointment,
|
||||||
|
FormDataGovernment,
|
||||||
|
} from "@/modules/10_registry/interface/index/Main";
|
||||||
|
//history dialog
|
||||||
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
const store = useRegistryInFormationStore();
|
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
|
const store = useRegistryInFormationStore();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai, dateToISO } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai, dateToISO } = mixin;
|
||||||
|
|
||||||
|
const rowsHistory = ref<ProfileAppointment[]>([]);
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
|
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
const formData = reactive<any>({
|
const formData = reactive<FormDataGovernment>({
|
||||||
org: "",
|
org: "",
|
||||||
positionField: "",
|
positionField: "",
|
||||||
position: "",
|
position: "",
|
||||||
|
|
@ -29,8 +33,8 @@ const formData = reactive<any>({
|
||||||
posExecutive: "",
|
posExecutive: "",
|
||||||
positionArea: "",
|
positionArea: "",
|
||||||
positionExecutiveField: "",
|
positionExecutiveField: "",
|
||||||
dateLeave: "",
|
dateLeave: null,
|
||||||
dateRetireLaw: "",
|
dateRetireLaw: null,
|
||||||
govAge: {
|
govAge: {
|
||||||
year: 0,
|
year: 0,
|
||||||
month: 0,
|
month: 0,
|
||||||
|
|
|
||||||
|
|
@ -1,23 +1,25 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
import type { DisciplineDetail } from "@/modules/10_registry/interface/index/Main";
|
||||||
const rows = ref<any[]>([]);
|
|
||||||
const filter = ref<string>("");
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
const rows = ref<DisciplineDetail[]>([]);
|
||||||
|
const idByRow = ref<string>("");
|
||||||
|
const filter = ref<string>("");
|
||||||
|
const rowsHistory = ref<DisciplineDetail[]>([]);
|
||||||
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
|
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
|
|
||||||
|
|
@ -127,84 +129,6 @@ const columns = ref<QTableProps["columns"]>([
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const visibleColumnsHistory = ref<string[]>([
|
|
||||||
"prefix",
|
|
||||||
"firstName",
|
|
||||||
"lastName",
|
|
||||||
"status",
|
|
||||||
"lastUpdateFullName",
|
|
||||||
"lastUpdatedAt",
|
|
||||||
]);
|
|
||||||
const columnsHistory = ref<QTableProps["columns"]>([
|
|
||||||
{
|
|
||||||
name: "prefix",
|
|
||||||
align: "left",
|
|
||||||
label: "คำนำหน้าชื่อ",
|
|
||||||
sortable: true,
|
|
||||||
field: "prefix",
|
|
||||||
headerStyle: "font-size: 14px",
|
|
||||||
style: "font-size: 14px",
|
|
||||||
sort: (a: string, b: string) =>
|
|
||||||
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "firstName",
|
|
||||||
align: "left",
|
|
||||||
label: "ชื่อ",
|
|
||||||
sortable: true,
|
|
||||||
field: "firstName",
|
|
||||||
headerStyle: "font-size: 14px",
|
|
||||||
style: "font-size: 14px",
|
|
||||||
sort: (a: string, b: string) =>
|
|
||||||
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "lastName",
|
|
||||||
align: "left",
|
|
||||||
label: "นามสกุล",
|
|
||||||
sortable: true,
|
|
||||||
field: "lastName",
|
|
||||||
headerStyle: "font-size: 14px",
|
|
||||||
style: "font-size: 14px",
|
|
||||||
sort: (a: string, b: string) =>
|
|
||||||
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "status",
|
|
||||||
align: "left",
|
|
||||||
label: "สถานะการเปลี่ยนชื่อ",
|
|
||||||
sortable: true,
|
|
||||||
field: "status",
|
|
||||||
headerStyle: "font-size: 14px",
|
|
||||||
style: "font-size: 14px",
|
|
||||||
sort: (a: string, b: string) =>
|
|
||||||
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "lastUpdateFullName",
|
|
||||||
align: "left",
|
|
||||||
label: "ผู้ดำเนินการ",
|
|
||||||
sortable: true,
|
|
||||||
field: "lastUpdateFullName",
|
|
||||||
headerStyle: "font-size: 14px",
|
|
||||||
style: "font-size: 14px",
|
|
||||||
sort: (a: string, b: string) =>
|
|
||||||
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "lastUpdatedAt",
|
|
||||||
align: "left",
|
|
||||||
label: "วันที่แก้ไข",
|
|
||||||
sortable: true,
|
|
||||||
field: "lastUpdatedAt",
|
|
||||||
format: (v) => date2Thai(v),
|
|
||||||
headerStyle: "font-size: 14px",
|
|
||||||
style: "font-size: 14px",
|
|
||||||
sort: (a: string, b: string) =>
|
|
||||||
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
|
|
||||||
},
|
|
||||||
]);
|
|
||||||
|
|
||||||
function onHistory(id: string) {
|
function onHistory(id: string) {
|
||||||
modalHistory.value = true;
|
modalHistory.value = true;
|
||||||
idByRow.value = id;
|
idByRow.value = id;
|
||||||
|
|
|
||||||
|
|
@ -1,23 +1,25 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
import type { LeaveFormType } from "@/modules/10_registry/interface/index/Main";
|
||||||
const rows = ref<any[]>([]);
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
const filter = ref<string>("");
|
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
const idByRow = ref<string>("");
|
||||||
|
const rows = ref<LeaveFormType[]>([]);
|
||||||
|
const filter = ref<string>("");
|
||||||
|
const rowsHistory = ref<any[]>([]);
|
||||||
|
|
||||||
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
|
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,16 +3,17 @@ import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
||||||
|
import type { DutyFormType } from "@/modules/10_registry/interface/index/Main";
|
||||||
|
//history dialog
|
||||||
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
const idByRow = ref<string>("");
|
||||||
const rows = ref<any[]>([]);
|
const rows = ref<DutyFormType[]>([]);
|
||||||
const filter = ref<string>("");
|
const filter = ref<string>("");
|
||||||
const rowsHistory = ref<any[]>([]);
|
const rowsHistory = ref<DutyFormType[]>([]);
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
const mode = ref<any>($q.screen.gt.xs);
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
|
|
|
||||||
|
|
@ -1,23 +1,26 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
|
import http from "@/plugins/http";
|
||||||
|
import config from "@/app.config";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
|
||||||
|
import type { SalaryFormType } from "@/modules/10_registry/interface/index/Main";
|
||||||
|
|
||||||
//history dialog
|
//history dialog
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
|
||||||
import config from "@/app.config";
|
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
|
||||||
const rows = ref<any[]>([]);
|
|
||||||
const filter = ref<string>("");
|
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
const idByRow = ref<string>("");
|
||||||
|
const rows = ref<SalaryFormType[]>([]);
|
||||||
|
const filter = ref<string>("");
|
||||||
|
const rowsHistory = ref<SalaryFormType[]>([]);
|
||||||
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
|
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
|
|
||||||
|
|
@ -314,6 +317,7 @@ const columnsHistory = ref<QTableProps["columns"]>([
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
/** เปิด dialog ประวัติ*/
|
||||||
function onHistory(id: string) {
|
function onHistory(id: string) {
|
||||||
modalHistory.value = true;
|
modalHistory.value = true;
|
||||||
idByRow.value = id;
|
idByRow.value = id;
|
||||||
|
|
|
||||||
|
|
@ -1,20 +1,21 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
||||||
|
import type { NopaidFormType } from "@/modules/10_registry/interface/index/Main";
|
||||||
|
|
||||||
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
const idByRow = ref<string>("");
|
||||||
const rows = ref<any[]>([]);
|
const rows = ref<NopaidFormType[]>([]);
|
||||||
const filter = ref<string>("");
|
const filter = ref<string>("");
|
||||||
const rowsHistory = ref<any[]>([]);
|
const rowsHistory = ref<NopaidFormType[]>([]);
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,21 +3,24 @@ import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
import type { CertificateDetail } from "@/modules/10_registry/interface/index/Main";
|
||||||
const rows = ref<any[]>([]);
|
|
||||||
const filter = ref<string>("");
|
//history dialog
|
||||||
const rowsHistory = ref<any[]>([]);
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
const idByRow = ref<string>("");
|
||||||
|
const rows = ref<CertificateDetail[]>([]);
|
||||||
|
const filter = ref<string>("");
|
||||||
|
const rowsHistory = ref<CertificateDetail[]>([]);
|
||||||
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
|
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,20 +1,22 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
//history dialog
|
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
||||||
|
import type { TrainingFormType } from "@/modules/10_registry/interface/index/Main";
|
||||||
|
|
||||||
|
//history dialog
|
||||||
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
const idByRow = ref<string>("");
|
||||||
const rows = ref<any[]>([]);
|
const rows = ref<TrainingFormType[]>([]);
|
||||||
const filter = ref<string>("");
|
const filter = ref<string>("");
|
||||||
const rowsHistory = ref<any[]>([]);
|
const rowsHistory = ref<TrainingFormType[]>([]);
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,22 +1,22 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
|
import http from "@/plugins/http";
|
||||||
|
import config from "@/app.config";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
|
||||||
|
import type { InsigniaFormType } from "@/modules/10_registry/interface/index/Main";
|
||||||
|
|
||||||
//history dialog
|
//history dialog
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
|
||||||
import config from "@/app.config";
|
|
||||||
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
const idByRow = ref<string>("");
|
||||||
const store = useRegistryInFormationStore();
|
const rows = ref<InsigniaFormType[]>([]);
|
||||||
const rows = ref<any[]>([]);
|
|
||||||
const filter = ref<string>("");
|
const filter = ref<string>("");
|
||||||
const rowsHistory = ref<any[]>([]);
|
const rowsHistory = ref<InsigniaFormType[]>([]);
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,22 +1,24 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
|
|
||||||
|
import http from "@/plugins/http";
|
||||||
|
import config from "@/app.config";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
||||||
|
|
||||||
|
import type { HonorFormData } from "@/modules/10_registry/interface/index/Main";
|
||||||
|
|
||||||
//history dialog
|
//history dialog
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
|
||||||
import config from "@/app.config";
|
|
||||||
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
const idByRow = ref<string>("");
|
||||||
const store = useRegistryInFormationStore();
|
const store = useRegistryInFormationStore();
|
||||||
const rows = ref<any[]>([]);
|
const rows = ref<HonorFormData[]>([]);
|
||||||
const filter = ref<string>("");
|
const filter = ref<string>("");
|
||||||
const rowsHistory = ref<any[]>([]);
|
const rowsHistory = ref<HonorFormData[]>([]);
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,20 +1,22 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
|
|
||||||
|
import http from "@/plugins/http";
|
||||||
|
import config from "@/app.config";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
|
||||||
|
import type { AssessmentsFormType } from "@/modules/10_registry/interface/index/Main";
|
||||||
|
|
||||||
//history dialog
|
//history dialog
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
|
||||||
import config from "@/app.config";
|
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
const idByRow = ref<string>("");
|
||||||
const rows = ref<any[]>([]);
|
const rows = ref<AssessmentsFormType[]>([]);
|
||||||
const filter = ref<string>("");
|
const filter = ref<string>("");
|
||||||
const rowsHistory = ref<any[]>([]);
|
const rowsHistory = ref<AssessmentsFormType[]>([]);
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,19 +3,20 @@ import { useCounterMixin } from "@/stores/mixin";
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
|
|
||||||
|
import http from "@/plugins/http";
|
||||||
|
import config from "@/app.config";
|
||||||
|
|
||||||
//history dialog
|
//history dialog
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
import DialogDevelop from "@/modules/10_registry/Dialog/DialogDevelopmant.vue";
|
import DialogDevelop from "@/modules/10_registry/Dialog/DialogDevelopmant.vue";
|
||||||
import http from "@/plugins/http";
|
|
||||||
import config from "@/app.config";
|
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
const idByRow = ref<string>("");
|
||||||
const rows = ref<any[]>([]);
|
const rows = ref<any[]>([]);
|
||||||
const filter = ref<string>("");
|
const filter = ref<string>("");
|
||||||
const rowsHistory = ref<any[]>([]);
|
const rowsHistory = ref<any[]>([]);
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
const modalDevelop = ref<boolean>(false);
|
const modalDevelop = ref<boolean>(false);
|
||||||
|
|
|
||||||
|
|
@ -1,23 +1,26 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
|
||||||
import { useQuasar, type QTableProps } from "quasar";
|
import { useQuasar, type QTableProps } from "quasar";
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
|
import http from "@/plugins/http";
|
||||||
|
import config from "@/app.config";
|
||||||
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
|
||||||
|
import type { OtherFormType } from "@/modules/10_registry/interface/index/Main";
|
||||||
|
|
||||||
//history dialog
|
//history dialog
|
||||||
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
import DialogHistory from "@/modules/10_registry/Dialog/DialogHistory.vue";
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
|
||||||
import config from "@/app.config";
|
|
||||||
|
|
||||||
const idByRow = ref<string>("");
|
|
||||||
const rows = ref<any[]>([]);
|
|
||||||
const filter = ref<string>("");
|
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
const idByRow = ref<string>("");
|
||||||
|
const rows = ref<OtherFormType[]>([]);
|
||||||
|
const filter = ref<string>("");
|
||||||
|
const rowsHistory = ref<OtherFormType[]>([]);
|
||||||
|
const mode = ref<boolean>($q.screen.gt.xs);
|
||||||
|
|
||||||
const modalHistory = ref<boolean>(false);
|
const modalHistory = ref<boolean>(false);
|
||||||
/** ตัวแปรข้อมูล */
|
/** ตัวแปรข้อมูล */
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,18 +7,11 @@ import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
||||||
|
|
||||||
interface ArrayFileList {
|
import type { FileFormType } from "@/modules/10_registry/interface/index/Main";
|
||||||
id: string;
|
|
||||||
pathName: string;
|
const fileList = ref<FileFormType[]>([]);
|
||||||
fileName: string;
|
|
||||||
}
|
|
||||||
const fileList = ref<ArrayFileList[]>([]);
|
|
||||||
const store = useRegistryInFormationStore();
|
const store = useRegistryInFormationStore();
|
||||||
const rows = ref<any[]>([]);
|
|
||||||
const filter = ref<string>("");
|
|
||||||
const rowsHistory = ref<any[]>([]);
|
|
||||||
const $q = useQuasar();
|
const $q = useQuasar();
|
||||||
const mode = ref<any>($q.screen.gt.xs);
|
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,6 @@ import { useQuasar } from "quasar";
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
import { useRoute } from "vue-router";
|
|
||||||
|
|
||||||
interface DataOptionTechnique {
|
interface DataOptionTechnique {
|
||||||
label: string;
|
label: string;
|
||||||
|
|
|
||||||
|
|
@ -3,13 +3,11 @@ import { ref, watch } from "vue";
|
||||||
|
|
||||||
import DialogHeader from "@/components/DialogHeader.vue";
|
import DialogHeader from "@/components/DialogHeader.vue";
|
||||||
import type { QTableProps } from "quasar";
|
import type { QTableProps } from "quasar";
|
||||||
import { useRegistryInFormationStore } from "@/modules/10_registry/store/registry";
|
|
||||||
import { useCounterMixin } from "@/stores/mixin";
|
import { useCounterMixin } from "@/stores/mixin";
|
||||||
|
|
||||||
const type = ref<string>("");
|
const type = ref<string>("");
|
||||||
const mixin = useCounterMixin();
|
const mixin = useCounterMixin();
|
||||||
const { showLoader, hideLoader, messageError, date2Thai } = mixin;
|
const { date2Thai } = mixin;
|
||||||
const store = useRegistryInFormationStore();
|
|
||||||
const modal = defineModel<boolean>("modal", { required: true });
|
const modal = defineModel<boolean>("modal", { required: true });
|
||||||
const title = defineModel<string>("title", { required: true });
|
const title = defineModel<string>("title", { required: true });
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,11 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { reactive, ref, watch } from "vue";
|
import { reactive, ref, watch } from "vue";
|
||||||
import { useQuasar } from "quasar";
|
import { useQuasar } from "quasar";
|
||||||
import config from "@/app.config";
|
|
||||||
import http from "@/plugins/http";
|
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
|
|
||||||
|
import http from "@/plugins/http";
|
||||||
|
import config from "@/app.config";
|
||||||
|
|
||||||
import DialogHeader from "@/components/DialogHeader.vue";
|
import DialogHeader from "@/components/DialogHeader.vue";
|
||||||
|
|
||||||
import { useRequestEditStore } from "@/modules/10_registry/store/RequestEdit";
|
import { useRequestEditStore } from "@/modules/10_registry/store/RequestEdit";
|
||||||
|
|
|
||||||
|
|
@ -10,4 +10,380 @@ interface NewPagination {
|
||||||
sortBy: string;
|
sortBy: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export type { DataOption, NewPagination };
|
interface AbilityRows {
|
||||||
|
id: string;
|
||||||
|
createdAt: string;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: string;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
remark: string;
|
||||||
|
detail: string;
|
||||||
|
reference: string;
|
||||||
|
dateStart: string | null;
|
||||||
|
dateEnd: string | null;
|
||||||
|
field: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface EducationProfile {
|
||||||
|
id: string;
|
||||||
|
createdAt: string;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: string;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
country: string;
|
||||||
|
degree: string;
|
||||||
|
duration: string;
|
||||||
|
durationYear: number | null;
|
||||||
|
field: string;
|
||||||
|
finishDate: Date | null;
|
||||||
|
fundName: string;
|
||||||
|
gpa: string;
|
||||||
|
institute: string;
|
||||||
|
other: string;
|
||||||
|
startDate: Date | null;
|
||||||
|
endDate: Date | null;
|
||||||
|
educationLevel: string;
|
||||||
|
educationLevelId: string;
|
||||||
|
positionPath: string;
|
||||||
|
note: string;
|
||||||
|
positionPathId: string;
|
||||||
|
isDate: boolean;
|
||||||
|
isEducation: boolean;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ProfileAppointment {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
dateAppoint: Date | null;
|
||||||
|
dateStart: Date | null;
|
||||||
|
govAgeAbsent: number;
|
||||||
|
govAgePlus: number;
|
||||||
|
reasonSameDate: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface GovAge {
|
||||||
|
year: number;
|
||||||
|
month: number;
|
||||||
|
day: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface FormDataGovernment {
|
||||||
|
org: string;
|
||||||
|
positionField: string;
|
||||||
|
position: string;
|
||||||
|
posLevel: string | null;
|
||||||
|
posMasterNo: string;
|
||||||
|
posType: string | null;
|
||||||
|
posExecutive: string | null;
|
||||||
|
positionArea: string | null;
|
||||||
|
positionExecutiveField: string | null;
|
||||||
|
dateLeave: Date | null;
|
||||||
|
dateRetireLaw: Date | null;
|
||||||
|
govAge: GovAge;
|
||||||
|
dateAppoint: Date | null;
|
||||||
|
dateStart: Date | null;
|
||||||
|
govAgeAbsent: number;
|
||||||
|
govAgePlus: number;
|
||||||
|
reasonSameDate: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface DisciplineDetail {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
date: Date | null;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
level: string;
|
||||||
|
detail: string;
|
||||||
|
refCommandDate: Date | null;
|
||||||
|
refCommandNo: string;
|
||||||
|
unStigma: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface LeaveType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
name: string;
|
||||||
|
code: string;
|
||||||
|
limit: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface LeaveFormType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
leaveTypeId: string;
|
||||||
|
dateLeaveStart: Date | null;
|
||||||
|
dateLeaveEnd: Date | null;
|
||||||
|
leaveDays: number;
|
||||||
|
leaveCount: number;
|
||||||
|
totalLeave: number;
|
||||||
|
status: string;
|
||||||
|
reason: string;
|
||||||
|
leaveType: LeaveType;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface DutyFormType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
dateStart: Date | null;
|
||||||
|
dateEnd: Date | null;
|
||||||
|
detail: string;
|
||||||
|
reference: string;
|
||||||
|
refCommandDate: Date | null;
|
||||||
|
refCommandNo: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface SalaryFormType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
date: Date | null;
|
||||||
|
posNo: string;
|
||||||
|
position: string;
|
||||||
|
positionLine: string | null;
|
||||||
|
positionPathSide: string | null;
|
||||||
|
positionExecutive: string | null;
|
||||||
|
positionType: string;
|
||||||
|
positionLevel: string;
|
||||||
|
amount: number;
|
||||||
|
positionSalaryAmount: number;
|
||||||
|
mouthSalaryAmount: number;
|
||||||
|
refCommandNo: string | null;
|
||||||
|
templateDoc: string;
|
||||||
|
order: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface NopaidFormType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
date: Date | null;
|
||||||
|
detail: string;
|
||||||
|
reference: string;
|
||||||
|
refCommandDate: Date | null;
|
||||||
|
refCommandNo: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface CertificateDetail {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
expireDate: Date | null;
|
||||||
|
issueDate: Date | null;
|
||||||
|
certificateNo: string;
|
||||||
|
certificateType: string;
|
||||||
|
issuer: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface TrainingFormType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
startDate: Date | null;
|
||||||
|
endDate: Date | null;
|
||||||
|
numberOrder: string;
|
||||||
|
topic: string;
|
||||||
|
place: string;
|
||||||
|
dateOrder: Date | null;
|
||||||
|
department: string;
|
||||||
|
duration: string;
|
||||||
|
name: string;
|
||||||
|
yearly: number;
|
||||||
|
isDate: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface InsigniaType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
name: string;
|
||||||
|
isActive: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Insignia {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
name: string;
|
||||||
|
shortName: string;
|
||||||
|
level: number;
|
||||||
|
isActive: boolean;
|
||||||
|
note: string | null;
|
||||||
|
insigniaTypeId: string;
|
||||||
|
insigniaType: InsigniaType;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface InsigniaFormType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
year: number;
|
||||||
|
no: string;
|
||||||
|
volume: string;
|
||||||
|
section: string;
|
||||||
|
page: string;
|
||||||
|
receiveDate: Date | null;
|
||||||
|
dateAnnounce: Date | null;
|
||||||
|
issue: string;
|
||||||
|
volumeNo: string;
|
||||||
|
refCommandDate: Date | null;
|
||||||
|
refCommandNo: string;
|
||||||
|
note: string;
|
||||||
|
insigniaId: string;
|
||||||
|
insignia: Insignia;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface HonorFormData {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
detail: string;
|
||||||
|
issueDate: Date | null;
|
||||||
|
issuer: string;
|
||||||
|
refCommandDate: Date | null;
|
||||||
|
refCommandNo: string;
|
||||||
|
isDate: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface AssessmentsFormType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
name: string;
|
||||||
|
date: Date | null;
|
||||||
|
point1: number;
|
||||||
|
point1Total: number;
|
||||||
|
point2: number;
|
||||||
|
point2Total: number;
|
||||||
|
pointSum: number;
|
||||||
|
pointSumTotal: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface OtherFormType {
|
||||||
|
id: string;
|
||||||
|
createdAt: Date | null;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: Date | null;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
detail: string;
|
||||||
|
date: Date | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface FileFormType {
|
||||||
|
id: string;
|
||||||
|
pathName: string;
|
||||||
|
fileName: string;
|
||||||
|
}
|
||||||
|
export type {
|
||||||
|
DataOption,
|
||||||
|
NewPagination,
|
||||||
|
AbilityRows,
|
||||||
|
EducationProfile,
|
||||||
|
ProfileAppointment,
|
||||||
|
FormDataGovernment,
|
||||||
|
DisciplineDetail,
|
||||||
|
LeaveFormType,
|
||||||
|
DutyFormType,
|
||||||
|
SalaryFormType,
|
||||||
|
NopaidFormType,
|
||||||
|
CertificateDetail,
|
||||||
|
TrainingFormType,
|
||||||
|
InsigniaFormType,
|
||||||
|
HonorFormData,
|
||||||
|
AssessmentsFormType,
|
||||||
|
OtherFormType,
|
||||||
|
FileFormType,
|
||||||
|
};
|
||||||
|
|
|
||||||
|
|
@ -45,4 +45,22 @@ interface SubDistricts {
|
||||||
zipCode: string;
|
zipCode: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export type { Address, Provinces, Districts, SubDistricts };
|
interface ChangNameRows {
|
||||||
|
id: string;
|
||||||
|
createdAt: string;
|
||||||
|
createdUserId: string;
|
||||||
|
lastUpdatedAt: string;
|
||||||
|
lastUpdateUserId: string;
|
||||||
|
createdFullName: string;
|
||||||
|
lastUpdateFullName: string;
|
||||||
|
profileId: string;
|
||||||
|
prefixId: string;
|
||||||
|
prefix: string;
|
||||||
|
firstName: string;
|
||||||
|
lastName: string;
|
||||||
|
status: string;
|
||||||
|
documentId: string;
|
||||||
|
profileEmployeeId: string | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
export type { Address, Provinces, Districts, SubDistricts,ChangNameRows };
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue