From dabc016e39e97723710052c67eb5732ed573e954 Mon Sep 17 00:00:00 2001 From: waruneeta Date: Thu, 25 Jan 2024 14:53:55 +0700 Subject: [PATCH 1/2] upgrade vue 3.2 to 3.4 --- .gitignore | 2 ++ package.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 38adffa64..e1f03e1c4 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,5 @@ coverage *.njsproj *.sln *.sw? + +package-lock.json \ No newline at end of file diff --git a/package.json b/package.json index 4964772b7..403f6f025 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "pinia": "^2.0.29", "quasar": "^2.11.1", "structure-chart": "^0.0.9", - "vue": "^3.2.45", + "vue": "^3.4.15", "vue-currency-input": "^3.0.5", "vue-router": "^4.1.6", "vue3-datepicker": "^0.3.4", From 42e7fd6b1d44cfd8a7c84dcbe0621dec414212a7 Mon Sep 17 00:00:00 2001 From: oat Date: Thu, 25 Jan 2024 15:05:51 +0700 Subject: [PATCH 2/2] =?UTF-8?q?=E0=B9=81=E0=B8=81=E0=B9=89=20UI=20?= =?UTF-8?q?=E0=B9=80=E0=B8=84=E0=B8=A3=E0=B8=B7=E0=B9=88=E0=B8=AD=E0=B8=87?= =?UTF-8?q?=E0=B8=A3=E0=B8=B2=E0=B8=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/insignia/InsigniaDetail.vue | 121 +++++++- .../components/insignia/InsigniaList.vue | 264 +++++++++++++----- .../components/insignia/InsigniaType.vue | 244 ++++++++++++---- .../interface/response/insignia/Insignia.ts | 45 ++- .../01_metadataNew/stores/InsigniaStore.ts | 28 ++ 5 files changed, 557 insertions(+), 145 deletions(-) create mode 100644 src/modules/01_metadataNew/stores/InsigniaStore.ts diff --git a/src/modules/01_metadataNew/components/insignia/InsigniaDetail.vue b/src/modules/01_metadataNew/components/insignia/InsigniaDetail.vue index 5dd585c69..075bf3125 100644 --- a/src/modules/01_metadataNew/components/insignia/InsigniaDetail.vue +++ b/src/modules/01_metadataNew/components/insignia/InsigniaDetail.vue @@ -1,15 +1,120 @@ diff --git a/src/modules/01_metadataNew/components/insignia/InsigniaList.vue b/src/modules/01_metadataNew/components/insignia/InsigniaList.vue index aba244496..846725371 100644 --- a/src/modules/01_metadataNew/components/insignia/InsigniaList.vue +++ b/src/modules/01_metadataNew/components/insignia/InsigniaList.vue @@ -1,12 +1,15 @@ - + diff --git a/src/modules/01_metadataNew/components/insignia/InsigniaType.vue b/src/modules/01_metadataNew/components/insignia/InsigniaType.vue index bd6d020a5..00b0f97b9 100644 --- a/src/modules/01_metadataNew/components/insignia/InsigniaType.vue +++ b/src/modules/01_metadataNew/components/insignia/InsigniaType.vue @@ -1,12 +1,16 @@ @@ -143,7 +189,7 @@ function onclickDetail(data: (typeof row)["value"][number]) {
@@ -230,36 +276,128 @@ function onclickDetail(data: (typeof row)["value"][number]) { - - -
แก้ไข
-
เพิ่ม
- -
+ +
+ + + - - -
- สถานะการใช้งาน - -
-
+ + + +
+
+

สถานะการใช้งาน

+ +
+
+
- - - + + + บันทึกข้อมูล + + +
- + diff --git a/src/modules/01_metadataNew/interface/response/insignia/Insignia.ts b/src/modules/01_metadataNew/interface/response/insignia/Insignia.ts index 6fb21a2ca..afa2247f4 100644 --- a/src/modules/01_metadataNew/interface/response/insignia/Insignia.ts +++ b/src/modules/01_metadataNew/interface/response/insignia/Insignia.ts @@ -1,18 +1,33 @@ -//ข้อมูล -interface ResponseHistoryObject { - createdAt?: Date; - createdFullName: String; - createdUserId: String; - id: String; - isActive: Boolean; +interface DataResponse { + createdAt: Date; + id: string; + isActive: boolean; lastUpdateFullName: String; - lastUpdateUserId: String; - lastUpdatedAt?: Date; - level: number; - name: String; - shortName: String; - insigniaType?: any; - note: string; + lastUpdatedAt: Date; + name: string; } -export type { ResponseHistoryObject }; +interface DataRow { + createdAt: string | null; + id: string; + isActive: boolean; + lastUpdateFullName: String; + lastUpdatedAt: string | null; + name: string; +} + +interface DetailResponse extends DataResponse { + note: string; + shortName: string; + insigniaType: string; + insigniaTypeId: string; + level: number; +} + +interface DetailRow + extends Omit { + createdAt: string | null; + lastUpdatedAt: string | null; +} + +export type { DataResponse, DataRow, DetailResponse, DetailRow }; diff --git a/src/modules/01_metadataNew/stores/InsigniaStore.ts b/src/modules/01_metadataNew/stores/InsigniaStore.ts new file mode 100644 index 000000000..55ca005ed --- /dev/null +++ b/src/modules/01_metadataNew/stores/InsigniaStore.ts @@ -0,0 +1,28 @@ +import { defineStore } from "pinia"; +import { ref } from "vue"; +import type { + DataResponse, + DataRow, +} from "../interface/response/insignia/Insignia"; +import { useCounterMixin } from "@/stores/mixin"; + +const { date2Thai } = useCounterMixin(); + +export const useInsigniaDataStore = defineStore("insigniaData", () => { + const row = ref(); + function fetchData(data: DataResponse[]) { + console.log(data); + const list = data.map((e) => ({ + ...e, + createdAt: e.createdAt ? date2Thai(e.createdAt) : "", + lastUpdatedAt: e.lastUpdatedAt ? date2Thai(e.lastUpdatedAt) : "", + })); + console.log(list); + row.value = list; + } + + return { + fetchData, + row, + }; +});