diff --git a/src/api/05_placement/api.placement.ts b/src/api/05_placement/api.placement.ts index 9272786ba..3fee87d90 100644 --- a/src/api/05_placement/api.placement.ts +++ b/src/api/05_placement/api.placement.ts @@ -11,6 +11,7 @@ const placemenRelocation = `${placement}/relocation`; const placemenOther = `${env.API_URI}/retirement/other`; const placemenAppointment = `${placement}/appointment`; const orgSearchCommand = `${env.API_URI}/org/profile/search/profile/command`; +const report = `${env.API_PLACEMENT_URI}/placement/report`; export default { MainDetail: (year: number) => `${placement}/exam/${year}`, @@ -178,4 +179,7 @@ export default { appointEmployeeOrder: (typeId: string) => `${placement}/appointment/temp/report/${typeId}`, apppointmentPositionUse: () => `${placement}/appointment/temp/use`, + + //รายงาน + placementReport: `${report}`, }; diff --git a/src/api/05_placement/api.probation.ts b/src/api/05_placement/api.probation.ts index 77496ecde..f03e243fa 100644 --- a/src/api/05_placement/api.probation.ts +++ b/src/api/05_placement/api.probation.ts @@ -7,6 +7,7 @@ const evaluate = `${env.API_PROBATION_URI}`; const appointMain = `${env.API_PROBATION_URI}/appoint`; const orgProfile = `${env.API_URI}/org`; const probation = `${env.API_URI}/probation`; +const report = `${env.API_URI}/probation/report`; export default { competencyOptions: (personalId: string) => @@ -87,9 +88,12 @@ export default { `${orgProfile}/profile/probation/${profileId}`, appointMain, - appointMainList:(id:string)=>`${appointMain}/list/${id}`, + appointMainList: (id: string) => `${appointMain}/list/${id}`, - orgProfileDirector:`${orgProfile}/profile/commander-director`, + orgProfileDirector: `${orgProfile}/profile/commander-director`, - permissionsCheck:(id:string)=>`${probation}/permissions/${id}` + permissionsCheck: (id: string) => `${probation}/permissions/${id}`, + + //รายงาน + probationReport: `${report}`, }; diff --git a/src/api/06_retirement/api.retirement.ts b/src/api/06_retirement/api.retirement.ts index fab4abd09..fffee4246 100644 --- a/src/api/06_retirement/api.retirement.ts +++ b/src/api/06_retirement/api.retirement.ts @@ -3,6 +3,7 @@ const retirement = `${env.API_URI}/retirement`; const retirementDischarge = `${retirement}/discharge`; const retirementExpulsion = `${retirement}/expulsion`; const retirementOut = `${retirement}/out`; +const report = `${retirement}/report`; export default { profile: (type: string, year: string) => @@ -72,4 +73,7 @@ export default { editDetail: (retireId: string) => `${retirement}/detail/${retireId}`, // ตำถาม Exit interview questionnaireList: () => `${retirement}/resign/questionnaire/question/admin`, + + //รายงาน + retirementReport: `${report}`, }; diff --git a/src/modules/05_placement/interface/index/Main.ts b/src/modules/05_placement/interface/index/Main.ts index 591a62635..8bb806ded 100644 --- a/src/modules/05_placement/interface/index/Main.ts +++ b/src/modules/05_placement/interface/index/Main.ts @@ -14,6 +14,12 @@ interface DataOption1 { name: string | null; disable?: boolean; } + +interface DataTypeReport { + id: string; + name: string; + type: string; +} interface DataOptionInsignia { id: string; name: string; @@ -484,6 +490,7 @@ export type { DataPermissions, TabPermissions, MainData, + DataTypeReport, }; export { AddressDataDefualt, FamilyDataDefualt }; diff --git a/src/modules/05_placement/views/09_reportMain.vue b/src/modules/05_placement/views/09_reportMain.vue index e9348fe81..731d69964 100644 --- a/src/modules/05_placement/views/09_reportMain.vue +++ b/src/modules/05_placement/views/09_reportMain.vue @@ -1,23 +1,65 @@ - + diff --git a/src/modules/06_retirement/interface/index/Main.ts b/src/modules/06_retirement/interface/index/Main.ts index f8c560856..3fb9448e8 100644 --- a/src/modules/06_retirement/interface/index/Main.ts +++ b/src/modules/06_retirement/interface/index/Main.ts @@ -51,4 +51,22 @@ interface DataStatus { group: string; } -export type { Pagination, RetirementList, PersonData, RoundData, DataStatus }; +interface DataOption { + id: string; + name: string; +} + +interface DataDateMonthObject { + month: number; + year: number; +} + +export type { + Pagination, + RetirementList, + PersonData, + RoundData, + DataStatus, + DataOption, + DataDateMonthObject, +}; diff --git a/src/modules/06_retirement/router.ts b/src/modules/06_retirement/router.ts index fe4177222..8c2b30344 100644 --- a/src/modules/06_retirement/router.ts +++ b/src/modules/06_retirement/router.ts @@ -59,6 +59,10 @@ const outDetail = () => const outDetailOnly = () => import("@/modules/06_retirement/components/06_dismissOrder/Detail.vue"); +/** รายงาน*/ + +const ReportView = () => import("@/modules/06_retirement/views/07_report.vue"); + export default [ { path: "/retirement", @@ -305,44 +309,15 @@ export default [ Role: "STAFF", }, }, - // { - // path: "/retirement/discharged", - // name: "discharged", - // component: dischargedMain, - // meta: { - // Auth: true, - // Key: [7.6], - // Role: "retirement", - // }, - // }, - // { - // path: "/retirement/discharged/:id", - // name: "dischargedDetails", - // component: dischargedDetails, - // meta: { - // Auth: true, - // Key: [7.6], - // Role: "retirement", - // }, - // }, - // { - // path: "/retirement/expulsion", - // name: "expulsion", - // component: expulsionMain, - // meta: { - // Auth: true, - // Key: [7.7], - // Role: "retirement", - // }, - // }, - // { - // path: "/retirement/expulsion/:id", - // name: "expulsionDetails", - // component: expulsionDetails, - // meta: { - // Auth: true, - // Key: [7.7], - // Role: "retirement", - // }, - // }, + + { + path: "/retirement/report", + name: "retireReport", + component: ReportView, + meta: { + Auth: true, + Key: "SYS_DISMISSAL_REPORT", + Role: "STAFF", + }, + }, ]; diff --git a/src/modules/06_retirement/views/07_report.vue b/src/modules/06_retirement/views/07_report.vue new file mode 100644 index 000000000..430d7f7b9 --- /dev/null +++ b/src/modules/06_retirement/views/07_report.vue @@ -0,0 +1,555 @@ + + + + + diff --git a/src/modules/07_insignia/views/06_ReportMain.vue b/src/modules/07_insignia/views/06_ReportMain.vue index e2e651ec6..3f699185d 100644 --- a/src/modules/07_insignia/views/06_ReportMain.vue +++ b/src/modules/07_insignia/views/06_ReportMain.vue @@ -192,6 +192,7 @@ onMounted(async () => { (new Date().getFullYear()); -const dateStart = ref(new Date(year.value, 9, 1)); +const dateStart = ref(new Date(year.value - 1, 9, 1)); const dateEnd = ref(new Date(year.value + 1, 8, 30)); const dateMonth = ref({ @@ -239,8 +239,6 @@ async function fetchDocumentTemplate(data: any) { }, 2000); }); } - -const splitterModel = ref(14); const numOfPages = ref(0); const page = ref(1); const pdfSrc = ref(); @@ -294,6 +292,7 @@ onMounted(() => { { :options="yearTypeOptionOption" emit-value map-options - hide-selected - fill-input option-label="name" option-value="id" - use-input @update:model-value="updateLeaveday" > @@ -613,7 +609,6 @@ onMounted(() => { { v-if="checkPermission($route)?.attrIsGet" flat :disable="!isReport || !nodeId || !employeeClass" + :loading="isLoadPDF" round color="primary" icon="download" @@ -533,7 +533,6 @@ onMounted(() => { -
+
@@ -271,7 +271,8 @@ watch( label="ค้นหา" class="full-width full-height" unelevated - color="teal" + outline + color="primary" @click="(formFilter.page = 1), searchFilter()" > diff --git a/src/modules/17_acting/views/main.vue b/src/modules/17_acting/views/main.vue index 7470f7edc..ef3ba3fcf 100644 --- a/src/modules/17_acting/views/main.vue +++ b/src/modules/17_acting/views/main.vue @@ -317,7 +317,7 @@ onMounted(() => { { - group.value = val ? "" : group.value; groupOp.value = groupDataOp.value.filter( (v: DataOption) => v.name.indexOf(val) > -1 ); @@ -487,12 +486,14 @@ watch(modal, async () => { option-label="name" :options="groupOp" option-value="id" - class="inputgreen" + :class="isStaff ? '' : 'inputgreen'" dense :readonly="isStaff" emit-value map-options use-input + hide-selected + fill-input outlined @update:model-value="updateValue" @filter="(inputValue:any,doneFn:Function) => filterOption(inputValue, doneFn) "