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