From 7134746b236dbdf638e3d8bbbf9e82cc03ea3b65 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期四, 26 六月 2025 13:02:16 +0800
Subject: [PATCH] feat: v2.2

---
 src/services/api/index.ts                              |    2 
 src/views/Home/components/UploadInsurePersonDialog.vue |   13 ++
 src/hooks/dic.ts                                       |   18 ++++
 src/services/api/User.ts                               |   12 +++
 src/services/api/typings.d.ts                          |   62 +++++++++++++++
 src/hooks/index.ts                                     |    1 
 src/views/Home/Home.vue                                |   20 ++--
 src/services/api/Dictionary.ts                         |   81 ++++++++++++++++++++
 src/services/api/InsuranceOrder.ts                     |   16 ++++
 9 files changed, 213 insertions(+), 12 deletions(-)

diff --git a/src/hooks/dic.ts b/src/hooks/dic.ts
new file mode 100644
index 0000000..3b84750
--- /dev/null
+++ b/src/hooks/dic.ts
@@ -0,0 +1,18 @@
+import * as dictionaryServices from '@/services/api/Dictionary';
+import { useQuery, useQueryClient } from '@tanstack/vue-query';
+
+export function useInsureProductSettingAllList() {
+  const { data: allInsureProductSettingList, refetch } = useQuery({
+    queryKey: ['dictionaryServices/getInsureProductSettingAllList'],
+    queryFn: async () => {
+      let res = await dictionaryServices.getInsureProductSettingAllList({}, { showLoading: false });
+      return res;
+    },
+    placeholderData: () => [] as API.InsureProductSettingDto[],
+  });
+
+  return {
+    allInsureProductSettingList,
+    refetch,
+  };
+}
diff --git a/src/hooks/index.ts b/src/hooks/index.ts
index 4e58653..0e17a20 100644
--- a/src/hooks/index.ts
+++ b/src/hooks/index.ts
@@ -7,3 +7,4 @@
 export * from './useUser';
 export * from './help';
 export * from './insuranceClaim';
