From dd0a3e0ed394983c4fbacdab64cad6f8de5b4884 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期三, 06 八月 2025 18:03:56 +0800
Subject: [PATCH] fix: 对接字典

---
 packages/components/src/AreaTreeSelect/PositionSelectView.vue |   41 ++
 packages/components/tsconfig.json                             |    1 
 packages/services/apiV2/dictionary.ts                         |   50 +++
 packages/hooks/dic.ts                                         |  185 ++++++--------
 apps/bMiniApp/src/pages/home/HomeQueryPositionMenuView.vue    |    2 
 packages/components/src/Form/ProRadio.vue                     |    4 
 packages/services/apiV2/auth.ts                               |   15 +
 types/api.d.ts                                                |   13 +
 packages/constants/dic.ts                                     |  100 -------
 packages/services/apiV2/index.ts                              |    8 
 packages/hooks/tsconfig.json                                  |    1 
 apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue  |    8 
 packages/services/apiV2/typings.d.ts                          |  265 +++++++++++++++++++
 packages/services/apiV2/enterprise.ts                         |   42 +++
 packages/constants/apiEnum.ts                                 |   14 +
 apps/bMiniApp/src/pages/home/index.vue                        |    4 
 apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue            |   24 +
 17 files changed, 526 insertions(+), 251 deletions(-)

diff --git a/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue b/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue
index 9aebcf1..0fd23a4 100644
--- a/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue
+++ b/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue
@@ -5,7 +5,7 @@
         <ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
       </QueryMenuItem>
       <QueryMenuItem title="韬唤">
-        <ProRadio v-model="query.gender" :value-enum="IdentityList" show-all-btn></ProRadio>
+        <ProRadio v-model="query.identity" :value-enum="identityList" show-all-btn></ProRadio>
       </QueryMenuItem>
       <QueryMenuItem>
         <template #title>
@@ -23,7 +23,11 @@
         ></nut-range>
       </QueryMenuItem>
       <QueryMenuItem title="璧勬牸璇佷功">
-        <ProRadio v-model="query.gender" :value-enum="CertificateTypeList" show-all-btn></ProRadio>
+        <ProRadio
+          v-model="query.certificateType"
+          :value-enum="certificateTypeList"
+          show-all-btn
+        ></ProRadio>
       </QueryMenuItem>
     </div>
   </QueryMenuView>
@@ -31,8 +35,8 @@
 
 <script setup lang="ts">
 import { QueryMenuView, QueryMenuItem, ProRadio } from '@12333/components';
