- สมรรถนะประจำผู้บริหารกรุงเทพมหานคร
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ เพิ่ม
+
+
+ ประเภทตำแหน่ง
+
+
+
+
+ ระดับตำแห่นง
+
+
+ คำอธิบายระดับ/พฤติกรรมที่คาดหวัง/พฤติกรรมย่อย
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ บันทึกข้อมูล
+
+
-
\ No newline at end of file
+
+
+
+
diff --git a/src/modules/14_KPI/components/competency/Forms/04_FormExecutivePosition.vue b/src/modules/14_KPI/components/competency/Forms/04_FormExecutivePosition.vue
index 212191a98..105cc93e5 100644
--- a/src/modules/14_KPI/components/competency/Forms/04_FormExecutivePosition.vue
+++ b/src/modules/14_KPI/components/competency/Forms/04_FormExecutivePosition.vue
@@ -1,5 +1,211 @@
+
+
-
- สมรรถนะเฉพาะสำหรับตำแหน่ง ผอ.เขต ผช.ผอ.เขต และหัวหน้าฝ่ายในสังกัด สนง.เขต
-
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
ระบบตำแหน่ง
+
+ คำอธิบายระดับ/พฤติกรรมที่คาดหวัง/พฤติกรรมย่อย
+
+
+
+
+
+
+ L1 ระดับ หัวหน้าฝ่ายในสังกัด
+
+
+
+
+
+
+
+
+
+
+
+ L2 ระดับ ผู้ช่วยผู้อำนวยการเขต
+
+
+
+
+
+
+
+
+
+
+
+ L3 ระดับ ผู้อำนวยการเขต
+
+
+
+
+
+
+
+
+
+
+
+
+ บันทึกข้อมูล
+
+
+
+
+
+
diff --git a/src/modules/14_KPI/components/competency/Forms/05_FormExecutiveLevel.vue b/src/modules/14_KPI/components/competency/Forms/05_FormExecutiveLevel.vue
index 55efbd5f5..a4a0f6b24 100644
--- a/src/modules/14_KPI/components/competency/Forms/05_FormExecutiveLevel.vue
+++ b/src/modules/14_KPI/components/competency/Forms/05_FormExecutiveLevel.vue
@@ -1,5 +1,173 @@
+
+
-
- สมรรถนะเฉพาะสำหรับตำแหน่งผู้ตรวจราชการ กทม. และผู้ตรวจราชการ
-
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
ระบบตำแหน่ง
+
+ คำอธิบายระดับ/พฤติกรรมที่คาดหวัง/พฤติกรรมย่อย
+
+
+
+
+
+
+ L1 ประเภทอำนวยการ ระดับสูง
+
+
+
+
+
+
+
+
+
+
+
+ L2 ประเภทบริหาร ระดับสูง
+
+
+
+
+
+
+
+
+
+
+
+
+ บันทึกข้อมูล
+
+
+
+
+
+
diff --git a/src/modules/15_development/components/MainTab.vue b/src/modules/15_development/components/MainTab.vue
index 0d5fd5193..7d4c29b18 100644
--- a/src/modules/15_development/components/MainTab.vue
+++ b/src/modules/15_development/components/MainTab.vue
@@ -53,15 +53,16 @@ function fetchDataProject(id: string) {
store.formAddProject.projectName = data.projectName;
store.formAddProject.reason = data.reason;
store.formAddProject.objective = data.objective;
-
/**เป้าหมาย*/
- const plannedGoals = data.plannedGoals.map((e: ResPlannedGoals) => ({
+ const plannedGoals = data.plannedGoals.map((e: any) => ({
groupTarget: e.groupTarget,
groupTargetSub: e.groupTargetSub,
- position: e.position,
- posTypePlannedId: e.posTypePlannedId,
- posLevelPlannedId: e.posLevelPlannedId,
- type: e.type,
+ positions: e.plannedGoalPositions.map((v: any) => ({
+ position: v.position,
+ posTypePlannedId: v.posTypePlannedId,
+ posLevelPlannedId: v.posLevelPlannedId,
+ })),
+ type: e.type ? e.type : null,
amount: e.amount,
}));
const plannedPeoples = data.plannedPeoples.map((e: ResPeople) => ({
@@ -116,7 +117,11 @@ function fetchDataProject(id: string) {
store.formAddProject.dateEnd = data.dateEnd;
store.formAddProject.totalDate = data.totalDate;
store.formAddProject.address = data.address;
- store.formAddProject.provinceIds = data.provinceIds;
+
+ const provinces = data.provinces.map((e: any) => e.id);
+ const provincesId = [...provinces];
+ store.formAddProject.provinceIds = provincesId;
+
store.formAddProject.budget = data.budget;
store.formAddProject.accept = data.accept;
store.formAddProject.receive = data.receive;
diff --git a/src/modules/15_development/components/ProjectDetail.vue b/src/modules/15_development/components/ProjectDetail.vue
index a564464ac..d3f44a818 100644
--- a/src/modules/15_development/components/ProjectDetail.vue
+++ b/src/modules/15_development/components/ProjectDetail.vue
@@ -9,30 +9,26 @@ import { useDevelopmentDataStore } from "@/modules/15_development/store/developm
const store = useDevelopmentDataStore();
const projectTypeOp = ref
([
- { id: "1", name: "โครงการตามยุทธศาสตร์" },
- { id: "2", name: "โครงการตามภารกิจประจำของหน่วยงาน" },
- { id: "3", name: "โครงการใหม่" },
- { id: "4", name: "โครงการต่อเนื่อง" },
+ { id: "STRATEGIC_PROJECT", name: "โครงการตามยุทธศาสตร์" },
+ { id: "MISSION_PROJECT", name: "โครงการตามภารกิจประจำของหน่วยงาน" },
+ { id: "NEW_PROJECT", name: "โครงการใหม่" },
+ { id: "ONGOING_PROJEC", name: "โครงการต่อเนื่อง" },
]);
const projectCharacteristicsOp = ref([
- { id: "1", name: "ไป-กลับ" },
- { id: "2", name: "พักค้าง" },
- { id: "3", name: "ไป-กลับและพักค้าง" },
+ { id: "GO_BACK", name: "ไป-กลับ" },
+ { id: "HOLD", name: "พักค้าง" },
+ { id: "GO_BACK_HOLD", name: "ไป-กลับและพักค้าง" },
]);
const projectTechniquesOp = ref([
- { id: "1", name: "การอบรม" },
- { id: "2", name: "การประชุม" },
- { id: "3", name: "การสัมมนา" },
- { id: "4", name: "การศึกษาดูงาน" },
- { id: "5", name: "การสัมมนาทางวิชาการ" },
- { id: "6", name: "การสัมมนาเชิงปฏิบัติการ" },
- { id: "7", name: "การบรรยายพิเศษ" },
- { id: "8", name: "การฝึกศึกษา" },
+ { id: "TRAINING", name: "การอบรม" },
+ { id: "MEETING", name: "การประชุม" },
+ { id: "SEMINAR", name: "การสัมมนา" },
+ { id: "STUDY_TOUR", name: "การศึกษาดูงาน" },
+ { id: "ACADEMIC_SEMINAR", name: "การสัมมนาทางวิชาการ" },
+ { id: "WORKSHOP", name: "การสัมมนาเชิงปฏิบัติการ" },
+ { id: "SPECIAL_LECTURE", name: "การบรรยายพิเศษ" },
+ { id: "STUDY_TRAINING", name: "การฝึกศึกษา" },
]);
-
-onMounted(() => {
- console.log("ลักษณะโครงการ");
-});
@@ -74,7 +70,7 @@ onMounted(() => {
({
position: "",
posType: "",
level: "",
- type: "",
+ type: null,
amount: null,
// positions: {
// position: "",
@@ -222,11 +222,14 @@ function onSubmitGroup() {
const list = data.map((e: FormGroupTargetPlannedGoal) => ({
groupTarget: e.groupTarget,
groupTargetSub: e.groupTargetSub,
- positions: e.positions,
+ positions: e.positions.map((v: any) => ({
+ position: v.position,
+ posTypePlannedId: v.posTypePlannedId,
+ posLevelPlannedId: v.posLevelPlannedId,
+ })),
type: e.type ? e.type : null,
amount: Number(e.amount),
}));
- console.log(list);
if (isEdit.value) {
plannedGoals.value.splice(rowIndex.value, 1, ...list);
} else {
@@ -376,7 +379,6 @@ onMounted(() => {
plannedGoals.value = store.formAddProject.plannedGoals
? store.formAddProject.plannedGoals
: [];
-
plannedPeoples.value = store.formAddProject.plannedPeoples
? store.formAddProject.plannedPeoples
: [];
@@ -401,7 +403,10 @@ onMounted(() => {
กลุ่มเป้าหมาย
@@ -464,6 +469,7 @@ onMounted(() => {
formGroupTarget.groupTarget = props.row.groupTarget;
formGroupTarget.groupTargetSub = props.row.groupTargetSub;
formGroupTarget.amount = props.row.amount;
+ formGroupTarget.positions = props.row.positions;
newModalGroupTarget = true;
}
"
diff --git a/src/modules/15_development/components/scholarship/DetailView.vue b/src/modules/15_development/components/scholarship/DetailView.vue
index e2f05f71f..11d0173d6 100644
--- a/src/modules/15_development/components/scholarship/DetailView.vue
+++ b/src/modules/15_development/components/scholarship/DetailView.vue
@@ -85,6 +85,7 @@ const dataGuarantor = reactive({
});
const formBody = reactive({
+ profileId: "",
rank: "", //ยศ
prefix: "", //คำนำหน้าชื่อ
firstName: "", //ชื่อ
@@ -346,6 +347,9 @@ function onSelectGov(isGov: boolean) {
function upDate(data: DataPerson) {
if (isSelectGov.value) {
+ console.log(data);
+ formBody.profileId = data.id;
+ formBody.rank = data.rank;
formBody.prefix = data.prefix;
formBody.firstName = data.firstName;
formBody.lastName = data.lastName;
@@ -364,6 +368,7 @@ function upDate(data: DataPerson) {
dataPerson.positionSide = data.positionSide ? data.positionSide : "-";
isGov.value = true;
} else {
+ formBody.guarantorRank = data.rank;
formBody.guarantorPrefix = data.prefix;
formBody.guarantorFirstName = data.firstName;
formBody.guarantorLastName = data.lastName;
diff --git a/src/modules/15_development/interface/request/Main.ts b/src/modules/15_development/interface/request/Main.ts
index b8d3a7e23..ffa383090 100644
--- a/src/modules/15_development/interface/request/Main.ts
+++ b/src/modules/15_development/interface/request/Main.ts
@@ -32,6 +32,13 @@ interface FormGroupTargetPlannedGoal {
posLevelPlannedId: string;
}
];
+ plannedGoalPositions?: [
+ {
+ position: string;
+ posTypePlannedId: string;
+ posLevelPlannedId: string;
+ }
+ ];
groupTarget: string;
groupTargetSub: string;
position: string;
@@ -202,7 +209,14 @@ interface actualGoals {
interface PlannedGoals {
groupTarget: string;
groupTargetSub: string;
- positions: [
+ positions?: [
+ {
+ position: string;
+ posTypePlannedId: string;
+ posLevelPlannedId: string;
+ }
+ ];
+ plannedGoalPositions?: [
{
position: string;
posTypePlannedId: string;
diff --git a/src/modules/15_development/interface/request/Scholarship.ts b/src/modules/15_development/interface/request/Scholarship.ts
index 4c02f519d..226105b54 100644
--- a/src/modules/15_development/interface/request/Scholarship.ts
+++ b/src/modules/15_development/interface/request/Scholarship.ts
@@ -1,4 +1,5 @@
interface FormsSholarship {
+ profileId: string;
rank: string; //ยศ
prefix: string; //คำนำหน้าชื่อ
firstName: string; //ชื่อ
diff --git a/src/modules/15_development/interface/response/Main.ts b/src/modules/15_development/interface/response/Main.ts
index 55346e830..66346ba53 100644
--- a/src/modules/15_development/interface/response/Main.ts
+++ b/src/modules/15_development/interface/response/Main.ts
@@ -43,7 +43,7 @@ interface ResDataProject {
dateEnd: Date | null;
totalDate: number | null;
address: string;
- provinceIds: any;
+ provinces: any;
budget: string;
accept: number | string | null;
receive: number | string | null;
@@ -88,7 +88,14 @@ interface ResActualGoals {
interface ResPlannedGoals {
groupTarget: string;
groupTargetSub: string;
- position: [
+ plannedGoalPositions?: [
+ {
+ position: string;
+ posTypePlannedId: string;
+ posLevelPlannedId: string;
+ }
+ ];
+ positions?: [
{
position: string;
posTypePlannedId: string;
diff --git a/src/modules/15_development/views/Scholarship.vue b/src/modules/15_development/views/Scholarship.vue
index 646d2f1c6..c9cf3cfbd 100644
--- a/src/modules/15_development/views/Scholarship.vue
+++ b/src/modules/15_development/views/Scholarship.vue
@@ -217,6 +217,7 @@ onMounted(() => {
{
option-label="name"
label="เลือกประเภททุน"
@update:model-value="fetchNewList"
- style="width: 400px;"
+ style="width: 350px;"
/>