Procházet zdrojové kódy

解决代码生成模块无法复制

gexinzhineng/gxzn27 před 2 roky
rodič
revize
124213bb4c

+ 19 - 10
src/views/infra/codegen/components/Preview.vue

@@ -30,7 +30,7 @@
   </XModal>
 </template>
 <script setup lang="ts">
-import { useClipboard } from '@vueuse/core'
+// import { useClipboard } from '@vueuse/core'
 import { handleTree2 } from '@/utils/tree'
 import { previewCodegenApi } from '@/api/infra/codegen'
 import { CodegenTableVO, CodegenPreviewVO } from '@/api/infra/codegen/types'
@@ -129,15 +129,24 @@ const handleFiles = (datas: CodegenPreviewVO[]) => {
 }
 /** 复制 **/
 const copy = async (text: string) => {
-  const { copy, copied, isSupported } = useClipboard({ source: text })
-  if (!isSupported.value) {
-    message.error(t('common.copyError'))
-  } else {
-    await copy()
-    if (unref(copied.value)) {
-      message.success(t('common.copySuccess'))
-    }
-  }
+  let url = text
+  let oInput = document.createElement('textarea')
+  oInput.value = url
+  document.body.appendChild(oInput)
+  oInput.select() // 选择对象;
+  // console.log(oInput.value)
+  document.execCommand('Copy') // 执行浏览器复制命令
+  message.success('复制成功')
+  oInput.remove()
+  // const { copy, copied, isSupported } = useClipboard({ source: text })
+  // if (!isSupported.value) {
+  //   message.error(t('common.copyError'))
+  // } else {
+  //   await copy()
+  //   if (unref(copied.value)) {
+  //     message.success(t('common.copySuccess'))
+  //   }
+  // }
 }
 defineExpose({
   show

+ 13 - 0
src/views/infra/job/JobLog.vue

@@ -49,16 +49,29 @@
 </template>
 <script setup lang="ts" name="JobLog">
 import dayjs from 'dayjs'
+
 import * as JobLogApi from '@/api/infra/jobLog'
 import { allSchemas } from './jobLog.data'
+import { useRoute } from 'vue-router'
 
 const { t } = useI18n() // 国际化
+
+const { query } = useRoute()
+
+let jobId = ''
+jobId = query ? query.id : ''
+if (jobId) {
+  allSchemas.searchSchema[0].itemRender.defaultValue = jobId
+} else {
+  allSchemas.searchSchema[0].itemRender.defaultValue = ''
+}
 // 列表相关的变量
 const [registerTable, { exportList }] = useXTable({
   allSchemas: allSchemas,
   getListApi: JobLogApi.getJobLogPageApi,
   exportListApi: JobLogApi.exportJobLogApi
 })
+
 // ========== CRUD 相关 ==========
 const dialogVisible = ref(false) // 是否显示弹出层
 const dialogTitle = ref('') // 弹出层标题

+ 0 - 1
src/views/infra/job/job.data.ts

@@ -1,7 +1,6 @@
 import type { VxeCrudSchema } from '@/hooks/web/useVxeCrudSchemas'
 const { t } = useI18n() // 国际化
 // 表单校验
-
 export const rules = reactive({
   name: [required],
   handlerName: [required],

+ 8 - 2
src/views/infra/job/jobLog.data.ts

@@ -1,6 +1,5 @@
 import type { VxeCrudSchema } from '@/hooks/web/useVxeCrudSchemas'
 // 国际化
-
 const { t } = useI18n()
 // CrudSchema
 const crudSchemas = reactive<VxeCrudSchema>({
@@ -12,7 +11,14 @@ const crudSchemas = reactive<VxeCrudSchema>({
     {
       title: '任务编号',
       field: 'jobId',
-      isSearch: true
+      search: {
+        show: true,
+        itemRender: {
+          name: 'input',
+          defaultValue: ''
+        }
+      },
+      isForm: true
     },
     {
       title: '处理器的名字',