diff --git a/src/modules/03_recruiting/interface/request/Period.ts b/src/modules/03_recruiting/interface/request/Period.ts index 8a2bb961f..aab6d13ad 100644 --- a/src/modules/03_recruiting/interface/request/Period.ts +++ b/src/modules/03_recruiting/interface/request/Period.ts @@ -75,6 +75,7 @@ interface RequestPosition { typeId: string; typeName: string; highDegree: Boolean; + educationLevel?: string; } interface RequestPayment { diff --git a/src/modules/03_recruiting/interface/response/Period.ts b/src/modules/03_recruiting/interface/response/Period.ts index ce76476f0..3937470d9 100644 --- a/src/modules/03_recruiting/interface/response/Period.ts +++ b/src/modules/03_recruiting/interface/response/Period.ts @@ -56,6 +56,7 @@ interface ResponsePosition { name: string; }; highDegree: string; + educationLevel?: string; } interface ResponsePayment { id: string; diff --git a/src/modules/03_recruiting/views/02_qualify/PeriodAdd.vue b/src/modules/03_recruiting/views/02_qualify/PeriodAdd.vue index 46d808300..87374ed7d 100644 --- a/src/modules/03_recruiting/views/02_qualify/PeriodAdd.vue +++ b/src/modules/03_recruiting/views/02_qualify/PeriodAdd.vue @@ -84,6 +84,7 @@ const datePayment = ref<[Date, Date] | null>(null); //วันที่จ่ const dateAnnouncement = ref<[Date, Date] | null>(null); //วันที่ประกาศ const dateAnnounce = ref(null); //วันประกาศผลสอบ const dateExam = ref(null); //วันที่สอบ +const graduationYearLock = ref(3); //ล็อกวันที่สำเร็จการศึกษา (ปี) const myFormPayment = ref(); const myFormPosition = ref(); const organizationShortName = ref(); @@ -150,6 +151,7 @@ const visibleColumnsPosition = ref([ "position", "level", "type", + "educational", "highDegree", ]); const columnsPosition = ref([ @@ -199,6 +201,18 @@ const columnsPosition = ref([ a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }), }, + { + name: "educational", + align: "left", + label: "กำหนดขีดจำกัดวุฒิการศึกษา", + sortable: true, + field: "educational", + headerStyle: "font-size: 14px", + style: "font-size: 14px", + sort: (a: string, b: string) => + a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }), + }, + { name: "type", align: "left", @@ -242,6 +256,7 @@ async function fetchData() { }, code: r.code, highDegree: r.highDegree == true ? "1" : "0", + educationLevel: r.educationLevel, }); }); const bankData: ResponsePayment[] = []; @@ -314,6 +329,7 @@ async function fetchData() { companyCode.value = data.companyCode; refNo1.value = data.refNo1; reason.value = data.reason; + graduationYearLock.value = data.graduationYearLock; }) .catch((e) => { messageError($q, e); @@ -405,6 +421,7 @@ function sendData() { typeName: r.type.name, code: r.code, highDegree: r.highDegree == "1" ? true : false, + educationLevel: r.educationLevel, }); }); if (fee.value == 0) { @@ -459,6 +476,7 @@ function sendData() { companyCode: companyCode.value, refNo1: refNo1.value, reason: reason.value, + graduationYearLock: Number(graduationYearLock.value), }; return valueData; } @@ -842,6 +860,8 @@ function onUpdateHighDegree(val: string, index: string) { rowsPosition.value[index].position = null; rowsPosition.value[index].level = val === "0" ? optionPosLevel1.value[0] : optionPosLevel2.value[0]; + rowsPosition.value[index].educationLevel = + val === "0" ? "LOW_BACHELOR" : "BACHELOR"; } watch(fee, () => { @@ -1017,6 +1037,7 @@ onMounted(async () => { :readonly="checkRoutePermisson" :enableTimePicker="false" week-start="0" + hide-bottom-space >