แก้ไขเรื่องร้องเรียน, สืบสวน, สอบสวน

This commit is contained in:
Warunee Tamkoo 2023-11-30 18:02:29 +07:00
parent 76594a2359
commit f247167e9a
20 changed files with 1356 additions and 1714 deletions

View file

@ -1,7 +1,7 @@
<script setup lang="ts">
import { onMounted, reactive, ref } from "vue";
import Form from "@/modules/11_discipline/components/1_Complaint/Form.vue";
import Popup from "@/modules/11_discipline/components/1_Complaint/Popup.vue";
import PopupSendToNext from "@/modules/11_discipline/components/PopupSendToNext.vue";
import { useRouter, useRoute } from "vue-router";
import { useQuasar } from "quasar";
import type { QTableProps } from "quasar";
@ -15,7 +15,10 @@ import type {
} from "@/modules/11_discipline/interface/request/complaint";
import { useCounterMixin } from "@/stores/mixin";
import { useComplainstDataStore } from "@/modules/11_discipline/store/ComplaintsStore";
import { useDisciplineMainStore } from "@/modules/11_discipline/store";
const complainstStore = useComplainstDataStore();
const mainStore = useDisciplineMainStore();
const $q = useQuasar();
const mixin = useCounterMixin();
const {
@ -34,6 +37,7 @@ const modalPopup = ref<boolean>(false);
/** ข้อมูล v-model ของฟอร์ม */
const personOj = reactive<ArrayPerson>({
id: "",
personId: "",
idcard: "",
name: "",
@ -74,67 +78,6 @@ const data = reactive<FormData>({
disciplineComplaintDocs: [fileListOj],
});
/** ดึงค่าจาก api */
// const fetchData = async () => {
// data.respondentType = "PERSON";
// data.organizationId = "0";
// data.consideredAgency = "2";
// data.title = "";
// data.description = "";
// data.dateReceived = new Date("2023-11-05");
// data.dateConsideration = new Date("2023-11-07T14:58:00");
// data.offenseDetails = "NOT_SPECIFIED";
// data.levelConsideration = "NORMAL";
// data.dateNotification = new Date("2023-11-07T14:58:00");
// data.complaintFrom = "";
// data.appellant = " ";
// data.documentFile = "";
// data.complaintStatus = "NEW";
// (data.persons = [
// {
// idcard: "1529900022223",
// name: " ",
// positionNo: ".1",
// position: "",
// positionLevel: "",
// salary: "10000",
// organization: ".",
// },
// ]),
// (data.fileList = [
// {
// id: "08dbeb08-1931-487d-8989-0725ce48031d",
// file: "https://s3cluster.frappet.com/bma-ehr-fpt/edb095bf-8898-4ef8-ad60-daaf60991b8f?AWSAccessKeyId=frappet&Expires=1700657567&Signature=7Do0YexqpTJGA4DQPKzJ5YtvyJg%3D",
// fileName: "ex_slip.jpeg.png14",
// fileType: "image/png",
// },
// {
// id: "08dbeb08-392b-41b8-8970-78934f317469",
// file: "https://s3cluster.frappet.com/bma-ehr-fpt/5a32c821-46d6-4bbc-9824-b777f154702e?AWSAccessKeyId=frappet&Expires=1700657567&Signature=HlNAjybBNPqGAYJtHIefNRofz1E%3D",
// fileName: "17058616.jpg",
// fileType: "image/jpeg",
// },
// {
// id: "08dbeb08-3e41-4500-8476-6bdd76f0b6c8",
// file: "https://s3cluster.frappet.com/bma-ehr-fpt/1bf5ef61-05f3-4cb1-98a5-dd2698b49440?AWSAccessKeyId=frappet&Expires=1700657567&Signature=WAlAjPbX%2BUoO0zY7m1jDEb3ovvA%3D",
// fileName: "17058616.jpg",
// fileType: "image/jpeg",
// },
// {
// id: "08dbeb08-428f-483b-8d50-718e947d012e",
// file: "https://s3cluster.frappet.com/bma-ehr-fpt/d848952a-54af-4502-b235-1f01f441d86c?AWSAccessKeyId=frappet&Expires=1700657568&Signature=3L9QfaWLCHmZjeS2UttVM3se6W0%3D",
// fileName: "HybGoQu8osQ49G7AzCOvYF4G.png",
// fileType: "image/png",
// },
// {
// id: "08dbeb08-8aa5-4264-87bf-1794be50f0c7",
// file: "https://s3cluster.frappet.com/bma-ehr-fpt/ac55b1f8-54f6-43c4-9f85-c236d24e7d76?AWSAccessKeyId=frappet&Expires=1700657568&Signature=isN3RM3P4%2BP5lgK5%2F45h1U5pabI%3D",
// fileName: "1300399.jpg",
// fileType: "image/jpeg",
// },
// ]);
// };
const columns = ref<QTableProps["columns"]>([
{
name: "no",
@ -271,28 +214,33 @@ async function onSubmit(data: any) {
/** ยืนยัน มีมูลส่งไปสืบสวน */
function sentInvestigate() {
if (complainstStore.rowsAdd.length > 0) {
if (mainStore.rowsAdd.length > 0) {
modalPopup.value = true;
} else {
dialogConfirm($q,()=>sentConfirm(),'ยืนยันส่งไปสืบสวน','ต้องการยืนยันยืนยันส่งไปสืบสวนใช่หรือไม่?')
dialogConfirm(
$q,
() => sentConfirmNoPerson(),
"ยืนยันส่งไปสืบสวน",
"ต้องการยืนยันยืนยันส่งไปสืบสวนใช่หรือไม่?"
);
}
}
function sentConfirm(){
function sentConfirmNoPerson() {
showLoader();
http
.put(config.API.complaintApprove(id.value), {
persons: [],
})
.then((res) => {
router.push(`/discipline/complaints`);
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
hideLoader();
});
http
.put(config.API.complaintApprove(id.value), {
persons: [],
})
.then((res) => {
router.push(`/discipline/complaints`);
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
hideLoader();
});
}
function closePopup() {
@ -355,8 +303,9 @@ function confirmCancelInvestigate() {
* งขอม จาก component เเล update
* @param data person data
*/
function emitPerson(data: ArrayPerson[]) {
const dataMapId = data.map((item: ArrayPerson) => item.personId);
function sendPersonToNext(data: ArrayPerson[]) {
const dataMapId = data.map((item: ArrayPerson) => item.id);
showLoader();
http
.put(config.API.complaintApprove(id.value), {
@ -379,6 +328,7 @@ onMounted(() => {
getData();
});
</script>
<template>
<div class="col-xs-12 col-sm-12 col-md-11">
<div class="toptitle col-12 row items-end">
@ -417,11 +367,11 @@ onMounted(() => {
</div>
<Form :on-submit="onSubmit" :data="data" :get-data="getData" />
<Popup
<PopupSendToNext
:modal="modalPopup"
:close="closePopup"
@return-person="emitPerson"
:rows="complainstStore.rowsAdd"
@return-person="sendPersonToNext"
:rows="mainStore.rowsAdd"
:columns="columns"
:visibleColumns="visibleColumns"
/>