refactor: 破坏性重构,将枚举类由 utils 提取到 @vben/utils

This commit is contained in:
xingyu4j
2025-09-03 16:08:40 +08:00
parent 25468bece5
commit e6f76c097d
143 changed files with 477 additions and 1343 deletions

View File

@@ -6,7 +6,7 @@ import { computed, onMounted, ref } from 'vue';
import { useRoute } from 'vue-router';
import { confirm } from '@vben/common-ui';
import { getUrlValue } from '@vben/utils';
import { getUrlValue, SystemUserSocialTypeEnum } from '@vben/utils';
import { Button, Card, Image, message } from 'ant-design-vue';
@@ -18,7 +18,7 @@ import {
socialUnbind,
} from '#/api/system/social/user';
import { $t } from '#/locales';
import { DICT_TYPE, getDictLabel, SystemUserSocialTypeEnum } from '#/utils';
import { DICT_TYPE, getDictLabel } from '#/utils';
const emit = defineEmits<{
(e: 'update:activeName', v: string): void;

View File

@@ -7,11 +7,10 @@ import { onMounted, ref, toRefs, watch } from 'vue';
import { confirm } from '@vben/common-ui';
import { IconifyIcon } from '@vben/icons';
import { AiImageStatusEnum } from '@vben/utils';
import { Button, Card, Image, message } from 'ant-design-vue';
import { AiImageStatusEnum } from '#/utils';
// 消息
const props = defineProps({

View File

@@ -3,18 +3,18 @@ import type { AiImageApi } from '#/api/ai/image';
import { ref, toRefs, watch } from 'vue';
import { formatDate } from '@vben/utils';
import {
AiPlatformEnum,
Dall3StyleList,
formatDate,
StableDiffusionClipGuidancePresets,
StableDiffusionSamplers,
StableDiffusionStylePresets,
} from '@vben/utils';
import { Image } from 'ant-design-vue';
import { getImageMy } from '#/api/ai/image';
import {
AiPlatformEnum,
Dall3StyleList,
StableDiffusionClipGuidancePresets,
StableDiffusionSamplers,
StableDiffusionStylePresets,
} from '#/utils';
// 图片详细信息
const props = defineProps({

View File

@@ -5,7 +5,7 @@ import { onMounted, onUnmounted, reactive, ref } from 'vue';
import { useRouter } from 'vue-router';
import { confirm, useVbenDrawer } from '@vben/common-ui';
import { downloadFileFromImageUrl } from '@vben/utils';
import { AiImageStatusEnum, downloadFileFromImageUrl } from '@vben/utils';
import { useDebounceFn } from '@vueuse/core';
import { Button, Card, message, Pagination } from 'ant-design-vue';
@@ -16,7 +16,6 @@ import {
getImagePageMy,
midjourneyAction,
} from '#/api/ai/image';
import { AiImageStatusEnum } from '#/utils';
import ImageCard from './ImageCard.vue';
import ImageDetail from './ImageDetail.vue';

View File

@@ -6,11 +6,11 @@ import type { AiModelModelApi } from '#/api/ai/model/model';
import { ref, watch } from 'vue';
import { confirm } from '@vben/common-ui';
import { AiPlatformEnum, ImageHotWords, OtherPlatformEnum } from '@vben/utils';
import { Button, InputNumber, Select, Space, Textarea } from 'ant-design-vue';
import { drawImage } from '#/api/ai/image';
import { AiPlatformEnum, ImageHotWords, OtherPlatformEnum } from '#/utils';
// 消息弹窗

View File

@@ -1,23 +1,24 @@
<!-- dall3 -->
<script setup lang="ts">
import type { ImageModel, ImageSize } from '@vben/utils';
import type { AiImageApi } from '#/api/ai/image';
import type { AiModelModelApi } from '#/api/ai/model/model';
import type { ImageModel, ImageSize } from '#/utils';
import { ref } from 'vue';
import { confirm } from '@vben/common-ui';
import { Button, Image, message, Space, Textarea } from 'ant-design-vue';
import { drawImage } from '#/api/ai/image';
import {
AiPlatformEnum,
Dall3Models,
Dall3SizeList,
Dall3StyleList,
ImageHotWords,
} from '#/utils';
} from '@vben/utils';
import { Button, Image, message, Space, Textarea } from 'ant-design-vue';
import { drawImage } from '#/api/ai/image';
// 接收父组件传入的模型列表
const props = defineProps({

View File

@@ -1,12 +1,21 @@
<!-- dall3 -->
<script setup lang="ts">
import type { ImageModel, ImageSize } from '@vben/utils';
import type { AiImageApi } from '#/api/ai/image';
import type { AiModelModelApi } from '#/api/ai/model/model';
import type { ImageModel, ImageSize } from '#/utils';
import { ref } from 'vue';
import { confirm } from '@vben/common-ui';
import {
AiPlatformEnum,
ImageHotWords,
MidjourneyModels,
MidjourneySizeList,
MidjourneyVersions,
NijiVersionList,
} from '@vben/utils';
import {
Button,
@@ -19,14 +28,6 @@ import {
import { midjourneyImagine } from '#/api/ai/image';
import { ImageUpload } from '#/components/upload';
import {
AiPlatformEnum,
ImageHotWords,
MidjourneyModels,
MidjourneySizeList,
MidjourneyVersions,
NijiVersionList,
} from '#/utils';
// 消息弹窗

View File

@@ -6,6 +6,13 @@ import type { AiModelModelApi } from '#/api/ai/model/model';
import { ref } from 'vue';
import { alert, confirm } from '@vben/common-ui';
import {
AiPlatformEnum,
ImageHotEnglishWords,
StableDiffusionClipGuidancePresets,
StableDiffusionSamplers,
StableDiffusionStylePresets,
} from '@vben/utils';
import {
Button,
@@ -17,13 +24,6 @@ import {
} from 'ant-design-vue';
import { drawImage } from '#/api/ai/image';
import {
AiPlatformEnum,
ImageHotEnglishWords,
StableDiffusionClipGuidancePresets,
StableDiffusionSamplers,
StableDiffusionStylePresets,
} from '#/utils';
// 接收父组件传入的模型列表
const props = defineProps({

View File

@@ -5,11 +5,11 @@ import type { AiModelModelApi } from '#/api/ai/model/model';
import { nextTick, onMounted, ref } from 'vue';
import { Page } from '@vben/common-ui';
import { AiModelTypeEnum, AiPlatformEnum } from '@vben/utils';
import { Segmented } from 'ant-design-vue';
import { getModelSimpleList } from '#/api/ai/model/model';
import { AiModelTypeEnum, AiPlatformEnum } from '#/utils';
import Common from './components/common/index.vue';
import Dall3 from './components/dall3/index.vue';

View File

@@ -6,6 +6,7 @@ import type { SystemUserApi } from '#/api/system/user';
import { onMounted, ref } from 'vue';
import { confirm, DocAlert, Page } from '@vben/common-ui';
import { AiImageStatusEnum } from '@vben/utils';
import { Image, message, Switch } from 'ant-design-vue';
@@ -13,7 +14,6 @@ import { ACTION_ICON, TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
import { deleteImage, getImagePage, updateImage } from '#/api/ai/image';
import { getSimpleUserList } from '#/api/system/user';
import { $t } from '#/locales';
import { AiImageStatusEnum } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';

View File

@@ -1,14 +1,11 @@
import type { VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { AiModelTypeEnum } from '@vben/utils';
import { z } from '#/adapter/form';
import { getModelSimpleList } from '#/api/ai/model/model';
import {
AiModelTypeEnum,
CommonStatusEnum,
DICT_TYPE,
getDictOptions,
} from '#/utils';
import { CommonStatusEnum, DICT_TYPE, getDictOptions } from '#/utils';
/** 新增/修改的表单 */
export function useFormSchema(): VbenFormSchema[] {
return [

View File

@@ -1,10 +1,11 @@
import type { VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { AiModelTypeEnum } from '@vben/utils';
import { z } from '#/adapter/form';
import { getModelSimpleList } from '#/api/ai/model/model';
import {
AiModelTypeEnum,
CommonStatusEnum,
DICT_TYPE,
getDictOptions,

View File

@@ -8,6 +8,7 @@ import { useRoute } from 'vue-router';
import { useAccess } from '@vben/access';
import { confirm, Page, useVbenModal } from '@vben/common-ui';
import { CommonStatusEnum } from '@vben/utils';
import { message, Switch } from 'ant-design-vue';
@@ -18,7 +19,6 @@ import {
updateKnowledgeSegmentStatus,
} from '#/api/ai/knowledge/segment';
import { $t } from '#/locales';
import { CommonStatusEnum } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';
import Form from './modules/form.vue';

View File

@@ -4,9 +4,9 @@ import type { AiMindmapApi } from '#/api/ai/mindmap';
import { nextTick, onMounted, ref } from 'vue';
import { alert, Page } from '@vben/common-ui';
import { MindMapContentExample } from '@vben/utils';
import { generateMindMap } from '#/api/ai/mindmap';
import { MindMapContentExample } from '#/utils';
import Left from './modules/Left.vue';
import Right from './modules/Right.vue';

View File

@@ -1,16 +1,13 @@
import type { VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { AiModelTypeEnum } from '@vben/utils';
import { z } from '#/adapter/form';
import { getSimpleKnowledgeList } from '#/api/ai/knowledge/knowledge';
import { getModelSimpleList } from '#/api/ai/model/model';
import { getToolSimpleList } from '#/api/ai/model/tool';
import {
AiModelTypeEnum,
CommonStatusEnum,
DICT_TYPE,
getDictOptions,
} from '#/utils';
import { CommonStatusEnum, DICT_TYPE, getDictOptions } from '#/utils';
/** 新增/修改的表单 */
export function useFormSchema(): VbenFormSchema[] {
return [

View File

@@ -1,14 +1,11 @@
import type { VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { AiModelTypeEnum } from '@vben/utils';
import { z } from '#/adapter/form';
import { getApiKeySimpleList } from '#/api/ai/model/apiKey';
import {
AiModelTypeEnum,
CommonStatusEnum,
DICT_TYPE,
getDictOptions,
} from '#/utils';
import { CommonStatusEnum, DICT_TYPE, getDictOptions } from '#/utils';
/** 新增/修改的表单 */
export function useFormSchema(): VbenFormSchema[] {
return [

View File

@@ -6,6 +6,7 @@ import type { SystemUserApi } from '#/api/system/user';
import { onMounted, ref } from 'vue';
import { confirm, DocAlert, Page } from '@vben/common-ui';
import { AiMusicStatusEnum } from '@vben/utils';
import { Button, message, Switch } from 'ant-design-vue';
@@ -13,7 +14,6 @@ import { ACTION_ICON, TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
import { deleteMusic, getMusicPage, updateMusic } from '#/api/ai/music';
import { getSimpleUserList } from '#/api/system/user';
import { $t } from '#/locales';
import { AiMusicStatusEnum } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';

View File

@@ -5,13 +5,13 @@ import { useRoute, useRouter } from 'vue-router';
import { confirm, Page } from '@vben/common-ui';
import { useTabs } from '@vben/hooks';
import { ArrowLeft } from '@vben/icons';
import { AiModelTypeEnum, CommonStatusEnum } from '@vben/utils';
import { Button, Card, message } from 'ant-design-vue';
import { getModelSimpleList } from '#/api/ai/model/model';
import { createWorkflow, getWorkflow, updateWorkflow } from '#/api/ai/workflow';
import { createModel, deployModel, updateModel } from '#/api/bpm/model';
import { AiModelTypeEnum, CommonStatusEnum } from '#/utils';
import BasicInfo from './modules/basic-info.vue';
import WorkflowDesign from './modules/workflow-design.vue';

View File

@@ -5,16 +5,12 @@ import type { AiWriteApi } from '#/api/ai/write';
import { ref } from 'vue';
import { IconifyIcon } from '@vben/icons';
import { AiWriteTypeEnum, WriteExample } from '@vben/utils';
import { createReusableTemplate } from '@vueuse/core';
import { Button, message, Textarea } from 'ant-design-vue';
import {
AiWriteTypeEnum,
DICT_TYPE,
getDictOptions,
WriteExample,
} from '#/utils';
import { DICT_TYPE, getDictOptions } from '#/utils';
import Tag from './Tag.vue';

View File

@@ -4,9 +4,9 @@ import type { AiWriteApi } from '#/api/ai/write';
import { nextTick, ref } from 'vue';
import { alert, Page } from '@vben/common-ui';
import { WriteExample } from '@vben/utils';
import { writeStream } from '#/api/ai/write';
import { WriteExample } from '#/utils';
import Left from './components/Left.vue';
import Right from './components/Right.vue';

View File

@@ -5,12 +5,12 @@ import { onMounted } from 'vue';
import { useRoute, useRouter } from 'vue-router';
import { DocAlert, Page, useVbenModal } from '@vben/common-ui';
import { BpmModelFormType } from '@vben/utils';
import { Button, Tooltip } from 'ant-design-vue';
import { TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
import { getProcessDefinitionPage } from '#/api/bpm/definition';
import { BpmModelFormType } from '#/utils';
// 导入 FormCreate 表单详情
import FormCreateDetail from '../../form/modules/detail.vue';

View File

@@ -12,6 +12,11 @@ import { confirm, Page } from '@vben/common-ui';
import { useTabs } from '@vben/hooks';
import { ArrowLeft } from '@vben/icons';
import { useUserStore } from '@vben/stores';
import {
BpmAutoApproveType,
BpmModelFormType,
BpmModelType,
} from '@vben/utils';
import { Button, Card, message } from 'ant-design-vue';
@@ -26,7 +31,6 @@ import {
} from '#/api/bpm/model';
import { getSimpleDeptList } from '#/api/system/dept';
import { getSimpleUserList } from '#/api/system/user';
import { BpmAutoApproveType, BpmModelFormType, BpmModelType } from '#/utils';
import BasicInfo from './modules/basic-info.vue';
import ExtraSetting from './modules/extra-setting.vue';

View File

@@ -2,6 +2,11 @@
import { computed, provide, ref, watch } from 'vue';
import { CircleHelp } from '@vben/icons';
import {
BpmAutoApproveType,
BpmModelFormType,
ProcessVariableEnum,
} from '@vben/utils';
import {
Checkbox,
@@ -26,11 +31,6 @@ import {
HttpRequestSetting,
parseFormFields,
} from '#/components/simple-process-design';
import {
BpmAutoApproveType,
BpmModelFormType,
ProcessVariableEnum,
} from '#/utils';
const modelData = defineModel<any>();

View File

@@ -6,6 +6,7 @@ import type { BpmFormApi } from '#/api/bpm/form';
import { ref, watch } from 'vue';
import { CircleHelp } from '@vben/icons';
import { BpmModelFormType } from '@vben/utils';
import FormCreate from '@form-create/ant-design-vue';
import {
@@ -20,12 +21,7 @@ import {
} from 'ant-design-vue';
import { getFormDetail } from '#/api/bpm/form';
import {
BpmModelFormType,
DICT_TYPE,
getDictOptions,
setConfAndFields2,
} from '#/utils';
import { DICT_TYPE, getDictOptions, setConfAndFields2 } from '#/utils';
const props = defineProps({
formList: {

View File

@@ -3,7 +3,7 @@ import type { Ref } from 'vue';
import { computed, inject, nextTick, ref } from 'vue';
import { BpmModelType } from '#/utils';
import { BpmModelType } from '@vben/utils';
// TODO BPM 流程模型设计器 BpmModelEditor 待整合
import SimpleModelDesign from './simple-model-design.vue';

View File

@@ -9,7 +9,12 @@ import { useAccess } from '@vben/access';
import { confirm, EllipsisText, useVbenModal } from '@vben/common-ui';
import { IconifyIcon } from '@vben/icons';
import { useUserStore } from '@vben/stores';
import { cloneDeep, formatDateTime, isEqual } from '@vben/utils';
import {
BpmModelFormType,
cloneDeep,
formatDateTime,
isEqual,
} from '@vben/utils';
import { useDebounceFn } from '@vueuse/core';
import { useSortable } from '@vueuse/integrations/useSortable';
@@ -34,7 +39,6 @@ import {
updateModelState,
} from '#/api/bpm/model';
import { $t } from '#/locales';
import { BpmModelFormType } from '#/utils';
// 导入重命名表单
import CategoryRenameForm from '../../category/modules/rename-form.vue';

View File

@@ -6,6 +6,7 @@ import { computed, onMounted, ref, watch } from 'vue';
import { confirm, Page, useVbenForm } from '@vben/common-ui';
import { IconifyIcon } from '@vben/icons';
import { BpmCandidateStrategyEnum, BpmNodeIdEnum } from '@vben/utils';
import { Button, Card, message, Space } from 'ant-design-vue';
import dayjs from 'dayjs';
@@ -15,7 +16,6 @@ import { createLeave, updateLeave } from '#/api/bpm/oa/leave';
import { getApprovalDetail as getApprovalDetailApi } from '#/api/bpm/processInstance';
import { $t } from '#/locales';
import { router } from '#/router';
import { BpmCandidateStrategyEnum, BpmNodeIdEnum } from '#/utils';
import ProcessInstanceTimeline from '#/views/bpm/processInstance/detail/modules/time-line.vue';
import { useFormSchema } from './data';
@@ -171,7 +171,7 @@ function selectUserConfirm(id: string, userList: any[]) {
/** 审批相关:预测流程节点会因为输入的参数值而产生新的预测结果值,所以需重新预测一次, formData.value可改成实际业务中的特定字段 */
watch(
formData.value,
formData.value as object,
(newValue, oldValue) => {
if (!oldValue) {
return;

View File

@@ -6,6 +6,13 @@ import { computed, nextTick, ref, watch } from 'vue';
import { useTabs } from '@vben/hooks';
import { IconifyIcon } from '@vben/icons';
import {
BpmCandidateStrategyEnum,
BpmFieldPermissionType,
BpmModelFormType,
BpmModelType,
BpmNodeIdEnum,
} from '@vben/utils';
import formCreate from '@form-create/ant-design-vue';
import { Button, Card, Col, message, Row, Space, Tabs } from 'ant-design-vue';
@@ -16,15 +23,7 @@ import {
getApprovalDetail as getApprovalDetailApi,
} from '#/api/bpm/processInstance';
import { router } from '#/router';
import {
BpmCandidateStrategyEnum,
BpmFieldPermissionType,
BpmModelFormType,
BpmModelType,
BpmNodeIdEnum,
decodeFields,
setConfAndFields2,
} from '#/utils';
import { decodeFields, setConfAndFields2 } from '#/utils';
import ProcessInstanceSimpleViewer from '#/views/bpm/processInstance/detail/modules/simple-bpm-viewer.vue';
import ProcessInstanceTimeline from '#/views/bpm/processInstance/detail/modules/time-line.vue';

View File

@@ -6,7 +6,12 @@ import type { SystemUserApi } from '#/api/system/user';
import { nextTick, onMounted, ref, shallowRef, watch } from 'vue';
import { Page } from '@vben/common-ui';
import { formatDateTime } from '@vben/utils';
import {
BpmModelFormType,
BpmModelType,
BpmTaskStatusEnum,
formatDateTime,
} from '@vben/utils';
import { Avatar, Card, Col, message, Row, TabPane, Tabs } from 'ant-design-vue';
@@ -16,14 +21,7 @@ import {
} from '#/api/bpm/processInstance';
import { getSimpleUserList } from '#/api/system/user';
import DictTag from '#/components/dict-tag/dict-tag.vue';
import {
BpmModelFormType,
BpmModelType,
BpmTaskStatusEnum,
DICT_TYPE,
registerComponent,
setConfAndFields2,
} from '#/utils';
import { DICT_TYPE, registerComponent, setConfAndFields2 } from '#/utils';
import {
SvgBpmApproveIcon,
SvgBpmCancelIcon,

View File

@@ -10,7 +10,16 @@ import { useRouter } from 'vue-router';
import { useVbenModal } from '@vben/common-ui';
import { IconifyIcon } from '@vben/icons';
import { useUserStore } from '@vben/stores';
import { isEmpty } from '@vben/utils';
import {
BpmCandidateStrategyEnum,
BpmModelFormType,
BpmNodeTypeEnum,
BpmProcessInstanceStatus,
BpmTaskOperationButtonTypeEnum,
BpmTaskStatusEnum,
isEmpty,
OPERATION_BUTTON_NAME,
} from '@vben/utils';
import FormCreate from '@form-create/ant-design-vue';
import {
@@ -34,16 +43,7 @@ import {
} from '#/api/bpm/processInstance';
import * as TaskApi from '#/api/bpm/task';
import * as UserApi from '#/api/system/user';
import {
BpmCandidateStrategyEnum,
BpmModelFormType,
BpmNodeTypeEnum,
BpmProcessInstanceStatus,
BpmTaskOperationButtonTypeEnum,
BpmTaskStatusEnum,
OPERATION_BUTTON_NAME,
setConfAndFields2,
} from '#/utils';
import { setConfAndFields2 } from '#/utils';
import Signature from './signature.vue';
import ProcessInstanceTimeline from './time-line.vue';

View File

@@ -3,8 +3,9 @@ import type { SimpleFlowNode } from '#/components/simple-process-design';
import { ref, watch } from 'vue';
import { BpmNodeTypeEnum, BpmTaskStatusEnum } from '@vben/utils';
import { SimpleProcessViewer } from '#/components/simple-process-design';
import { BpmNodeTypeEnum, BpmTaskStatusEnum } from '#/utils';
defineOptions({ name: 'BpmProcessInstanceSimpleViewer' });

View File

@@ -7,16 +7,17 @@ import { useRouter } from 'vue-router';
import { useVbenModal } from '@vben/common-ui';
import { IconifyIcon } from '@vben/icons';
import { formatDateTime, isEmpty } from '@vben/utils';
import { Avatar, Button, Image, Timeline, Tooltip } from 'ant-design-vue';
import { UserSelectModal } from '#/components/select-modal';
import {
BpmCandidateStrategyEnum,
BpmNodeTypeEnum,
BpmTaskStatusEnum,
} from '#/utils';
formatDateTime,
isEmpty,
} from '@vben/utils';
import { Avatar, Button, Image, Timeline, Tooltip } from 'ant-design-vue';
import { UserSelectModal } from '#/components/select-modal';
defineOptions({ name: 'BpmProcessInstanceTimeline' });

View File

@@ -5,6 +5,7 @@ import type { BpmProcessInstanceApi } from '#/api/bpm/processInstance';
import { h } from 'vue';
import { DocAlert, Page, prompt } from '@vben/common-ui';
import { BpmProcessInstanceStatus } from '@vben/utils';
import { message, Textarea } from 'ant-design-vue';
@@ -15,7 +16,6 @@ import {
} from '#/api/bpm/processInstance';
import { $t } from '#/locales';
import { router } from '#/router';
import { BpmProcessInstanceStatus } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';

View File

@@ -2,10 +2,9 @@ import type { DescriptionItemSchema } from '#/components/description';
import { h } from 'vue';
import { formatDateTime } from '@vben/utils';
import { DICT_TYPE, formatDateTime } from '@vben/utils';
import { DictTag } from '#/components/dict-tag';
import { DICT_TYPE } from '#/utils';
/** 详情头部的配置 */
export function useDetailSchema(): DescriptionItemSchema[] {

View File

@@ -3,10 +3,9 @@ import type { DescriptionItemSchema } from '#/components/description';
import { h } from 'vue';
import { formatDateTime } from '@vben/utils';
import { DICT_TYPE, formatDateTime } from '@vben/utils';
import { DictTag } from '#/components/dict-tag';
import { DICT_TYPE } from '#/utils';
/** 详情页的基础字段 */
export function useDetailSchema(): DescriptionItemSchema[] {

View File

@@ -2,12 +2,11 @@ import type { VbenFormSchema } from '@vben/common-ui';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { handleTree } from '@vben/utils';
import { DICT_TYPE, handleTree } from '@vben/utils';
import { LimitConfType } from '#/api/crm/customer/limitConfig';
import { getSimpleDeptList } from '#/api/system/dept';
import { getSimpleUserList } from '#/api/system/user';
import { DICT_TYPE } from '#/utils';
/** 新增/修改的表单 */
export function useFormSchema(confType: LimitConfType): VbenFormSchema[] {

View File

@@ -2,10 +2,9 @@ import type { DescriptionItemSchema } from '#/components/description';
import { h } from 'vue';
import { formatDateTime } from '@vben/utils';
import { DICT_TYPE, formatDateTime } from '@vben/utils';
import { DictTag } from '#/components/dict-tag';
import { DICT_TYPE } from '#/utils';
/** 详情页的字段 */
export function useDetailSchema(): DescriptionItemSchema[] {

View File

@@ -6,6 +6,7 @@ import { watch } from 'vue';
import { useRouter } from 'vue-router';
import { useVbenModal } from '@vben/common-ui';
import { DICT_TYPE } from '@vben/utils';
import { Button, message } from 'ant-design-vue';
@@ -16,7 +17,6 @@ import {
} from '#/api/crm/followup';
import { BizTypeEnum } from '#/api/crm/permission';
import { $t } from '#/locales';
import { DICT_TYPE } from '#/utils';
import FollowUpRecordForm from './modules/form.vue';

View File

@@ -3,10 +3,9 @@ import type { DescriptionItemSchema } from '#/components/description';
import { h } from 'vue';
import { erpPriceInputFormatter } from '@vben/utils';
import { DICT_TYPE, erpPriceInputFormatter } from '@vben/utils';
import { DictTag } from '#/components/dict-tag';
import { DICT_TYPE } from '#/utils';
/** 详情页的字段 */
export function useDetailSchema(): DescriptionItemSchema[] {

View File

@@ -3,10 +3,9 @@ import type { DescriptionItemSchema } from '#/components/description';
import { h } from 'vue';
import { erpPriceInputFormatter, formatDateTime } from '@vben/utils';
import { DICT_TYPE, erpPriceInputFormatter, formatDateTime } from '@vben/utils';
import { DictTag } from '#/components/dict-tag';
import { DICT_TYPE } from '#/utils';
/** 详情页的字段 */
export function useDetailSchema(): DescriptionItemSchema[] {

View File

@@ -3,10 +3,9 @@ import type { DescriptionItemSchema } from '#/components/description';
import { h } from 'vue';
import { erpPriceInputFormatter, formatDateTime } from '@vben/utils';
import { DICT_TYPE, erpPriceInputFormatter, formatDateTime } from '@vben/utils';
import { DictTag } from '#/components/dict-tag';
import { DICT_TYPE } from '#/utils';
/** 详情页的字段 */
export function useDetailSchema(): DescriptionItemSchema[] {

View File

@@ -5,17 +5,12 @@ import type { DescriptionItemSchema } from '#/components/description';
import { h } from 'vue';
import { JsonViewer } from '@vben/common-ui';
import { formatDateTime } from '@vben/utils';
import { formatDateTime, InfraApiErrorLogProcessStatusEnum } from '@vben/utils';
import { Textarea } from 'ant-design-vue';
import { DictTag } from '#/components/dict-tag';
import {
DICT_TYPE,
getDictOptions,
getRangePickerDefaultProps,
InfraApiErrorLogProcessStatusEnum,
} from '#/utils';
import { DICT_TYPE, getDictOptions, getRangePickerDefaultProps } from '#/utils';
/** 列表的搜索表单 */
export function useGridFormSchema(): VbenFormSchema[] {

View File

@@ -3,7 +3,10 @@ import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import type { InfraApiErrorLogApi } from '#/api/infra/api-error-log';
import { confirm, DocAlert, Page, useVbenModal } from '@vben/common-ui';
import { downloadFileFromBlobPart } from '@vben/utils';
import {
downloadFileFromBlobPart,
InfraApiErrorLogProcessStatusEnum,
} from '@vben/utils';
import { message } from 'ant-design-vue';
@@ -14,7 +17,6 @@ import {
updateApiErrorLogStatus,
} from '#/api/infra/api-error-log';
import { $t } from '#/locales';
import { InfraApiErrorLogProcessStatusEnum } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';
import Detail from './modules/detail.vue';

View File

@@ -3,11 +3,10 @@ import type { InfraCodegenApi } from '#/api/infra/codegen';
import { computed, ref, watch } from 'vue';
import { isEmpty } from '@vben/utils';
import { InfraCodegenTemplateTypeEnum, isEmpty } from '@vben/utils';
import { useVbenForm } from '#/adapter/form';
import { getCodegenTableList } from '#/api/infra/codegen';
import { InfraCodegenTemplateTypeEnum } from '#/utils';
import {
useGenerationInfoBaseFormSchema,

View File

@@ -6,7 +6,11 @@ import { ref } from 'vue';
import { useRouter } from 'vue-router';
import { confirm, DocAlert, Page, useVbenModal } from '@vben/common-ui';
import { downloadFileFromBlobPart, isEmpty } from '@vben/utils';
import {
downloadFileFromBlobPart,
InfraJobStatusEnum,
isEmpty,
} from '@vben/utils';
import { message } from 'ant-design-vue';
@@ -20,7 +24,6 @@ import {
updateJobStatus,
} from '#/api/infra/job';
import { $t } from '#/locales';
import { InfraJobStatusEnum } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';
import Detail from './modules/detail.vue';

View File

@@ -11,6 +11,7 @@ import {
downloadFileFromBlobPart,
fenToYuan,
handleTree,
ProductSpuStatusEnum,
treeToString,
} from '@vben/utils';
@@ -26,7 +27,6 @@ import {
updateStatus,
} from '#/api/mall/product/spu';
import { $t } from '#/locales';
import { ProductSpuStatusEnum } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';
@@ -278,20 +278,20 @@ onMounted(async () => {
:content-style="{ width: '100px', fontSize: '14px' }"
>
<Descriptions.Item label="商品分类">
{{ treeToString(categoryList, row.categoryId) }}
{{ treeToString(categoryList, row.categoryId as string) }}
</Descriptions.Item>
<Descriptions.Item label="商品名称">
{{ row.name }}
</Descriptions.Item>
<Descriptions.Item label="市场价">
{{ fenToYuan(row.marketPrice) }}
{{ fenToYuan(row.marketPrice as number) }}
</Descriptions.Item>
<Descriptions.Item label="成本价">
{{ fenToYuan(row.costPrice) }}
{{ fenToYuan(row.costPrice as number) }}
</Descriptions.Item>
<Descriptions.Item label="浏览量">
{{ row.browseCount }}
{{ row.browseCount as number }}
</Descriptions.Item>
<Descriptions.Item label="虚拟销量">
{{ row.virtualSalesCount }}

View File

@@ -1,11 +1,11 @@
import type { MallCouponTemplateApi } from '#/api/mall/promotion/coupon/couponTemplate';
import { floatToFixed2, formatDate } from '@vben/utils';
import {
CouponTemplateValidityTypeEnum,
floatToFixed2,
formatDate,
PromotionDiscountTypeEnum,
} from '#/utils';
} from '@vben/utils';
// 格式化【优惠金额/折扣】
export function discountFormat(row: MallCouponTemplateApi.CouponTemplate) {

View File

@@ -7,12 +7,11 @@ import type { MallBrokerageUserApi } from '#/api/mall/trade/brokerage/user';
import { ref } from 'vue';
import { useVbenModal } from '@vben/common-ui';
import { fenToYuan } from '@vben/utils';
import { BrokerageRecordBizTypeEnum, fenToYuan } from '@vben/utils';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
import { getBrokerageRecordPage } from '#/api/mall/trade/brokerage/record';
import { DICT_TYPE, getDictOptions, getRangePickerDefaultProps } from '#/utils';
import { BrokerageRecordBizTypeEnum } from '#/utils/constants';
/** 推广订单列表 */
defineOptions({ name: 'BrokerageOrderListModal' });

View File

@@ -5,7 +5,12 @@ import type { MallBrokerageWithdrawApi } from '#/api/mall/trade/brokerage/withdr
import { h } from 'vue';
import { confirm, Page, prompt } from '@vben/common-ui';
import { formatDateTime } from '@vben/utils';
import {
BrokerageWithdrawStatusEnum,
BrokerageWithdrawTypeEnum,
DICT_TYPE,
formatDateTime,
} from '@vben/utils';
import { Input, message } from 'ant-design-vue';
@@ -17,11 +22,6 @@ import {
} from '#/api/mall/trade/brokerage/withdraw';
import { DictTag } from '#/components/dict-tag';
import { $t } from '#/locales';
import {
BrokerageWithdrawStatusEnum,
BrokerageWithdrawTypeEnum,
DICT_TYPE,
} from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';

View File

@@ -4,12 +4,10 @@ import type { MallDeliveryPickUpStoreApi } from '#/api/mall/trade/delivery/pickU
import { ref } from 'vue';
import { DeliveryTypeEnum } from '@vben/utils';
import { getSimpleDeliveryPickUpStoreList } from '#/api/mall/trade/delivery/pickUpStore';
import {
DeliveryTypeEnum,
DICT_TYPE,
getRangePickerDefaultProps,
} from '#/utils';
import { DICT_TYPE, getRangePickerDefaultProps } from '#/utils';
const pickUpStoreList = ref<MallDeliveryPickUpStoreApi.PickUpStore[]>([]);

View File

@@ -5,7 +5,7 @@ import type { MallOrderApi } from '#/api/mall/trade/order';
import { h, onMounted, ref } from 'vue';
import { Page, prompt } from '@vben/common-ui';
import { fenToYuan } from '@vben/utils';
import { DeliveryTypeEnum, fenToYuan, TradeOrderStatusEnum } from '@vben/utils';
import { Card, Input, message } from 'ant-design-vue';
@@ -16,7 +16,6 @@ import {
getOrderSummary,
} from '#/api/mall/trade/order';
import { SummaryCard } from '#/components/summary-card';
import { DeliveryTypeEnum, TradeOrderStatusEnum } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';

View File

@@ -4,14 +4,11 @@ import type { MallDeliveryPickUpStoreApi } from '#/api/mall/trade/delivery/pickU
import { ref } from 'vue';
import { DeliveryTypeEnum } from '@vben/utils';
import { getSimpleDeliveryExpressList } from '#/api/mall/trade/delivery/express';
import { getSimpleDeliveryPickUpStoreList } from '#/api/mall/trade/delivery/pickUpStore';
import {
DeliveryTypeEnum,
DICT_TYPE,
getDictOptions,
getRangePickerDefaultProps,
} from '#/utils';
import { DICT_TYPE, getDictOptions, getRangePickerDefaultProps } from '#/utils';
const pickUpStoreList = ref<MallDeliveryPickUpStoreApi.PickUpStore[]>([]);

View File

@@ -6,7 +6,12 @@ import { h } from 'vue';
import { useRouter } from 'vue-router';
import { DocAlert, Page, prompt, useVbenModal } from '@vben/common-ui';
import { fenToYuan } from '@vben/utils';
import {
DeliveryTypeEnum,
DICT_TYPE,
fenToYuan,
TradeOrderStatusEnum,
} from '@vben/utils';
import { Image, List, Tag, Textarea } from 'ant-design-vue';
@@ -14,7 +19,6 @@ import { ACTION_ICON, TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
import { getOrderPage, updateOrderRemark } from '#/api/mall/trade/order';
import { DictTag } from '#/components/dict-tag';
import { $t } from '#/locales';
import { DeliveryTypeEnum, DICT_TYPE, TradeOrderStatusEnum } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';
import DeleveryForm from './modules/delevery-form.vue';

View File

@@ -3,13 +3,13 @@ import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import type { PayAppApi } from '#/api/pay/app';
import { confirm, DocAlert, Page, useVbenModal } from '@vben/common-ui';
import { CommonStatusEnum, PayChannelEnum } from '@vben/utils';
import { message } from 'ant-design-vue';
import { ACTION_ICON, TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
import { changeAppStatus, deleteApp, getAppPage } from '#/api/pay/app';
import { $t } from '#/locales';
import { CommonStatusEnum, PayChannelEnum } from '#/utils';
import { useGridColumns, useGridFormSchema } from './data';
import appFrom from './modules/app-form.vue';

View File

@@ -6,7 +6,13 @@ import { useRoute, useRouter } from 'vue-router';
import { Page, useVbenModal } from '@vben/common-ui';
import { useTabs } from '@vben/hooks';
import { fenToYuan, formatDate } from '@vben/utils';
import {
fenToYuan,
formatDate,
PayChannelEnum,
PayDisplayModeEnum,
PayOrderStatusEnum,
} from '@vben/utils';
import {
Button,
@@ -18,11 +24,6 @@ import {
} from 'ant-design-vue';
import { getOrder, submitOrder } from '#/api/pay/order';
import {
PayChannelEnum,
PayDisplayModeEnum,
PayOrderStatusEnum,
} from '#/utils';
import { channelsAlipay, channelsMock, channelsWechat } from './data';

View File

@@ -7,18 +7,13 @@ import type { SystemMenuApi } from '#/api/system/menu';
import { h } from 'vue';
import { IconifyIcon } from '@vben/icons';
import { handleTree, isHttpUrl } from '@vben/utils';
import { handleTree, isHttpUrl, SystemMenuTypeEnum } from '@vben/utils';
import { z } from '#/adapter/form';
import { getMenuList } from '#/api/system/menu';
import { $t } from '#/locales';
import { componentKeys } from '#/router/routes';
import {
CommonStatusEnum,
DICT_TYPE,
getDictOptions,
SystemMenuTypeEnum,
} from '#/utils';
import { CommonStatusEnum, DICT_TYPE, getDictOptions } from '#/utils';
/** 新增/修改的表单 */
export function useFormSchema(): VbenFormSchema[] {

View File

@@ -6,13 +6,13 @@ import { ref } from 'vue';
import { DocAlert, Page, useVbenModal } from '@vben/common-ui';
import { IconifyIcon } from '@vben/icons';
import { SystemMenuTypeEnum } from '@vben/utils';
import { message } from 'ant-design-vue';
import { ACTION_ICON, TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
import { deleteMenu, getMenuList } from '#/api/system/menu';
import { $t } from '#/locales';
import { SystemMenuTypeEnum } from '#/utils';
import { useGridColumns } from './data';
import Form from './modules/form.vue';

View File

@@ -1,6 +1,8 @@
import type { VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { UserTypeEnum } from '@vben/utils';
import { z } from '#/adapter/form';
import { getSimpleUserList } from '#/api/system/user';
import {
@@ -8,9 +10,7 @@ import {
DICT_TYPE,
getDictOptions,
getRangePickerDefaultProps,
UserTypeEnum,
} from '#/utils';
/** 新增/修改的表单 */
export function useFormSchema(): VbenFormSchema[] {
return [

View File

@@ -1,13 +1,14 @@
import type { VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { SystemDataScopeEnum } from '@vben/utils';
import { z } from '#/adapter/form';
import {
CommonStatusEnum,
DICT_TYPE,
getDictOptions,
getRangePickerDefaultProps,
SystemDataScopeEnum,
} from '#/utils';
/** 新增/修改的表单 */

View File

@@ -5,7 +5,7 @@ import type { SystemRoleApi } from '#/api/system/role';
import { ref } from 'vue';
import { useVbenModal, VbenTree } from '@vben/common-ui';
import { handleTree } from '@vben/utils';
import { handleTree, SystemDataScopeEnum } from '@vben/utils';
import { Checkbox, message } from 'ant-design-vue';
@@ -14,7 +14,6 @@ import { getDeptList } from '#/api/system/dept';
import { assignRoleDataScope } from '#/api/system/permission';
import { getRole } from '#/api/system/role';
import { $t } from '#/locales';
import { SystemDataScopeEnum } from '#/utils';
import { useAssignDataPermissionFormSchema } from '../data';

View File

@@ -7,7 +7,7 @@ import type { SystemRoleApi } from '#/api/system/role';
import { ref } from 'vue';
import { useVbenModal, VbenTree } from '@vben/common-ui';
import { handleTree } from '@vben/utils';
import { handleTree, SystemMenuTypeEnum } from '@vben/utils';
import { Checkbox, message } from 'ant-design-vue';
@@ -15,7 +15,6 @@ import { useVbenForm } from '#/adapter/form';
import { getMenuList } from '#/api/system/menu';
import { assignRoleMenu, getRoleMenuList } from '#/api/system/permission';
import { $t } from '#/locales';
import { SystemMenuTypeEnum } from '#/utils';
import { useAssignMenuFormSchema } from '../data';

View File

@@ -1,13 +1,10 @@
import type { VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import { SystemUserSocialTypeEnum } from '@vben/utils';
import { z } from '#/adapter/form';
import {
CommonStatusEnum,
DICT_TYPE,
getDictOptions,
SystemUserSocialTypeEnum,
} from '#/utils';
import { CommonStatusEnum, DICT_TYPE, getDictOptions } from '#/utils';
/** 新增/修改的表单 */
export function useFormSchema(): VbenFormSchema[] {