Explorar el Código

feat:应用使用记录增加详情弹框

Zhenghanjv hace 2 días
padre
commit
39720b7bf6

+ 143 - 0
admin.ui.plus-master/src/api/appOperationRecord/dto.ts

@@ -1,3 +1,5 @@
+import { number } from "echarts"
+
 /** 查询信息输出 */
 export interface ResultOutputPageOutputRecordOutput {
    /** 是否成功标记 */
@@ -35,6 +37,147 @@ export interface RecordOutput {
    createTime?: Date
 
 }
+/** 冷启动记录数据 */
+export interface ColdStartInfo {
+   /** 机型码 */
+   modelCode:string
+   /** 交叉出油油枪数据 */
+   nonStandeNozzleList:NonStandeNozzleInfo[]
+   /** 显示屏类型 */
+   displayType:string
+   /** 显示屏数量 */
+   displayCountList:DisplayCountInfo[]
+   /** 油机网络配置 */
+   machineIP:MachineNetWorkInfo
+   /** 多媒体屏配置 */
+   screenConfig:screenInfo
+   /** 打印机配置 */
+   printerConfig:PrinterInfo
+   /** 使用协议 */
+   agree:string
+   /** IFSF 音频设置 */
+   ifsfVolumeConfig:IFSFVolumeInfo
+}
+export interface NonStandeNozzleInfo {
+   /** 物理枪号 */
+   nozzleNum:number
+   /** 加油点 */
+   fpoint:number
+   /** 油品号 */
+   oilId:number
+   /** 马达号 */
+   motolNum:number
+}
+export interface DisplayCountInfo {
+   /** 加油点 */
+   fpoint:number
+   /** 显示屏数量 */
+   displayNum:number
+}
+export interface MachineNetWorkInfo {
+   /** network ip */
+   networkIP:string
+   /** network 网关 */
+   networkGateway:string
+   /** network 子网掩码 */
+   networkMask:string
+   /** IFSF network ip */
+   ifsfIP:string
+   /** IFSF network 网关 */
+   ifsfGateway:string
+   /** IFSF network 子网掩码 */
+   ifsfMask:string
+}
+export interface screenInfo {
+   /** 是否打开 VGAA */
+   isOpenVGAA:boolean
+   /** VGAA ip */
+   ipVGAA:string
+   /** VGAA 端口 */
+   portVGAA:number
+   /** VGAA 关联加油点 */
+   fpointVGAA:number[]
+
+   /** 是否打开 VGAB */
+   isOpenVGAB:boolean
+   /** VGAB ip */
+   ipVGAB:string
+   /** VGAB 端口 */
+   portVGAB:number
+   /** VGAB 关联加油点 */
+   fpointVGAB:number[]
+}
+export interface PrinterInfo {
+   /** 加油点 */
+   fpoint:number
+   /** 打印机地址 */
+   printerAdress:string
+   /** 打印机模式 */
+   printerMode:string
+}
+export interface IFSFVolumeInfo {
+   /** 是否打开 */
+   isOpen:boolean
+   /** 声音类型 */
+   type:string
+   /** 白天开始时间 */
+   dayTime:number
+   /** 晚上开始时间 */
+   nightTime:number
+   /** 白天声音 */
+   dayVolume:number
+   /** 晚上声音 */
+   nightVolume:number
+}
+
+/** 数据备份记录 */
+export interface BackResultInfo {
+   /** 备份结果 */
+   backResult:string
+}
+/** 数据还原记录 */
+export interface BackRestoreInfo {
+   /** 还原结果 */
+   restoreResult:string
+   /** 还原数据包 */
+   backInfo:string
+}
+
+/** 油机升级记录 */
+export interface UpgradeInfo {
+   /** 原版本 */
+   oldVersion:string
+   /** 升级包 */
+   newVersion:string
+   /** 升级结果 */
+   upgradeResult:string
+}
+
+/** 计控参数设置记录 */
+export interface LegalParamsInfo {
+   /** 设置的脉冲隐藏参数 */
+   pulseHideParams:number
+   /** 设置结果 */
+   result:string
+}
+
+/** 计控交易日志拷贝记录 */
+export interface LegalTransLogCopyInfo {
+   /** 拷贝油枪的加油点 */
+   fpoint:number
+   /** 拷贝油枪的内部枪号 */
+   interNum:number
+   /** 拷贝油枪的外部枪号 */
+   nozzle:number
+   /** 开始拷贝交易 */
+   startTrans:number
+   /** 结束拷贝交易 */
+   endTrans:number
+   /** 拷贝结果 */
+   result:string
+}
+
+
 export interface pageInput {
    /**当前页数 */
    CurrentPage: number | any

+ 280 - 49
admin.ui.plus-master/src/views/example/application/appOperationRecord/components/record_detail.vue

@@ -9,35 +9,189 @@
       :close-on-press-escape="false"
       width="600px"
     >
-      <el-form :model="form" ref="formRef" size="default" label-width="80px">
+      <el-card header="基本信息" class="mt8" shadow="hover">
         <el-row :gutter="35">
-          <!-- <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
-            <el-form-item label="应用ID" prop="appid" :rules="[{ required: true, message: '请输入应用ID', trigger: ['blur', 'change'] }]">
-              <el-input v-model="form.appid" clearable />
-            </el-form-item>
-          </el-col> -->
           <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
-            <el-form-item label="应用名称" prop="name" :rules="[{ required: true, message: '请输入应用名称', trigger: ['blur', 'change'] }]">
-              <el-input v-model="form.name" clearable />
-            </el-form-item>
+            <span>操作类型:{{ form.opreationType }}</span>
           </el-col>
           <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
-            <el-form-item label="应用编码" prop="code">
-              <el-input v-model="form.code" clearable />
-            </el-form-item>
+            <span>油机唯一标识:{{ form.machineId }}</span>
           </el-col>
           <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
-            <el-form-item label="最小版本" prop="code">
-              <el-input v-model="form.minVersion" clearable />
-            </el-form-item>
+            <span>账户:{{ form.account }}</span>
+          </el-col>
+          <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+            <span>sn:{{ form.sn }}</span>
           </el-col>
           <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
-            <el-form-item label="排序">
-              <el-input-number v-model="form.sort" />
-            </el-form-item>
+            <span>操作时间:{{ form.createTime }}</span>
           </el-col>
         </el-row>
-      </el-form>
+      </el-card>
+      
+      <el-card v-if="form.opreationType == '冷启动'" header="机型" class="mt8" style="width: 100%;" shadow="hover" >
+        <el-col v-if="state.coldStartInfo.modelCode!= undefined && state.coldStartInfo.modelCode.length > 0" :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>机型码:{{ state.coldStartInfo.modelCode }}</span>
+        </el-col>
+        <el-col v-if="state.coldStartInfo.nonStandeNozzleList != undefined && state.coldStartInfo.nonStandeNozzleList.length > 0" :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>交叉出油配置</span>
+          <el-table :data="state.coldStartInfo.nonStandeNozzleList" stripe style="width: 100%;">
+            <el-table-column v-for="colume in state.nonstandNozzledynamicColumns" :key="colume" :prop="colume.prop" :label="colume.label" />
+          </el-table>
+        </el-col>
+      </el-card>
+
+      <el-card v-if="form.opreationType == '冷启动'" header="显示屏配置" class="mt8" style="width: 100%;" shadow="hover">
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" style="margin-bottom: 3%;">
+          <span>显示屏类型:{{ state.coldStartInfo.displayType }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <el-table :data="state.coldStartInfo.displayCountList" stripe style="width: 100%;">
+            <el-table-column v-for="colume in state.displayCountdynamicColumns" :key="colume" :prop="colume.prop" :label="colume.label" />
+          </el-table>
+        </el-col>
+      </el-card>
+      
+      <el-card v-if="form.opreationType == '冷启动'" header="油机ip" class="mt8" style="width: 100%;" shadow="hover">
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>network ip:{{ state.coldStartInfo.machineIP.networkIP }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>network 网关:{{ state.coldStartInfo.machineIP.networkGateway }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>network 子网掩码:{{ state.coldStartInfo.machineIP.networkMask }}</span>
+        </el-col>
+        <hr style="margin: 3% 0%;height: 1px;" />
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>IFSF network ip:{{ state.coldStartInfo.machineIP.ifsfIP }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>IFSF network 网关:{{ state.coldStartInfo.machineIP.ifsfGateway }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>IFSF network 子网掩码:{{ state.coldStartInfo.machineIP.ifsfMask }}</span>
+        </el-col>
+      </el-card>
+
+      <el-card v-if="form.opreationType == '冷启动'" header="多媒体大屏配置" class="mt8" style="width: 100%;" shadow="hover">
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>是否连接A面大屏:{{ state.coldStartInfo.screenConfig.isOpenVGAA == true ? "打开" : "关闭" }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>A面大屏IP:{{ state.coldStartInfo.screenConfig.ipVGAA }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>A面大屏端口:{{ state.coldStartInfo.screenConfig.portVGAA }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>A面大屏关联加油点:{{ state.coldStartInfo.screenConfig.fpointVGAA.join(',') }}</span>
+        </el-col>
+        <hr style="margin: 3% 0%;height: 1px;" />
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>是否连接B面大屏:{{ state.coldStartInfo.screenConfig.isOpenVGAB == true ? "打开" : "关闭" }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>B面大屏IP:{{ state.coldStartInfo.screenConfig.ipVGAB }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>B面大屏端口:{{ state.coldStartInfo.screenConfig.portVGAB }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>B面大屏关联加油点:{{ state.coldStartInfo.screenConfig.fpointVGAB.join(',') }}</span>
+        </el-col>
+      </el-card>
+
+      <el-card v-if="form.opreationType == '冷启动'" header="打印机配置" class="mt8" style="width: 100%;" shadow="hover">
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <el-table :data="state.coldStartInfo.printerConfig" stripe style="width: 100%;">
+            <el-table-column v-for="colume in state.printConfigdynamicColumns" :key="colume" :prop="colume.prop" :label="colume.label" />
+          </el-table>
+        </el-col>
+      </el-card>
+
+      <el-card v-if="form.opreationType == '冷启动'" header="协议配置" class="mt8" style="width: 100%;" shadow="hover">
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>配置协议:{{ state.coldStartInfo.agree }}</span>
+        </el-col>
+      </el-card>
+
+      <el-card v-if="form.opreationType == '冷启动'" header="IFSF 音频配置" class="mt8" style="width: 100%;" shadow="hover">
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>是否开启IFSF音频:{{ state.coldStartInfo.ifsfVolumeConfig.isOpen == true ? "打开" : "关闭" }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>IFSF 语音播报类型:{{ state.coldStartInfo.ifsfVolumeConfig.type }}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>IFSF 白天开始时间:{{ state.coldStartInfo.ifsfVolumeConfig.dayTime }} 点</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>IFSF 晚上开始时间:{{ state.coldStartInfo.ifsfVolumeConfig.nightTime }} 点</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>IFSF 白天音量:{{ state.coldStartInfo.ifsfVolumeConfig.dayVolume }} 级</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>IFSF 晚上音量:{{ state.coldStartInfo.ifsfVolumeConfig.nightTime }} 级</span>
+        </el-col>
+      </el-card>
+        
+      <el-card v-if="form.opreationType == '数据备份'" header="数据备份" class="mt8" shadow="hover" >
+        <span>备份结果:{{ state.dataBackInfo.backResult}}</span>
+      </el-card>
+
+      <el-card v-if="form.opreationType == '数据还原'" header="数据还原" class="mt8" shadow="hover" >
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>还原包:{{ state.dataRestoreInfo.backInfo}}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>还原结果:{{ state.dataRestoreInfo.restoreResult}}</span>
+        </el-col>
+      </el-card>
+
+      <el-card v-if="form.opreationType == '油机升级'" header="油机升级" class="mt8" shadow="hover" >
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>旧版本:{{ state.machineUpgradeInfo.oldVersion}}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>升级包:{{ state.machineUpgradeInfo.newVersion}}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>升级结果:{{ state.machineUpgradeInfo.upgradeResult}}</span>
+        </el-col>
+      </el-card>
+
+      <el-card v-if="form.opreationType == '计控参数'" header="计控参数" class="mt8" shadow="hover" >
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>设置的脉冲隐藏参数:{{ state.legalParamsInfo.pulseHideParams}}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>设置结果:{{ state.legalParamsInfo.result}}</span>
+        </el-col>
+      </el-card>
+
+      <el-card v-if="form.opreationType == '计控交易日志'" header="计控交易日志" class="mt8" shadow="hover" >
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>拷贝油枪的加油点:{{ state.legalLogCopyInfo.fpoint}}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>拷贝油枪的内部枪号:{{ state.legalLogCopyInfo.interNum}}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>拷贝油枪的外部枪号:{{ state.legalLogCopyInfo.nozzle}}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>开始拷贝日志:{{ state.legalLogCopyInfo.startTrans}}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>结束拷贝日志:{{ state.legalLogCopyInfo.endTrans}}</span>
+        </el-col>
+        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
+          <span>拷贝结果:{{ state.legalLogCopyInfo.result}}</span>
+        </el-col>
+      </el-card>
+
       <template #footer>
         <span class="dialog-footer">
           <el-button @click="onCancel" size="default">取 消</el-button>
@@ -53,6 +207,9 @@ import { reactive, toRefs, ref, PropType } from 'vue'
 import { OauthApplyDto,OauthApply } from '/@/api/admin/data-contracts'
 import { PermissionApi } from '/@/api/admin/Permission'
 import eventBus from '/@/utils/mitt'
+import { BackRestoreInfo, BackResultInfo, ColdStartInfo, LegalParamsInfo, LegalTransLogCopyInfo, RecordOutput, UpgradeInfo } from '/@/api/appOperationRecord/dto'
+import { number } from 'echarts'
+import { it } from 'node:test'
 
 defineProps({
   title: {
@@ -69,14 +226,37 @@ const formRef = ref()
 const state = reactive({
   showDialog: false,
   sureLoading: false,
-  form: {
-    id:0,
-    appid: '',
-    name: '',
-    code: '',
-    sort: '',
-    minVersion:'',
-  } as OauthApplyDto,
+  /** 操作记录数据 */
+  form: {} as RecordOutput,
+  /**交叉出油动态表头 */
+  nonstandNozzledynamicColumns: [
+    { prop: 'nozzleNum', label: '物理枪号' },
+    { prop: 'fpoint', label: '加油点' },
+    { prop: 'oilId', label: '油品号' },
+    { prop: 'motolNum', label: '马达号' }],
+
+  /**显示屏数量动态表头 */
+  displayCountdynamicColumns: [
+    { prop: 'fpoint', label: '加油点' },
+    { prop: 'displayNum', label: '显示屏数量' }],
+
+  /**打印机配置动态表头 */
+  printConfigdynamicColumns: [
+    { prop: 'fpoint', label: '加油点' },
+    { prop: 'printerAdress', label: '打印机地址' },
+    { prop: 'printerMode', label: '打印机模式' }],  
+  /** 冷启动记录 */
+  coldStartInfo:{} as ColdStartInfo,
+  /** 数据备份记录 */
+  dataBackInfo:{} as BackResultInfo,
+  /** 数据还原记录 */
+  dataRestoreInfo:{} as BackRestoreInfo,
+  /** 油机升级记录 */
+  machineUpgradeInfo:{} as UpgradeInfo,
+  /** 计控参数设置记录 */
+  legalParamsInfo:{} as LegalParamsInfo,
+  /** 计控交易日志拷贝记录 */
+  legalLogCopyInfo:{} as LegalTransLogCopyInfo
 })
 
 const { form } = toRefs(state)
@@ -93,9 +273,81 @@ const open = async (row: any = {}) => {
   // } else {
   //   state.form = {} as OauthApplyDto
   // }
+  
   state.form=row
+
+  getRecord()
   state.showDialog = true
 }
+
+/** 将操作记录json转对象 */
+const getRecord = () => {
+  clearRecord()
+
+  if(form.value.recodeJson) {
+    if(state.form.opreationType == "冷启动") {
+      state.coldStartInfo = JSON.parse(form.value.recodeJson)
+    }
+    if(state.form.opreationType == "数据备份"){
+      state.dataBackInfo = JSON.parse(form.value.recodeJson)
+    }
+    if(state.form.opreationType == "数据还原"){
+      state.dataRestoreInfo = JSON.parse(form.value.recodeJson)
+    }
+    if(state.form.opreationType == "油机升级"){
+      state.machineUpgradeInfo = JSON.parse(form.value.recodeJson)
+    }
+    if(state.form.opreationType == "计控参数"){
+      state.legalParamsInfo = JSON.parse(form.value.recodeJson)
+    }
+    if(state.form.opreationType == "计控交易日志"){
+      state.legalLogCopyInfo = JSON.parse(form.value.recodeJson)
+    }
+  }
+}
+
+/** 清空操作记录对象 */
+const clearRecord = () => {
+  /** 冷启动记录 */
+  state.coldStartInfo = {} as ColdStartInfo
+  /** 数据备份记录 */
+  state.dataBackInfo = {} as BackResultInfo,
+  /** 数据还原记录 */
+  state.dataRestoreInfo = {} as BackRestoreInfo,
+  /** 油机升级记录 */
+  state.machineUpgradeInfo = {} as UpgradeInfo,
+  /** 计控参数设置记录 */
+  state.legalParamsInfo = {} as LegalParamsInfo,
+  /** 计控交易日志拷贝记录 */
+  state.legalLogCopyInfo = {} as LegalTransLogCopyInfo
+}
+
+/** 转多媒体屏设置 */
+const trunScreenConfig = () => {
+  var screenFpointsA = ""
+    info.fpointVGAA.array.forEach((element:number) => {
+      screenFpointsA += element + ","
+    });
+    screenFpointsA.slice(0,screenFpointsA.length - 1)
+
+    var screenFpointsB = ""
+    info.fpointVGAB.array.forEach((element:number) => {
+      screenFpointsB += element + ","
+    });
+    screenFpointsB.slice(0,screenFpointsB.length - 1)
+
+    const screenConfig = {
+       isOpenVGAA: info.isOpenVGAA == true ? "打开" : "关闭",
+       ipVGAA: info.ipVGAA,
+       portVGAA: info.portVGAA,
+       fpointVGAA: screenFpointsA,
+       isOpenVGAB: info.isOpenVGAB == true ? "打开" : "关闭",
+       ipVGAB: info.ipVGAB,
+       portVGAB: info.portVGAB,
+       fpointVGAB: screenFpointsB
+    }
+}
+
 // 取消
 const onCancel = () => {
   state.showDialog = false
@@ -103,28 +355,7 @@ const onCancel = () => {
 
 // 确定
 const onSure = () => {
-  formRef.value.validate(async (valid: boolean) => {
-    if (!valid) return
-
-    state.sureLoading = true
-    let res = {} as any
-    if (state.form.id != undefined && state.form.id > 0) {
-      res = await new PermissionApi().addApply(state.form, { showSuccessMessage: true }).catch(() => {
-        state.sureLoading = false
-      })
-    } else {
-      res = await new PermissionApi().addApply(state.form, { showSuccessMessage: true }).catch(() => {
-        state.sureLoading = false
-      })
-    }
-
-    state.sureLoading = false
-
-    if (res?.success) {
-      eventBus.emit('refreshOrg')
-      state.showDialog = false
-    }
-  })
+  state.showDialog = false
 }
 
 defineExpose({

+ 11 - 3
admin.ui.plus-master/src/views/example/application/appOperationRecord/index.vue

@@ -70,10 +70,12 @@
         </el-card>
       </el-col>
     </el-row>
+
+    <RecordDetailDialog ref="recordDetailRef"></RecordDetailDialog>
   </div>
 </template>
 <script setup lang="ts">
-import { onBeforeMount, onMounted, reactive, ref, watch } from "vue";
+import { defineAsyncComponent, onBeforeMount, onMounted, reactive, ref, watch } from "vue";
 import eventBus from "/@/utils/mitt";
 import { Api } from "/@/api/appOperationRecord/api";
 import { useDynamicPageSize } from "/@/composables/useDynamicPageSize";
@@ -86,6 +88,10 @@ import router from "/@/router";
 import { PermissionApi } from "/@/api/admin/Permission";
 import { ElMessage } from "element-plus";
 
+/**引入组件*/
+const RecordDetailDialog = defineAsyncComponent(() => import('./components/record_detail.vue'))
+const recordDetailRef = ref()
+
 /**数据对象*/
 const state = reactive({
   /**加载显示 */
@@ -113,7 +119,7 @@ const state = reactive({
     { prop: 'sn', label: '设备 sn' },
     { prop: 'account', label: '登录账户' },
     { prop: 'opreationType', label: '使用类型' },
-    { prop: 'recodeJson', label: '使用记录' },
+    // { prop: 'recodeJson', label: '使用记录' },
     { prop: 'createTime', label: '操作记录时间' },],
   /**分页标识 */
   pageInput: {
@@ -185,7 +191,9 @@ const init = async () => {
 /**重置 */
 const onReset = () => { }
 /**详情 */
-const onDataDetail = (row) => { }
+const onDataDetail = (row) => {
+  recordDetailRef.value.open(row)
+}
 
 /**
 * 页条变化