-import { GenderText, SearchType } from '@12333/constants';
-import { useSearchSettingType } from '@12333/hooks';
+import { GenderText, CategoryCode } from '@12333/constants';
+import { useDictionaryDataSelect } from '@12333/hooks';
 
 defineOptions({
   name: 'HomeQueryMenuView',
@@ -42,11 +46,12 @@
 
 // const props = withDefaults(defineProps<Props>(), {});
 
-const { searchSettingTypeList: CertificateTypeList } = useSearchSettingType({
-  searchType: SearchType.CertificateType,
+const { dictionaryDataList: identityList } = useDictionaryDataSelect({
+  categoryCode: CategoryCode.Identity,
 });
-const { searchSettingTypeList: IdentityList } = useSearchSettingType({
-  searchType: SearchType.Identity,
+
+const { dictionaryDataList: certificateTypeList } = useDictionaryDataSelect({
+  categoryCode: CategoryCode.CertificateType,
 });
 
 const emit = defineEmits<{
@@ -57,13 +62,14 @@
 const query = defineModel<{
   gender: number | string;
   age: number[];
+  identity: string;
+  certificateType: string;
 }>('query');
 
 const DefaultQuery = {
   ...query.value,
 };
 
-console.log('query: ', query.value);
 function handleReset() {
   for (const key in DefaultQuery) {
     query.value[key] = DefaultQuery[key];
diff --git a/apps/bMiniApp/src/pages/home/HomeQueryPositionMenuView.vue b/apps/bMiniApp/src/pages/home/HomeQueryPositionMenuView.vue
index 14cb778..f7053e4 100644
--- a/apps/bMiniApp/src/pages/home/HomeQueryPositionMenuView.vue
+++ b/apps/bMiniApp/src/pages/home/HomeQueryPositionMenuView.vue
@@ -24,7 +24,7 @@
 }>();
 
 const query = defineModel<{
-  position: any[];
+  position: string[];
 }>('query');
 
 const DefaultQuery = {
diff --git a/apps/bMiniApp/src/pages/home/index.vue b/apps/bMiniApp/src/pages/home/index.vue
index 83ab4f0..80b0d24 100644
--- a/apps/bMiniApp/src/pages/home/index.vue
+++ b/apps/bMiniApp/src/pages/home/index.vue
@@ -89,10 +89,12 @@
 const queryMenuState = reactive({
   gender: '' as any as Gender,
   age: [15, 65],
+  identity: '',
+  certificateType: '',
 });
 
 const queryPositionState = reactive({
-  position: [],
+  position: [] as string[],
 });
 
 const queryState = reactive({
diff --git a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
index 269f389..caf284e 100644
--- a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
@@ -161,12 +161,8 @@
 const isCopy = router.params?.isCopy === 'true';
 console.log('isCopy: ', router.params?.isCopy);
 
-const { searchSettingTypeList: WelfareTypeList } = useSearchSettingType({
-  searchType: SearchType.Welfare,
-});
-const { searchSettingTypeList: CertificateTypeList } = useSearchSettingType({
-  searchType: SearchType.CertificateType,
-});
+const WelfareTypeList = ref([]);
+const CertificateTypeList = ref([]);
 
 const form = reactive({
   taskName: '',
diff --git a/packages/components/src/AreaTreeSelect/PositionSelectView.vue b/packages/components/src/AreaTreeSelect/PositionSelectView.vue
index 86ba1cc..14431f9 100644
--- a/packages/components/src/AreaTreeSelect/PositionSelectView.vue
+++ b/packages/components/src/AreaTreeSelect/PositionSelectView.vue
@@ -1,16 +1,16 @@
 <template>
-  <Category :category="industryList" @change="change" class="position-select-view">
+  <Category :category="_industryList" @change="change" class="position-select-view">
     <CategoryPane :max="max" :categoryChild="categoryChild" :multiple="multiple" v-model="model">
     </CategoryPane>
   </Category>
 </template>
 
 <script setup lang="ts">
-import { useAllSearchSettingList, useSearchSettingType } from '@12333/hooks';
+import { useDictionaryDataSelect, useGetDictionaryCategorySelect } from '@12333/hooks';
 import Category from './Category.vue';
 import CategoryPane from './CategoryPane.vue';
 import { reactive, computed, watch } from 'vue';
-import { SearchType } from '@12333/constants';
+import { CategoryCode } from '@12333/constants';
 
 defineOptions({
   name: 'PositionSelectView',
@@ -28,27 +28,44 @@
 const model = defineModel<string[]>();
 
 const state = reactive({
-  provinceIndex: 0,
+  industryIndex: 0,
 });
 
-const { allSearchSettingList: positionList } = useAllSearchSettingList({
-  searchType: SearchType.Position,
+const { dictionaryDataList: industryList } = useDictionaryDataSelect({
+  categoryCode: CategoryCode.IndustryCategory,
 });
-const { searchSettingTypeList: industryList } = useSearchSettingType({
-  searchType: SearchType.IndustryCategory,
+
+const _industryList = computed(() =>
+  industryList.value.map((x) => ({
+    ...x,
+    name: x.label,
+    id: x.value,
+  }))
+);
+
+const { dictionaryDataList: positionList } = useDictionaryDataSelect({
+  categoryCode: CategoryCode.Position,
 });
+
+const _positionList = computed(() =>
+  positionList.value.map((x) => ({
+    ...x,
+    name: x.label,
+    id: x.value,
+  }))
+);
 
 const categoryChild = computed(() => {
-  if (!industryList.value.length) {
+  if (!_industryList.value.length) {
     return [];
   }
-  return positionList.value?.filter(
-    (x) => x.parentName === industryList.value[state.provinceIndex].name
+  return _positionList.value?.filter(
+    (x) => x.data.field1 === _industryList.value[state.industryIndex]?.code
   );
 });
 
 const change = (index: number) => {
-  state.provinceIndex = index;
+  state.industryIndex = index;
 };
 </script>
 
diff --git a/packages/components/src/Form/ProRadio.vue b/packages/components/src/Form/ProRadio.vue
index c08e029..5ee6dc5 100644
--- a/packages/components/src/Form/ProRadio.vue
+++ b/packages/components/src/Form/ProRadio.vue
@@ -31,8 +31,8 @@
 const props = withDefaults(defineProps<Props>(), {
   allBtnLabel: '涓嶉檺',
   allBtnValue: '',
-  enumLabelKey: 'name',
-  enumValueKey: 'id',
+  enumLabelKey: 'label',
+  enumValueKey: 'value',
 });
 
 const model = defineModel<string | number>();
diff --git a/packages/components/tsconfig.json b/packages/components/tsconfig.json
index 52447bc..ae0cbd9 100644
--- a/packages/components/tsconfig.json
+++ b/packages/components/tsconfig.json
@@ -10,6 +10,7 @@
     "types": [
       "node",
       "@12333/services/api/typings.d.ts",
+      "@12333/services/apiV2/typings.d.ts",
       "@12333/services/types.d.ts",
       "@12333/services/globalType.d.ts",
       "../../types/api.d.ts"
diff --git a/packages/constants/apiEnum.ts b/packages/constants/apiEnum.ts
index 8069622..f1a06ac 100644
--- a/packages/constants/apiEnum.ts
+++ b/packages/constants/apiEnum.ts
@@ -41,6 +41,14 @@
   Desc = 1,
 }
 
+/** 瀹炲悕閫氶亾 */
+export enum EnumRealAccess {
+  /**涓婁笂绛� */
+  BestSign = 10,
+  /**鏀粯瀹濅俊浠荤 */
+  AlipaySign = 20,
+}
+
 /** 璧勬簮鎺у埗鍣� */
 export enum EnumResourceController {
   /**鏁版嵁瀛楀吀 */
@@ -87,6 +95,12 @@
   All = 999,
 }
 
+/** 鐭俊閫氶亾 */
+export enum EnumSmsAccess {
+  /**闃块噷浜戠煭淇� */
+  AliyunSms = 10,
+}
+
 /** 鐢ㄦ埛淇℃伅鐘舵�� */
 export enum EnumUserInfoStatus {
   /**姝e父 */
diff --git a/packages/constants/dic.ts b/packages/constants/dic.ts
index 475f69a..534792d 100644
--- a/packages/constants/dic.ts
+++ b/packages/constants/dic.ts
@@ -1,100 +1,14 @@
-export enum SearchType {
+export enum CategoryCode {
   /**韬唤 */
-  Identity = 210,
+  Identity = '10',
   /**瀛﹀巻 */
-  Education = 220,
+  Education = '20',
   /**宀椾綅 */
-  Position = 230,
+  Position = '30',
   /**璇佷功绫诲瀷 */
-  CertificateType = 240,
+  CertificateType = '40',
   /**绂忓埄 */
-  Welfare = 250,
+  Welfare = '50',
   /**琛屼笟绫诲瀷 */
-  IndustryCategory = 260,
+  IndustryCategory = '60',
 }
-
-export const SearchTypeText = {
-  [SearchType.Identity]: '韬唤',
-  [SearchType.Education]: '瀛﹀巻',
-  [SearchType.Position]: '宀椾綅',
-  [SearchType.CertificateType]: '璇佷功绫诲瀷',
-  [SearchType.Welfare]: '绂忓埄',
-  [SearchType.IndustryCategory]: '琛屼笟绫诲瀷',
-};
-
-export enum BelongType {
-  Park = 10,
-  Human = 20,
-  Product = 30,
-  Information = 40,
-  FlexiblePlatform = 60,
-  LaborRecruitment = 70,
-  DemandDevelopment = 80,
-  TrainingInstitutions = 90,
-}
-
-export enum IndustryCategoryType {
-  /**
-   * 琛屼笟鏈嶅姟
-   */
-  IndustryServices = 0,
-  /**
-   * 琛屼笟閰嶅
-   */
-  IndustryMatching,
-
-  /**
-   * 鐢叉柟闇�姹�
-   */
-  FirstPartyDemand,
-  /**
-   * 琛屼笟璧勮
-   */
-  IndustryInformation,
-}
-
-export const IndustryCategoryTypeText = {
-  [IndustryCategoryType.IndustryServices]: '琛屼笟鏈嶅姟',
-  [IndustryCategoryType.IndustryMatching]: '琛屼笟閰嶅',
-  [IndustryCategoryType.FirstPartyDemand]: '鐢叉柟闇�姹�',
-  [IndustryCategoryType.IndustryInformation]: '琛屼笟璧勮',
-};
-
-export enum TagType {
-  /**
-   * 浜у搧鏍囩
-   */
-  ProductTag = 0,
-  /**
-   * 璧勮鏍囩
-   */
-  InformationTag,
-  /**
-   * 瀹氫箟鏍囩
-   */
-  CustomTag,
-  /**
-   * 蹇嵎璇勮鏍囩
-   */
-  QuickEvaluateTag,
-}
-
-export enum UpLevel {
-  /**
-   * 涓�绾�
-   */
-  One = 1,
-  /**
-   * 浜岀骇
-   */
-  Two,
-  /**
-   * 涓夌骇
-   */
-  Three,
-}
-export const UpLevelText = {
-  [UpLevel.One]: '涓�绾�',
-  [UpLevel.Two]: '浜岀骇',
-  [UpLevel.Three]: '涓夌骇',
-};
diff --git a/packages/hooks/dic.ts b/packages/hooks/dic.ts
index c4fedbc..f13b0da 100644
--- a/packages/hooks/dic.ts
+++ b/packages/hooks/dic.ts
@@ -1,134 +1,109 @@
-import * as searchSettingServices from '@12333/services/api/SearchSetting';
 import { useQuery, useQueryClient } from '@tanstack/vue-query';
-import { SearchType } from '@12333/constants';
-import { MaybeRef, computed } from 'vue';
+import * as dictionaryServices from '@12333/services/apiV2/dictionary';
+import { MaybeRef, unref } from 'vue';
+import { CategoryCode } from '@12333/constants';
 
-type UseSearchSettingTypeOptions = {
-  searchType: number;
-  belongType?: number;
-  onSuccess?: (data: API.GetTypeSearchSettingList[]) => any;
-  enabled?: MaybeRef<boolean>;
-};
-
-export function useSearchSettingType({
-  searchType,
-  belongType = null,
-  onSuccess,
-  enabled = true,
-}: UseSearchSettingTypeOptions) {
-  const { data, refetch } = useQuery({
-    queryKey: ['searchSettingServices/getTypeSearchSettingList', { searchType, belongType }],
+export function useGetDictionaryCategorySelect() {
+  const { data: dictionaryCategoryList, refetch } = useQuery({
+    queryKey: ['dictionaryServices/getDictionaryCategorySelect'],
     queryFn: async () => {
-      return await searchSettingServices.getTypeSearchSettingList(
-        {
-          searchType: searchType,
-          belongType: belongType,
-        },
-        { showLoading: false }
-      );
+      let res = await dictionaryServices.getDictionaryCategorySelect({}, { showLoading: false });
+      return res.map((x) => ({
+        ...x,
+        fieldNamesMap: x.data.fieldNames ? JSON.parse(x.data.fieldNames) : {},
+      }));
     },
-    placeholderData: () => [] as API.GetTypeSearchSettingList[],
-    onSuccess(data) {
-      onSuccess?.(data);
-    },
-    enabled,
+    placeholderData: () =>
+      [] as API.SelectQueryResultOptionGuidGetDictionaryCategorySelectQueryOption[],
   });
 
   const queryClient = useQueryClient();
 
-  async function ensureSearchSettingType() {
-    return await queryClient.ensureQueryData({
-      queryKey: [
-        'searchSettingServices/getTypeSearchSettingList',
-        { searchType: searchType, belongType: belongType },
-      ],
+  function ensureQueryData() {
+    return queryClient.ensureQueryData<
+      API.SelectQueryResultOptionGuidGetDictionaryCategorySelectQueryOption[]
+    >({
+      queryKey: ['dictionaryServices/getDictionaryCategorySelect'],
     });
   }
 
-  function getSearchSettingTypeNameById(id: string) {
-    return data.value.find((x) => x.id === id)?.name ?? '';
+  function getDictionaryCategoryById(id: string) {
+    return dictionaryCategoryList.value.find((x) => x.value === id);
+  }
+
+  function getDictionaryCategoryByCode(code: string) {
+    return dictionaryCategoryList.value.find((x) => x.code === code);
+  }
+
+  function getDictionaryCategoryNameByCode(code: string) {
+    return getDictionaryCategoryByCode(code)?.label ?? '';
   }
 
   return {
-    searchSettingTypeList: data,
-    ensureSearchSettingType,
-    refetchSearchSettingType: refetch,
-    getSearchSettingTypeNameById,
+    dictionaryCategoryList,
+    ensureQueryData,
+    getDictionaryCategoryById,
+    getDictionaryCategoryNameByCode,
+    getDictionaryCategoryByCode,
   };
 }
 
-type UseAllSearchSettingList = API.GetSearchSettingListInput & {
-  enabled?: MaybeRef<boolean>;
+type UseDictionaryDataSelectOptions = {
+  categoryId?: MaybeRef<string>;
+  categoryCode?: MaybeRef<CategoryCode>;
 };
 
-export function useAllSearchSettingList(options: UseAllSearchSettingList) {
-  const { enabled = true, ...params } = options;
-
-  const { data: allSearchSettingList } = useQuery({
-    queryKey: ['searchSettingServices/getAllSearchSettingList', params],
+export function useDictionaryDataSelect({
+  categoryId,
+  categoryCode,
+}: UseDictionaryDataSelectOptions) {
+  const { data: dictionaryDataList, refetch } = useQuery({
+    queryKey: ['dictionaryServices/getDictionaryDataSelect', categoryId, categoryCode],
     queryFn: async () => {
-      return await searchSettingServices.getAllSearchSettingList(params, { showLoading: false });
+      let res = await dictionaryServices.getDictionaryDataSelect(
+        {
+          categoryId: unref(categoryId),
+          categoryCode: unref(categoryCode),
+        },
+        { showLoading: false }
+      );
+      return res.map((x) => ({
+        ...x,
+        code: x.data?.code ?? '',
+      }));
     },
-    initialData: () => [] as API.GetSearchSettingList[],
-    enabled,
+    placeholderData: () =>
+      [] as API.SelectQueryResultOptionGuidGetDictionaryDataSelectQueryResultOption[],
   });
 
-  return {
-    allSearchSettingList,
-  };
-}
-
-type UseWorkOfTypeOptions = {
-  enabled?: MaybeRef<boolean>;
-};
-
-export function useWorkOfType(options: UseWorkOfTypeOptions = {}) {
-  const { enabled = true } = options;
-
-  const { allSearchSettingList: industryCategoryList } = useAllSearchSettingList({
-    searchType: SearchType.IndustryCategory,
-    enabled,
-    status: true,
-  });
-
-  const { allSearchSettingList: flattenWorkOfTypeList } = useAllSearchSettingList({
-    searchType: SearchType.Work,
-    enabled,
-    status: true,
-  });
-
-  const workOfTypeList = computed<API.GetSearchSettingList[]>(() => {
-    if (industryCategoryList.value?.length > 0) {
-      let list = [];
-      industryCategoryList.value.forEach((x) => {
-        list.push({
-          ...x,
-          children: flattenWorkOfTypeList.value.filter((w) => w.parentId === x.id),
-        });
-      });
-      return list;
-    }
-    return [];
-  });
-
-  const workOfTypeRecommendList = computed<API.GetSearchSettingList[]>(() => {
-    if (flattenWorkOfTypeList.value?.length > 0) {
-      return flattenWorkOfTypeList.value.filter((w) => w.isRecommend);
-    }
-    return [];
-  });
-
-  function getWorkOfTypeNameById(id: string) {
-    return flattenWorkOfTypeList.value.find((x) => x.id === id)?.name ?? '';
+  function getDictionaryDataNameById(id: string) {
+    return dictionaryDataList.value?.find((x) => x.value === id)?.label;
   }
 
-  const MaxSelectWorkOfTypeLimit = 6;
+  function getDictionaryDataByCode(code: string) {
+    return dictionaryDataList.value?.find((x) => x.code === code);
+  }
+
+  function getDictionaryDataNameByCode(code: string) {
+    return getDictionaryDataByCode(code)?.label ?? '';
+  }
+
+  const queryClient = useQueryClient();
+
+  function ensureQueryData() {
+    return queryClient.ensureQueryData<
+      API.SelectQueryResultOptionGuidGetDictionaryDataSelectQueryResultOption[]
+    >({
+      queryKey: ['dictionaryServices/getDictionaryDataSelect'],
+    });
+  }
 
   return {
-    workOfTypeList: workOfTypeList,
-    flattenWorkOfTypeList,
-    workOfTypeRecommendList,
-    getWorkOfTypeNameById,
-    MaxSelectWorkOfTypeLimit,
+    dictionaryDataList,
+    ensureQueryData,
+    refetch,
+    getDictionaryDataNameById,
+    getDictionaryDataNameByCode,
+    getDictionaryDataByCode,
   };
 }
diff --git a/packages/hooks/tsconfig.json b/packages/hooks/tsconfig.json
index 186792f..3c90c86 100644
--- a/packages/hooks/tsconfig.json
+++ b/packages/hooks/tsconfig.json
@@ -10,6 +10,7 @@
     "types": [
       "node",
       "@12333/services/api/typings.d.ts",
+      "@12333/services/apiV2/typings.d.ts",
       "@12333/services/types.d.ts",
       "@12333/services/globalType.d.ts",
       "../../types/api.d.ts"
diff --git a/packages/services/apiV2/auth.ts b/packages/services/apiV2/auth.ts
index db28f67..543ccd0 100644
--- a/packages/services/apiV2/auth.ts
+++ b/packages/services/apiV2/auth.ts
@@ -19,6 +19,21 @@
   });
 }
 
+/** 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛鑿滃崟璇︽儏 GET /api/user/auth/getCurrentLogierMenu */
+export async function getCurrentLogierMenu(
+  // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+  params: API.APIgetCurrentLogierMenuParams,
+  options?: API.RequestConfig
+) {
+  return request<API.GetMenuQueryResult>('/api/user/auth/getCurrentLogierMenu', {
+    method: 'GET',
+    params: {
+      ...params,
+    },
+    ...(options || {}),
+  });
+}
+
 /** 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛鑿滃崟 GET /api/user/auth/getCurrentLogierMenus */
 export async function getCurrentLogierMenus(
   // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
diff --git a/packages/services/apiV2/dictionary.ts b/packages/services/apiV2/dictionary.ts
index 26f00b9..22cee24 100644
--- a/packages/services/apiV2/dictionary.ts
+++ b/packages/services/apiV2/dictionary.ts
@@ -2,7 +2,7 @@
 // @ts-ignore
 import { request } from '@/utils/request';
 
-/** 鍒犻櫎瀛楀吀绫诲埆 DELETE /api/main/dictionary/deleteDictionaryCategory */
+/** 鍒犻櫎鏁版嵁瀛楀吀绫诲埆 DELETE /api/main/dictionary/deleteDictionaryCategory */
 export async function deleteDictionaryCategory(
   body: API.DeleteDictionaryCategoryCommand,
   options?: API.RequestConfig
@@ -17,7 +17,7 @@
   });
 }
 
-/** 鏌ヨ瀛楀吀绫诲埆鍒嗛〉鍒楄〃鏁版嵁 POST /api/main/dictionary/getDictionaryCategories */
+/** 鑾峰彇鏁版嵁瀛楀吀绫诲埆鍒嗛〉鍒楄〃鏁版嵁 POST /api/main/dictionary/getDictionaryCategories */
 export async function getDictionaryCategories(
   body: API.GetDictionaryCategoriesQuery,
   options?: API.RequestConfig
@@ -35,7 +35,27 @@
   );
 }
 
-/** 鑾峰彇瀛楀吀鏁版嵁鍒嗛〉鍒楄〃 POST /api/main/dictionary/getDictionaryDatas */
+/** 鏌ヨ鏁版嵁瀛楀吀绫诲埆閫夋嫨鍣ㄦ暟鎹� GET /api/main/dictionary/getDictionaryCategorySelect */
+export async function getDictionaryCategorySelect(
+  // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+  params: API.APIgetDictionaryCategorySelectParams,
+  options?: API.RequestConfig
+) {
+  return request<API.SelectQueryResultOptionGuidGetDictionaryCategorySelectQueryOption[]>(
+    '/api/main/dictionary/getDictionaryCategorySelect',
+    {
+      method: 'GET',
+      params: {
+        ...params,
+        request: undefined,
+        ...params['request'],
+      },
+      ...(options || {}),
+    }
+  );
+}
+
+/** 鑾峰彇鏁版嵁瀛楀吀鍒嗛〉鍒楄〃鏁版嵁 POST /api/main/dictionary/getDictionaryDatas */
 export async function getDictionaryDatas(
   body: API.GetDictionaryDatasQuery,
   options?: API.RequestConfig
@@ -53,7 +73,25 @@
   );
 }
 
-/** 淇濆瓨瀛楀吀绫诲埆 POST /api/main/dictionary/saveDictionaryCategory */
+/** 鏌ヨ鏁版嵁瀛楀吀閫夋嫨鍣� GET /api/main/dictionary/getDictionaryDataSelect */
+export async function getDictionaryDataSelect(
+  // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+  params: API.APIgetDictionaryDataSelectParams,
+  options?: API.RequestConfig
+) {
+  return request<API.SelectQueryResultOptionGuidGetDictionaryDataSelectQueryResultOption[]>(
+    '/api/main/dictionary/getDictionaryDataSelect',
+    {
+      method: 'GET',
+      params: {
+        ...params,
+      },
+      ...(options || {}),
+    }
+  );
+}
+
+/** 淇濆瓨鏁版嵁瀛楀吀绫诲埆 POST /api/main/dictionary/saveDictionaryCategory */
 export async function saveDictionaryCategory(
   body: API.SaveDictionaryCategoryCommand,
   options?: API.RequestConfig
@@ -68,7 +106,7 @@
   });
 }
 
-/** 淇濆瓨瀛楀吀鏁版嵁 POST /api/main/dictionary/saveDictionaryData */
+/** 淇濆瓨鏁版嵁瀛楀吀 POST /api/main/dictionary/saveDictionaryData */
 export async function saveDictionaryData(
   body: API.SaveDictionaryDataCommand,
   options?: API.RequestConfig
@@ -83,7 +121,7 @@
   });
 }
 
-/** 璁剧疆瀛楀吀鏁版嵁鏄惁绂佺敤 PUT /api/main/dictionary/setDictionaryDataIsDisabled */
+/** 璁剧疆鏁版嵁瀛楀吀鏄惁绂佺敤 PUT /api/main/dictionary/setDictionaryDataIsDisabled */
 export async function setDictionaryDataIsDisabled(
   body: API.SetDictionaryDataIsDisabledCommand,
   options?: API.RequestConfig
diff --git a/packages/services/apiV2/enterprise.ts b/packages/services/apiV2/enterprise.ts
index 820738d..bfba64e 100644
--- a/packages/services/apiV2/enterprise.ts
+++ b/packages/services/apiV2/enterprise.ts
@@ -16,3 +16,45 @@
     }
   );
 }
+
+/** 淇濆瓨浼佷笟 POST /api/user/enterprise/saveEnterprise */
+export async function saveEnterprise(body: API.SaveEnterpriseCommand, options?: API.RequestConfig) {
+  return request<string>('/api/user/enterprise/saveEnterprise', {
+    method: 'POST',
+    headers: {
+      'Content-Type': 'application/json-patch+json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
+
+/** 璁剧疆浼佷笟鐢靛瓙绛鹃厤缃� PUT /api/user/enterprise/setEnterpriseElectronSignSetting */
+export async function setEnterpriseElectronSignSetting(
+  body: API.SetEnterpriseElectronSignSettingCommand,
+  options?: API.RequestConfig
+) {
+  return request<string>('/api/user/enterprise/setEnterpriseElectronSignSetting', {
+    method: 'PUT',
+    headers: {
+      'Content-Type': 'application/json-patch+json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
+
+/** 璁剧疆浼佷笟鐭俊閰嶇疆 PUT /api/user/enterprise/setEnterpriseSmsSetting */
+export async function setEnterpriseSmsSetting(
+  body: API.SetEnterpriseSmsSettingCommand,
+  options?: API.RequestConfig
+) {
+  return request<string>('/api/user/enterprise/setEnterpriseSmsSetting', {
+    method: 'PUT',
+    headers: {
+      'Content-Type': 'application/json-patch+json',
+    },
+    data: body,
+    ...(options || {}),
+  });
+}
diff --git a/packages/services/apiV2/index.ts b/packages/services/apiV2/index.ts
index 7edc9e1..1f801d3 100644
--- a/packages/services/apiV2/index.ts
+++ b/packages/services/apiV2/index.ts
@@ -2,19 +2,19 @@
 /* eslint-disable */
 // API 鏇存柊鏃堕棿锛�
 // API 鍞竴鏍囪瘑锛�
-import * as dictionary from './dictionary';
 import * as auth from './auth';
-import * as enterprise from './enterprise';
 import * as menu from './menu';
+import * as dictionary from './dictionary';
 import * as resource from './resource';
 import * as role from './role';
 import * as userInfo from './userInfo';
+import * as enterprise from './enterprise';
 export default {
-  dictionary,
   auth,
-  enterprise,
   menu,
+  dictionary,
   resource,
   role,
   userInfo,
+  enterprise,
 };
diff --git a/packages/services/apiV2/typings.d.ts b/packages/services/apiV2/typings.d.ts
index 52f8a9d..6dff9aa 100644
--- a/packages/services/apiV2/typings.d.ts
+++ b/packages/services/apiV2/typings.d.ts
@@ -8,9 +8,28 @@
     request?: GetAliyunOSSAcsQuery;
   }
 
+  interface APIgetCurrentLogierMenuParams {
+    /** Id */
+    id?: string;
+  }
+
   interface APIgetCurrentLogierMenusParams {
     /** 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛鑿滃崟 */
     request?: GetCurrentLogierMenusQuery;
+  }
+
+  interface APIgetDictionaryCategorySelectParams {
+    /** 鏌ヨ鏁版嵁瀛楀吀绫诲埆閫夋嫨鍣ㄦ暟鎹� */
+    request?: GetDictionaryCategorySelectQuery;
+  }
+
+  interface APIgetDictionaryDataSelectParams {
+    /** 绫诲埆Id锛圛d/缂栧彿浜岄�変竴锛� */
+    categoryId?: string;
+    /** 绫诲埆缂栧彿锛圛d/缂栧彿浜岄�変竴锛� */
+    categoryCode?: string;
+    /** 涓婄骇Id */
+    parentId?: string;
   }
 
   interface APIgetMenuParams {
@@ -72,6 +91,77 @@
     ids: string[];
   }
 
+  interface DictionaryCategory {
+    id?: string;
+    createdTime?: string;
+    updatedTime?: string;
+    /** 鎺掑簭 */
+    sort?: number;
+    /** 璺熻釜Id */
+    traceId?: string;
+    /** 鍒涘缓鎿嶄綔浜� */
+    createdUserInfoId?: string;
+    /** 鏈�鍚庢洿鏂版搷浣滀汉 */
+    updatedUserInfoId?: string;
+    /** 鏄惁鍒犻櫎 */
+    isDeleted?: boolean;
+    /** 缂栧彿 */
+    code: string;
+    /** 鍚嶇О */
+    name: string;
+    /** 瀛楁鍚嶏紙閫楀彿闅斿紑锛� */
+    fieldNames?: string;
+    /** 澶囨敞 */
+    remark?: string;
+  }
+
+  interface DictionaryData {
+    id?: string;
+    createdTime?: string;
+    updatedTime?: string;
+    /** 鎺掑簭 */
+    sort?: number;
+    /** 璺熻釜Id */
+    traceId?: string;
+    /** 鍒涘缓鎿嶄綔浜� */
+    createdUserInfoId?: string;
+    /** 鏈�鍚庢洿鏂版搷浣滀汉 */
+    updatedUserInfoId?: string;
+    /** 鏄惁鍒犻櫎 */
+    isDeleted?: boolean;
+    /** 绫诲埆Id */
+    categoryId?: string;
+    category?: DictionaryCategory;
+    /** 涓婄骇Id */
+    parentId?: string;
+    parent?: DictionaryData;
+    /** 涓嬬骇 */
+    children?: DictionaryData[];
+    /** 瀛楀吀璺緞 */
+    path?: string;
+    /** 缂栧彿 */
+    code?: string;
+    /** 鏄剧ず鍐呭 */
+    content: string;
+    /** 瀛楁1 */
+    field1?: string;
+    /** 瀛楁2 */
+    field2?: string;
+    /** 瀛楁3 */
+    field3?: string;
+    /** 瀛楁4 */
+    field4?: string;
+    /** 瀛楁5 */
+    field5?: string;
+    /** 鏄惁绂佺敤 */
+    isDisabled?: boolean;
+  }
+
+  interface DictionaryDataQueryResult {
+    /** 鍐呭 */
+    content?: string;
+  }
+
   enum EnumClientType {
     /**鐢佃剳缃戦〉 */
     PcWeb = 10,
@@ -106,6 +196,13 @@
     Asc = 0,
     /**闄嶅簭 */
     Desc = 1,
+  }
+
+  enum EnumRealAccess {
+    /**涓婁笂绛� */
+    BestSign = 10,
+    /**鏀粯瀹濅俊浠荤 */
+    AlipaySign = 20,
   }
 
   enum EnumResourceController {
@@ -149,6 +246,11 @@
     CurrentEnterprise = 30,
     /**鏌ヨ鎵�鏈� */
     All = 999,
+  }
+
+  enum EnumSmsAccess {
+    /**闃块噷浜戠煭淇� */
+    AliyunSms = 10,
   }
 
   enum EnumUserInfoStatus {
@@ -354,6 +456,44 @@
     timestamp?: number;
   }
 
+  interface FriendlyResultListSelectQueryResultOptionGuidGetDictionaryCategorySelectQueryOption {
+    /** 璺熻釜Id */
+    traceId?: string;
+    /** 鐘舵�佺爜 */
+    code?: number;
+    /** 閿欒鐮� */
+    errorCode?: string;
+    /** 鏁版嵁 */
+    data?: SelectQueryResultOptionGuidGetDictionaryCategorySelectQueryOption[];
+    /** 鎵ц鎴愬姛 */
+    success?: boolean;
+    /** 閿欒淇℃伅 */
+    msg?: any;
+    /** 闄勫姞鏁版嵁 */
+    extras?: any;
+    /** 鏃堕棿鎴� */
+    timestamp?: number;
+  }
+
+  interface FriendlyResultListSelectQueryResultOptionGuidGetDictionaryDataSelectQueryResultOption {
+    /** 璺熻釜Id */
+    traceId?: string;
+    /** 鐘舵�佺爜 */
+    code?: number;
+    /** 閿欒鐮� */
+    errorCode?: string;
+    /** 鏁版嵁 */
+    data?: SelectQueryResultOptionGuidGetDictionaryDataSelectQueryResultOption[];
+    /** 鎵ц鎴愬姛 */
+    success?: boolean;
+    /** 閿欒淇℃伅 */
+    msg?: any;
+    /** 闄勫姞鏁版嵁 */
+    extras?: any;
+    /** 鏃堕棿鎴� */
+    timestamp?: number;
+  }
+
   interface FriendlyResultPagedListQueryResultGetDictionaryCategoriesQueryResultItem {
     /** 璺熻釜Id */
     traceId?: string;
@@ -493,10 +633,14 @@
     sort?: number;
   }
 
+  type GetDictionaryCategorySelectQuery = Record<string, any>;
+
   interface GetDictionaryDatasQuery {
     pageModel?: PagedListQueryPageModel;
-    /** 绫诲埆Id */
+    /** 绫诲埆Id锛圛d/缂栧彿浜岄�変竴锛� */
     categoryId?: string;
+    /** 绫诲埆缂栧彿锛圛d/缂栧彿浜岄�変竴锛� */
+    categoryCode?: string;
     /** 鍏抽敭瀛� */
     keywords?: string;
   }
@@ -506,6 +650,11 @@
     id?: string;
     /** 绫诲埆Id */
     categoryId?: string;
+    /** 绫诲埆缂栧彿 */
+    categoryCode?: string;
+    /** 绫诲埆鍚嶇О */
+    categoryName?: string;
+    category?: GetDictionaryDatasQueryResultItemCategory;
     /** 涓婄骇Id */
     parentId?: string;
     /** 缂栧彿 */
@@ -528,6 +677,13 @@
     isDisabled?: boolean;
   }
 
+  interface GetDictionaryDatasQueryResultItemCategory {
+    /** 绫诲埆缂栧彿 */
+    code?: string;
+    /** 鍚嶇О */
+    name?: string;
+  }
+
   interface GetEnterprisesQuery {
     pageModel?: PagedListQueryPageModel;
     /** 鍏抽敭瀛� */
@@ -539,16 +695,25 @@
   interface GetEnterprisesQueryResultItem {
     /** Id */
     id?: string;
-    /** 浼佷笟鍏ㄧО */
-    enterpriseName?: string;
-    /** 娉曚汉濮撳悕 */
-    legalPerson?: string;
-    /** 缁熶竴绀句細淇$敤浠g爜 */
-    societyCreditCode?: string;
     /** 鑱旂郴浜� */
     contacts?: string;
     /** 鑱旂郴鐢佃瘽 */
     contactNumber?: string;
+    /** 鎵�鍦ㄧ渷浠絀d */
+    provinceId?: string;
+    province?: DictionaryDataQueryResult;
+    /** 鎵�鍦ㄥ煄甯侷d */
+    cityId?: string;
+    city?: DictionaryDataQueryResult;
+    /** 鎵�灞炶涓欼d */
+    industryTypeId?: string;
+    industryType?: DictionaryDataQueryResult;
+    /** 鏄惁宸叉牎楠岄摱琛岃处鎴� */
+    isCheckedBankCard?: boolean;
+    realAccess?: EnumRealAccess;
+    smsAccess?: EnumSmsAccess;
+    /** 鏄惁宸查厤缃� */
+    isConfigured?: boolean;
   }
 
   interface GetMenuQueryResult {
@@ -877,6 +1042,7 @@
   }
 
   interface SaveDictionaryCategoryCommand {
+    /** Id */
     id?: string;
     /** 缂栧彿 */
     code: string;
@@ -889,6 +1055,7 @@
   }
 
   interface SaveDictionaryDataCommand {
+    /** Id */
     id?: string;
     /** 绫诲埆Id */
     categoryId?: string;
@@ -912,6 +1079,44 @@
     sort?: number;
     /** 鏄惁绂佺敤 */
     isDisabled?: boolean;
+  }
+
+  interface SaveEnterpriseCommand {
+    /** Id */
+    id?: string;
+    enterpriseAuth: SaveEnterpriseCommandAuth;
+    /** 鎵�鍦ㄧ渷浠絀d */
+    provinceId?: string;
+    province?: DictionaryData;
+    /** 鎵�鍦ㄥ煄甯侷d */
+    cityId?: string;
+    city?: DictionaryData;
+    /** 鎵�灞炶涓欼d */
+    industryTypeId?: string;
+    industryType?: DictionaryData;
+    /** 涓昏惀涓氬姟 */
+    mainBusiness?: string;
+    /** 鑱旂郴浜� */
+    contacts?: string;
+    /** 鑱旂郴鐢佃瘽 */
+    contactPhoneNumber?: string;
+    /** 鑱旂郴閭 */
+    contactEmail?: string;
+    /** 璐﹀彿 */
+    userName?: string;
+    /** 瀵嗙爜 */
+    password?: string;
+  }
+
+  interface SaveEnterpriseCommandAuth {
+    /** 浼佷笟鍏ㄧО */
+    enterpriseName: string;
+    /** 缁熶竴绀句細淇$敤浠g爜 */
+    societyCreditCode: string;
+    /** 娉曚汉濮撳悕 */
+    legalPerson?: string;
+    /** 娉曚汉韬唤璇佸彿 */
+    legalIdentity?: string;
   }
 
   interface SaveMenuButtonCommand {
@@ -1055,11 +1260,48 @@
     resources?: GetRoleQueryResultResource[];
   }
 
+  interface SelectQueryResultOptionGuidGetDictionaryCategorySelectQueryOption {
+    /** 鍊� */
+    value?: string;
+    /** 鏍囩 */
+    label?: string;
+    /** 鏁版嵁 */
+    data?: any;
+  }
+
+  interface SelectQueryResultOptionGuidGetDictionaryDataSelectQueryResultOption {
+    /** 鍊� */
+    value?: string;
+    /** 鏍囩 */
+    label?: string;
+    /** 鏁版嵁 */
+    data?: any;
+  }
+
   interface SetDictionaryDataIsDisabledCommand {
-    /** Id */
     ids?: string[];
-    /** 鏄惁绂佺敤 */
+    /** 鏄惁宸茬鐢� */
     isDisabled?: boolean;
+  }
+
+  interface SetEnterpriseElectronSignSettingCommand {
+    /** Id */
+    id?: string;
+    realAccess?: EnumRealAccess;
+    /** 瀹炲悕璐圭敤 */
+    realVerifyCost?: number;
+    /** 绛剧害璐圭敤 */
+    signCost?: number;
+    /** 涓�鍙d环 */
+    mergeSignCost?: number;
+  }
+
+  interface SetEnterpriseSmsSettingCommand {
+    /** Id */
+    id?: string;
+    smsAccess?: EnumSmsAccess;
+    /** 鐭俊璐圭敤 */
+    smsCost?: number;
   }
 
   interface SetMenuSwitchCommand {
@@ -1073,9 +1315,8 @@
   }
 
   interface SetRoleIsDisabledCommand {
-    /** Id */
-    ids: string[];
-    /** 鏄惁绂佺敤 */
+    ids?: string[];
+    /** 鏄惁宸茬鐢� */
     isDisabled?: boolean;
   }
 
diff --git a/types/api.d.ts b/types/api.d.ts
index 5c23d31..e49049e 100644
--- a/types/api.d.ts
+++ b/types/api.d.ts
@@ -20,4 +20,17 @@
     /**鎺ュ彛杩斿洖鐨勫師濮嬪ご鍍� */
     originalAvatarUrl?: string
   }
+
+  interface SelectQueryResultOptionGuidGetDictionaryCategorySelectQueryOptionMap{
+    field1?:string
+  }
+
+  interface SelectQueryResultOptionGuidGetDictionaryCategorySelectQueryOption{
+    fieldNamesMap?: SelectQueryResultOptionGuidGetDictionaryCategorySelectQueryOptionMap;
+    code?:string
+  }
+
+  interface SelectQueryResultOptionGuidGetDictionaryDataSelectQueryResultOption{
+    code?:string
+  }
 }

--
Gitblit v1.9.1