Compare commits

..

No commits in common. "1da74091a2e7f72fbb68d1ae2ee8160e32462c7e" and "efca59a50fa451bfac18afda6ef06fb6469208d9" have entirely different histories.

25 changed files with 58 additions and 152 deletions

View file

@ -7,7 +7,6 @@ import http from "@/plugins/http";
import config from "@/app.config";
import { useCounterMixin } from "@/stores/mixin";
import { useStructureTree } from "@/stores/structureTree";
import { formatPosmasterNo } from "@/utils/function";
import type { QTableProps } from "quasar";
import type {
@ -283,12 +282,12 @@ async function getDataTable(id: string, level: number = 0) {
const listPosNo: DataPositionNo[] = dataMain.map((e: PositionMain) => ({
id: e.id,
isPosition: e.isPosition,
posMasterNo: formatPosmasterNo(
e.orgShortname,
e.posMasterNoPrefix,
e.posMasterNo.toString(),
e.posMasterNoSuffix
),
posMasterNo:
e.orgShortname +
(e.posMasterNoPrefix != null ? e.posMasterNoPrefix : "") +
" " +
e.posMasterNo +
(e.posMasterNoSuffix != null ? e.posMasterNoSuffix : ""),
positionName: e.positionName,
posTypeName: e.posTypeName,
posLevelName: e.posLevelName,

View file

@ -7,7 +7,6 @@ import http from "@/plugins/http";
import config from "@/app.config";
import { useCounterMixin } from "@/stores/mixin";
import { useStructureTree } from "@/stores/structureTree";
import { formatPosmasterNo } from "@/utils/function";
import type { QTableProps } from "quasar";
import type {
@ -264,12 +263,12 @@ async function getDataTable(id: string, level: number = 0) {
const listPosNo: DataPositionNo[] = dataMain.map((e: PositionMain) => ({
id: e.id,
isPosition: e.isPosition,
posMasterNo: formatPosmasterNo(
e.orgShortname,
e.posMasterNoPrefix,
e.posMasterNo.toString(),
e.posMasterNoSuffix
),
posMasterNo:
e.orgShortname +
(e.posMasterNoPrefix != null ? e.posMasterNoPrefix : "") +
" " +
e.posMasterNo +
(e.posMasterNoSuffix != null ? e.posMasterNoSuffix : ""),
positionName: e.positionName,
posTypeName: e.posTypeName,
posLevelName: e.posLevelName,

View file

@ -48,7 +48,7 @@ const modal = defineModel<boolean>("modal", { required: true });
let reqMaster = defineModel<FilterMaster>("reqMaster", { required: true });
const totalPage = defineModel<number>("totalPage", { required: true });
const nodeTree = defineModel<OrgTree[]>("nodeTree", { required: true });
const columns = defineModel<QTableProps['columns']>("columns", {});
const columns = defineModel<QTableProps[]>("columns", {});
const rows = defineModel<PosMaster2[]>("rows", { required: true });
const props = defineProps({
fetchDataTree: {

View file

@ -9,7 +9,6 @@ import { checkPermission } from "@/utils/permissions";
import { updateCurrentPage } from "@/utils/function";
import { useOrganizational } from "@/modules/02_organization/store/organizational";
import { useCounterMixin } from "@/stores/mixin";
import { formatPosmasterNo } from "@/utils/function";
/** importType*/
import type { QTableProps } from "quasar";
@ -206,14 +205,6 @@ const columns = ref<QTableProps["columns"]>([
sortable: false,
field: "posMasterNo",
headerStyle: "font-size: 14px",
format(val, row) {
return formatPosmasterNo(
row.orgShortname,
row.posMasterNoPrefix,
row.posMasterNoMain,
row.posMasterNoSuffix
);
},
style: "font-size: 14px",
},
{
@ -1133,7 +1124,7 @@ watch(
<DialogMovePos
v-model:modal="modalDialogMMove"
v-model:nodeTree="nodeTree"
v-model:columns="columns"
v-model:columns="columns as QTableProps[]"
v-model:rows="posMaster"
v-model:totalPage="totalPage"
v-model:reqMaster="reqMaster"

View file

@ -108,11 +108,6 @@ export const useOrganizational = defineStore("organizationalStore", () => {
posLevelName: e.isSit ? e.profilePoslevel : e.posLevelName,
posExecutiveName: e.posExecutiveName,
isSit: e.isSit,
orgShortname: e.orgShortname,
posMasterNoPrefix: e.posMasterNoPrefix,
posMasterNoSuffix: e.posMasterNoSuffix,
posMasterNoMain: e.posMasterNo,
}));
return newPosMaster || [];

View file

@ -1,5 +1,5 @@
import { defineStore } from "pinia";
import { formatPosmasterNo } from "@/utils/function";
import { ref } from "vue";
/** importType*/
import type { PositionMaim } from "@/modules/05_placement/interface/response/SelectOrg";
import type { DataPositionNo } from "@/modules/05_placement/interface/index/SelectOrg";
@ -12,13 +12,12 @@ export const useSelectOrgStore = defineStore("selectorg", () => {
const listPosNo: DataPositionNo[] = data.map((e: PositionMaim) => ({
id: e.id,
isPosition: e.isPosition,
posMasterNo: formatPosmasterNo(
e.orgShortname,
e.posMasterNoPrefix,
e.posMasterNo.toString(),
e.posMasterNoSuffix
),
posMasterNo:
e.orgShortname +
(e.posMasterNoPrefix != null ? e.posMasterNoPrefix : "") +
" " +
e.posMasterNo +
(e.posMasterNoSuffix != null ? e.posMasterNoSuffix : ""),
positionName: e.positionName,
posTypeName: e.posTypeName,
posLevelName: e.posLevelName,

View file

@ -77,7 +77,7 @@ const columns = ref<QTableProps["columns"]>([
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format(val, row) {
return row.positionNumberOld ?? "-";
return findPosMasterNoOld(row);
},
},
{

View file

@ -5,7 +5,6 @@ import { useQuasar } from "quasar";
import { useRoute } from "vue-router";
import { useCounterMixin } from "@/stores/mixin";
import { useStructureTree } from "@/stores/structureTree";
import { formatPosmasterNo } from "@/utils/function";
import http from "@/plugins/http";
import config from "@/app.config";
@ -75,12 +74,7 @@ const columns = ref<QTableProps["columns"]>([
sortable: true,
field: "posMasterNo",
format(val, row) {
return formatPosmasterNo(
row.orgShortname,
row.posMasterNoPrefix,
row.posMasterNo.toString(),
row.posMasterNoSuffix
);
return `${row.orgShortname} ${row.posMasterNo}`;
},
headerStyle: "font-size: 14px",
style: "font-size: 14px",

View file

@ -50,7 +50,7 @@ const id = ref<string>(route.params.id as string); // id รายการป
const isLoadView = ref<boolean>(false); // view
const modalHistory = ref<boolean>(false); // popup
//
const formCommand = reactive({
const formCommand = reactive<FormCommand>({
elementaryFullName: "", //
elementaryPosition: "", //
abovelevelFullname: "", // 1

View file

@ -58,7 +58,6 @@ export const useEvalutuonStore = defineStore("EvalutuonStore", () => {
const dataList: EvaluateList[] = data.map(
(data: EvaluateRes) =>
({
...data,
id: data.id,
citizenId: data.citizenId,
fullName: data.fullName,
@ -134,7 +133,7 @@ export const useEvalutuonStore = defineStore("EvalutuonStore", () => {
align: "left",
label: "เลขที่ตำแหน่ง",
sortable: true,
field: "posNo",
field: "positionNumber",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},

View file

@ -351,7 +351,7 @@ onMounted(async () => {
</div>
</div>
<div v-else>
{{ col.value ? col.value : "-" }}
{{ !col.value ? "-" : col.value }}
</div>
</q-td>
</q-tr>

View file

@ -5,7 +5,6 @@ import { useQuasar } from "quasar";
import { useCounterMixin } from "@/stores/mixin";
import { useSalaryListSDataStore } from "@/modules/13_salary/store/SalaryListsStore";
import { usePagination } from "@/composables/usePagination";
import { formatPosmasterNo } from "@/utils/function";
import config from "@/app.config";
import http from "@/plugins/http";
@ -73,12 +72,9 @@ const columns = ref<QTableProps["columns"]>([
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format(val, row) {
return formatPosmasterNo(
row.orgShortName,
row.posMasterNoPrefix,
row.posMasterNo,
row.posMasterNoSuffix
);
return row.orgShortName && row.posMasterNo
? `${row.orgShortName} ${row.posMasterNo}`
: "-";
},
},
{

View file

@ -19,7 +19,6 @@ import DialogMoveLevel from "@/modules/13_salary/components/04_salaryLists/Dialo
/** importStore*/
import { useCounterMixin } from "@/stores/mixin";
import { useSalaryListSDataStore } from "@/modules/13_salary/store/SalaryListsStore";
import { formatPosmasterNo } from "@/utils/function";
/** use*/
const $q = useQuasar();
@ -88,12 +87,9 @@ const baseColumns = ref<QTableProps["columns"]>([
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format(val, row) {
return formatPosmasterNo(
row.orgShortName,
row.posMasterNoPrefix,
row.posMasterNo,
row.posMasterNoSuffix
);
return row.orgShortName && row.posMasterNo
? `${row.orgShortName} ${row.posMasterNo}`
: "-";
},
},
{

View file

@ -19,7 +19,6 @@ import DialogInfo from "@/modules/13_salary/components/DialogInfoMain.vue";
/** importStore*/
import { useCounterMixin } from "@/stores/mixin";
import { useSalaryListSDataStore } from "@/modules/13_salary/store/SalaryListsStore";
import { formatPosmasterNo } from "@/utils/function";
import http from "@/plugins/http";
import config from "@/app.config";
@ -99,12 +98,9 @@ const columns = ref<QTableColumn[]>([
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format(val, row) {
return formatPosmasterNo(
row.orgShortName,
row.posMasterNoPrefix,
row.posMasterNo,
row.posMasterNoSuffix
);
return row.orgShortName && row.posMasterNo
? `${row.orgShortName} ${row.posMasterNo}`
: "-";
},
},
{

View file

@ -5,7 +5,6 @@ import { useQuasar } from "quasar";
import { useCounterMixin } from "@/stores/mixin";
import { useSalaryEmployeeListSDataStore } from "@/modules/13_salary/store/SalaryEmployeeListsStore";
import { usePagination } from "@/composables/usePagination";
import { formatPosmasterNo } from "@/utils/function";
import config from "@/app.config";
import http from "@/plugins/http";
@ -72,12 +71,9 @@ const columns = ref<QTableProps["columns"]>([
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format(val, row) {
return formatPosmasterNo(
row.orgShortName,
row.posMasterNoPrefix,
row.posMasterNo,
row.posMasterNoSuffix
);
return row.orgShortName && row.posMasterNo
? `${row.orgShortName} ${row.posMasterNo}`
: "-";
},
},
{

View file

@ -5,7 +5,6 @@ import { useQuasar } from "quasar";
import { checkPermission } from "@/utils/permissions";
import { useCounterMixin } from "@/stores/mixin";
import { useSalaryEmployeeListSDataStore } from "@/modules/13_salary/store/SalaryEmployeeListsStore";
import { formatPosmasterNo } from "@/utils/function";
import config from "@/app.config";
import http from "@/plugins/http";
@ -85,14 +84,6 @@ const baseColumns = ref<QTableProps["columns"]>([
field: "orgShortName",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format(val, row) {
return formatPosmasterNo(
row.orgShortName,
row.posMasterNoPrefix,
row.posMasterNo,
row.posMasterNoSuffix
);
},
},
{
name: "position",

View file

@ -6,7 +6,6 @@ import { checkPermission } from "@/utils/permissions";
import { useCounterMixin } from "@/stores/mixin";
import { useSalaryEmployeeListSDataStore } from "@/modules/13_salary/store/SalaryEmployeeListsStore";
import { formatPosmasterNo } from "@/utils/function";
import http from "@/plugins/http";
import config from "@/app.config";
@ -99,12 +98,9 @@ const columns = ref<QTableColumn[]>([
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format(val, row) {
return formatPosmasterNo(
row.orgShortName,
row.posMasterNoPrefix,
row.posMasterNo,
row.posMasterNoSuffix
);
return row.orgShortName && row.posMasterNo
? `${row.orgShortName} ${row.posMasterNo}`
: "-";
},
},

View file

@ -5,7 +5,6 @@ import { useQuasar } from "quasar";
import { useRoute } from "vue-router";
import { useCounterMixin } from "@/stores/mixin";
import { usePositionEmp } from "@/modules/16_positionEmployee/store/organizational";
import { formatPosmasterNo } from "@/utils/function";
import http from "@/plugins/http";
import config from "@/app.config";
@ -136,12 +135,11 @@ async function fetchTable() {
const data = res.data.result.data;
const list = data.map((e: PosMaster) => ({
...e,
posMasterNo: formatPosmasterNo(
e.orgShortname,
e.posMasterNoPrefix,
e.posMasterNo.toString(),
e.posMasterNoSuffix ?? ""
),
posMasterNo:
(e.orgShortname !== null ? e.orgShortname : "") +
(e.posMasterNoPrefix ? e.posMasterNoPrefix : "") +
(e.posMasterNo !== null ? e.posMasterNo : "") +
(e.posMasterNoSuffix !== null ? e.posMasterNoPrefix : ""),
}));
rows.value = list;
})
@ -159,7 +157,7 @@ function updatePagination(newPagination: NewPagination) {
reqMaster.page = 1;
}
/**
/**
funcion นหาขอมลใน Table
*/
async function filterKeyword() {

View file

@ -5,7 +5,7 @@ import { useQuasar } from "quasar";
import { usePositionEmp } from "@/modules/16_positionEmployee/store/organizational";
import { useCounterMixin } from "@/stores/mixin";
import { checkPermission } from "@/utils/permissions";
import { updateCurrentPage, formatPosmasterNo } from "@/utils/function";
import { updateCurrentPage } from "@/utils/function";
import genreport from "@/plugins/genreportxlsx";
import config from "@/app.config";
import http from "@/plugins/http";
@ -145,13 +145,6 @@ const columns = ref<QTableProps["columns"]>([
label: "ตำแหน่งเลขที่",
sortable: false,
field: "posMasterNo",
format: (val: any, row: any) =>
formatPosmasterNo(
row.orgShortname,
row.posMasterNoPrefix,
row.posMasterNoMain,
row.posMasterNoSuffix
),
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},

View file

@ -80,10 +80,6 @@ export const usePositionEmp = defineStore("positionEmpStore", () => {
posLevelName: e.isSit ? e.profilePoslevel : e.posLevelName,
posExecutiveName: e.posExecutiveName,
isSit: e.isSit,
orgShortname: e.orgShortname,
posMasterNoPrefix: e.posMasterNoPrefix,
posMasterNoMain: e.posMasterNo,
posMasterNoSuffix: e.posMasterNoSuffix,
}));
return newPosMaster;

View file

@ -6,7 +6,6 @@ import { storeToRefs } from "pinia";
import { useCounterMixin } from "@/stores/mixin";
import { useRoute } from "vue-router";
import { useStructureTree } from "@/stores/structureTree";
import { formatPosmasterNo } from "@/utils/function";
import http from "@/plugins/http";
import config from "@/app.config";
@ -72,18 +71,8 @@ const columns = ref<QTableProps["columns"]>([
field: "posMasterNo",
format(val, row) {
return row.isSit
? formatPosmasterNo(
row.orgShortname,
row.posMasterNoPrefix,
row.posMasterNo,
row.posMasterNoSuffix
) + " (นั่งทับตำแหน่ง)"
: formatPosmasterNo(
row.orgShortname,
row.posMasterNoPrefix,
row.posMasterNo,
row.posMasterNoSuffix
);
? `${row.orgShortname} ${row.posMasterNo}(นั่งทับตำแหน่ง)`
: `${row.orgShortname} ${row.posMasterNo}`;
},
headerStyle: "font-size: 14px",
style: "font-size: 14px",
@ -218,7 +207,7 @@ async function fetchDataTree() {
function onSelectedOrgTree(data: OrgTree) {
orgTreeId.value = data.orgTreeId;
orgLevel.value = data.orgLevel;
onSearchDataTable();
fetchDataTable();
}
/**

View file

@ -50,7 +50,7 @@ const modal = defineModel<boolean>("modal", { required: true });
let reqMaster = defineModel<FilterMaster>("reqMaster", { required: true });
const totalPage = defineModel<number>("totalPage", { required: true });
const nodeTree = defineModel<OrgTree[]>("nodeTree", { required: true });
const columns = defineModel<QTableProps["columns"]>("columns", {});
const columns = defineModel<QTableProps[]>("columns", {});
const rows = defineModel<PosMaster2[]>("rows", { required: true });
const props = defineProps({
fetchDataTree: {

View file

@ -5,7 +5,6 @@ import { useQuasar } from "quasar";
import { useRoute } from "vue-router";
import { useCounterMixin } from "@/stores/mixin";
import { usePositionEmp } from "@/modules/20_positionTemp/store/organizational";
import { formatPosmasterNo } from "@/utils/function";
import http from "@/plugins/http";
import config from "@/app.config";
@ -136,12 +135,11 @@ async function fetchTable() {
const data = res.data.result.data;
const list = data.map((e: PosMaster) => ({
...e,
posMasterNo: formatPosmasterNo(
e.orgShortname,
e.posMasterNoPrefix,
e.posMasterNo.toString(),
e.posMasterNoSuffix ?? ""
),
posMasterNo:
(e.orgShortname !== null ? e.orgShortname : "") +
(e.posMasterNoPrefix ? e.posMasterNoPrefix : "") +
(e.posMasterNo !== null ? e.posMasterNo : "") +
(e.posMasterNoSuffix !== null ? e.posMasterNoPrefix : ""),
}));
rows.value = list;
})

View file

@ -719,7 +719,7 @@ watch(
<DialogMovePos
v-model:modal="modalDialogMMove"
v-model:nodeTree="nodeTree"
v-model:columns="columns"
v-model:columns="columns as QTableProps[]"
v-model:rows="posMaster"
v-model:totalPage="totalPage"
v-model:reqMaster="reqMaster"

View file

@ -94,18 +94,3 @@ export function validateFileSize(
return `ขนาดไฟล์ไม่เกิน ${maxSizeMB}MB`;
}
export function formatPosmasterNo(
orgShortname: string,
posMasterNoPrefix: string,
posMasterNo: string,
posMasterNoSuffix: string
) {
if (!orgShortname || !posMasterNo) return "";
const prefix = posMasterNoPrefix ? `${posMasterNoPrefix} ` : "";
const suffix = posMasterNoSuffix ? ` ${posMasterNoSuffix}` : "";
return `${orgShortname} ${prefix}${posMasterNo}${suffix}`.trim();
}