+export * from './dic';
diff --git a/src/services/api/Dictionary.ts b/src/services/api/Dictionary.ts
new file mode 100644
index 0000000..a5edbe5
--- /dev/null
+++ b/src/services/api/Dictionary.ts
@@ -0,0 +1,81 @@
+/* eslint-disable */
+// @ts-ignore
+import { request } from '@/utils/request';
+
+/** 鏂板锛岀紪杈戜繚闄╀骇鍝侀厤缃� POST /api/Dictionary/CreateOrUpdateInsureProductSetting */
+export async function createOrUpdateInsureProductSetting(
+  body: API.CreateOrUpdateInsureProductSettingInput,
+  options?: API.RequestConfig
+) {
+  return request<string>('/api/Dictionary/CreateOrUpdateInsureProductSetting', {
+    method: 'POST',
+    headers: {
+      'Content-Type': 'application/json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
+
+/** 鍒犻櫎淇濋櫓浜у搧閰嶇疆 GET /api/Dictionary/DeleteInsureProductSetting */
+export async function deleteInsureProductSetting(
+  // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+  params: API.APIdeleteInsureProductSettingParams,
+  options?: API.RequestConfig
+) {
+  return request<number>('/api/Dictionary/DeleteInsureProductSetting', {
+    method: 'GET',
+    params: {
+      ...params,
+    },
+    ...(options || {}),
+  });
+}
+
+/** 鑾峰彇宸插惎鐢ㄧ殑淇濋櫓浜у搧閰嶇疆涓嬫媺鍒楄〃 POST /api/Dictionary/GetInsureProductSettingAllList */
+export async function getInsureProductSettingAllList(
+  body: API.GetInsureProductSettingPageInput,
+  options?: API.RequestConfig
+) {
+  return request<API.InsureProductSettingDto[]>('/api/Dictionary/GetInsureProductSettingAllList', {
+    method: 'POST',
+    headers: {
+      'Content-Type': 'application/json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
+
+/** 鑾峰彇淇濋櫓浜у搧閰嶇疆鍒楄〃 POST /api/Dictionary/GetInsureProductSettingPage */
+export async function getInsureProductSettingPage(
+  body: API.GetInsureProductSettingPageInput,
+  options?: API.RequestConfig
+) {
+  return request<API.InsureProductSettingDtoPageOutput>(
+    '/api/Dictionary/GetInsureProductSettingPage',
+    {
+      method: 'POST',
+      headers: {
+        'Content-Type': 'application/json',
+      },
+      data: body,
+      ...(options || {}),
+    }
+  );
+}
+
+/** 淇敼淇濋櫓浜у搧閰嶇疆鐘舵�� POST /api/Dictionary/UpdateInsureProductSettingStatus */
+export async function updateInsureProductSettingStatus(
+  body: API.UpdateInsureProductSettingStatusInput,
+  options?: API.RequestConfig
+) {
+  return request<number>('/api/Dictionary/UpdateInsureProductSettingStatus', {
+    method: 'POST',
+    headers: {
+      'Content-Type': 'application/json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
diff --git a/src/services/api/InsuranceOrder.ts b/src/services/api/InsuranceOrder.ts
index e3a768f..a0906de 100644
--- a/src/services/api/InsuranceOrder.ts
+++ b/src/services/api/InsuranceOrder.ts
@@ -77,6 +77,22 @@
   });
 }
 
+/** 姝ゅ鍚庣娌℃湁鎻愪緵娉ㄩ噴 POST /api/InsuranceOrder/Demo */
+export async function demo(options?: API.RequestConfig) {
+  return request<any>('/api/InsuranceOrder/Demo', {
+    method: 'POST',
+    ...(options || {}),
+  });
+}
+
+/** 姝ゅ鍚庣娌℃湁鎻愪緵娉ㄩ噴 POST /api/InsuranceOrder/Demo2 */
+export async function demo2(options?: API.RequestConfig) {
+  return request<any>('/api/InsuranceOrder/Demo2', {
+    method: 'POST',
+    ...(options || {}),
+  });
+}
+
 /** 鎵归噺鍑忓憳淇濆崟鏁版嵁 POST /api/InsuranceOrder/DownsizingInsuranceOrderData */
 export async function downsizingInsuranceOrderData(
   body: API.DownsizingInsuranceOrderData,
diff --git a/src/services/api/User.ts b/src/services/api/User.ts
index fa18799..3afa8af 100644
--- a/src/services/api/User.ts
+++ b/src/services/api/User.ts
@@ -108,6 +108,18 @@
   });
 }
 
+/** 鑾峰彇鍏ㄩ儴鐢ㄦ埛涓嬫媺鍒楄〃 POST /api/User/GetUserAllList */
+export async function getUserAllList(body: API.QueryUserPageInput, options?: API.RequestConfig) {
+  return request<API.UserListOutput[]>('/api/User/GetUserAllList', {
+    method: 'POST',
+    headers: {
+      'Content-Type': 'application/json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
+
 /** 鑾峰彇瀹㈡埛浣欓淇℃伅 GET /api/User/GetUserAmountShow */
 export async function getUserAmountShow(options?: API.RequestConfig) {
   return request<API.UserAmountShowDto>('/api/User/GetUserAmountShow', {
diff --git a/src/services/api/index.ts b/src/services/api/index.ts
index 685ae66..4d44e41 100644
--- a/src/services/api/index.ts
+++ b/src/services/api/index.ts
@@ -6,6 +6,7 @@
 import * as AbpApplicationConfiguration from './AbpApplicationConfiguration';
 import * as Account from './Account';
 import * as BaseModule from './BaseModule';
+import * as Dictionary from './Dictionary';
 import * as Features from './Features';
 import * as FileRecord from './FileRecord';
 import * as IdentityRole from './IdentityRole';
@@ -26,6 +27,7 @@
   AbpApplicationConfiguration,
   Account,
   BaseModule,
+  Dictionary,
   Features,
   FileRecord,
   IdentityRole,
diff --git a/src/services/api/typings.d.ts b/src/services/api/typings.d.ts
index e4e92c9..265e288 100644
--- a/src/services/api/typings.d.ts
+++ b/src/services/api/typings.d.ts
@@ -152,6 +152,10 @@
     id?: string;
   }
 
+  interface APIdeleteInsureProductSettingParams {
+    id?: string;
+  }
+
   interface APIdeleteModuleButtonParams {
     id?: string;
   }
@@ -354,6 +358,7 @@
   interface APIimportInsStaffToListParams {
     url?: string;
     serialNum?: string;
+    productIdNumber?: string;
   }
 
   interface APIsearchParams {
@@ -570,6 +575,21 @@
     batchUpdateMessage?: boolean;
     /** 浼佷笟鍚嶇О */
     enterpriseName?: string;
+  }
+
+  interface CreateOrUpdateInsureProductSettingInput {
+    id?: string;
+    /** 鐢ㄦ埛ID */
+    userId?: string;
+    /** 浜у搧ID */
+    productIdNumber: string;
+    /** 鍙備繚鏈烘瀯 */
+    insuranceOrg: string;
+    /** 鎶曚繚鏂规 */
+    insuranceScheme: string;
+    /** 鎶曚繚鏂瑰紡 */
+    insurancePeriod: string;
+    status?: InsureProductSettingStatusEnum;
   }
 
   interface CreateOrUpdateRoleInput {
@@ -826,6 +846,7 @@
     condition?: string;
     insurancePeriod?: string;
     status?: InsurancePolicyStatusEnum;
+    auditStatus?: InsuranceClaimAuditStatusEnum;
   }
 
   interface GetInsurancePageOutput {
@@ -875,6 +896,9 @@
     creationTime?: string;
     companyName?: string;
     isClosedOutTime?: boolean;
+    auditStatus?: InsuranceClaimAuditStatusEnum;
+    /** 淇濋櫓浜у搧IdNumber */
+    productIdNumber?: string;
   }
 
   interface GetInsurancePageOutputPageOutput {
@@ -911,6 +935,12 @@
     pageModel?: Pagination;
     objectData?: any;
     data?: GetInsuranceStaffPageTemplate[];
+  }
+
+  interface GetInsureProductSettingPageInput {
+    pageModel?: Pagination;
+    /** 鐢ㄦ埛ID */
+    userId?: string;
   }
 
   interface GetParkBountyTradeDetailByIdInput {
@@ -1241,6 +1271,8 @@
     businessType?: InsuranceClaimAttachmentBusinessTypeEnum;
   }
 
+  type InsuranceClaimAuditStatusEnum = 10 | 20 | -10;
+
   interface InsuranceClaimDetailOutput {
     id?: string;
     /** 娓犻亾 */
@@ -1527,6 +1559,31 @@
     /** 鎶曚繚浜� */
     enterpriseName?: string;
   }
+
+  interface InsureProductSettingDto {
+    id?: string;
+    /** 鐢ㄦ埛ID */
+    userId?: string;
+    /** 浜у搧ID */
+    productIdNumber?: string;
+    /** 鍙備繚鏈烘瀯 */
+    insuranceOrg?: string;
+    /** 鎶曚繚鏂规 */
+    insuranceScheme?: string;
+    /** 鎶曚繚鏂瑰紡 */
+    insurancePeriod?: string;
+    status?: InsureProductSettingStatusEnum;
+    /** 鍒涘缓鏃堕棿 */
+    creationTime?: string;
+  }
+
+  interface InsureProductSettingDtoPageOutput {
+    pageModel?: Pagination;
+    objectData?: any;
+    data?: InsureProductSettingDto[];
+  }
+
+  type InsureProductSettingStatusEnum = 10 | -10;
 
   interface IStringValueType {
     name?: string;
@@ -2126,6 +2183,11 @@
     phone?: string;
   }
 
+  interface UpdateInsureProductSettingStatusInput {
+    id?: string;
+    status?: InsureProductSettingStatusEnum;
+  }
+
   interface UpdatePassWordInput {
     id?: string;
     passWord?: string;
diff --git a/src/views/Home/Home.vue b/src/views/Home/Home.vue
index 0e23a33..1dc4f3a 100644
--- a/src/views/Home/Home.vue
+++ b/src/views/Home/Home.vue
@@ -165,15 +165,15 @@
         row.status === InsurancePolicyStatusEnum.WaitEffect,
     },
   },
-  {
-    data: {
-      enCode: 'standarEndoBtn',
-      name: '鐢宠閫�淇�',
-    },
-    emits: {
-      onClick: (role) => handleStandarEndo(role),
-    },
-  },
+  // {
+  //   data: {
+  //     enCode: 'standarEndoBtn',
+  //     name: '鐢宠閫�淇�',
+  //   },
+  //   emits: {
+  //     onClick: (role) => handleStandarEndo(role),
+  //   },
+  // },
 ]).filter(Boolean);
 
 const BaseState = {
@@ -252,6 +252,7 @@
   defaultFormParams: {
     serialNum: '',
     url: [] as UploadUserFile[],
+    productIdNumber: '',
   },
   closeAfterConfirm: false,
 });
@@ -281,6 +282,7 @@
     let params: API.APIimportInsStaffToListParams = {
       serialNum: editForm.serialNum,
       url: editForm.url?.[0]?.path,
+      productIdNumber: editForm.productIdNumber,
     };
     let res = await insuranceOrderServices.importInsStaffToList(params);
     if (res.length > 0) {
diff --git a/src/views/Home/components/UploadInsurePersonDialog.vue b/src/views/Home/components/UploadInsurePersonDialog.vue
index f3b6e9f..5b421ed 100644
--- a/src/views/Home/components/UploadInsurePersonDialog.vue
+++ b/src/views/Home/components/UploadInsurePersonDialog.vue
@@ -13,14 +13,16 @@
     <ProForm :model="innerForm" ref="dialogForm" label-width="100px">
       <ProFormItemV2
         label="鎶曚繚浜у搧锛�"
-        prop="serialNum"
+        prop="productIdNumber"
         :check-rules="[{ message: '璇烽�夋嫨鎶曚繚浜у搧' }]"
       >
         <ProFormSelect
           placeholder="璇烽�夋嫨鎶曚繚浜у搧"
-          :value-enum="[]"
+          :value-enum="allInsureProductSettingList"
           clearable
-          v-model="form.serialNum"
+          v-model="form.productIdNumber"
+          enum-label-key="insuranceScheme"
+          enum-value-key="productIdNumber"
         ></ProFormSelect>
       </ProFormItemV2>
       <ProFormItemV2 label="鎵规鍙凤細" prop="serialNum" :check-rules="[{ message: '璇疯緭鍏ユ壒娆″彿' }]">
@@ -58,6 +60,7 @@
 </template>
 
 <script setup lang="ts">
+import { useInsureProductSettingAllList } from '@/hooks';
 import {
   ProDialog,
   UploadUserFile,
@@ -79,6 +82,7 @@
   form?: {
     serialNum: string;
     url: UploadUserFile[];
+    productIdNumber: string;
   };
 };
 
@@ -93,6 +97,9 @@
   (e: 'onCancel'): void;
 }>();
 
+// TODO 淇濋櫓浜у搧瑕佽窡褰撳墠鐢ㄦ埛鍏宠仈 杩欎釜鑾峰彇鏂瑰紡鍚庣画瑕佷慨鏀�
+const { allInsureProductSettingList } = useInsureProductSettingAllList();
+
 const innerVisible = computed({
   get() {
     return props.modelValue;

--
Gitblit v1.9.1