所有菜单的 name 都加上模块的前缀,避免冲突
							parent
							
								
									7cc8d9067c
								
							
						
					
					
						commit
						df57191cf0
					
				|  | @ -116,7 +116,7 @@ const remainingRouter: AppRouteRecordRaw[] = [ | ||||||
|       { |       { | ||||||
|         path: 'type/data/:dictType', |         path: 'type/data/:dictType', | ||||||
|         component: () => import('@/views/system/dict/data/index.vue'), |         component: () => import('@/views/system/dict/data/index.vue'), | ||||||
|         name: 'data', |         name: 'SystemDictData', | ||||||
|         meta: { |         meta: { | ||||||
|           title: '字典数据', |           title: '字典数据', | ||||||
|           noCache: true, |           noCache: true, | ||||||
|  | @ -140,7 +140,7 @@ const remainingRouter: AppRouteRecordRaw[] = [ | ||||||
|       { |       { | ||||||
|         path: 'edit', |         path: 'edit', | ||||||
|         component: () => import('@/views/infra/codegen/EditTable.vue'), |         component: () => import('@/views/infra/codegen/EditTable.vue'), | ||||||
|         name: 'EditTable', |         name: 'InfraCodegenEditTable', | ||||||
|         meta: { |         meta: { | ||||||
|           noCache: true, |           noCache: true, | ||||||
|           hidden: true, |           hidden: true, | ||||||
|  | @ -163,7 +163,7 @@ const remainingRouter: AppRouteRecordRaw[] = [ | ||||||
|       { |       { | ||||||
|         path: 'job-log', |         path: 'job-log', | ||||||
|         component: () => import('@/views/infra/job/logger/index.vue'), |         component: () => import('@/views/infra/job/logger/index.vue'), | ||||||
|         name: 'JobLog', |         name: 'InfraJobLog', | ||||||
|         meta: { |         meta: { | ||||||
|           noCache: true, |           noCache: true, | ||||||
|           hidden: true, |           hidden: true, | ||||||
|  | @ -226,7 +226,7 @@ const remainingRouter: AppRouteRecordRaw[] = [ | ||||||
|       { |       { | ||||||
|         path: '/manager/form/edit', |         path: '/manager/form/edit', | ||||||
|         component: () => import('@/views/bpm/form/editor/index.vue'), |         component: () => import('@/views/bpm/form/editor/index.vue'), | ||||||
|         name: 'bpmFormEditor', |         name: 'BpmFormEditor', | ||||||
|         meta: { |         meta: { | ||||||
|           noCache: true, |           noCache: true, | ||||||
|           hidden: true, |           hidden: true, | ||||||
|  | @ -238,7 +238,7 @@ const remainingRouter: AppRouteRecordRaw[] = [ | ||||||
|       { |       { | ||||||
|         path: '/manager/model/edit', |         path: '/manager/model/edit', | ||||||
|         component: () => import('@/views/bpm/model/editor/index.vue'), |         component: () => import('@/views/bpm/model/editor/index.vue'), | ||||||
|         name: 'modelEditor', |         name: 'BpmModelEditor', | ||||||
|         meta: { |         meta: { | ||||||
|           noCache: true, |           noCache: true, | ||||||
|           hidden: true, |           hidden: true, | ||||||
|  | @ -250,7 +250,7 @@ const remainingRouter: AppRouteRecordRaw[] = [ | ||||||
|       { |       { | ||||||
|         path: '/manager/definition', |         path: '/manager/definition', | ||||||
|         component: () => import('@/views/bpm/definition/index.vue'), |         component: () => import('@/views/bpm/definition/index.vue'), | ||||||
|         name: 'BpmProcessDefinitionList', |         name: 'BpmProcessDefinition', | ||||||
|         meta: { |         meta: { | ||||||
|           noCache: true, |           noCache: true, | ||||||
|           hidden: true, |           hidden: true, | ||||||
|  | @ -262,7 +262,7 @@ const remainingRouter: AppRouteRecordRaw[] = [ | ||||||
|       { |       { | ||||||
|         path: '/manager/task-assign-rule', |         path: '/manager/task-assign-rule', | ||||||
|         component: () => import('@/views/bpm/taskAssignRule/index.vue'), |         component: () => import('@/views/bpm/taskAssignRule/index.vue'), | ||||||
|         name: 'BpmTaskAssignRuleList', |         name: 'BpmTaskAssignRule', | ||||||
|         meta: { |         meta: { | ||||||
|           noCache: true, |           noCache: true, | ||||||
|           hidden: true, |           hidden: true, | ||||||
|  | @ -305,30 +305,6 @@ const remainingRouter: AppRouteRecordRaw[] = [ | ||||||
|           title: '发起 OA 请假', |           title: '发起 OA 请假', | ||||||
|           activeMenu: 'bpm/oa/leave/create' |           activeMenu: 'bpm/oa/leave/create' | ||||||
|         } |         } | ||||||
|       }, |  | ||||||
|       { |  | ||||||
|         path: '/bpm/task/todo', |  | ||||||
|         component: () => import('@/views/bpm/task/todo/index.vue'), |  | ||||||
|         name: 'TaskTodo', |  | ||||||
|         meta: { |  | ||||||
|           noCache: true, |  | ||||||
|           hidden: true, |  | ||||||
|           canTo: true, |  | ||||||
|           title: '代办任务', |  | ||||||
|           activeMenu: 'bpm/task/todo/index' |  | ||||||
|         } |  | ||||||
|       }, |  | ||||||
|       { |  | ||||||
|         path: '/bpm/processInstance', |  | ||||||
|         component: () => import('@/views/bpm/processInstance/index.vue'), |  | ||||||
|         name: 'processInstance', |  | ||||||
|         meta: { |  | ||||||
|           noCache: true, |  | ||||||
|           hidden: true, |  | ||||||
|           canTo: true, |  | ||||||
|           title: '流程办理', |  | ||||||
|           activeMenu: 'bpm/processInstance/index' |  | ||||||
|         } |  | ||||||
|       } |       } | ||||||
|     ] |     ] | ||||||
|   }, |   }, | ||||||
|  | @ -343,7 +319,7 @@ const remainingRouter: AppRouteRecordRaw[] = [ | ||||||
|       { |       { | ||||||
|         path: 'value/:propertyId(\\d+)', |         path: 'value/:propertyId(\\d+)', | ||||||
|         component: () => import('@/views/mall/product/property/value/index.vue'), |         component: () => import('@/views/mall/product/property/value/index.vue'), | ||||||
|         name: 'PropertyValue', |         name: 'ProductPropertyValue', | ||||||
|         meta: { title: '商品属性值', icon: '', activeMenu: '/product/property' } |         meta: { title: '商品属性值', icon: '', activeMenu: '/product/property' } | ||||||
|       } |       } | ||||||
|     ] |     ] | ||||||
|  |  | ||||||
|  | @ -77,6 +77,7 @@ declare module '@vue/runtime-core' { | ||||||
|     ElTimeline: typeof import('element-plus/es')['ElTimeline'] |     ElTimeline: typeof import('element-plus/es')['ElTimeline'] | ||||||
|     ElTimelineItem: typeof import('element-plus/es')['ElTimelineItem'] |     ElTimelineItem: typeof import('element-plus/es')['ElTimelineItem'] | ||||||
|     ElTooltip: typeof import('element-plus/es')['ElTooltip'] |     ElTooltip: typeof import('element-plus/es')['ElTooltip'] | ||||||
|  |     ElTree: typeof import('element-plus/es')['ElTree'] | ||||||
|     ElTreeSelect: typeof import('element-plus/es')['ElTreeSelect'] |     ElTreeSelect: typeof import('element-plus/es')['ElTreeSelect'] | ||||||
|     ElUpload: typeof import('element-plus/es')['ElUpload'] |     ElUpload: typeof import('element-plus/es')['ElUpload'] | ||||||
|     Error: typeof import('./../components/Error/src/Error.vue')['default'] |     Error: typeof import('./../components/Error/src/Error.vue')['default'] | ||||||
|  |  | ||||||
|  | @ -93,7 +93,7 @@ | ||||||
|   </Dialog> |   </Dialog> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="Form"> | <script setup lang="ts" name="BpmProcessDefinition"> | ||||||
| import { DICT_TYPE } from '@/utils/dict' | import { DICT_TYPE } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as DefinitionApi from '@/api/bpm/definition' | import * as DefinitionApi from '@/api/bpm/definition' | ||||||
|  |  | ||||||
|  | @ -83,12 +83,11 @@ | ||||||
|   </Dialog> |   </Dialog> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="Form"> | <script setup lang="ts" name="BpmForm"> | ||||||
| import { DICT_TYPE } from '@/utils/dict' | import { DICT_TYPE } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as FormApi from '@/api/bpm/form' | import * as FormApi from '@/api/bpm/form' | ||||||
| import { setConfAndFields2 } from '@/utils/formCreate' | import { setConfAndFields2 } from '@/utils/formCreate' | ||||||
| 
 |  | ||||||
| const message = useMessage() // 消息弹窗 | const message = useMessage() // 消息弹窗 | ||||||
| const { t } = useI18n() // 国际化 | const { t } = useI18n() // 国际化 | ||||||
| const { push } = useRouter() // 路由 | const { push } = useRouter() // 路由 | ||||||
|  | @ -130,7 +129,7 @@ const resetQuery = () => { | ||||||
| /** 添加/修改操作 */ | /** 添加/修改操作 */ | ||||||
| const openForm = (id?: number) => { | const openForm = (id?: number) => { | ||||||
|   push({ |   push({ | ||||||
|     name: 'bpmFormEditor', |     name: 'BpmFormEditor', | ||||||
|     query: { |     query: { | ||||||
|       id |       id | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  | @ -111,7 +111,7 @@ | ||||||
|   <UserGroupForm ref="formRef" @success="getList" /> |   <UserGroupForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="UserGroup"> | <script setup lang="ts" name="BpmUserGroup"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as UserGroupApi from '@/api/bpm/userGroup' | import * as UserGroupApi from '@/api/bpm/userGroup' | ||||||
|  |  | ||||||
|  | @ -24,7 +24,7 @@ | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts"> | <script setup lang="ts" name="BpmModelEditor"> | ||||||
| // 自定义元素选中时的弹出菜单(修改 默认任务 为 用户任务) | // 自定义元素选中时的弹出菜单(修改 默认任务 为 用户任务) | ||||||
| import CustomContentPadProvider from '@/components/bpmnProcessDesigner/package/designer/plugins/content-pad' | import CustomContentPadProvider from '@/components/bpmnProcessDesigner/package/designer/plugins/content-pad' | ||||||
| // 自定义左侧菜单(修改 默认任务 为 用户任务) | // 自定义左侧菜单(修改 默认任务 为 用户任务) | ||||||
|  |  | ||||||
|  | @ -224,7 +224,7 @@ | ||||||
|   </Dialog> |   </Dialog> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="Form"> | <script setup lang="ts" name="BpmModel"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter, formatDate } from '@/utils/formatTime' | import { dateFormatter, formatDate } from '@/utils/formatTime' | ||||||
| import * as ModelApi from '@/api/bpm/model' | import * as ModelApi from '@/api/bpm/model' | ||||||
|  | @ -319,7 +319,7 @@ const handleChangeState = async (row) => { | ||||||
| /** 设计流程 */ | /** 设计流程 */ | ||||||
| const handleDesign = (row) => { | const handleDesign = (row) => { | ||||||
|   push({ |   push({ | ||||||
|     name: 'modelEditor', |     name: 'BpmModelEditor', | ||||||
|     query: { |     query: { | ||||||
|       modelId: row.id |       modelId: row.id | ||||||
|     } |     } | ||||||
|  | @ -352,7 +352,7 @@ const handleAssignRule = (row) => { | ||||||
| /** 跳转到指定流程定义列表 */ | /** 跳转到指定流程定义列表 */ | ||||||
| const handleDefinitionList = (row) => { | const handleDefinitionList = (row) => { | ||||||
|   push({ |   push({ | ||||||
|     name: 'BpmProcessDefinitionList', |     name: 'BpmProcessDefinition', | ||||||
|     query: { |     query: { | ||||||
|       key: row.key |       key: row.key | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  | @ -46,7 +46,7 @@ | ||||||
|     <ProcessInstanceBpmnViewer :bpmn-xml="bpmnXML" /> |     <ProcessInstanceBpmnViewer :bpmn-xml="bpmnXML" /> | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts"> | <script setup lang="ts" name="BpmProcessInstanceCreate"> | ||||||
| import { DICT_TYPE } from '@/utils/dict' | import { DICT_TYPE } from '@/utils/dict' | ||||||
| import * as DefinitionApi from '@/api/bpm/definition' | import * as DefinitionApi from '@/api/bpm/definition' | ||||||
| import * as ProcessInstanceApi from '@/api/bpm/processInstance' | import * as ProcessInstanceApi from '@/api/bpm/processInstance' | ||||||
|  |  | ||||||
|  | @ -96,7 +96,7 @@ | ||||||
|     <TaskUpdateAssigneeForm ref="taskUpdateAssigneeFormRef" @success="getDetail" /> |     <TaskUpdateAssigneeForm ref="taskUpdateAssigneeFormRef" @success="getDetail" /> | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts"> | <script setup lang="ts" name="BpmProcessInstanceDetail"> | ||||||
| import { useUserStore } from '@/store/modules/user' | import { useUserStore } from '@/store/modules/user' | ||||||
| import { setConfAndFields2 } from '@/utils/formCreate' | import { setConfAndFields2 } from '@/utils/formCreate' | ||||||
| import type { ApiAttrs } from '@form-create/element-ui/types/config' | import type { ApiAttrs } from '@form-create/element-ui/types/config' | ||||||
|  |  | ||||||
|  | @ -81,7 +81,7 @@ | ||||||
|           v-hasPermi="['bpm:process-instance:query']" |           v-hasPermi="['bpm:process-instance:query']" | ||||||
|           @click="handleCreate" |           @click="handleCreate" | ||||||
|         > |         > | ||||||
|           发起流程 |           <Icon icon="ep:plus" class="mr-5px" /> 发起流程 | ||||||
|         </el-button> |         </el-button> | ||||||
|       </el-form-item> |       </el-form-item> | ||||||
|     </el-form> |     </el-form> | ||||||
|  | @ -159,7 +159,7 @@ | ||||||
|     /> |     /> | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts"> | <script setup lang="ts" name="BpmProcessInstance"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import { ElMessageBox } from 'element-plus' | import { ElMessageBox } from 'element-plus' | ||||||
|  |  | ||||||
|  | @ -74,7 +74,7 @@ | ||||||
|   <!-- 表单弹窗:详情 --> |   <!-- 表单弹窗:详情 --> | ||||||
|   <TaskDetail ref="detailRef" @success="getList" /> |   <TaskDetail ref="detailRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="tsx"> | <script setup lang="tsx" name="BpmTodoTask"> | ||||||
| import { DICT_TYPE } from '@/utils/dict' | import { DICT_TYPE } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as TaskApi from '@/api/bpm/task' | import * as TaskApi from '@/api/bpm/task' | ||||||
|  |  | ||||||
|  | @ -71,7 +71,7 @@ | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="tsx"> | <script setup lang="tsx" name="BpmDoneTask"> | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| const { push } = useRouter() // 路由 | const { push } = useRouter() // 路由 | ||||||
| import * as TaskApi from '@/api/bpm/task' | import * as TaskApi from '@/api/bpm/task' | ||||||
|  |  | ||||||
|  | @ -32,7 +32,7 @@ | ||||||
|   <!-- 添加/修改弹窗 --> |   <!-- 添加/修改弹窗 --> | ||||||
|   <TaskAssignRuleForm ref="formRef" @success="getList" /> |   <TaskAssignRuleForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="TaskAssignRule"> | <script setup lang="ts" name="BpmTaskAssignRule"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import * as TaskAssignRuleApi from '@/api/bpm/taskAssignRule' | import * as TaskAssignRuleApi from '@/api/bpm/taskAssignRule' | ||||||
| import * as RoleApi from '@/api/system/role' | import * as RoleApi from '@/api/system/role' | ||||||
|  |  | ||||||
|  | @ -139,7 +139,7 @@ | ||||||
|   <!-- 表单弹窗:详情 --> |   <!-- 表单弹窗:详情 --> | ||||||
|   <ApiAccessLogDetail ref="detailRef" /> |   <ApiAccessLogDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="ApiAccessLog"> | <script setup lang="ts" name="InfraApiAccessLog"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
| import { formatDate } from '@/utils/formatTime' | import { formatDate } from '@/utils/formatTime' | ||||||
|  |  | ||||||
|  | @ -158,14 +158,13 @@ | ||||||
|   <ApiErrorLogDetail ref="detailRef" /> |   <ApiErrorLogDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="ApiErrorLog"> | <script setup lang="ts" name="InfraApiErrorLog"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
| import * as ApiErrorLogApi from '@/api/infra/apiErrorLog' | import * as ApiErrorLogApi from '@/api/infra/apiErrorLog' | ||||||
| import ApiErrorLogDetail from './ApiErrorLogDetail.vue' | import ApiErrorLogDetail from './ApiErrorLogDetail.vue' | ||||||
| import { InfraApiErrorLogProcessStatusEnum } from '@/utils/constants' | import { InfraApiErrorLogProcessStatusEnum } from '@/utils/constants' | ||||||
| 
 |  | ||||||
| const message = useMessage() // 消息弹窗 | const message = useMessage() // 消息弹窗 | ||||||
| 
 | 
 | ||||||
| const loading = ref(true) // 列表的加载中 | const loading = ref(true) // 列表的加载中 | ||||||
|  |  | ||||||
|  | @ -31,7 +31,7 @@ | ||||||
|     </div> |     </div> | ||||||
|   </Dialog> |   </Dialog> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Build"> | <script setup lang="ts" name="InfraBuild"> | ||||||
| import formCreate from '@form-create/element-ui' | import formCreate from '@form-create/element-ui' | ||||||
| import { useClipboard } from '@vueuse/core' | import { useClipboard } from '@vueuse/core' | ||||||
| const { t } = useI18n() // 国际化 | const { t } = useI18n() // 国际化 | ||||||
|  |  | ||||||
|  | @ -142,7 +142,7 @@ | ||||||
|   <!-- 弹窗:预览代码 --> |   <!-- 弹窗:预览代码 --> | ||||||
|   <PreviewCode ref="previewRef" /> |   <PreviewCode ref="previewRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Codegen"> | <script setup lang="ts" name="InfraCodegen"> | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
| import * as CodegenApi from '@/api/infra/codegen' | import * as CodegenApi from '@/api/infra/codegen' | ||||||
|  |  | ||||||
|  | @ -137,7 +137,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <ConfigForm ref="formRef" @success="getList" /> |   <ConfigForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Config"> | <script setup lang="ts" name="InfraConfig"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
|  |  | ||||||
|  | @ -57,7 +57,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <DataSourceConfigForm ref="formRef" @success="getList" /> |   <DataSourceConfigForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="DataSourceConfig"> | <script setup lang="ts" name="InfraDataSourceConfig"> | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as DataSourceConfigApi from '@/api/infra/dataSourceConfig' | import * as DataSourceConfigApi from '@/api/infra/dataSourceConfig' | ||||||
| import DataSourceConfigForm from './DataSourceConfigForm.vue' | import DataSourceConfigForm from './DataSourceConfigForm.vue' | ||||||
|  |  | ||||||
|  | @ -16,7 +16,7 @@ | ||||||
|     <IFrame v-if="!loading" v-loading="loading" :src="src" /> |     <IFrame v-if="!loading" v-loading="loading" :src="src" /> | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="DbDoc"> | <script setup lang="ts" name="InfraDBDoc"> | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
| import * as DbDocApi from '@/api/infra/dbDoc' | import * as DbDocApi from '@/api/infra/dbDoc' | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -6,7 +6,7 @@ | ||||||
|     <IFrame v-if="!loading" :src="url" /> |     <IFrame v-if="!loading" :src="url" /> | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Druid"> | <script setup lang="ts" name="InfraDruid"> | ||||||
| import * as ConfigApi from '@/api/infra/config' | import * as ConfigApi from '@/api/infra/config' | ||||||
| 
 | 
 | ||||||
| const loading = ref(true) // 是否加载中 | const loading = ref(true) // 是否加载中 | ||||||
|  |  | ||||||
|  | @ -2,17 +2,19 @@ | ||||||
|   <Dialog title="上传文件" v-model="dialogVisible"> |   <Dialog title="上传文件" v-model="dialogVisible"> | ||||||
|     <el-upload |     <el-upload | ||||||
|       ref="uploadRef" |       ref="uploadRef" | ||||||
|       :limit="1" |  | ||||||
|       accept=".jpg, .png, .gif" |  | ||||||
|       :auto-upload="false" |  | ||||||
|       drag |  | ||||||
|       :headers="headers" |  | ||||||
|       :action="url" |       :action="url" | ||||||
|       :data="data" |       :data="data" | ||||||
|       :disabled="formLoading" |       :headers="uploadHeaders" | ||||||
|  |       v-model:file-list="fileList" | ||||||
|  |       drag | ||||||
|  |       accept=".jpg, .png, .gif" | ||||||
|  |       :limit="1" | ||||||
|  |       :on-success="submitFormSuccess" | ||||||
|  |       :on-exceed="handleExceed" | ||||||
|  |       :on-error="submitFormError" | ||||||
|       :on-change="handleFileChange" |       :on-change="handleFileChange" | ||||||
|       :on-progress="handleFileUploadProgress" |       :auto-upload="false" | ||||||
|       :on-success="handleFileSuccess" |       :disabled="formLoading" | ||||||
|     > |     > | ||||||
|       <i class="el-icon-upload"></i> |       <i class="el-icon-upload"></i> | ||||||
|       <div class="el-upload__text"> 将文件拖到此处,或 <em>点击上传</em> </div> |       <div class="el-upload__text"> 将文件拖到此处,或 <em>点击上传</em> </div> | ||||||
|  | @ -29,44 +31,47 @@ | ||||||
|   </Dialog> |   </Dialog> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts"> | <script setup lang="ts"> | ||||||
| import { Dialog } from '@/components/Dialog' | import { getAccessToken, getTenantId } from '@/utils/auth' | ||||||
| import { getAccessToken } from '@/utils/auth' |  | ||||||
| const { t } = useI18n() // 国际化 | const { t } = useI18n() // 国际化 | ||||||
| const message = useMessage() // 消息弹窗 | const message = useMessage() // 消息弹窗 | ||||||
| 
 | 
 | ||||||
| const dialogVisible = ref(false) // 弹窗的是否展示 | const dialogVisible = ref(false) // 弹窗的是否展示 | ||||||
| const dialogTitle = ref('') // 弹窗的标题 | const formLoading = ref(false) // 表单的加载中 | ||||||
| const formLoading = ref(false) // 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用 |  | ||||||
| const url = import.meta.env.VITE_UPLOAD_URL | const url = import.meta.env.VITE_UPLOAD_URL | ||||||
| const headers = { Authorization: 'Bearer ' + getAccessToken() } | const uploadHeaders = ref() // 上传 Header 头 | ||||||
|  | const fileList = ref([]) // 文件列表 | ||||||
| const data = ref({ path: '' }) | const data = ref({ path: '' }) | ||||||
| const uploadRef = ref() | const uploadRef = ref() | ||||||
| 
 | 
 | ||||||
| /** 打开弹窗 */ | /** 打开弹窗 */ | ||||||
| const open = async () => { | const open = async () => { | ||||||
|   dialogVisible.value = true |   dialogVisible.value = true | ||||||
|  |   resetForm() | ||||||
| } | } | ||||||
| defineExpose({ open }) // 提供 open 方法,用于打开弹窗 | defineExpose({ open }) // 提供 open 方法,用于打开弹窗 | ||||||
| 
 | 
 | ||||||
| /** 提交表单 */ |  | ||||||
| const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调 |  | ||||||
| /** 处理上传的文件发生变化 */ | /** 处理上传的文件发生变化 */ | ||||||
| const handleFileChange = (file) => { | const handleFileChange = (file) => { | ||||||
|   data.value.path = file.name |   data.value.path = file.name | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** 处理文件上传中 */ | /** 提交表单 */ | ||||||
| const handleFileUploadProgress = () => { |  | ||||||
|   formLoading.value = true // 禁止修改 |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| /** 发起文件上传 */ |  | ||||||
| const submitFileForm = () => { | const submitFileForm = () => { | ||||||
|  |   if (fileList.value.length == 0) { | ||||||
|  |     message.error('请上传文件') | ||||||
|  |     return | ||||||
|  |   } | ||||||
|  |   // 提交请求 | ||||||
|  |   uploadHeaders.value = { | ||||||
|  |     Authorization: 'Bearer ' + getAccessToken(), | ||||||
|  |     'tenant-id': getTenantId() | ||||||
|  |   } | ||||||
|   unref(uploadRef)?.submit() |   unref(uploadRef)?.submit() | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** 文件上传成功处理 */ | /** 文件上传成功处理 */ | ||||||
| const handleFileSuccess = () => { | const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调 | ||||||
|  | const submitFormSuccess = () => { | ||||||
|   // 清理 |   // 清理 | ||||||
|   dialogVisible.value = false |   dialogVisible.value = false | ||||||
|   formLoading.value = false |   formLoading.value = false | ||||||
|  | @ -75,4 +80,22 @@ const handleFileSuccess = () => { | ||||||
|   message.success(t('common.createSuccess')) |   message.success(t('common.createSuccess')) | ||||||
|   emit('success') |   emit('success') | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | /** 上传错误提示 */ | ||||||
|  | const submitFormError = (): void => { | ||||||
|  |   message.error('上传失败,请您重新上传!') | ||||||
|  |   formLoading.value = false | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** 重置表单 */ | ||||||
|  | const resetForm = () => { | ||||||
|  |   // 重置上传状态和文件 | ||||||
|  |   formLoading.value = false | ||||||
|  |   uploadRef.value?.clearFiles() | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** 文件数超出提示 */ | ||||||
|  | const handleExceed = (): void => { | ||||||
|  |   message.error('最多只能上传一个文件!') | ||||||
|  | } | ||||||
| </script> | </script> | ||||||
|  |  | ||||||
|  | @ -1,9 +1,14 @@ | ||||||
| <template> | <template> | ||||||
|   <doc-alert title="上传下载" url="https://doc.iocoder.cn/file/"/> |   <doc-alert title="上传下载" url="https://doc.iocoder.cn/file/" /> | ||||||
| 
 |  | ||||||
|   <!-- 搜索 --> |   <!-- 搜索 --> | ||||||
|   <ContentWrap> |   <ContentWrap> | ||||||
|     <el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true"> |     <el-form | ||||||
|  |       class="-mb-15px" | ||||||
|  |       :model="queryParams" | ||||||
|  |       ref="queryFormRef" | ||||||
|  |       :inline="true" | ||||||
|  |       label-width="68px" | ||||||
|  |     > | ||||||
|       <el-form-item label="文件路径" prop="path"> |       <el-form-item label="文件路径" prop="path"> | ||||||
|         <el-input |         <el-input | ||||||
|           v-model="queryParams.path" |           v-model="queryParams.path" | ||||||
|  | @ -33,7 +38,7 @@ | ||||||
|       <el-form-item> |       <el-form-item> | ||||||
|         <el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button> |         <el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button> | ||||||
|         <el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button> |         <el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button> | ||||||
|         <el-button type="primary" @click="openForm"> |         <el-button type="primary" plain @click="openForm"> | ||||||
|           <Icon icon="ep:upload" class="mr-5px" /> 上传文件 |           <Icon icon="ep:upload" class="mr-5px" /> 上传文件 | ||||||
|         </el-button> |         </el-button> | ||||||
|       </el-form-item> |       </el-form-item> | ||||||
|  | @ -86,11 +91,11 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <FileForm ref="formRef" @success="getList" /> |   <FileForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Config"> | <script setup lang="ts" name="InfraFile"> | ||||||
| import { fileSizeFormatter } from '@/utils' | import { fileSizeFormatter } from '@/utils' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as FileApi from '@/api/infra/file' | import * as FileApi from '@/api/infra/file' | ||||||
| import FileUploadForm from './FileForm.vue' | import FileForm from './FileForm.vue' | ||||||
| const message = useMessage() // 消息弹窗 | const message = useMessage() // 消息弹窗 | ||||||
| const { t } = useI18n() // 国际化 | const { t } = useI18n() // 国际化 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -3,17 +3,29 @@ | ||||||
| 
 | 
 | ||||||
|   <!-- 搜索 --> |   <!-- 搜索 --> | ||||||
|   <ContentWrap> |   <ContentWrap> | ||||||
|     <el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true"> |     <el-form | ||||||
|  |       class="-mb-15px" | ||||||
|  |       :model="queryParams" | ||||||
|  |       ref="queryFormRef" | ||||||
|  |       :inline="true" | ||||||
|  |       label-width="68px" | ||||||
|  |     > | ||||||
|       <el-form-item label="配置名" prop="name"> |       <el-form-item label="配置名" prop="name"> | ||||||
|         <el-input |         <el-input | ||||||
|           v-model="queryParams.name" |           v-model="queryParams.name" | ||||||
|           placeholder="请输入配置名" |           placeholder="请输入配置名" | ||||||
|           clearable |           clearable | ||||||
|           @keyup.enter="handleQuery" |           @keyup.enter="handleQuery" | ||||||
|  |           class="!w-240px" | ||||||
|         /> |         /> | ||||||
|       </el-form-item> |       </el-form-item> | ||||||
|       <el-form-item label="存储器" prop="storage"> |       <el-form-item label="存储器" prop="storage"> | ||||||
|         <el-select v-model="queryParams.storage" placeholder="请选择存储器" clearable> |         <el-select | ||||||
|  |           v-model="queryParams.storage" | ||||||
|  |           placeholder="请选择存储器" | ||||||
|  |           clearable | ||||||
|  |           class="!w-240px" | ||||||
|  |         > | ||||||
|           <el-option |           <el-option | ||||||
|             v-for="dict in getIntDictOptions(DICT_TYPE.INFRA_FILE_STORAGE)" |             v-for="dict in getIntDictOptions(DICT_TYPE.INFRA_FILE_STORAGE)" | ||||||
|             :key="dict.value" |             :key="dict.value" | ||||||
|  | @ -30,6 +42,7 @@ | ||||||
|           start-placeholder="开始日期" |           start-placeholder="开始日期" | ||||||
|           end-placeholder="结束日期" |           end-placeholder="结束日期" | ||||||
|           :default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]" |           :default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]" | ||||||
|  |           class="!w-240px" | ||||||
|         /> |         /> | ||||||
|       </el-form-item> |       </el-form-item> | ||||||
|       <el-form-item> |       <el-form-item> | ||||||
|  | @ -113,7 +126,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <FileConfigForm ref="formRef" @success="getList" /> |   <FileConfigForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Config"> | <script setup lang="ts" name="InfraFileConfig"> | ||||||
| import * as FileConfigApi from '@/api/infra/fileConfig' | import * as FileConfigApi from '@/api/infra/fileConfig' | ||||||
| import FileConfigForm from './FileConfigForm.vue' | import FileConfigForm from './FileConfigForm.vue' | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
|  |  | ||||||
|  | @ -147,7 +147,7 @@ | ||||||
|   <!-- 表单弹窗:查看 --> |   <!-- 表单弹窗:查看 --> | ||||||
|   <JobDetail ref="detailRef" /> |   <JobDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Job"> | <script setup lang="ts" name="InfraJob"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { checkPermi } from '@/utils/permission' | import { checkPermi } from '@/utils/permission' | ||||||
| import JobForm from './JobForm.vue' | import JobForm from './JobForm.vue' | ||||||
|  |  | ||||||
|  | @ -121,7 +121,7 @@ | ||||||
|   <!-- 表单弹窗:查看 --> |   <!-- 表单弹窗:查看 --> | ||||||
|   <JobLogDetail ref="detailRef" /> |   <JobLogDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="JobLog"> | <script setup lang="ts" name="InfraJobLog"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { formatDate } from '@/utils/formatTime' | import { formatDate } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
|  |  | ||||||
|  | @ -63,7 +63,7 @@ | ||||||
|     </el-row> |     </el-row> | ||||||
|   </el-scrollbar> |   </el-scrollbar> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Redis"> | <script setup lang="ts" name="InfraRedis"> | ||||||
| import * as echarts from 'echarts' | import * as echarts from 'echarts' | ||||||
| import * as RedisApi from '@/api/infra/redis' | import * as RedisApi from '@/api/infra/redis' | ||||||
| import { RedisMonitorInfoVO } from '@/api/infra/redis/types' | import { RedisMonitorInfoVO } from '@/api/infra/redis/types' | ||||||
|  |  | ||||||
|  | @ -5,7 +5,7 @@ | ||||||
|     <IFrame v-if="!loading" v-loading="loading" :src="src" /> |     <IFrame v-if="!loading" v-loading="loading" :src="src" /> | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="AdminServer"> | <script setup lang="ts" name="InfraAdminServer"> | ||||||
| import * as ConfigApi from '@/api/infra/config' | import * as ConfigApi from '@/api/infra/config' | ||||||
| 
 | 
 | ||||||
| const loading = ref(true) // 是否加载中 | const loading = ref(true) // 是否加载中 | ||||||
|  |  | ||||||
|  | @ -5,7 +5,7 @@ | ||||||
|     <IFrame v-if="!loading" v-loading="loading" :src="src" /> |     <IFrame v-if="!loading" v-loading="loading" :src="src" /> | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Skywalking"> | <script setup lang="ts" name="InfraSkyWalking"> | ||||||
| import * as ConfigApi from '@/api/infra/config' | import * as ConfigApi from '@/api/infra/config' | ||||||
| 
 | 
 | ||||||
| const loading = ref(true) // 是否加载中 | const loading = ref(true) // 是否加载中 | ||||||
|  |  | ||||||
|  | @ -5,7 +5,7 @@ | ||||||
|     <IFrame :src="src" /> |     <IFrame :src="src" /> | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Swagger"> | <script setup lang="ts" name="InfraSwagger"> | ||||||
| import * as ConfigApi from '@/api/infra/config' | import * as ConfigApi from '@/api/infra/config' | ||||||
| 
 | 
 | ||||||
| const loading = ref(true) // 是否加载中 | const loading = ref(true) // 是否加载中 | ||||||
|  |  | ||||||
|  | @ -50,7 +50,7 @@ | ||||||
|     </template> |     </template> | ||||||
|   </Dialog> |   </Dialog> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts"> | <script setup lang="ts" name="ProductCategory"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { CommonStatusEnum } from '@/utils/constants' | import { CommonStatusEnum } from '@/utils/constants' | ||||||
| import { handleTree } from '@/utils/tree' | import { handleTree } from '@/utils/tree' | ||||||
|  |  | ||||||
|  | @ -92,7 +92,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <PropertyForm ref="formRef" @success="getList" /> |   <PropertyForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Config"> | <script setup lang="ts" name="ProductProperty"> | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as PropertyApi from '@/api/mall/product/property' | import * as PropertyApi from '@/api/mall/product/property' | ||||||
| import PropertyForm from './PropertyForm.vue' | import PropertyForm from './PropertyForm.vue' | ||||||
|  |  | ||||||
|  | @ -88,7 +88,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <ValueForm ref="formRef" @success="getList" /> |   <ValueForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Config"> | <script setup lang="ts" name="ProductPropertyValue"> | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as PropertyApi from '@/api/mall/product/property' | import * as PropertyApi from '@/api/mall/product/property' | ||||||
| import ValueForm from './ValueForm.vue' | import ValueForm from './ValueForm.vue' | ||||||
|  |  | ||||||
|  | @ -59,7 +59,7 @@ | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="freePublish"> | <script setup lang="ts" name="MpFreePublish"> | ||||||
| import * as FreePublishApi from '@/api/mp/freePublish' | import * as FreePublishApi from '@/api/mp/freePublish' | ||||||
| import * as MpAccountApi from '@/api/mp/account' | import * as MpAccountApi from '@/api/mp/account' | ||||||
| import WxNews from '@/views/mp/components/wx-news/main.vue' | import WxNews from '@/views/mp/components/wx-news/main.vue' | ||||||
|  |  | ||||||
|  | @ -75,7 +75,7 @@ | ||||||
|     </template> |     </template> | ||||||
|   </XModal> |   </XModal> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="App"> | <script setup lang="ts" name="PayApp"> | ||||||
| import type { FormExpose } from '@/components/Form' | import type { FormExpose } from '@/components/Form' | ||||||
| import { rules, allSchemas } from './app.data' | import { rules, allSchemas } from './app.data' | ||||||
| import * as AppApi from '@/api/pay/app' | import * as AppApi from '@/api/pay/app' | ||||||
|  |  | ||||||
|  | @ -137,7 +137,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <MerchantForm ref="formRef" @success="getList" /> |   <MerchantForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Merchant"> | <script setup lang="ts" name="PayMerchant"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { CommonStatusEnum } from '@/utils/constants' | import { CommonStatusEnum } from '@/utils/constants' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
|  |  | ||||||
|  | @ -41,7 +41,7 @@ | ||||||
|     </template> |     </template> | ||||||
|   </XModal> |   </XModal> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Order"> | <script setup lang="ts" name="PayOrder"> | ||||||
| import { allSchemas } from './order.data' | import { allSchemas } from './order.data' | ||||||
| import * as OrderApi from '@/api/pay/order' | import * as OrderApi from '@/api/pay/order' | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -33,7 +33,7 @@ | ||||||
|     </template> |     </template> | ||||||
|   </XModal> |   </XModal> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Refund"> | <script setup lang="ts" name="PayRefund"> | ||||||
| import { allSchemas } from './refund.data' | import { allSchemas } from './refund.data' | ||||||
| import * as RefundApi from '@/api/pay/refund' | import * as RefundApi from '@/api/pay/refund' | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -30,7 +30,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <AreaForm ref="formRef" /> |   <AreaForm ref="formRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="tsx" name="Area"> | <script setup lang="tsx" name="SystemArea"> | ||||||
| import type { Column } from 'element-plus' | import type { Column } from 'element-plus' | ||||||
| import AreaForm from './AreaForm.vue' | import AreaForm from './AreaForm.vue' | ||||||
| import * as AreaApi from '@/api/system/area' | import * as AreaApi from '@/api/system/area' | ||||||
|  |  | ||||||
|  | @ -103,7 +103,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <DeptForm ref="formRef" @success="getList" /> |   <DeptForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Dept"> | <script setup lang="ts" name="SystemDept"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import { handleTree } from '@/utils/tree' | import { handleTree } from '@/utils/tree' | ||||||
|  |  | ||||||
|  | @ -115,7 +115,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <DictDataForm ref="formRef" @success="getList" /> |   <DictDataForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="DictData"> | <script setup lang="ts" name="SystemDictData"> | ||||||
| import { getIntDictOptions, DICT_TYPE } from '@/utils/dict' | import { getIntDictOptions, DICT_TYPE } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
|  |  | ||||||
|  | @ -132,7 +132,7 @@ | ||||||
|   <DictTypeForm ref="formRef" @success="getList" /> |   <DictTypeForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="DictType"> | <script setup lang="ts" name="SystemDictType"> | ||||||
| import { getIntDictOptions, DICT_TYPE } from '@/utils/dict' | import { getIntDictOptions, DICT_TYPE } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as DictTypeApi from '@/api/system/dict/dict.type' | import * as DictTypeApi from '@/api/system/dict/dict.type' | ||||||
|  |  | ||||||
|  | @ -137,7 +137,7 @@ | ||||||
|   <ErrorCodeForm ref="formRef" @success="getList" /> |   <ErrorCodeForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="ErrorCode"> | <script setup lang="ts" name="SystemErrorCode"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
|  |  | ||||||
|  | @ -104,7 +104,7 @@ | ||||||
|   <!-- 表单弹窗:详情 --> |   <!-- 表单弹窗:详情 --> | ||||||
|   <LoginLogDetail ref="detailRef" /> |   <LoginLogDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="LoginLog"> | <script setup lang="ts" name="SystemLoginLog"> | ||||||
| import { DICT_TYPE } from '@/utils/dict' | import { DICT_TYPE } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
|  |  | ||||||
|  | @ -64,7 +64,7 @@ | ||||||
|   <!-- 详情弹窗 --> |   <!-- 详情弹窗 --> | ||||||
|   <MailAccountDetail ref="detailRef" /> |   <MailAccountDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="MailAccount"> | <script setup lang="ts" name="SystemMailAccount"> | ||||||
| import { allSchemas } from './account.data' | import { allSchemas } from './account.data' | ||||||
| import * as MailAccountApi from '@/api/system/mail/account' | import * as MailAccountApi from '@/api/system/mail/account' | ||||||
| import MailAccountForm from './MailAccountForm.vue' | import MailAccountForm from './MailAccountForm.vue' | ||||||
|  |  | ||||||
|  | @ -34,7 +34,7 @@ | ||||||
|   <!-- 表单弹窗:详情 --> |   <!-- 表单弹窗:详情 --> | ||||||
|   <mail-log-detail ref="detailRef" /> |   <mail-log-detail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="MailLog"> | <script setup lang="ts" name="SystemMailLog"> | ||||||
| import { allSchemas } from './log.data' | import { allSchemas } from './log.data' | ||||||
| import * as MailLogApi from '@/api/system/mail/log' | import * as MailLogApi from '@/api/system/mail/log' | ||||||
| import MailLogDetail from './MailLogDetail.vue' | import MailLogDetail from './MailLogDetail.vue' | ||||||
|  |  | ||||||
|  | @ -65,7 +65,7 @@ | ||||||
|   <!-- 表单弹窗:发送测试 --> |   <!-- 表单弹窗:发送测试 --> | ||||||
|   <MailTemplateSendForm ref="sendFormRef" /> |   <MailTemplateSendForm ref="sendFormRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="MailTemplate"> | <script setup lang="ts" name="SystemMailTemplate"> | ||||||
| import { allSchemas } from './template.data' | import { allSchemas } from './template.data' | ||||||
| import * as MailTemplateApi from '@/api/system/mail/template' | import * as MailTemplateApi from '@/api/system/mail/template' | ||||||
| import MailTemplateForm from './MailTemplateForm.vue' | import MailTemplateForm from './MailTemplateForm.vue' | ||||||
|  |  | ||||||
|  | @ -111,7 +111,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <MenuForm ref="formRef" @success="getList" /> |   <MenuForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Menu"> | <script setup lang="ts" name="SystemMenu"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { handleTree } from '@/utils/tree' | import { handleTree } from '@/utils/tree' | ||||||
| import * as MenuApi from '@/api/system/menu' | import * as MenuApi from '@/api/system/menu' | ||||||
|  |  | ||||||
|  | @ -102,7 +102,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <NoticeForm ref="formRef" @success="getList" /> |   <NoticeForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="tsx"> | <script setup lang="tsx" name="SystemNotice"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as NoticeApi from '@/api/system/notice' | import * as NoticeApi from '@/api/system/notice' | ||||||
|  |  | ||||||
|  | @ -153,7 +153,7 @@ | ||||||
|   <!-- 表单弹窗:详情 --> |   <!-- 表单弹窗:详情 --> | ||||||
|   <NotifyMessageDetail ref="detailRef" /> |   <NotifyMessageDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="NotifyMessage"> | <script setup lang="ts" name="SystemNotifyMessage"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as NotifyMessageApi from '@/api/system/notify/message' | import * as NotifyMessageApi from '@/api/system/notify/message' | ||||||
|  |  | ||||||
|  | @ -115,7 +115,7 @@ | ||||||
|   <MyNotifyMessageDetail ref="detailRef" /> |   <MyNotifyMessageDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="MyNotifyMessage"> | <script setup lang="ts" name="SystemMyNotify"> | ||||||
| import { DICT_TYPE, getBoolDictOptions } from '@/utils/dict' | import { DICT_TYPE, getBoolDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as NotifyMessageApi from '@/api/system/notify/message' | import * as NotifyMessageApi from '@/api/system/notify/message' | ||||||
|  |  | ||||||
|  | @ -114,7 +114,7 @@ | ||||||
|     </template> |     </template> | ||||||
|   </XModal> |   </XModal> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="NotifyTemplate"> | <script setup lang="ts" name="SystemNotifyTemplate"> | ||||||
| import { FormExpose } from '@/components/Form' | import { FormExpose } from '@/components/Form' | ||||||
| // 业务相关的 import | // 业务相关的 import | ||||||
| import { rules, allSchemas } from './template.data' | import { rules, allSchemas } from './template.data' | ||||||
|  |  | ||||||
|  | @ -119,7 +119,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <ClientForm ref="formRef" @success="getList" /> |   <ClientForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts"> | <script setup lang="ts" name="SystemOAuth2Client"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as ClientApi from '@/api/system/oauth2/client' | import * as ClientApi from '@/api/system/oauth2/client' | ||||||
|  |  | ||||||
|  | @ -98,7 +98,7 @@ | ||||||
|   </ContentWrap> |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script setup lang="ts" name="Oauth2AccessToken"> | <script setup lang="ts" name="SystemTokenClient"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as OAuth2AccessTokenApi from '@/api/system/oauth2/token' | import * as OAuth2AccessTokenApi from '@/api/system/oauth2/token' | ||||||
|  |  | ||||||
|  | @ -135,7 +135,7 @@ | ||||||
|   <!-- 表单弹窗:详情 --> |   <!-- 表单弹窗:详情 --> | ||||||
|   <OperateLogDetail ref="detailRef" /> |   <OperateLogDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="OperateLog"> | <script setup lang="ts" name="SystemOperateLog"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
|  |  | ||||||
|  | @ -111,13 +111,12 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <PostForm ref="formRef" @success="getList" /> |   <PostForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="tsx"> | <script setup lang="tsx" name="SystemPost"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
| import * as PostApi from '@/api/system/post' | import * as PostApi from '@/api/system/post' | ||||||
| import PostForm from './PostForm.vue' | import PostForm from './PostForm.vue' | ||||||
| 
 |  | ||||||
| const message = useMessage() // 消息弹窗 | const message = useMessage() // 消息弹窗 | ||||||
| const { t } = useI18n() // 国际化 | const { t } = useI18n() // 国际化 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -152,7 +152,7 @@ | ||||||
|   <!-- 表单弹窗:数据权限 --> |   <!-- 表单弹窗:数据权限 --> | ||||||
|   <RoleDataPermissionForm ref="dataPermissionFormRef" /> |   <RoleDataPermissionForm ref="dataPermissionFormRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="tsx"> | <script setup lang="tsx" name="SystemRole"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
|  |  | ||||||
|  | @ -143,7 +143,7 @@ | ||||||
|   <!-- 表单弹窗:测试敏感词 --> |   <!-- 表单弹窗:测试敏感词 --> | ||||||
|   <SensitiveWordTestForm ref="testFormRef" /> |   <SensitiveWordTestForm ref="testFormRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="SensitiveWord"> | <script setup lang="ts" name="SystemSensitiveWordhao"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
|  |  | ||||||
|  | @ -129,7 +129,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <SmsChannelForm ref="formRef" @success="getList" /> |   <SmsChannelForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="SmsChannel"> | <script setup lang="ts" name="SystemSmsChannel"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as SmsChannelApi from '@/api/system/sms/smsChannel' | import * as SmsChannelApi from '@/api/system/sms/smsChannel' | ||||||
|  |  | ||||||
|  | @ -184,7 +184,7 @@ | ||||||
|   <!-- 表单弹窗:详情 --> |   <!-- 表单弹窗:详情 --> | ||||||
|   <SmsLogDetail ref="detailRef" /> |   <SmsLogDetail ref="detailRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="smsLog"> | <script setup lang="ts" name="SystemSmsLog"> | ||||||
| import { DICT_TYPE, getIntDictOptions, getDictLabel } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions, getDictLabel } from '@/utils/dict' | ||||||
| import { dateFormatter, formatDate } from '@/utils/formatTime' | import { dateFormatter, formatDate } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
|  |  | ||||||
|  | @ -211,7 +211,7 @@ | ||||||
|   <!-- 表单弹窗:测试发送 --> |   <!-- 表单弹窗:测试发送 --> | ||||||
|   <SmsTemplateSendForm ref="sendFormRef" /> |   <SmsTemplateSendForm ref="sendFormRef" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="SmsTemplate"> | <script setup lang="ts" name="SystemSmsTemplate"> | ||||||
| import { DICT_TYPE, getIntDictOptions, getDictLabel } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions, getDictLabel } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as SmsTemplateApi from '@/api/system/sms/smsTemplate' | import * as SmsTemplateApi from '@/api/system/sms/smsTemplate' | ||||||
|  |  | ||||||
|  | @ -171,14 +171,13 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <TenantForm ref="formRef" @success="getList" /> |   <TenantForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="Tenant"> | <script setup lang="ts" name="SystemTenant"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import download from '@/utils/download' | import download from '@/utils/download' | ||||||
| import * as TenantApi from '@/api/system/tenant' | import * as TenantApi from '@/api/system/tenant' | ||||||
| import * as TenantPackageApi from '@/api/system/tenantPackage' | import * as TenantPackageApi from '@/api/system/tenantPackage' | ||||||
| import TenantForm from './TenantForm.vue' | import TenantForm from './TenantForm.vue' | ||||||
| 
 |  | ||||||
| const message = useMessage() // 消息弹窗 | const message = useMessage() // 消息弹窗 | ||||||
| const { t } = useI18n() // 国际化 | const { t } = useI18n() // 国际化 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -106,7 +106,7 @@ | ||||||
|   <!-- 表单弹窗:添加/修改 --> |   <!-- 表单弹窗:添加/修改 --> | ||||||
|   <TenantPackageForm ref="formRef" @success="getList" /> |   <TenantPackageForm ref="formRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="TenantPackage"> | <script setup lang="ts" name="SystemTenantPackage"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
| import * as TenantPackageApi from '@/api/system/tenantPackage' | import * as TenantPackageApi from '@/api/system/tenantPackage' | ||||||
|  |  | ||||||
|  | @ -198,7 +198,7 @@ | ||||||
|   <!-- 分配角色 --> |   <!-- 分配角色 --> | ||||||
|   <UserAssignRoleForm ref="assignRoleFormRef" @success="getList" /> |   <UserAssignRoleForm ref="assignRoleFormRef" @success="getList" /> | ||||||
| </template> | </template> | ||||||
| <script setup lang="ts" name="User"> | <script setup lang="ts" name="SystemUser"> | ||||||
| import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' | ||||||
| import { checkPermi } from '@/utils/permission' | import { checkPermi } from '@/utils/permission' | ||||||
| import { dateFormatter } from '@/utils/formatTime' | import { dateFormatter } from '@/utils/formatTime' | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 YunaiV
						YunaiV