แก้บรรจุแต่งตั้ง ตามโครงสร้างใหม่ (change req)
This commit is contained in:
parent
8e11c4f539
commit
85dd0628f4
3 changed files with 188 additions and 92 deletions
|
|
@ -18,6 +18,8 @@ const positionId = defineModel<string>("positionId", { required: true });
|
||||||
const seletcId = defineModel<string>("seletcId", { required: true });
|
const seletcId = defineModel<string>("seletcId", { required: true });
|
||||||
const date = defineModel<Date>("datePos", { required: true });
|
const date = defineModel<Date>("datePos", { required: true });
|
||||||
const positionData = defineModel<any>("position", { required: true });
|
const positionData = defineModel<any>("position", { required: true });
|
||||||
|
const isAll = defineModel<boolean>("isAll", { required: true });
|
||||||
|
const isBlank = defineModel<boolean>("isBlank", { required: true });
|
||||||
|
|
||||||
const filters = ref<string>("");
|
const filters = ref<string>("");
|
||||||
const rowsPosition = ref<Positions[]>([]);
|
const rowsPosition = ref<Positions[]>([]);
|
||||||
|
|
@ -204,6 +206,7 @@ onMounted(async () => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="column q-col-gutter-sm" style="height: 70vh">
|
<div class="column q-col-gutter-sm" style="height: 70vh">
|
||||||
<!-- เลือกเลขที่ตำแหน่ง -->
|
<!-- เลือกเลขที่ตำแหน่ง -->
|
||||||
|
|
@ -215,8 +218,29 @@ onMounted(async () => {
|
||||||
<div class="col-12"><q-separator /></div>
|
<div class="col-12"><q-separator /></div>
|
||||||
<div class="col-12 q-pa-md">
|
<div class="col-12 q-pa-md">
|
||||||
<q-toolbar style="padding: 0px">
|
<q-toolbar style="padding: 0px">
|
||||||
<q-space />
|
|
||||||
<div class="row q-gutter-md">
|
<div class="row q-gutter-md">
|
||||||
|
<q-checkbox
|
||||||
|
keep-color
|
||||||
|
v-model="isBlank"
|
||||||
|
label="แสดงเฉพาะตำแหน่งว่าง"
|
||||||
|
color="primary"
|
||||||
|
>
|
||||||
|
<q-tooltip>แสดงเฉพาะตำแหน่งว่าง </q-tooltip>
|
||||||
|
</q-checkbox>
|
||||||
|
</div>
|
||||||
|
<q-space />
|
||||||
|
|
||||||
|
<div class="row q-gutter-md">
|
||||||
|
<q-checkbox
|
||||||
|
keep-color
|
||||||
|
v-model="isAll"
|
||||||
|
label="แสดงตำแหน่งทั้งหมด"
|
||||||
|
color="primary"
|
||||||
|
>
|
||||||
|
<q-tooltip
|
||||||
|
>แสดงตำแหน่งทั้งหมดภายใต้หน่วยงาน/ส่วนราชการที่เลือก</q-tooltip
|
||||||
|
>
|
||||||
|
</q-checkbox>
|
||||||
<div>
|
<div>
|
||||||
<q-input outlined dense v-model="filters" label="ค้นหา">
|
<q-input outlined dense v-model="filters" label="ค้นหา">
|
||||||
<template v-slot:append>
|
<template v-slot:append>
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,6 @@ const {
|
||||||
showLoader,
|
showLoader,
|
||||||
hideLoader,
|
hideLoader,
|
||||||
messageError,
|
messageError,
|
||||||
date2Thai,
|
|
||||||
dialogMessageNotify,
|
dialogMessageNotify,
|
||||||
dialogConfirm,
|
dialogConfirm,
|
||||||
} = useCounterMixin();
|
} = useCounterMixin();
|
||||||
|
|
@ -67,6 +66,7 @@ const seletcId = ref<string>("");
|
||||||
const selectedPos = ref<any[]>([]);
|
const selectedPos = ref<any[]>([]);
|
||||||
const datePos = ref<Date>(new Date());
|
const datePos = ref<Date>(new Date());
|
||||||
const posMasterMain = ref<any>([]);
|
const posMasterMain = ref<any>([]);
|
||||||
|
const orgRevisionId = ref<string>("");
|
||||||
|
|
||||||
/** function เรียกข้อมูลโครงสร้าง แบบปัจุบันและ แบบร่าง*/
|
/** function เรียกข้อมูลโครงสร้าง แบบปัจุบันและ แบบร่าง*/
|
||||||
async function fetchOrganizationActive() {
|
async function fetchOrganizationActive() {
|
||||||
|
|
@ -76,6 +76,7 @@ async function fetchOrganizationActive() {
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
const data = res.data.result;
|
const data = res.data.result;
|
||||||
if (data) {
|
if (data) {
|
||||||
|
orgRevisionId.value = data.activeId;
|
||||||
fetchDataTree(data.activeId);
|
fetchDataTree(data.activeId);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
@ -135,14 +136,23 @@ function updateSelected(data: TreeMain) {
|
||||||
* @param id idTree
|
* @param id idTree
|
||||||
* @param level levelTree
|
* @param level levelTree
|
||||||
*/
|
*/
|
||||||
|
const isAll = ref<boolean>(false);
|
||||||
|
const isBlank = ref<boolean>(false);
|
||||||
async function fetchDataTable(id: string, level: number = 0) {
|
async function fetchDataTable(id: string, level: number = 0) {
|
||||||
|
console.log(props.dataRow);
|
||||||
|
|
||||||
showLoader();
|
showLoader();
|
||||||
const body = {
|
const body = {
|
||||||
node: level,
|
node: level,
|
||||||
nodeId: id,
|
nodeId: id,
|
||||||
position: props?.dataRow?.positionCandidate,
|
position: props?.dataRow?.positionCandidate,
|
||||||
typeCommand: props.typeCommand,
|
typeCommand: props.typeCommand,
|
||||||
|
posLevel: props.dataRow?.posLevelId,
|
||||||
|
posType: props.dataRow?.posTypeId,
|
||||||
|
isAll: isAll.value,
|
||||||
|
isBlank: isBlank.value,
|
||||||
};
|
};
|
||||||
|
|
||||||
await http
|
await http
|
||||||
.post(config.API.orgPosPlacement, body)
|
.post(config.API.orgPosPlacement, body)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
|
|
@ -211,17 +221,21 @@ async function onClickSubmit() {
|
||||||
} else {
|
} else {
|
||||||
dialogConfirm($q, async () => {
|
dialogConfirm($q, async () => {
|
||||||
showLoader();
|
showLoader();
|
||||||
|
|
||||||
const body = {
|
const body = {
|
||||||
PersonalId: props?.dataRow?.personalId,
|
personalId: props?.dataRow?.personalId,
|
||||||
node: nodeLevel.value,
|
node: nodeLevel.value,
|
||||||
nodeId: nodeId.value,
|
nodeId: nodeId.value,
|
||||||
posmasterId: positionId.value,
|
orgRevisionId: orgRevisionId.value,
|
||||||
positionId: selectedPos.value[0].id,
|
positionId: selectedPos.value[0].id,
|
||||||
|
posMasterNo: dataPosMaster.posMasterNo, //เลขที่ตำแหน่ง(เลขอย่่างเดียว)
|
||||||
|
positionName: selectedPos.value[0].positionName, //ชื่อตำแหน่ง
|
||||||
|
positionField: selectedPos.value[0].positionField, //ชื่อตำแหน่ง
|
||||||
|
posTypeId: selectedPos.value[0].posTypeId, //ชื่อตำแหน่ง
|
||||||
|
posTypeName: selectedPos.value[0].posTypeName, //ชื่อตำแหน่ง
|
||||||
|
posLevelId: selectedPos.value[0].posLevelId, //ชื่อตำแหน่ง
|
||||||
|
posLevelName: selectedPos.value[0].posLevelName, //ชื่อตำแหน่ง
|
||||||
reportingDate: datePos.value,
|
reportingDate: datePos.value,
|
||||||
organizationName: dataNode.orgTreeName, //ชื่อหน่วยงาน
|
|
||||||
orgTreeShortName: dataNode.orgTreeShortName, //ชื่อย่อ
|
|
||||||
posPath: selectedPos.value[0].positionName, //ชื่อตำแหน่ง
|
|
||||||
posNumber: dataPosMaster.posMasterNo, //เลขที่ตำแหน่ง(เลขอย่่างเดียว)
|
|
||||||
typeCommand: props.typeCommand,
|
typeCommand: props.typeCommand,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -296,7 +310,30 @@ function filterNodeFn(data: any, id: string) {
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
watch(
|
||||||
|
() => isAll.value,
|
||||||
|
(value, oldVal) => {
|
||||||
|
console.log("value", value);
|
||||||
|
console.log("oldVal", oldVal);
|
||||||
|
isAll.value = value;
|
||||||
|
|
||||||
|
fetchDataTable(nodeId.value, nodeLevel.value);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
watch(
|
||||||
|
() => isBlank.value,
|
||||||
|
(value, oldVal) => {
|
||||||
|
console.log("isBlank value", value);
|
||||||
|
console.log("isBlank oldVal", oldVal);
|
||||||
|
isBlank.value = value;
|
||||||
|
|
||||||
|
fetchDataTable(nodeId.value, nodeLevel.value);
|
||||||
|
}
|
||||||
|
);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<q-dialog v-model="modal" full-width persistent>
|
<q-dialog v-model="modal" full-width persistent>
|
||||||
<q-card>
|
<q-card>
|
||||||
|
|
@ -388,6 +425,8 @@ function filterNodeFn(data: any, id: string) {
|
||||||
v-model:datePos="datePos"
|
v-model:datePos="datePos"
|
||||||
v-model:positionId="positionId"
|
v-model:positionId="positionId"
|
||||||
v-model:seletcId="seletcId"
|
v-model:seletcId="seletcId"
|
||||||
|
v-model:is-all="isAll"
|
||||||
|
v-model:is-blank="isBlank"
|
||||||
/>
|
/>
|
||||||
</q-tab-panel>
|
</q-tab-panel>
|
||||||
</q-tab-panels>
|
</q-tab-panels>
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
import keycloak from "@/plugins/keycloak";
|
import keycloak from "@/plugins/keycloak";
|
||||||
import router from "@/router";
|
import router from "@/router";
|
||||||
|
import avatar from "@/assets/avatar_user.jpg";
|
||||||
|
|
||||||
let roleAdmin = ref<boolean>(false);
|
let roleAdmin = ref<boolean>(false);
|
||||||
|
|
||||||
|
|
@ -91,7 +92,7 @@ const personalId = ref<string>("");
|
||||||
|
|
||||||
/** แสดงข้อมูลตารางหลัก */
|
/** แสดงข้อมูลตารางหลัก */
|
||||||
const visibleColumns = ref<any[]>([
|
const visibleColumns = ref<any[]>([
|
||||||
"position",
|
"no",
|
||||||
"fullName",
|
"fullName",
|
||||||
"examNumber",
|
"examNumber",
|
||||||
"idCard",
|
"idCard",
|
||||||
|
|
@ -108,6 +109,7 @@ const visibleColumns = ref<any[]>([
|
||||||
* ตาราง ส่งรายชื่อไปหน่วยงาน
|
* ตาราง ส่งรายชื่อไปหน่วยงาน
|
||||||
*/
|
*/
|
||||||
const visibleColumnslist = ref<any>([
|
const visibleColumnslist = ref<any>([
|
||||||
|
"no",
|
||||||
"fullName",
|
"fullName",
|
||||||
"examNumber",
|
"examNumber",
|
||||||
"idCard",
|
"idCard",
|
||||||
|
|
@ -121,11 +123,11 @@ const visibleColumnslist = ref<any>([
|
||||||
/**หัวตาราง */
|
/**หัวตาราง */
|
||||||
const columns = ref<QTableProps["columns"]>([
|
const columns = ref<QTableProps["columns"]>([
|
||||||
{
|
{
|
||||||
name: "position",
|
name: "no",
|
||||||
align: "center",
|
align: "center",
|
||||||
label: "ลำดับ",
|
label: "ลำดับ",
|
||||||
sortable: false,
|
sortable: false,
|
||||||
field: "position",
|
field: "no",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
|
|
@ -274,42 +276,58 @@ async function getTable() {
|
||||||
res.data.result.map((data: any) => {
|
res.data.result.map((data: any) => {
|
||||||
const rowData = {
|
const rowData = {
|
||||||
personalId: data.personalId,
|
personalId: data.personalId,
|
||||||
idCard: data.idCard,
|
avatar: data.avatar,
|
||||||
fullName: data.fullName + " " + data.idCard,
|
|
||||||
name: data.fullName,
|
name: data.fullName,
|
||||||
profilePhoto: data.profilePhoto ?? "",
|
fullName: data.fullName + " " + data.idCard,
|
||||||
avatar: data.avatar ?? "",
|
idCard: data.idCard,
|
||||||
organizationName:
|
|
||||||
data.organizationName +
|
|
||||||
" " +
|
|
||||||
data.organizationShortName +
|
|
||||||
" " +
|
|
||||||
data.positionNumber +
|
|
||||||
" " +
|
|
||||||
data.positionPath,
|
|
||||||
orgName: data.organizationName,
|
|
||||||
organizationShortName: data.organizationShortName,
|
|
||||||
positionNumber: data.positionNumber,
|
|
||||||
positionPath: data.positionPath,
|
|
||||||
reportingDate:
|
|
||||||
data.reportingDate == null
|
|
||||||
? null
|
|
||||||
: dateText(new Date(data.reportingDate)),
|
|
||||||
examNumber: data.examNumber,
|
examNumber: data.examNumber,
|
||||||
|
root: data.root,
|
||||||
|
rootId: data.rootId,
|
||||||
|
rootShortName: data.rootShortName,
|
||||||
|
child1: data.child1,
|
||||||
|
child1Id: data.child1Id,
|
||||||
|
child1ShortName: data.child1ShortName,
|
||||||
|
child2: data.child2,
|
||||||
|
child2Id: data.child2Id,
|
||||||
|
child2ShortName: data.child2ShortName,
|
||||||
|
child3: data.child3,
|
||||||
|
child3Id: data.child3Id,
|
||||||
|
child3ShortName: data.child3ShortName,
|
||||||
|
child4: data.child4,
|
||||||
|
child4Id: data.child4Id,
|
||||||
|
child4ShortName: data.child4ShortName,
|
||||||
|
node: data.node,
|
||||||
|
nodeName: data.nodeName,
|
||||||
|
nodeId: data.nodeId,
|
||||||
|
nodeShortName: data.nodeShortName,
|
||||||
|
orgRevisionId: data.orgRevisionId,
|
||||||
|
positionId: data.positionId,
|
||||||
|
posMasterNo: data.posMasterNo,
|
||||||
|
positionName: data.positionName,
|
||||||
|
positionField: data.positionField,
|
||||||
|
posTypeId: data.posTypeId,
|
||||||
|
posTypeName: data.posTypeName,
|
||||||
|
posLevelId: data.posLevelId,
|
||||||
|
posLevelName: data.posLevelName,
|
||||||
|
positionCandidate: data.positionCandidate,
|
||||||
|
positionCandidateId: data.positionCandidateId,
|
||||||
|
reportingDate: data.reportingDate,
|
||||||
bmaOfficer: convertBmaOfficer(data.bmaOfficer),
|
bmaOfficer: convertBmaOfficer(data.bmaOfficer),
|
||||||
statusId: data.statusId,
|
statusId: data.statusId,
|
||||||
statusName: convertContainStatus(data.statusId),
|
|
||||||
deferment: data.deferment,
|
|
||||||
draft: convertDraft(data.draft),
|
draft: convertDraft(data.draft),
|
||||||
positionCandidate: data.positionCandidate,
|
typeCommand: data.typeCommand,
|
||||||
node: data.node,
|
|
||||||
nodeId: data.nodeId,
|
statusName: convertContainStatus(data.statusId),
|
||||||
posmasterId: data.posmasterId,
|
organizationName:
|
||||||
positionId: data.positionId,
|
data.root +
|
||||||
orgTreeShortName: data.orgTreeShortName,
|
" " +
|
||||||
posPath: data.posPath,
|
data.rootShortName +
|
||||||
posNumber: data.posNumber,
|
" " +
|
||||||
reportingDateFullDate: data.reportingDate,
|
data.nodeName +
|
||||||
|
"" +
|
||||||
|
data.nodeShortName +
|
||||||
|
"" +
|
||||||
|
data.posMasterNo,
|
||||||
};
|
};
|
||||||
rowsAll.value.push(rowData);
|
rowsAll.value.push(rowData);
|
||||||
});
|
});
|
||||||
|
|
@ -325,6 +343,8 @@ async function getTable() {
|
||||||
e.positionNumber !== null &&
|
e.positionNumber !== null &&
|
||||||
e.statusName == "เตรียมบรรจุ"
|
e.statusName == "เตรียมบรรจุ"
|
||||||
);
|
);
|
||||||
|
|
||||||
|
insertAvatar(rowsAll.value);
|
||||||
})
|
})
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
messageError($q, e);
|
messageError($q, e);
|
||||||
|
|
@ -334,6 +354,32 @@ async function getTable() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function insertAvatar(items: any) {
|
||||||
|
items.map((x: any, index: number) => {
|
||||||
|
http
|
||||||
|
.get(
|
||||||
|
config.API.fileByFile(
|
||||||
|
"ทะเบียนประวัติ",
|
||||||
|
"โปรไฟล์",
|
||||||
|
x.id,
|
||||||
|
"profile-" + x.id
|
||||||
|
)
|
||||||
|
)
|
||||||
|
.then((img) => {
|
||||||
|
rowsAll.value[index] = {
|
||||||
|
...x,
|
||||||
|
avatar: img.data.downloadUrl,
|
||||||
|
};
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
rowsAll.value[index] = {
|
||||||
|
...x,
|
||||||
|
avatar: avatar,
|
||||||
|
};
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
/**ยืนยันการผ่อนผัน */
|
/**ยืนยันการผ่อนผัน */
|
||||||
async function saveDeferment() {
|
async function saveDeferment() {
|
||||||
myForm.value.validate().then(async (result: boolean) => {
|
myForm.value.validate().then(async (result: boolean) => {
|
||||||
|
|
@ -659,7 +705,7 @@ onMounted(async () => {
|
||||||
@click="selectData(props.row.personalId, props.row.draft)"
|
@click="selectData(props.row.personalId, props.row.draft)"
|
||||||
class="cursor-pointer"
|
class="cursor-pointer"
|
||||||
>
|
>
|
||||||
<template v-if="col.name === 'position'">
|
<template v-if="col.name === 'no'">
|
||||||
{{ props.rowIndex + 1 }}
|
{{ props.rowIndex + 1 }}
|
||||||
</template>
|
</template>
|
||||||
<template
|
<template
|
||||||
|
|
@ -668,12 +714,9 @@ onMounted(async () => {
|
||||||
>
|
>
|
||||||
<q-item v-ripple>
|
<q-item v-ripple>
|
||||||
<q-item-section avatar>
|
<q-item-section avatar>
|
||||||
<img
|
<q-avatar size="30px" color="grey-4">
|
||||||
v-if="props.row.avatar == ''"
|
<q-img :src="props.row.avatar" class="photo-profile" />
|
||||||
src="@/assets/avatar_user.jpg"
|
</q-avatar>
|
||||||
class="col-4 img-info"
|
|
||||||
/>
|
|
||||||
<img v-else :src="props.row.avatar" class="col-4 img-info" />
|
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
|
|
||||||
<q-item-section>
|
<q-item-section>
|
||||||
|
|
@ -696,18 +739,18 @@ onMounted(async () => {
|
||||||
>
|
>
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<div class="text-weight-medium">
|
<div class="text-weight-medium">
|
||||||
{{ props.row.orgName !== null ? props.row.orgName : "-" }}
|
{{ props.row.root !== null ? props.row.root : "-" }}
|
||||||
{{
|
{{
|
||||||
props.row.orgTreeShortName !== null
|
props.row.rootShortName !== null
|
||||||
? `(${props.row.orgTreeShortName})`
|
? `(${props.row.rootShortName})`
|
||||||
: ""
|
: ""
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
<div class="text-weight-light">
|
<div class="text-weight-light">
|
||||||
{{ props.row.posPath !== null ? props.row.posPath : "" }}
|
{{ props.row.nodeName !== null ? props.row.nodeName : "" }}
|
||||||
{{
|
{{
|
||||||
props.row.orgTreeShortName !== null
|
props.row.nodeShortName !== null
|
||||||
? `(${props.row.orgTreeShortName}${props.row.posNumber})`
|
? `(${props.row.nodeShortName}${props.row.posMasterNo})`
|
||||||
: ""
|
: ""
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -733,17 +776,19 @@ onMounted(async () => {
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template
|
<template v-else-if="col.name === 'reportingDate'">
|
||||||
v-else-if="col.name === 'reportingDate' && col.value !== '-'"
|
|
||||||
>
|
|
||||||
<div class="text-weight-medium">
|
<div class="text-weight-medium">
|
||||||
{{ props.row.reportingDate }}
|
{{
|
||||||
|
props.row.reportingDate !== null
|
||||||
|
? dateText(props.row.reportingDate)
|
||||||
|
: "-"
|
||||||
|
}}
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template v-else-if="col.name === 'bmaOfficer'">
|
<template v-else-if="col.name === 'bmaOfficer'">
|
||||||
<div class="text-weight-medium">
|
<div class="text-weight-medium">
|
||||||
{{ props.row.bmaOfficer !== null ? props.row.bmaOfficer : "-" }}
|
{{ props.row.bmaOfficer }}
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
@ -1177,16 +1222,9 @@ onMounted(async () => {
|
||||||
>
|
>
|
||||||
<q-item v-ripple style="padding: 0">
|
<q-item v-ripple style="padding: 0">
|
||||||
<q-item-section avatar>
|
<q-item-section avatar>
|
||||||
<img
|
<q-avatar size="32px" color="grey-4">
|
||||||
v-if="props.row.avatar == ''"
|
<q-img :src="props.row.avatar" class="photo-profile" />
|
||||||
src="@/assets/avatar_user.jpg"
|
</q-avatar>
|
||||||
class="col-4 img-info"
|
|
||||||
/>
|
|
||||||
<img
|
|
||||||
v-else
|
|
||||||
:src="props.row.avatar"
|
|
||||||
class="col-4 img-info"
|
|
||||||
/>
|
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
|
|
||||||
<q-item-section>
|
<q-item-section>
|
||||||
|
|
@ -1232,27 +1270,26 @@ onMounted(async () => {
|
||||||
>
|
>
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<div class="text-weight-medium">
|
<div class="text-weight-medium">
|
||||||
|
{{ props.row.root !== null ? props.row.root : "-" }}
|
||||||
{{
|
{{
|
||||||
props.row.orgName !== null ? props.row.orgName : "-"
|
props.row.rootShortName !== null
|
||||||
}}
|
? `(${props.row.rootShortName})`
|
||||||
{{
|
|
||||||
props.row.orgTreeShortName !== null
|
|
||||||
? `(${props.row.orgTreeShortName})`
|
|
||||||
: ""
|
: ""
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
<div class="text-weight-light">
|
<div class="text-weight-light">
|
||||||
{{
|
{{
|
||||||
props.row.posPath !== null ? props.row.posPath : "-"
|
props.row.nodeName !== null ? props.row.nodeName : ""
|
||||||
}}
|
}}
|
||||||
{{
|
{{
|
||||||
props.row.posNumber !== null
|
props.row.nodeShortName !== null
|
||||||
? `(${props.row.orgTreeShortName}${props.row.posNumber})`
|
? `(${props.row.nodeShortName}${props.row.posMasterNo})`
|
||||||
: ""
|
: ""
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<div class="text-weight-medium">-</div>
|
<div class="text-weight-medium">-</div>
|
||||||
|
|
@ -1270,18 +1307,18 @@ onMounted(async () => {
|
||||||
{{ props.row.positionCandidate }}
|
{{ props.row.positionCandidate }}
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template
|
<template v-else-if="col.name === 'reportingDate'">
|
||||||
v-else-if="col.name === 'reportingDate' && col.value !== '-'"
|
|
||||||
>
|
|
||||||
<div class="text-weight-medium">
|
<div class="text-weight-medium">
|
||||||
{{ props.row.reportingDate }}
|
{{
|
||||||
|
props.row.reportingDate !== null
|
||||||
|
? dateText(props.row.reportingDate)
|
||||||
|
: "-"
|
||||||
|
}}
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="col.name === 'bmaOfficer'">
|
<template v-else-if="col.name === 'bmaOfficer'">
|
||||||
<div class="text-weight-medium">
|
<div class="text-weight-medium">
|
||||||
{{
|
{{ props.row.bmaOfficer }}
|
||||||
props.row.bmaOfficer !== null ? props.row.bmaOfficer : "-"
|
|
||||||
}}
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="col.name === 'draft'">
|
<template v-else-if="col.name === 'draft'">
|
||||||
|
|
@ -1347,12 +1384,8 @@ onMounted(async () => {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
color: #818181;
|
color: #818181;
|
||||||
}
|
}
|
||||||
|
.photo-profile {
|
||||||
.img-info {
|
width: 30px;
|
||||||
width: 30px !important;
|
height: 30px;
|
||||||
height: 30px !important;
|
|
||||||
border-radius: 50%;
|
|
||||||
object-fit: cover;
|
|
||||||
margin-right: 10px;
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue