From 3c5fcc029be0f4affaba0224835ced992270a9a4 Mon Sep 17 00:00:00 2001 From: setthawutttty Date: Fri, 24 Nov 2023 17:49:25 +0700 Subject: [PATCH] =?UTF-8?q?api=20=E0=B8=A3=E0=B8=B2=E0=B8=A2=E0=B8=81?= =?UTF-8?q?=E0=B8=B2=E0=B8=A3=E0=B8=AA=E0=B8=B7=E0=B8=9A=E0=B8=AA=E0=B8=A7?= =?UTF-8?q?=E0=B8=99=E0=B8=82=E0=B9=89=E0=B8=AD=E0=B9=80=E0=B8=97=E0=B9=87?= =?UTF-8?q?=E0=B8=88=E0=B8=88=E0=B8=A3=E0=B8=B4=E0=B8=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/11_discipline/api.discipline.ts | 20 +- .../1_Complaint/AddComplaintPage.vue | 2 - .../components/1_Complaint/EditPage.vue | 67 +- .../components/1_Complaint/Form.vue | 38 +- .../2_InvestigateFacts/EditPage.vue | 145 ++-- .../components/2_InvestigateFacts/Form.vue | 674 ++++++++++++++---- .../2_InvestigateFacts/MainPage.vue | 107 ++- .../3_InvestigateDisciplinary/Dialogbody.vue | 93 ++- .../11_discipline/interface/index/Main.ts | 30 +- .../interface/request/investigateFact.ts | 48 +- .../interface/response/investigate.ts | 32 +- .../11_discipline/store/ComplaintsStore.ts | 6 +- .../store/InvestigateDisStore.ts | 13 +- .../store/InvestigateFactStore.ts | 133 ++-- 14 files changed, 1025 insertions(+), 383 deletions(-) diff --git a/src/api/11_discipline/api.discipline.ts b/src/api/11_discipline/api.discipline.ts index 64c3b94cf..41b2509d6 100644 --- a/src/api/11_discipline/api.discipline.ts +++ b/src/api/11_discipline/api.discipline.ts @@ -1,5 +1,6 @@ import env from "../index"; const discipline = `${env.API_URI}/discipline`; +const investigate = `${env.API_URI}/discipline/investigate` export default { directorList:(page:number,pageSize:number,keyword:string) => `${discipline}/director?page=${page}&pageSize=${pageSize}&keyword=${keyword}`, @@ -13,7 +14,6 @@ export default { * @param id type */ complaintChannelbyId:(id:string) => `${discipline}/complaint_Channel/${id}`, - complaintAdd:() => `${discipline}/complaint`, complaintbyId:(id:string) => `${discipline}/complaint/${id}`, complaintReject:(id:string) => `${discipline}/complaint/reject/${id}`, @@ -21,7 +21,23 @@ export default { complaintList:(page:number,pageSize:number,keyword:string) => `${discipline}/complaint?page=${page}&pageSize=${pageSize}&keyword=${keyword}`, complaintFileUpload:(id:string) => `${discipline}/complaint/file/${id}`, complaintFileDelete:(id:string,docId:string) => `${discipline}/complaint/file/${id}/${docId}`, + complaintApprove:(id:string) => `${discipline}/complaint/approve/${id}`, - complaintApprove:(id:string) => `${discipline}/complaint/approve/${id}` + /** API สืบสวนข้อเท็จจริง*/ + investigateMain:(page:number,pageSize:number,keyword:string) =>`${investigate}?page=${page}&pageSize=${pageSize}&keyword=${keyword}`, + investigateById:(id:string) => `${investigate}/${id}`, + + + + + investigateRelevantUploadFile:(id:string) => `${investigate}/relevant/file/${id}`, + investigateRelevantFileDelete:(id:string,docId:string) => `${investigate}/relevant/file/${id}/${docId}`, + + investigateUploadFile:(id:string) => `${investigate}/file/${id}`, + investigateFileDelete:(id:string,docId:string) => `${investigate}/file/${id}/${docId}`, + + investigateReject:(id:string) => `${investigate}/reject/${id}`, + investigateResume:(id:string) => `${investigate}/resume/${id}`, + }; diff --git a/src/modules/11_discipline/components/1_Complaint/AddComplaintPage.vue b/src/modules/11_discipline/components/1_Complaint/AddComplaintPage.vue index e768719a9..3633f0e82 100644 --- a/src/modules/11_discipline/components/1_Complaint/AddComplaintPage.vue +++ b/src/modules/11_discipline/components/1_Complaint/AddComplaintPage.vue @@ -16,12 +16,10 @@ const router = useRouter(); /** บันทึกข้อมูล */ async function onSubmit(data: any) { /** post */ - console.log(data) showLoader(); http .post(config.API.complaintAdd(), data) .then((res) => { - console.log(res) success($q, "บันทึกข้อมูลสำเร็จ"); router.push(`/discipline/complaints/${res.data.result}`); }) diff --git a/src/modules/11_discipline/components/1_Complaint/EditPage.vue b/src/modules/11_discipline/components/1_Complaint/EditPage.vue index 9a208ae0b..e6d6a0832 100644 --- a/src/modules/11_discipline/components/1_Complaint/EditPage.vue +++ b/src/modules/11_discipline/components/1_Complaint/EditPage.vue @@ -69,7 +69,7 @@ const data = reactive({ documentFile: null, status: "", persons: [personOj], - result: '', + result: "", disciplineComplaintDocs: [fileListOj], }); @@ -158,7 +158,6 @@ async function getData() { data.result = dataList.result; data.disciplineComplaintDocs = dataList.disciplineComplaintDocs; - console.log("list", data.id); }) .catch((e) => { messageError($q, e); @@ -173,7 +172,6 @@ async function onSubmit(data: any) { http .put(config.API.complaintbyId(id.value), data) .then((res) => { - console.log(res); success($q, "บันทึกข้อมูลสำเร็จ"); router.push(`/discipline/complaints`); }) @@ -183,19 +181,12 @@ async function onSubmit(data: any) { .finally(async () => { hideLoader(); }); - console.log("edit", data); // router.push(`/discipline/complaints`); } /** ยืนยัน มีมูลส่งไปสืบสวน */ function sentInvestigate() { modalPopup.value = true; - // dialogConfirm( - // $q, - // () => confirmSentInvestigate(), - // "ยืนยันส่งไปสืบสวน", - // "ต้องการยืนยันส่งไปสืบสวนใช่หรือไม่?" - // ); } function closePopup() { @@ -222,11 +213,6 @@ function cancelInvestigate() { ); } -/** ฟังชั่น มีมูลส่งไปสืบสวน*/ -function confirmSentInvestigate() { - console.log("sent"); -} - /** ฟังชั่น ยุติเรื่อง*/ function confirmEndInvestigate() { showLoader(); @@ -236,12 +222,11 @@ function confirmEndInvestigate() { success($q, "บันทึกข้อมูลสำเร็จ"); }) .catch((e) => { - messageError($q,e); + messageError($q, e); }) .finally(async () => { await getData(); }); - console.log("sent"); } /** ฟังชั่น ยกเลิกการยุติเรื่อง*/ @@ -250,7 +235,7 @@ function confirmCancelInvestigate() { http .get(config.API.complaintResume(id.value)) .then((res) => { - getData() + getData(); }) .catch((e) => { messageError($q, e); @@ -258,19 +243,18 @@ function confirmCancelInvestigate() { .finally(() => { hideLoader(); }); - console.log("sent"); } -function emitPerson(data:ArrayPerson[]){ - console.log('person',data) - const dataMapId = data.map((item:ArrayPerson) => - item.personId - ) - console.log('id',dataMapId) - showLoader(); +/** + * ดึงข้อมูล จาก component เเล้ว update + * @param data person data + */ +function emitPerson(data: ArrayPerson[]) { + const dataMapId = data.map((item: ArrayPerson) => item.personId); + showLoader(); http - .put(config.API.complaintApprove(id.value),{ - persons:dataMapId + .put(config.API.complaintApprove(id.value), { + persons: dataMapId, }) .then((res) => { router.push(`/discipline/complaints`); @@ -282,24 +266,9 @@ function emitPerson(data:ArrayPerson[]){ hideLoader(); }); } -// function sentApprove() { -// // showLoader(); -// // http -// // .put(config.API.complaintApprove(id.value)) -// // .then((res) => { -// // router.push(`/discipline/complaints`); -// // }) -// // .catch((e) => { -// // messageError($q, e); -// // }) -// // .finally(() => { -// // hideLoader(); -// // }); -// console.log("sent"); -// } + /** เรียกใช้งาน ฟังชั่น ตอนเริ่มโหลดหน้า */ onMounted(() => { - console.log(data); // fetchData(); getData(); }); @@ -341,11 +310,11 @@ onMounted(() => { -
+ - diff --git a/src/modules/11_discipline/components/1_Complaint/Form.vue b/src/modules/11_discipline/components/1_Complaint/Form.vue index 0ea6a356f..eac406177 100644 --- a/src/modules/11_discipline/components/1_Complaint/Form.vue +++ b/src/modules/11_discipline/components/1_Complaint/Form.vue @@ -228,42 +228,6 @@ const visibleColumns = ref([ "organization", ]); -/** - * รับค่าผู้ถูกร้องเรียน - * @param val บุคคล หน่วยงาน กทม - */ -async function selectComplainant(val: string) { - formData.organizationId = ""; - formData.consideredAgency = ""; - if (val === "0") { - await fetchListname(); // ถ้าเลือกบุกคลจะเรียก function fetchListname เรียกรายชื่อจากทะเบียน - } else if (val === "1") { - await fetchOffice(); // ถ้าเลือกหน่วยงานจะเรียก function fetchOffice เรียกโครงสร้างสำนักงาน - } -} - -/** เรียกรายชื่อ */ -async function fetchListname() { - const listName = [ - { - id: "1", - name: "นายเอ", - }, - { - id: "2", - name: "นายบี", - }, - { - id: "3", - name: "นายชี", - }, - ]; - selectComplainantTpye(listName); -} - -/** เรียกโครงสร้างสำนักงาน */ -async function fetchOffice() {} - /** * ฟังชั่นอัปโหลดไฟล์ * @param documentFile ไฟล์ที่รับมา @@ -379,6 +343,7 @@ function confirmDelete(id: string) { watch(props.data, async () => { fileList.value = props.data.disciplineComplaintDocs; complainstStore.fetchComplainstAdd(props.data.persons); + formData.id = props.data.id; formData.respondentType = props.data.respondentType; formData.organizationId = props.data.organizationId; @@ -467,7 +432,6 @@ onMounted(() => { :options="complainstStore.complainantoptions" :rules="[(val) => !!val || `${'กรุณาเลือกผู้ร้องเรียน'}`]" lazy-rules - @update:model-value="selectComplainant(formData.respondentType)" @filter="(inputValue: any, doneFn: Function) => filterSelector(inputValue, doneFn, 'filterrespondentType' )" diff --git a/src/modules/11_discipline/components/2_InvestigateFacts/EditPage.vue b/src/modules/11_discipline/components/2_InvestigateFacts/EditPage.vue index 111fe4d86..ba128c895 100644 --- a/src/modules/11_discipline/components/2_InvestigateFacts/EditPage.vue +++ b/src/modules/11_discipline/components/2_InvestigateFacts/EditPage.vue @@ -8,63 +8,101 @@ import { useInvestigateFactStore } from "@/modules/11_discipline/store/Investiga import { useQuasar } from "quasar"; import Popup from "@/modules/11_discipline/components/1_Complaint/Popup.vue"; import type { FormData } from "@/modules/11_discipline/interface/request/investigateFact"; +import config from "@/app.config"; +import http from "@/plugins/http"; const $q = useQuasar(); const mixin = useCounterMixin(); const store = useInvestigateFactStore(); -const { dialogConfirm } = mixin; +const { dialogConfirm, showLoader, success, hideLoader, messageError } = mixin; const router = useRouter(); const route = useRoute(); const id = ref(route.params.id as string); /** ข้อมูล v-model ของฟอร์ม */ const data = reactive({ + id: "", + idComplaint: "", + investigationDetail: "", complaint: "", complaintdetail: "", - detail: "", + investigationDescription: "", fault: "", - other: "", + investigationDetailOther: "", evidenceFiles: null, fileComplaint: null, clickTime: false, - date: null, - dateEnd: new Date(), - investigation: "", + investigationDateStart: null, + investigationDateEnd: null, daysExtend: null, - statusResult: "", - causeText: "", + investigationStatusResult: "", + investigationCauseText: "", complaintStatus: "", - reason: "", + result: "", + directors: [], + disciplineInvestigateDocs: [], + disciplineInvestigateRelevantDocs: [], + status: "", + documentFile: null, + respondentType: "", + organizationId: "", + persons:[] }); -/** จำลองข้อมูลจาก api */ -const fetchData = async () => { - // ดึงค่าจาก api - data.complaint = "เรื่องที่ 1"; - data.complaintdetail = "รายละเอียด"; - data.detail = "รายละเอียด"; - data.fault = "001"; - data.other = ""; - data.evidenceFiles = null; - data.fileComplaint = null; - data.clickTime = false; - data.date = new Date("2023-11-07T14:58:00"); - data.dateEnd = new Date("2023-11-08T14:58:00"); - data.investigation = "appoint_directors"; - data.daysExtend = null; - data.statusResult = "not_specified"; - data.causeText = ""; - data.complaintStatus = "NEW"; -}; +function getData() { + showLoader(); + http + .get(config.API.investigateById(id.value)) + .then((res) => { + console.log(res.data.result); + const dataList = res.data.result; + data.id = dataList.id; + data.idComplaint = dataList.idComplaint; + data.respondentType = dataList.respondentType + data.persons = dataList.persons + data.investigationDetail = dataList.investigationDetail; + data.investigationDetailOther = dataList.investigationDetailOther; + data.investigationDateStart = dataList.investigationDateStart; + data.investigationDateEnd = dataList.investigationDateEnd; + data.investigationDescription = dataList.investigationDescription; + data.investigationCauseText = dataList.investigationCauseText; + data.status = dataList.status; + data.result = dataList.result; + data.directors = dataList.director; + data.disciplineInvestigateDocs = dataList.disciplineInvestigateDocs; + data.disciplineInvestigateRelevantDocs = + dataList.disciplineInvestigateRelevantDocs; + data.investigationStatusResult = dataList.investigationStatusResult; + }) + .catch((e) => { + messageError($q, e); + }) + .finally(() => { + hideLoader(); + }); +} /** * บันทึกข้อมูลที่เเก้ไข * @param id ระบุ บุคคล */ -async function onSubmit(id: string) { +async function onSubmit(data: any) { // put - console.log("edit", id); - router.push(`/discipline/investigatefacts`); + console.log("edit", data); + showLoader(); + http + .put(config.API.investigateById(id.value), data) + .then((res) => { + success($q, "บันทึกข้อมูลสำเร็จ"); + // router.push(`/discipline/complaints`); + }) + .catch((e) => { + messageError($q, e); + }) + .finally(async () => { + hideLoader(); + }); + // router.push(`/discipline/investigatefacts`); } const modalPopup = ref(false); @@ -110,17 +148,40 @@ function confirmSentInvestigate() { /** ฟังชั่น ยุติเรื่อง*/ function confirmEndInvestigate() { - console.log("sent"); + showLoader(); + http + .get(config.API.investigateReject(id.value)) + .then((res) => { + success($q, "บันทึกข้อมูลสำเร็จ"); + }) + .catch((e) => { + messageError($q, e); + }) + .finally(async () => { + await getData(); + }); } /** ฟังชั่น ยกเลิกการยุติเรื่อง*/ function confirmCancelInvestigate() { - console.log("sent"); + showLoader(); + http + .get(config.API.investigateResume(id.value)) + .then((res) => { + getData(); + }) + .catch((e) => { + messageError($q, e); + }) + .finally(() => { + hideLoader(); + }); } + /** โหลดข้อมูลเมื่อเข้าหน้านี้ */ onMounted(() => { - fetchData(); + getData(); }); @@ -137,24 +198,24 @@ onMounted(() => { class="q-mr-sm" @click="$router.push(`/discipline/investigatefacts`)" /> -
แก้ไขรายการสืบสวนข้อเท็จจริง {{ id }}#id
+
แก้ไขรายการสืบสวนข้อเท็จจริง
{ - + - +