up dashboard all

This commit is contained in:
Warunee Tamkoo 2025-01-29 17:49:11 +07:00
parent f4d11d6686
commit 4b297cd8e1
8 changed files with 300 additions and 1 deletions

View file

@ -6,4 +6,14 @@ VITE_API_REPORT_URL=VITE_API_REPORT_URL
VITE_MANUAL_URL=VITE_MANUAL_URL
VITE_URL_SSO=VITE_URL_SSO
VITE_API_URI_CONFIG=VITE_API_URI_CONFIG
VITE_API_URI_REPORT_CONFIG=VITE_API_URI_REPORT_CONFIG
VITE_API_URI_REPORT_CONFIG=VITE_API_URI_REPORT_CONFIG
VITE_DASHBOARD_PANEL=VITE_DASHBOARD_PANEL
VITE_DASHBOARDID_ORG=VITE_DASHBOARDID_ORG
VITE_DASHBOARDID_REGISTRY=VITE_DASHBOARDID_REGISTRY
VITE_DASHBOARDID_LEAVE=VITE_DASHBOARDID_LEAVE
VITE_DASHBOARDID_PLACEMENT=VITE_DASHBOARDID_PLACEMENT
VITE_DASHBOARDID_RETIRE=VITE_DASHBOARDID_RETIRE
VITE_DASHBOARDID_DISCIPLINE=VITE_DASHBOARDID_DISCIPLINE
VITE_DASHBOARDID_DEVELOP=VITE_DASHBOARDID_DEVELOP
VITE_DASHBOARDID_SALARY=VITE_DASHBOARDID_SALARY
VITE_DASHBOARDID_KPI=VITE_DASHBOARDID_KPI

View file

@ -17,6 +17,17 @@ do
sed -i 's|VITE_URL_SSO|'${VITE_URL_SSO}'|g' $file
sed -i 's|VITE_API_URI_CONFIG|'${VITE_API_URI_CONFIG}'|g' $file
sed -i 's|VITE_API_URI_REPORT_CONFIG|'${VITE_API_URI_REPORT_CONFIG}'|g' $file
sed -i 's|VITE_DASHBOARD_PANEL|'${VITE_DASHBOARD_PANEL}'|g' $file
sed -i 's|VITE_DASHBOARDID_ORG|'${VITE_DASHBOARDID_ORG}'|g' $file
sed -i 's|VITE_DASHBOARDID_REGISTRY|'${VITE_DASHBOARDID_REGISTRY}'|g' $file
sed -i 's|VITE_DASHBOARDID_LEAVE|'${VITE_DASHBOARDID_LEAVE}'|g' $file
sed -i 's|VITE_DASHBOARDID_PLACEMENT|'${VITE_DASHBOARDID_PLACEMENT}'|g' $file
sed -i 's|VITE_DASHBOARDID_RETIRE|'${VITE_DASHBOARDID_RETIRE}'|g' $file
sed -i 's|VITE_DASHBOARDID_DISCIPLINE|'${VITE_DASHBOARDID_DISCIPLINE}'|g' $file
sed -i 's|VITE_DASHBOARDID_DEVELOP|'${VITE_DASHBOARDID_DEVELOP}'|g' $file
sed -i 's|VITE_DASHBOARDID_SALARY|'${VITE_DASHBOARDID_SALARY}'|g' $file
sed -i 's|VITE_DASHBOARDID_KPI|'${VITE_DASHBOARDID_KPI}'|g' $file
done

View file

