Merge branch 'develop' into dev
Some checks failed
Build & Deploy on Dev / build (push) Failing after 2m38s
Some checks failed
Build & Deploy on Dev / build (push) Failing after 2m38s
This commit is contained in:
commit
aa90e8b9db
8 changed files with 65 additions and 9 deletions
|
|
@ -26,6 +26,7 @@ export default {
|
||||||
placementPass: () => `${placement}/pass`,
|
placementPass: () => `${placement}/pass`,
|
||||||
placementDefermentInfo: (id: string) => `${placement}/pass/deferment/${id}`,
|
placementDefermentInfo: (id: string) => `${placement}/pass/deferment/${id}`,
|
||||||
placementDisclaimInfo: (id: string) => `${placement}/pass/disclaim/${id}`,
|
placementDisclaimInfo: (id: string) => `${placement}/pass/disclaim/${id}`,
|
||||||
|
placementUpdatePass: `${placement}/pass/update-status`,
|
||||||
|
|
||||||
//personal
|
//personal
|
||||||
placementPersonalId: (personalId: string) =>
|
placementPersonalId: (personalId: string) =>
|
||||||
|
|
|
||||||
|
|
@ -589,10 +589,11 @@ onMounted(() => {
|
||||||
option-label="name"
|
option-label="name"
|
||||||
option-value="name"
|
option-value="name"
|
||||||
v-model="formData.prefix"
|
v-model="formData.prefix"
|
||||||
|
clearable
|
||||||
class="inputgreen"
|
class="inputgreen"
|
||||||
:options="store.Ops.prefixOps"
|
:options="store.Ops.prefixOps"
|
||||||
:label="dataLabel.prefix"
|
:label="dataLabel.prefix"
|
||||||
:rules="[(val: string) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
|
:rules="[(val: string) => !!formData.rank || !!formData.prefix || `${'กรุณาเลือกคำนำหน้าชื่อ หรือยศ'}`]"
|
||||||
@filter="(inputValue: string,
|
@filter="(inputValue: string,
|
||||||
doneFn: Function) => filterSelector(inputValue, doneFn, 'prefixOps'
|
doneFn: Function) => filterSelector(inputValue, doneFn, 'prefixOps'
|
||||||
)"
|
)"
|
||||||
|
|
@ -613,6 +614,7 @@ onMounted(() => {
|
||||||
input-debounce="0"
|
input-debounce="0"
|
||||||
option-label="name"
|
option-label="name"
|
||||||
option-value="name"
|
option-value="name"
|
||||||
|
:rules="[(val: string) => !!formData.rank || !!formData.prefix || `${'กรุณาเลือกคำนำหน้าชื่อ หรือยศ'}`]"
|
||||||
v-model="formData.rank"
|
v-model="formData.rank"
|
||||||
class="inputgreen"
|
class="inputgreen"
|
||||||
:options="store.Ops.rankOps"
|
:options="store.Ops.rankOps"
|
||||||
|
|
|
||||||
|
|
@ -553,7 +553,6 @@ onMounted(async () => {
|
||||||
</q-form>
|
</q-form>
|
||||||
|
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
{{ typeEmp }}
|
|
||||||
<!-- v-if="typeEmp != 'employee'" -->
|
<!-- v-if="typeEmp != 'employee'" -->
|
||||||
<Workflow
|
<Workflow
|
||||||
v-model:is-check-data="isCheckData"
|
v-model:is-check-data="isCheckData"
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@ import type {
|
||||||
DataOptionSys,
|
DataOptionSys,
|
||||||
} from "@/modules/04_registryPerson/interface/index/Main";
|
} from "@/modules/04_registryPerson/interface/index/Main";
|
||||||
import type { ResponseObject } from "@/modules/04_registryPerson/interface/response/Profile";
|
import type { ResponseObject } from "@/modules/04_registryPerson/interface/response/Profile";
|
||||||
|
import { s } from "@fullcalendar/core/internal-common";
|
||||||
|
|
||||||
/** importComponents*/
|
/** importComponents*/
|
||||||
const CardNotPermission = defineAsyncComponent(
|
const CardNotPermission = defineAsyncComponent(
|
||||||
|
|
@ -178,6 +179,9 @@ function imageActive(n: any) {
|
||||||
* @param file ไฟล์รูป
|
* @param file ไฟล์รูป
|
||||||
*/
|
*/
|
||||||
function resizeImage(file: File): Promise<File> {
|
function resizeImage(file: File): Promise<File> {
|
||||||
|
if (!file) {
|
||||||
|
return Promise.reject("No file provided");
|
||||||
|
}
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
const img = new Image();
|
const img = new Image();
|
||||||
const reader = new FileReader();
|
const reader = new FileReader();
|
||||||
|
|
@ -240,9 +244,9 @@ const newProfileFile = ref<any>(null);
|
||||||
|
|
||||||
/** ฟังก์ชันอัปโหลด*/
|
/** ฟังก์ชันอัปโหลด*/
|
||||||
async function uploadImg() {
|
async function uploadImg() {
|
||||||
showLoader();
|
|
||||||
newProfileFile.value = await resizeImage(profileFile.value);
|
newProfileFile.value = await resizeImage(profileFile.value);
|
||||||
closeImage();
|
closeImage();
|
||||||
|
showLoader();
|
||||||
await http
|
await http
|
||||||
.post(config.API.orgProfileAvatarbyType(empType.value), {
|
.post(config.API.orgProfileAvatarbyType(empType.value), {
|
||||||
profileId: empType.value == "" ? profileId.value : undefined,
|
profileId: empType.value == "" ? profileId.value : undefined,
|
||||||
|
|
|
||||||
|
|
@ -920,6 +920,28 @@ function onRefCommand(data: any) {
|
||||||
// commandId.value = 'bdf9da91-ba45-497a-a2b7-cc49e2446d97'; //จำลอง
|
// commandId.value = 'bdf9da91-ba45-497a-a2b7-cc49e2446d97'; //จำลอง
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function onUpdateStatus(id: string) {
|
||||||
|
dialogConfirm(
|
||||||
|
$q,
|
||||||
|
async () => {
|
||||||
|
showLoader();
|
||||||
|
try {
|
||||||
|
await http.post(config.API.placementUpdatePass, {
|
||||||
|
personalId: id,
|
||||||
|
});
|
||||||
|
await success($q, "บันทึกสำเร็จ");
|
||||||
|
await getTable();
|
||||||
|
} catch (error) {
|
||||||
|
messageError($q, error);
|
||||||
|
} finally {
|
||||||
|
hideLoader();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ยืนยันการส่งบรรจุ",
|
||||||
|
"ต้องการยืนยันการส่งบรรจุนี้ใช่หรือไม่ ?"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
await getWorkFlow();
|
await getWorkFlow();
|
||||||
await getTable();
|
await getTable();
|
||||||
|
|
@ -982,6 +1004,7 @@ onMounted(async () => {
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
<q-item-section>รายละเอียด</q-item-section>
|
<q-item-section>รายละเอียด</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
|
|
||||||
<q-item
|
<q-item
|
||||||
v-if="
|
v-if="
|
||||||
props.row.nodeName !== null &&
|
props.row.nodeName !== null &&
|
||||||
|
|
@ -1011,6 +1034,7 @@ onMounted(async () => {
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
<q-item-section>เลือกวันรายงานตัว</q-item-section>
|
<q-item-section>เลือกวันรายงานตัว</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
|
|
||||||
<q-item
|
<q-item
|
||||||
v-if="
|
v-if="
|
||||||
roleAdmin &&
|
roleAdmin &&
|
||||||
|
|
@ -1035,6 +1059,7 @@ onMounted(async () => {
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
<q-item-section>คืนตำแหน่ง</q-item-section>
|
<q-item-section>คืนตำแหน่ง</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
|
|
||||||
<q-item
|
<q-item
|
||||||
v-if="
|
v-if="
|
||||||
props.row.bmaOfficer !== 'บุคคลภายนอก' &&
|
props.row.bmaOfficer !== 'บุคคลภายนอก' &&
|
||||||
|
|
@ -1087,6 +1112,26 @@ onMounted(async () => {
|
||||||
<q-item-section>เลือกหน่วยงานที่รับการบรรจุ</q-item-section>
|
<q-item-section>เลือกหน่วยงานที่รับการบรรจุ</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
|
|
||||||
|
<q-item
|
||||||
|
v-if="checkPermission($route)?.attrOwnership == 'OWNER'"
|
||||||
|
clickable
|
||||||
|
v-close-popup
|
||||||
|
@click="onUpdateStatus(props.row.personalId)"
|
||||||
|
>
|
||||||
|
<q-item-section
|
||||||
|
style="min-width: 0px"
|
||||||
|
avatar
|
||||||
|
class="q-py-sm"
|
||||||
|
>
|
||||||
|
<q-icon
|
||||||
|
color="primary"
|
||||||
|
size="xs"
|
||||||
|
name="mdi-account-arrow-right-outline"
|
||||||
|
/>
|
||||||
|
</q-item-section>
|
||||||
|
<q-item-section>บรรจุแล้ว</q-item-section>
|
||||||
|
</q-item>
|
||||||
|
|
||||||
<!-- <q-item
|
<!-- <q-item
|
||||||
v-if="
|
v-if="
|
||||||
props.row.bmaOfficer !== 'บุคคลภายนอก' &&
|
props.row.bmaOfficer !== 'บุคคลภายนอก' &&
|
||||||
|
|
|
||||||
|
|
@ -328,6 +328,7 @@ watch(
|
||||||
map-options
|
map-options
|
||||||
hide-selected
|
hide-selected
|
||||||
fill-input
|
fill-input
|
||||||
|
clearable
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
input-debounce="0"
|
input-debounce="0"
|
||||||
option-label="name"
|
option-label="name"
|
||||||
|
|
@ -336,7 +337,7 @@ watch(
|
||||||
class="inputgreen"
|
class="inputgreen"
|
||||||
:options="prefixOps"
|
:options="prefixOps"
|
||||||
label="คำนำหน้าชื่อ"
|
label="คำนำหน้าชื่อ"
|
||||||
:rules="[(val: string) => !!val || `${'กรุณาเลือก คำนำหน้าชื่อ'}`]"
|
:rules="[(val: string) => !!formData.rank || !!formData.prefix || `${'กรุณาเลือกคำนำหน้าชื่อ หรือยศ'}`]"
|
||||||
@filter="(inputValue: string,
|
@filter="(inputValue: string,
|
||||||
doneFn: Function) => filterSelector(inputValue, doneFn, 'prefix'
|
doneFn: Function) => filterSelector(inputValue, doneFn, 'prefix'
|
||||||
)"
|
)"
|
||||||
|
|
@ -360,6 +361,7 @@ watch(
|
||||||
v-model="formData.rank"
|
v-model="formData.rank"
|
||||||
class="inputgreen"
|
class="inputgreen"
|
||||||
:options="rankOps"
|
:options="rankOps"
|
||||||
|
:rules="[(val: string) => !!formData.rank || !!formData.prefix || `${'กรุณาเลือกคำนำหน้าชื่อ หรือยศ'}`]"
|
||||||
label="ยศ"
|
label="ยศ"
|
||||||
@filter="(inputValue: string,
|
@filter="(inputValue: string,
|
||||||
doneFn: Function) => filterSelector(inputValue, doneFn, 'rank'
|
doneFn: Function) => filterSelector(inputValue, doneFn, 'rank'
|
||||||
|
|
|
||||||
|
|
@ -299,10 +299,10 @@ function clickList(id: string, isData: boolean = false) {
|
||||||
showLoader();
|
showLoader();
|
||||||
const url =
|
const url =
|
||||||
numpage.value === 1
|
numpage.value === 1
|
||||||
? config.API.kpiPlan + `/edit`
|
? config.API.kpiPlan + `/edit-indicator`
|
||||||
: numpage.value === 2
|
: numpage.value === 2
|
||||||
? config.API.kpiRole + `/edit`
|
? config.API.kpiRole + `/edit-indicator`
|
||||||
: config.API.kpiSpecial + `/edit`;
|
: config.API.kpiSpecial + `/edit-indicator`;
|
||||||
http
|
http
|
||||||
.get(`${url}/${id}`)
|
.get(`${url}/${id}`)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import { useRoute, useRouter } from "vue-router";
|
||||||
import { useQuasar } from "quasar";
|
import { useQuasar } from "quasar";
|
||||||
import genReport from "@/plugins/genreport";
|
import genReport from "@/plugins/genreport";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
|
import { checkPermission } from "@/utils/permissions";
|
||||||
|
|
||||||
import http from "@/plugins/http";
|
import http from "@/plugins/http";
|
||||||
import config from "@/app.config";
|
import config from "@/app.config";
|
||||||
|
|
@ -676,7 +677,8 @@ onUnmounted(() => {
|
||||||
<q-btn
|
<q-btn
|
||||||
v-if="
|
v-if="
|
||||||
store.rolePerson == 'USER' &&
|
store.rolePerson == 'USER' &&
|
||||||
store.dataEvaluation.evaluationStatus == 'NEW'
|
store.dataEvaluation.evaluationStatus == 'NEW' &&
|
||||||
|
checkPermission($route)?.attrIsUpdate
|
||||||
"
|
"
|
||||||
:disabled="
|
:disabled="
|
||||||
((store.dataEvaluation.posTypeName != 'อำนวยการ' ||
|
((store.dataEvaluation.posTypeName != 'อำนวยการ' ||
|
||||||
|
|
@ -703,7 +705,8 @@ onUnmounted(() => {
|
||||||
store.rolePerson === 'USER' &&
|
store.rolePerson === 'USER' &&
|
||||||
store.tabMain === '2' &&
|
store.tabMain === '2' &&
|
||||||
store.dataEvaluation.evaluationStatus === 'APPROVE' &&
|
store.dataEvaluation.evaluationStatus === 'APPROVE' &&
|
||||||
store.dataEvaluation.evaluationReqEdit !== 'EVALUATOR'
|
store.dataEvaluation.evaluationReqEdit !== 'EVALUATOR' &&
|
||||||
|
checkPermission($route)?.attrIsUpdate
|
||||||
"
|
"
|
||||||
unelevated
|
unelevated
|
||||||
round
|
round
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue