-
-
-
-
-
+
-
-
+
+
-
+
-
+
เลือกหน่วยงานที่รับย้าย
+
+
+
+
+ รายละเอียด
+
+
-
- ลบข้อมูล
+
ลบ
diff --git a/src/modules/05_placement/components/AppointMent/Dialogbody.vue b/src/modules/05_placement/components/AppointMent/Dialogbody.vue
index cf53b4c58..31a633bcc 100644
--- a/src/modules/05_placement/components/AppointMent/Dialogbody.vue
+++ b/src/modules/05_placement/components/AppointMent/Dialogbody.vue
@@ -117,8 +117,8 @@ const columns2 = ref([
style: "font-size: 14px",
},
]);
-const pageNext = (item: object) => {
- props.nextPage?.(item);
+const pageNext = (item: any) => {
+ props.nextPage?.(item?.id);
};
const emit = defineEmits([
"update:filterKeyword2",
@@ -151,17 +151,17 @@ const sendToCommand = () => {
showLoader();
await http
.put(config.API.apppointmentReport(Type), data)
- .then((res) => {
- success($q, "บันทึกสำเร็จ");
+ .then(async () => {
+ await props.fecthlistappointment?.();
+ await props.clickClose?.();
+ await success($q, "บันทึกสำเร็จ");
+ selected.value = [];
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
hideLoader();
- props.fecthlistappointment?.();
- selected.value = [];
- props.clickClose?.();
});
});
};
@@ -179,23 +179,7 @@ watchEffect(() => {
-
-
-
+
{
let response = res.data.result;
listRecevice.value = response;
rows.value = response;
- // rows.value = response.map((e: resData) => ({
- // personalId: e.id,
- // citizenId: e.citizenId,
- // fullname: e.prefix + e.firstname + " " + e.lastname,
- // organizationName:
- // e.organizationName +
- // " " +
- // e.organizationShortName +
- // " " +
- // e.positionNumber +
- // " " +
- // e.positionPath,
- // orgName: e.organizationName,
- // organizationShortName: e.organizationShortName,
- // positionNumber: e.positionNumber,
- // positionPath: e.positionPath,
- // status: statusText(e.status),
- // createdAt: date2Thai(e.createdAt),
- // birthday: e.dateOfBirth == null ? "-" : date2Thai(e.dateOfBirth),
- // educationOld: e.educationOld,
- // organizationPositionOld: e.organizationPositionOld,
- // positionTypeOld: e.positionTypeOld,
- // positionLevelOld: e.positionLevelOld,
- // positionNumberOld: e.positionNumberOld,
- // salary: e.salary,
- // positionDate: e.positionDate,
- // }));
rows2.value = rows.value.filter(
(e: any) =>
@@ -231,24 +204,6 @@ const fecthlistappointment = async () => {
});
};
-//ดึงข้อมูลประเภทคำสั่งเเต่งตั้ง
-// const fecthTypeOption = async () => {
-// type.value = "";
-// await http
-// .get(config.API.typeOrder())
-// .then((res) => {
-// optionsType.value = res.data.result.filter(
-// (e: OpType) =>
-// e.commandCode === "C-PM-05" ||
-// e.commandCode === "C-PM-06" ||
-// e.commandCode === "C-PM-07"
-// );
-// })
-// .catch((e) => {
-// messageError($q, e);
-// });
-// };
-
// เปิดโครงสร้าง
const openModalTree = (data: any, type: string) => {
personalId.value = data.id;
@@ -403,22 +358,22 @@ onMounted(() => {
-
-
+
+
{
>
-
+
{
>เลือกหน่วยงานที่รับแต่งตั้ง
+
-
+
{
>เลือกหน่วยงานที่รับเลื่อน
+
-
+
{
>เลือกหน่วยงานที่รับย้าย
+
+
+
+
+ รายละเอียด
+
+
+
-
- ลบข้อมูล
+
ลบ
@@ -511,14 +483,7 @@ onMounted(() => {
-
+
{{ props.rowIndex + 1 }}
@@ -535,6 +500,7 @@ onMounted(() => {
{{ props.row.status ? statusText(props.row.status) : "-" }}
+
{{
props.row.dateOfBirth
@@ -542,6 +508,7 @@ onMounted(() => {
: "-"
}}
+
@@ -564,11 +531,13 @@ onMounted(() => {
+
{{
props.row.createdAt ? date2Thai(props.row.createdAt) : "-"
}}
+
{{ col.value ? col.value : "-" }}
@@ -592,13 +561,6 @@ onMounted(() => {
:fecthlistappointment="fecthlistappointment"
/>
-
-
{
-
-
+
+
+
+ รายละเอียด
+
+
ลบข้อมูล
+ ลบข้อมูล
+
-
+
{{ props.rowIndex + 1 }}
diff --git a/src/modules/05_placement/components/Receive/receiveMain.vue b/src/modules/05_placement/components/Receive/receiveMain.vue
index faf1e33b7..0010b4eff 100644
--- a/src/modules/05_placement/components/Receive/receiveMain.vue
+++ b/src/modules/05_placement/components/Receive/receiveMain.vue
@@ -1,5 +1,5 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/modules/15_development/components/DialogRecordPerson.vue b/src/modules/15_development/components/DialogRecordPerson.vue
index 290aa1f9a..06ea8b5a4 100644
--- a/src/modules/15_development/components/DialogRecordPerson.vue
+++ b/src/modules/15_development/components/DialogRecordPerson.vue
@@ -197,7 +197,10 @@ watch(
-
+
diff --git a/src/modules/15_development/components/FollowResult.vue b/src/modules/15_development/components/FollowResult.vue
index 393f05c2c..c6f69eebb 100644
--- a/src/modules/15_development/components/FollowResult.vue
+++ b/src/modules/15_development/components/FollowResult.vue
@@ -54,6 +54,12 @@ const projectId = ref(route.params.id.toLocaleString());
const checkRoutePermission = ref(
route.name == "developmentDetailPage"
);
+const status = defineModel("status", { required: true });
+const props = defineProps({
+ prevStep: { type: Function, required: true },
+ nextStep: { type: Function, required: true },
+});
+const step = ref("");
/** หัวตาราง */
const rows = ref([]); // ข้อมูลรายการ
const columns = ref([
@@ -248,29 +254,30 @@ function onClickDeleteIndicator(id: string) {
/** save Main data */
function onSubmit() {
- dialogConfirm($q, () => {
- if (formProject.project === "NOOFFER") {
- formProject.isNoPass = false;
- formProject.isPassAllocate = false;
- formProject.isPassNoAllocate = false;
- } else {
- formProject.isBudget = false;
- formProject.isOutBudget = false;
- }
- showLoader();
- http
- .put(config.API.developmentMainTab("tab4", projectId.value), formProject)
- .then(() => {
- fetchData();
- success($q, "บันทึกข้อมูลสำเร็จ");
- })
- .catch((err) => {
- messageError($q, err);
- })
- .finally(() => {
- hideLoader();
- });
- });
+ // dialogConfirm($q, () => {
+ if (formProject.project === "NOOFFER") {
+ formProject.isNoPass = false;
+ formProject.isPassAllocate = false;
+ formProject.isPassNoAllocate = false;
+ } else {
+ formProject.isBudget = false;
+ formProject.isOutBudget = false;
+ }
+ showLoader();
+ http
+ .put(config.API.developmentMainTab("tab4", projectId.value), formProject)
+ .then(() => {
+ // fetchData();
+ // success($q, "บันทึกข้อมูลสำเร็จ");
+ step.value == "next" ? props.nextStep() : props.prevStep();
+ })
+ .catch((err) => {
+ messageError($q, err);
+ })
+ .finally(() => {
+ hideLoader();
+ });
+ // });
}
/** fetchData in page */
@@ -424,19 +431,34 @@ onMounted(() => {
-
-
-
- บันทึกข้อมูล
-
+
+
+
+
+
+
+
+
diff --git a/src/modules/15_development/components/MainTab.vue b/src/modules/15_development/components/MainTab.vue
index a6e57a062..24b854252 100644
--- a/src/modules/15_development/components/MainTab.vue
+++ b/src/modules/15_development/components/MainTab.vue
@@ -16,6 +16,8 @@ import Other from "@/modules/15_development/components/Other.vue"; // อื่
/** importStore*/
import { useCounterMixin } from "@/stores/mixin";
import { useDevelopmentDataStore } from "@/modules/15_development/store/developmentStore";
+import Budget from "@/modules/15_development/components/Budget.vue";
+import Risk from "@/modules/15_development/components/Risk.vue";
/** use*/
const $q = useQuasar();
@@ -25,12 +27,36 @@ const store = useDevelopmentDataStore();
const { success, showLoader, hideLoader, messageError, dialogConfirm } =
useCounterMixin();
-const checkRoutePermission = ref(route.name == 'developmentDetailPage')
+const checkRoutePermission = ref(
+ route.name == "developmentDetailPage"
+);
const title = ref(route.params.id ? "แก้ไข" : "เพิ่ม");
const projectId = ref(route.params.id.toLocaleString());
const tab = ref("BasicInfo");
const status = ref("ONGOING");
+const step = ref([
+ "BasicInfo",
+ "Target",
+ "ProjectDetail",
+ "Budget",
+ "Risk",
+ "FollowResult",
+ "Other",
+ "Result",
+]);
+function prevStep() {
+ const index = step.value.indexOf(tab.value);
+ if (index > 0) {
+ tab.value = step.value[index - 1];
+ }
+}
+function nextStep() {
+ const index = step.value.indexOf(tab.value);
+ if (index < step.value.length - 1) {
+ tab.value = step.value[index + 1];
+ }
+}
/**
* function fetch สถานะ Project
* @param id projectId
@@ -91,7 +117,11 @@ onMounted(() => {
color="primary"
@click="router.push('/development')"
/>
- {{ checkRoutePermission ? 'รายละเอียดโครงการ/หลักสูตรการฝึกอบรม':`${title}โครงการ/หลักสูตรการฝึกอบรม` }}
+ {{
+ checkRoutePermission
+ ? "รายละเอียดโครงการ/หลักสูตรการฝึกอบรม"
+ : `${title}โครงการ/หลักสูตรการฝึกอบรม`
+ }}
{
>
เสร็จสิ้นโครงการ
- เสร็จสิ้นโครงการ
@@ -122,23 +156,44 @@ onMounted(() => {
+
+
+
-
+
-
+
+
-
+
+
+
+
+
+
+
+
+
+
-
-
+
diff --git a/src/modules/15_development/components/Other.vue b/src/modules/15_development/components/Other.vue
index 349b67bb0..50b3e11ae 100644
--- a/src/modules/15_development/components/Other.vue
+++ b/src/modules/15_development/components/Other.vue
@@ -25,6 +25,10 @@ const projectId = ref
(route.params.id.toLocaleString());
const checkRoutePermission = ref(
route.name == "developmentDetailPage"
);
+const props = defineProps({
+ prevStep: { type: Function, required: true },
+});
+
const status = defineModel("status", { required: true });
const provinceOp = ref([]);
const provinceOpMain = ref([]);
@@ -211,39 +215,40 @@ function onClickDeleteLocation(index: number) {
/** บันทึกข้อมูล */
function onSubmit() {
- dialogConfirm($q, async () => {
- showLoader();
- formData.totalDate = Number(formData.totalDate);
- formData.accept =
- typeof formData.accept === "string"
- ? Number(formData.accept.replace(/,/g, ""))
- : formData.accept;
- formData.receive =
- typeof formData.receive === "string"
- ? Number(formData.receive.replace(/,/g, ""))
- : formData.receive;
- formData.approved =
- typeof formData.approved === "string"
- ? Number(formData.approved.replace(/,/g, ""))
- : formData.approved;
- formData.budgetPay =
- typeof formData.budgetPay === "string"
- ? Number(formData.budgetPay.replace(/,/g, ""))
- : formData.budgetPay;
+ // dialogConfirm($q, async () => {
+ showLoader();
+ formData.totalDate = Number(formData.totalDate);
+ formData.accept =
+ typeof formData.accept === "string"
+ ? Number(formData.accept.replace(/,/g, ""))
+ : formData.accept;
+ formData.receive =
+ typeof formData.receive === "string"
+ ? Number(formData.receive.replace(/,/g, ""))
+ : formData.receive;
+ formData.approved =
+ typeof formData.approved === "string"
+ ? Number(formData.approved.replace(/,/g, ""))
+ : formData.approved;
+ formData.budgetPay =
+ typeof formData.budgetPay === "string"
+ ? Number(formData.budgetPay.replace(/,/g, ""))
+ : formData.budgetPay;
- http
- .put(config.API.developmentMainTab("tab5", projectId.value), formData)
- .then(() => {
- fetchData();
- success($q, "บันทึกข้อมูลสำเร็จ");
- })
- .catch((err) => {
- messageError($q, err);
- })
- .finally(() => {
- hideLoader();
- });
- });
+ http
+ .put(config.API.developmentMainTab("tab5", projectId.value), formData)
+ .then(() => {
+ // fetchData();
+ // success($q, "บันทึกข้อมูลสำเร็จ");
+ props.prevStep();
+ })
+ .catch((err) => {
+ messageError($q, err);
+ })
+ .finally(() => {
+ hideLoader();
+ });
+ // });
}
/** ดึงข้อมูลเมื่อคอมโพเนนต์โหลดเสร็จสมบูรณ์ */
@@ -423,7 +428,7 @@ onMounted(() => {
{
{
>
-
+
+
+
+
- บันทึกข้อมูล
diff --git a/src/modules/15_development/components/ProjectDetail.vue b/src/modules/15_development/components/ProjectDetail.vue
index d0de113da..3c4973d01 100644
--- a/src/modules/15_development/components/ProjectDetail.vue
+++ b/src/modules/15_development/components/ProjectDetail.vue
@@ -16,6 +16,11 @@ import { useDevelopmentDataStore } from "@/modules/15_development/store/developm
import http from "@/plugins/http";
import config from "@/app.config";
+const props = defineProps({
+ prevStep: { type: Function, required: true },
+ nextStep: { type: Function, required: true },
+});
+const step = ref
("");
const reasonPlanned70 = ref("");
const reasonPlanned20 = ref("");
const reasonPlanned10 = ref("");
@@ -267,50 +272,51 @@ function fetchTree() {
/** Main save */
async function onSubmit() {
- dialogConfirm($q, async () => {
- showLoader();
- await http
- .put(config.API.developmentMainTab("tab3", projectId.value), {
- developmentProjectTypes: formData.developmentProjectTypes,
- projectModal: formData.projectModal,
- isBackPlanned: formData.isBackPlanned,
- isHoldPlanned: formData.isHoldPlanned,
- projectDayBackPlanned: formData.isBackPlanned
- ? formData.projectDayBackPlanned
- : null,
- projectDayHoldPlanned: formData.projectDayHoldPlanned,
- projectNigthHoldPlanned: formData.projectNigthHoldPlanned,
- developmentProjectTechniquePlanneds:
- formData.developmentProjectTechniquePlanneds,
- isBackActual: formData.isBackActual,
- isHoldActual: formData.isHoldActual,
- projectDayBackActual: formData.projectDayBackActual,
- projectDayHoldActual: formData.projectDayHoldActual,
- projectNigthHoldActual: formData.projectNigthHoldActual,
- developmentProjectTechniqueActuals:
- formData.developmentProjectTechniqueActuals,
- projectModalActual: formData.projectModalActual,
- projectModalPlanned: formData.projectModalPlanned,
- strategyChildPlannedId: formData.strategyChildPlannedId,
- strategyChildPlannedNode: formData.strategyChildPlannedNode,
- strategyChildActualId: formData.strategyChildActualId,
- strategyChildActualNode: formData.strategyChildActualNode,
- reasonPlanned70: reasonPlanned70.value,
- reasonPlanned20: reasonPlanned20.value,
- reasonPlanned10: reasonPlanned10.value,
- reasonActual70: reasonActual70.value,
- reasonActual20: reasonActual20.value,
- reasonActual10: reasonActual10.value,
- })
- .then(() => {
- success($q, "บันทึกข้อมูลสำเร็จ");
- fetchData();
- })
- .catch((err) => {
- messageError($q, err);
- hideLoader();
- });
- });
+ // dialogConfirm($q, async () => {
+ showLoader();
+ await http
+ .put(config.API.developmentMainTab("tab3", projectId.value), {
+ developmentProjectTypes: formData.developmentProjectTypes,
+ projectModal: formData.projectModal,
+ isBackPlanned: formData.isBackPlanned,
+ isHoldPlanned: formData.isHoldPlanned,
+ projectDayBackPlanned: formData.isBackPlanned
+ ? formData.projectDayBackPlanned
+ : null,
+ projectDayHoldPlanned: formData.projectDayHoldPlanned,
+ projectNigthHoldPlanned: formData.projectNigthHoldPlanned,
+ developmentProjectTechniquePlanneds:
+ formData.developmentProjectTechniquePlanneds,
+ isBackActual: formData.isBackActual,
+ isHoldActual: formData.isHoldActual,
+ projectDayBackActual: formData.projectDayBackActual,
+ projectDayHoldActual: formData.projectDayHoldActual,
+ projectNigthHoldActual: formData.projectNigthHoldActual,
+ developmentProjectTechniqueActuals:
+ formData.developmentProjectTechniqueActuals,
+ projectModalActual: formData.projectModalActual,
+ projectModalPlanned: formData.projectModalPlanned,
+ strategyChildPlannedId: formData.strategyChildPlannedId,
+ strategyChildPlannedNode: formData.strategyChildPlannedNode,
+ strategyChildActualId: formData.strategyChildActualId,
+ strategyChildActualNode: formData.strategyChildActualNode,
+ reasonPlanned70: reasonPlanned70.value,
+ reasonPlanned20: reasonPlanned20.value,
+ reasonPlanned10: reasonPlanned10.value,
+ reasonActual70: reasonActual70.value,
+ reasonActual20: reasonActual20.value,
+ reasonActual10: reasonActual10.value,
+ })
+ .then(() => {
+ // success($q, "บันทึกข้อมูลสำเร็จ");
+ // fetchData();
+ step.value == "next" ? props.nextStep() : props.prevStep();
+ })
+ .catch((err) => {
+ messageError($q, err);
+ hideLoader();
+ });
+ // });
}
/**
@@ -874,7 +880,35 @@ onMounted(() => {
-