@ -6,6 +6,7 @@ export const apiUrlConfig = import.meta.env.VITE_API_URI_CONFIG;
export const apiUrlConfigPublish = import.meta.env.VITE_API_PUBLISH_URL;
export const apiUrlConfigReport = import.meta.env.VITE_API_REPORT_URL;
export const apiUrlConfigReport2 = import.meta.env.VITE_API_URI_REPORT_CONFIG;
export const dashboardPanelUrl = import.meta.env.VITE_DASHBOARD_PANEL;
// if (process.env.VUE_APP_TEST) {
// env = "test";
// }
@ -38,6 +39,33 @@ const config = ref<any>({
API_REPORT_TEMPLATE_URI:
"https://report-server.frappet.synology.me/api/v1/report-template",
API_SUPPORT_URI: "https://bma-ehr.frappet.synology.me/api/v1/support",
DASHBOARD_ORG_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_ORG
}`,
DASHBOARD_REGISTRY_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_REGISTRY
}`,
DASHBOARD_LEAVE_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_LEAVE
}`,
DASHBOARD_PLACEMENT_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_PLACEMENT
}`,
DASHBOARD_RETIRE_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_RETIRE
}`,
DASHBOARD_DISCIPLINE_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_DISCIPLINE
}`,
DASHBOARD_DEVELOP_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_DEVELOP
}`,
DASHBOARD_SALARY_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_SALARY
}`,
DASHBOARD_KPI_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_KPI
}`,
},
test: {
API_URI: "http://localhost:5010/api/v1",
@ -63,6 +91,33 @@ const config = ref<any>({
LINK_EVALUATE_PUBLISH: apiUrlConfigPublish,
API_REPORT_TEMPLATE_URI: apiUrlConfigReport,
API_SUPPORT_URI: `${apiUrlConfigPublish}/support`,
DASHBOARD_ORG_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_ORG
}`,
DASHBOARD_REGISTRY_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_REGISTRY
}`,
DASHBOARD_LEAVE_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_LEAVE
}`,
DASHBOARD_PLACEMENT_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_PLACEMENT
}`,
DASHBOARD_RETIRE_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_RETIRE
}`,
DASHBOARD_DISCIPLINE_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_DISCIPLINE
}`,
DASHBOARD_DEVELOP_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_DEVELOP
}`,
DASHBOARD_SALARY_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_SALARY
}`,
DASHBOARD_KPI_URL: `${dashboardPanelUrl}/${
import.meta.env.VITE_DASHBOARDID_KPI
}`,
},
});
@ -100,6 +155,34 @@ const API_REPORT_TEMPLATE_URI = ref<string>(
config.value[env.value].API_REPORT_TEMPLATE_URI
);
const DASHBOARD_ORG_URL = ref<string>(
config.value[env.value].DASHBOARD_ORG_URL
);
const DASHBOARD_REGISTRY_URL = ref<string>(
config.value[env.value].DASHBOARD_REGISTRY_URL
);
const DASHBOARD_LEAVE_URL = ref<string>(
config.value[env.value].DASHBOARD_LEAVE_URL
);
const DASHBOARD_PLACEMENT_URL = ref<string>(
config.value[env.value].DASHBOARD_PLACEMENT_URL
);
const DASHBOARD_RETIRE_URL = ref<string>(
config.value[env.value].DASHBOARD_RETIRE_URL
);
const DASHBOARD_DISCIPLINE_URL = ref<string>(
config.value[env.value].DASHBOARD_DISCIPLINE_URL
);
const DASHBOARD_DEVELOP_URL = ref<string>(
config.value[env.value].DASHBOARD_DEVELOP_URL
);
const DASHBOARD_SALARY_URL = ref<string>(
config.value[env.value].DASHBOARD_SALARY_URL
);
const DASHBOARD_KPI_URL = ref<string>(
config.value[env.value].DASHBOARD_KPI_URL
);
export default {
env: env.value,
config: config.value,
@ -118,4 +201,13 @@ export default {
LINK_EVALUATE_PUBLISH: LINK_EVALUATE_PUBLISH.value,
API_REPORT_TEMPLATE_URI: API_REPORT_TEMPLATE_URI.value,
API_SUPPORT_URI: API_SUPPORT_URI.value,
DASHBOARD_ORG_URL: DASHBOARD_ORG_URL.value,
DASHBOARD_REGISTRY_URL: DASHBOARD_REGISTRY_URL.value,
DASHBOARD_LEAVE_URL: DASHBOARD_LEAVE_URL.value,
DASHBOARD_PLACEMENT_URL: DASHBOARD_PLACEMENT_URL.value,
DASHBOARD_RETIRE_URL: DASHBOARD_RETIRE_URL.value,
DASHBOARD_DISCIPLINE_URL: DASHBOARD_DISCIPLINE_URL.value,
DASHBOARD_DEVELOP_URL: DASHBOARD_DEVELOP_URL.value,
DASHBOARD_SALARY_URL: DASHBOARD_SALARY_URL.value,
DASHBOARD_KPI_URL: DASHBOARD_KPI_URL.value,
};

View file

@ -0,0 +1,14 @@
/*** dashboard panel url */
import env from "../index";
export default {
dashboardPanelOrg: `${env.DASHBOARD_ORG_URL}`,
dashboardPanelRegistry: `${env.DASHBOARD_REGISTRY_URL}`,
dashboardPanelLeave: `${env.DASHBOARD_LEAVE_URL}`,
dashboardPanelPlacement: `${env.DASHBOARD_PLACEMENT_URL}`,
dashboardPanelRetire: `${env.DASHBOARD_RETIRE_URL}`,
dashboardPanelDiscipline: `${env.DASHBOARD_DISCIPLINE_URL}`,
dashboardPanelDevelop: `${env.DASHBOARD_DEVELOP_URL}`,
dashboardPanelSalary: `${env.DASHBOARD_SALARY_URL}`,
dashboardPanelKPI: `${env.DASHBOARD_KPI_URL}`,
};

View file

@ -72,6 +72,8 @@ import command from "./api/18_command/api.command";
import file from "./api/file/api.file";
import dashboard from "./api/reports/api.dashboard";
// environment variables
export const compettitivePanel = import.meta.env.VITE_COMPETITIVE_EXAM_PANEL;
export const qualifyDisableExamPanel = import.meta.env
@ -140,6 +142,8 @@ const API = {
/*file*/
...file,
...dashboard,
};
const path = import.meta.env.VITE_MANUAL_URL ?? "";

85
src/router/dashboard.ts Normal file
View file

@ -0,0 +1,85 @@
const DashboardAll = () => import("@/views/DashboardAll.vue");
export default [
{
path: "/dashboard/org",
name: "dashboardOrg",
component: DashboardAll,
meta: {
Auth: true,
Key: "DASHBOARD_ORG",
},
},
{
path: "/dashboard/registry",
name: "dashboardRegistry",
component: DashboardAll,
meta: {
Auth: true,
Key: "DASHBOARD_REGISTRY",
},
},
{
path: "/dashboard/leave",
name: "dashboardLeave",
component: DashboardAll,
meta: {
Auth: true,
Key: "DASHBOARD_LEAVE",
},
},
{
path: "/dashboard/placement",
name: "dashboardPlacement",
component: DashboardAll,
meta: {
Auth: true,
Key: "DASHBOARD_PLACEMENT",
},
},
{
path: "/dashboard/retire",
name: "dashboardRetire",
component: DashboardAll,
meta: {
Auth: true,
Key: "DASHBOARD_RETIRE",
},
},
{
path: "/dashboard/discipline",
name: "dashboardDiscipline",
component: DashboardAll,
meta: {
Auth: true,
Key: "DASHBOARD_DISCIPLINE",
},
},
{
path: "/dashboard/develop",
name: "dashboardDevelop",
component: DashboardAll,
meta: {
Auth: true,
Key: "DASHBOARD_DEVELOP",
},
},
{
path: "/dashboard/salary",
name: "dashboardSalary",
component: DashboardAll,
meta: {
Auth: true,
Key: "DASHBOARD_SALARY",
},
},
{
path: "/dashboard/kpi",
name: "dashboardKpi",
component: DashboardAll,
meta: {
Auth: true,
Key: "DASHBOARD_KPI",
},
},
];

View file

@ -6,6 +6,7 @@ const Error404NotFound = () => import("@/views/Error404NotFound.vue");
const loginView = () => import("@/views/login.vue");
const ErrorPermission = () => import("@/views/ErrorPermission.vue");
import DashboardAll from "@/router/dashboard";
import ModuleMetadataNew from "@/modules/01_masterdata/router";
import ModuleOrganizationalNew from "@/modules/02_organization/router";
import ModulePositionEmployee from "@/modules/16_positionEmployee/router";
@ -52,6 +53,7 @@ const router = createRouter({
name: "errorPermission",
component: ErrorPermission,
},
...DashboardAll,
// ...ModuleMetadata,
...ModuleMetadataNew,
// ...ModuleOrganizational,

View file

@ -0,0 +1,81 @@
<!-- page:ดการรอบการสอบ สรรหา -->
<template>
<div class="toptitle text-dark col-12 row items-center">
{{ title }}
</div>
<q-card flat bordered class="col-12 q-mt-sm q-px-md q-py-sm">
<iframe
:src="panelUrl"
style="height: 80vh; width: 100%; border: none; overflow: hidden"
></iframe>
</q-card>
</template>
<script setup lang="ts">
import config from "@/app.config";
import { ref, onBeforeMount, onMounted } from "vue";
import { useRoute } from "vue-router";
const route = useRoute();
const panelUrl = ref<string>("");
const titleArr = ref<any[]>([
{
id: "dashboardOrg",
name: "สถิติโครงสร้างและกรอบอัตรากำลัง",
panelUrl: config.API.dashboardPanelOrg,
},
{
id: "dashboardRegistry",
name: "สถิติทะเบียนประวัติ",
panelUrl: config.API.dashboardPanelRegistry,
},
{
id: "dashboardLeave",
name: "สถิติบันทึกเวลาและการลา",
panelUrl: config.API.dashboardPanelLeave,
},
{
id: "dashboardPlacement",
name: "สถิติการบรรจุ แต่งตั้ง ย้าย โอน",
panelUrl: config.API.dashboardPanelPlacement,
},
{
id: "dashboardRetire",
name: "สถิติการพ้นจากราชการ",
panelUrl: config.API.dashboardPanelRetire,
},
{
id: "dashboardDiscipline",
name: "สถิติการดำเนินการทางวินัย",
panelUrl: config.API.dashboardPanelDiscipline,
},
{
id: "dashboardDevelop",
name: "สถิติพัฒนาบุคลากร/การศึกษาต่อ",
panelUrl: config.API.dashboardPanelDevelop,
},
{
id: "dashboardSalary",
name: "สถิติเงินเดือน/ค่าจ้าง",
panelUrl: config.API.dashboardPanelSalary,
},
{
id: "dashboardKpi",
name: "สถิติประเมินผลการปฏิบัติราชการระดับบุคคล",
panelUrl: config.API.dashboardPanelKPI,
},
]);
const title = ref<string>("");
// onBeforeMount(async () => {
// panelUrl.value = config.dashboardPanelUrl;
// });
onMounted(async () => {
const data = await titleArr.value.find((item: any) => item.id === route.name);
title.value = data?.name;
panelUrl.value = data?.panelUrl;
});
</script>
<style></style>