reafactor(issues): add status HELPDESK_IN_PROGRESS and REPLIED

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2026-05-08 10:16:45 +07:00
parent 3a0d655ab0
commit bfcbe96678
2 changed files with 48 additions and 31 deletions

View file

@ -13,8 +13,10 @@ export const useIssueStore = defineStore("issue", () => {
const statusOptions = ref<Options[]>([ const statusOptions = ref<Options[]>([
{ label: "ทั้งหมด", value: "" }, { label: "ทั้งหมด", value: "" },
{ label: "ใหม่", value: "NEW" }, { label: "ใหม่", value: "NEW" },
{ label: "กำลังดำเนินการ", value: "IN_PROGRESS" }, { label: "Dev กำลังดำเนินการ", value: "IN_PROGRESS" },
{ label: "แก้ไขแล้ว", value: "RESOLVED" }, { label: "แก้ไขแล้ว", value: "RESOLVED" },
{ label: "Helpdesk กำลังดำเนินการ", value: "HELPDESK_IN_PROGRESS" },
{ label: "แจ้งกลับแล้ว", value: "REPLIED " },
{ label: "ปิดแล้ว", value: "CLOSED" }, { label: "ปิดแล้ว", value: "CLOSED" },
]); ]);
@ -24,11 +26,15 @@ export const useIssueStore = defineStore("issue", () => {
case "NEW": case "NEW":
return "ใหม่"; return "ใหม่";
case "IN_PROGRESS": case "IN_PROGRESS":
return "กำลังดำเนินการ"; return "Dev กำลังดำเนินการ";
case "RESOLVED": case "RESOLVED":
return "แก้ไขแล้ว"; return "แก้ไขแล้ว";
case "CLOSED": case "CLOSED":
return "ปิดแล้ว"; return "ปิดแล้ว";
case "HELPDESK_IN_PROGRESS":
return "Helpdesk กำลังดำเนินการ";
case "REPLIED":
return "แจ้งกลับแล้ว";
default: default:
return "-"; return "-";
} }

View file

@ -22,6 +22,7 @@ const { convertStatus, convertSystem } = store;
const { systemOptions, statusOptions } = storeToRefs(store); const { systemOptions, statusOptions } = storeToRefs(store);
const visibleColumns = ref<string[]>([ const visibleColumns = ref<string[]>([
"codeIssue",
"title", "title",
"description", "description",
"system", "system",
@ -34,6 +35,43 @@ const visibleColumns = ref<string[]>([
"status", "status",
]); ]);
const columns = ref<QTableProps["columns"]>([ const columns = ref<QTableProps["columns"]>([
{
name: "codeIssue",
align: "left",
label: "รหัส",
sortable: false,
field: "codeIssue",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},
{
name: "createdAt",
align: "left",
label: "วันที่สร้าง",
sortable: false,
field: "createdAt",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format: (val: string) => date2Thai(new Date(val), false, true),
},
{
name: "createdFullName",
align: "left",
label: "ชื่อผู้สร้าง",
sortable: false,
field: "createdFullName",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},
{
name: "org",
align: "left",
label: "หน่วยงาน",
sortable: false,
field: "org",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},
{ {
name: "title", name: "title",
align: "left", align: "left",
@ -71,16 +109,6 @@ const columns = ref<QTableProps["columns"]>([
headerStyle: "font-size: 14px", headerStyle: "font-size: 14px",
style: "font-size: 14px", style: "font-size: 14px",
}, },
{
name: "org",
align: "left",
label: "หน่วยงาน",
sortable: false,
field: "org",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},
{ {
name: "email", name: "email",
align: "left", align: "left",
@ -100,25 +128,6 @@ const columns = ref<QTableProps["columns"]>([
style: "font-size: 14px", style: "font-size: 14px",
}, },
{
name: "createdAt",
align: "left",
label: "วันที่สร้าง",
sortable: false,
field: "createdAt",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
format: (val: string) => date2Thai(new Date(val), false, true),
},
{
name: "createdFullName",
align: "left",
label: "ชื่อผู้สร้าง",
sortable: false,
field: "createdFullName",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},
{ {
name: "status", name: "status",
align: "left", align: "left",
@ -194,6 +203,7 @@ onMounted(async () => {
await fetchListIssues(); await fetchListIssues();
}); });
</script> </script>
<template> <template>
<div class="row items-center"> <div class="row items-center">
<div class="toptitle text-dark row items-center q-py-xs"> <div class="toptitle text-dark row items-center q-py-xs">
@ -231,6 +241,7 @@ onMounted(async () => {
</div> </div>
<div class="col-xs-12 col-sm-8 col-md-6"> <div class="col-xs-12 col-sm-8 col-md-6">
<q-select <q-select
class="select_ellipsis2"
dense dense
outlined outlined
v-model="statusFilter" v-model="statusFilter"