[Edit SIT] แก้ไขช่วยราชการ และส่งตัวกลับ
This commit is contained in:
parent
3f02f9b53e
commit
1bfcdae54b
7 changed files with 136 additions and 9 deletions
|
|
@ -238,4 +238,5 @@ export default {
|
|||
`${registryNew}${type}/assistance/${id}`,
|
||||
profileAssistanceHistory: (id: string, type: string) =>
|
||||
`${registryNew}${type}/assistance/history/${id}`,
|
||||
profileAssistanceReturn: `${env.API_URI}/placement/repatriation`,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -3,13 +3,14 @@ import { ref, onMounted, reactive } from "vue";
|
|||
import { useQuasar } from "quasar";
|
||||
import axios from "axios";
|
||||
|
||||
import { useRoute } from "vue-router";
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
import { checkPermission } from "@/utils/permissions";
|
||||
import { useCounterMixin } from "@/stores/mixin";
|
||||
import http from "@/plugins/http";
|
||||
import config from "@/app.config";
|
||||
|
||||
import type { QTableColumn } from "quasar";
|
||||
import type { DataOption } from "@/modules/04_registryPerson/interface/index/Main";
|
||||
import type { DatAssistance } from "@/modules/04_registryPerson/interface/request/Government";
|
||||
import type {
|
||||
ResAssistanceData,
|
||||
|
|
@ -21,6 +22,7 @@ import DialogHistory from "@/modules/04_registryPerson/components/detail/DialogH
|
|||
import DialogPreviewCommand from "@/modules/18_command/components/DialogPreviewCommand.vue";
|
||||
|
||||
const route = useRoute();
|
||||
const router = useRouter();
|
||||
const $q = useQuasar();
|
||||
const mixin = useCounterMixin();
|
||||
const {
|
||||
|
|
@ -46,10 +48,22 @@ const isLeave = defineModel<boolean>("isLeave", {
|
|||
});
|
||||
|
||||
const baseColumns = ref<QTableColumn[]>([
|
||||
{
|
||||
name: "commandName",
|
||||
align: "left",
|
||||
label: "ประเภทคำสั่ง",
|
||||
sortable: true,
|
||||
field: "commandName",
|
||||
headerStyle: "font-size: 14px",
|
||||
style: "font-size: 14px",
|
||||
sort: (a: string, b: string) =>
|
||||
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
|
||||
},
|
||||
|
||||
{
|
||||
name: "agency",
|
||||
align: "left",
|
||||
label: "หน่วยงานที่ให้ช่วยราชการ",
|
||||
label: "หน่วยงานที่ให้ช่วยราชการ/ส่งตัวกลับ",
|
||||
sortable: true,
|
||||
field: "agency",
|
||||
headerStyle: "font-size: 14px",
|
||||
|
|
@ -128,6 +142,7 @@ const baseColumns = ref<QTableColumn[]>([
|
|||
},
|
||||
]);
|
||||
const baseVisibleColumns = ref<string[]>([
|
||||
"commandName",
|
||||
"agency",
|
||||
"dateStart",
|
||||
"dateEnd",
|
||||
|
|
@ -168,12 +183,24 @@ const modalCommand = ref<boolean>(false);
|
|||
const command = ref<string>("");
|
||||
const commandId = ref<string>("");
|
||||
|
||||
const commandCodeOptions = ref<DataOption[]>([
|
||||
{
|
||||
name: "ให้ช่วยราชการ",
|
||||
id: "ให้ช่วยราชการ",
|
||||
},
|
||||
{
|
||||
name: "ให้ข้าราชการกลับไปปฏิบัติงานทางต้นสังกัดเดิม",
|
||||
id: "ให้ข้าราชการกลับไปปฏิบัติงานทางต้นสังกัดเดิม",
|
||||
},
|
||||
]); //รายการปรเภทคำสั่ง
|
||||
|
||||
const formData = reactive<DatAssistance>({
|
||||
agency: "",
|
||||
dateStart: null,
|
||||
dateEnd: null,
|
||||
commandNo: "",
|
||||
document: "",
|
||||
commandName: "",
|
||||
// isUpload: false,
|
||||
});
|
||||
const fileUpload = ref<File>();
|
||||
|
|
@ -353,6 +380,7 @@ function openEditDialog(data: ResAssistanceData) {
|
|||
formData.dateEnd = data.dateEnd;
|
||||
formData.commandNo = data.commandNo;
|
||||
formData.document = data.document;
|
||||
formData.commandName = data.commandName;
|
||||
isUpload.value = data.isUpload;
|
||||
if (isUpload.value) {
|
||||
onDownloadFile(data.id, false);
|
||||
|
|
@ -379,10 +407,34 @@ function closeDialogForm() {
|
|||
formData.dateEnd = null;
|
||||
formData.commandNo = "";
|
||||
formData.document = "";
|
||||
formData.commandName = "";
|
||||
isUpload.value = false;
|
||||
fileUpload.value = undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
* ฟังก์ชันส่งตัวกลับ
|
||||
* @param refId ของช่วยราชการ
|
||||
*/
|
||||
async function onReturner(refId: string) {
|
||||
showLoader();
|
||||
const formData = new FormData();
|
||||
formData.append("OfficerId", refId);
|
||||
formData.append("Id", profileId.value);
|
||||
|
||||
await http
|
||||
.post(config.API.profileAssistanceReturn, formData)
|
||||
.then(async () => {
|
||||
router.push("/placement/repatriate");
|
||||
})
|
||||
.catch((err) => {
|
||||
messageError($q, err);
|
||||
})
|
||||
.finally(() => {
|
||||
hideLoader();
|
||||
});
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
fetchData();
|
||||
});
|
||||
|
|
@ -510,6 +562,26 @@ onMounted(() => {
|
|||
>
|
||||
<q-tooltip>แก้ไขข้อมูล</q-tooltip>
|
||||
</q-btn>
|
||||
|
||||
<q-btn
|
||||
v-if="
|
||||
checkPermission($route)?.attrIsUpdate &&
|
||||
props.row.commandName === 'ให้ช่วยราชการ'
|
||||
"
|
||||
flat
|
||||
dense
|
||||
round
|
||||
:color="
|
||||
!props.row.refId || props.row.status !== 'PENDING'
|
||||
? 'grey-5'
|
||||
: 'primary'
|
||||
"
|
||||
:disable="!props.row.refId || props.row.status !== 'PENDING'"
|
||||
icon="mdi-account-arrow-left-outline"
|
||||
@click.stop.prevent="onReturner(props.row.refId)"
|
||||
>
|
||||
<q-tooltip>ส่งตัวกลับ</q-tooltip>
|
||||
</q-btn>
|
||||
</q-td>
|
||||
<q-td v-for="col in props.cols" :key="col.id">
|
||||
<div
|
||||
|
|
@ -569,6 +641,22 @@ onMounted(() => {
|
|||
>
|
||||
<q-tooltip>แก้ไขข้อมูล</q-tooltip>
|
||||
</q-btn>
|
||||
<q-btn
|
||||
v-if="checkPermission($route)?.attrIsUpdate"
|
||||
flat
|
||||
dense
|
||||
round
|
||||
:color="
|
||||
!props.row.refId || props.row.status !== 'PENDING'
|
||||
? 'grey-5'
|
||||
: 'primary'
|
||||
"
|
||||
:disable="!props.row.refId || props.row.status !== 'PENDING'"
|
||||
icon="mdi-account-arrow-left-outline"
|
||||
@click.stop.prevent="onReturner(props.row.refId)"
|
||||
>
|
||||
<q-tooltip>ส่งตัวกลับ</q-tooltip>
|
||||
</q-btn>
|
||||
</div>
|
||||
</div>
|
||||
<q-separator />
|
||||
|
|
@ -643,6 +731,36 @@ onMounted(() => {
|
|||
<q-separator />
|
||||
<q-card-section style="max-height: 50vh">
|
||||
<div class="row col-12 q-col-gutter-x-xs q-col-gutter-y-xs">
|
||||
<div class="col-xs-12 col-sm-12 col-md-12">
|
||||
<!-- :rules="[(val: string) => !!val || 'กรุณาเลือกประเภทคำสั่ง']" -->
|
||||
<q-select
|
||||
outlined
|
||||
class="full-width inputgreen cursor-pointer"
|
||||
dense
|
||||
lazy-rules
|
||||
borderless
|
||||
v-model="formData.commandName"
|
||||
:label="`${'ประเภทคำสั่ง'}`"
|
||||
emit-value
|
||||
map-options
|
||||
option-label="name"
|
||||
:options="commandCodeOptions"
|
||||
option-value="id"
|
||||
hide-bottom-space
|
||||
use-input
|
||||
hide-selected
|
||||
fill-input
|
||||
input-debounce="0"
|
||||
>
|
||||
<template v-slot:no-option>
|
||||
<q-item>
|
||||
<q-item-section class="text-grey">
|
||||
ไม่มีข้อมูล
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</template>
|
||||
</q-select>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-12 col-md-12">
|
||||
<q-input
|
||||
class="full-width inputgreen cursor-pointer"
|
||||
|
|
|
|||
|
|
@ -201,6 +201,9 @@ const baseColumns = ref<QTableColumn[]>([
|
|||
label: "ประเภทคำสั่ง",
|
||||
sortable: true,
|
||||
field: "commandCode",
|
||||
format(val, row) {
|
||||
return row.commandName;
|
||||
},
|
||||
headerStyle: "font-size: 14px",
|
||||
style: "font-size: 14px",
|
||||
sort: (a: string, b: string) =>
|
||||
|
|
@ -804,7 +807,7 @@ function onClikcHistory(id: string) {
|
|||
*/
|
||||
function onRefCommand(data: ResListSalary) {
|
||||
modalCommand.value = true;
|
||||
command.value = data.refCommandNo;
|
||||
command.value = `${data.commandNo}/${Number(data.commandYear) + 543}`;
|
||||
commandId.value = data.commandId;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -206,6 +206,9 @@ const baseColumns = ref<QTableColumn[]>([
|
|||
label: "ประเภทคำสั่ง",
|
||||
sortable: true,
|
||||
field: "commandCode",
|
||||
format(val, row) {
|
||||
return row.commandName;
|
||||
},
|
||||
headerStyle: "font-size: 14px",
|
||||
style: "font-size: 14px",
|
||||
sort: (a: string, b: string) =>
|
||||
|
|
@ -794,7 +797,7 @@ const classInput = (val: boolean) => {
|
|||
|
||||
function onRefCommand(data: ResListSalary) {
|
||||
modalCommand.value = true;
|
||||
command.value = data.refCommandNo;
|
||||
command.value = `${data.commandNo}/${Number(data.commandYear) + 543}`;
|
||||
commandId.value = data.commandId;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ interface DatAssistance {
|
|||
agency: string;
|
||||
commandNo: string;
|
||||
document: string;
|
||||
commandName: string;
|
||||
// isUpload: boolean;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ interface ResActingPosData {
|
|||
interface ResAssistanceData {
|
||||
agency: string;
|
||||
commandNo: string;
|
||||
commandName: string;
|
||||
commandId: string;
|
||||
createdAt: Date | null;
|
||||
createdFullName: string;
|
||||
|
|
|
|||
|
|
@ -80,11 +80,11 @@ const baseItemsMenu = ref<DataOptionSys[]>([
|
|||
name: "ช่วยราชการ",
|
||||
system: "SYS_TEMPDUTY",
|
||||
},
|
||||
{
|
||||
id: "2",
|
||||
name: "ส่งตัวกลับ",
|
||||
system: "SYS_TEMPDUTY2",
|
||||
},
|
||||
// {
|
||||
// id: "2",
|
||||
// name: "ส่งตัวกลับ",
|
||||
// system: "SYS_TEMPDUTY2",
|
||||
// },
|
||||
{
|
||||
id: "3",
|
||||
name: "แต่งตั้ง-เลื่อน-ย้าย",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue