Forráskód Böngészése

实现邮箱sdk授权页面部分Dto以及部分api开发,实现了编辑功能

wyoujia 1 éve
szülő
commit
081970a09d

+ 130 - 0
admin.ui.plus-master/src/api/admin/deviceAuthorization/oilSdkAuthor.ts

@@ -0,0 +1,130 @@
+import {HttpClient} from "/@/api/admin/http-client";
+
+export class OilSdkAuthor<SecurityDataType = unknown> extends HttpClient<SecurityDataType>{
+
+  timer = 500
+
+ /**
+ * No description
+ *
+ * @tags
+ * @name
+ * @summary 分页查询
+ * @request GET:
+ * @secure
+ */
+ getPageData = () =>{
+   return new Promise((resolve) => {
+     setTimeout(() => {
+       resolve({
+         tableModel: [
+           {
+             /**日期 */
+             date: "2020-01-21",
+             /**油站名称 */
+             serviceStationName: "大观园站",
+             /**项目名称 */
+             entryName: "安徽中石化可视化项目",
+             /**设备SN */
+             SN: "123123422123",
+             /**有效时间 */
+             effectiveTime: "2123-08-24",
+             /**授权码 */
+             authorization: "gdtxllls1231231",
+             /**备注 */
+             remark: "授权备注"
+           },
+           {
+             /**日期 */
+             date: "2020-01-21",
+             /**油站名称 */
+             serviceStationName: "yidian",
+             /**项目名称 */
+             entryName: "Android",
+             /**设备SN */
+             SN: "终端商店",
+             /**有效时间 */
+             effectiveTime: "2123-08-24",
+             /**授权码 */
+             authorization: "gatxllis",
+             /**备注 */
+             remark: "授权备注"
+           },
+           {
+             /**日期 */
+             date: "2020-01-21",
+             /**油站名称 */
+             serviceStationName: "大观gatxllis园站",
+             /**项目名称 */
+             entryName: "gatxllis",
+             /**设备SN */
+             SN: "123123422123",
+             /**有效时间 */
+             effectiveTime: "212gatxllis3-08-24",
+             /**授权码 */
+             authorization: "gatxllis",
+             /**备注 */
+             remark: "gatxllis"
+           },
+           {
+             /**日期 */
+             date: "2020-01-21",
+             /**油站名称 */
+             serviceStationName: "大观园站",
+             /**项目名称 */
+             entryName: "安徽中石化可视化项目",
+             /**设备SN */
+             SN: "123123422123",
+             /**有效时间 */
+             effectiveTime: "2123-08-24",
+             /**授权码 */
+             authorization: "gdtxllls1231231",
+             /**备注 */
+             remark: "授权备注"
+           },
+           {
+             /**日期 */
+             date: "2020-01-21",
+             /**油站名称 */
+             serviceStationName: "yidian",
+             /**项目名称 */
+             entryName: "Android",
+             /**设备SN */
+             SN: "终端商店",
+             /**有效时间 */
+             effectiveTime: "2123-08-24",
+             /**授权码 */
+             authorization: "gatxllis",
+             /**备注 */
+             remark: "授权备注"
+           },
+           {
+             /**日期 */
+             date: "2020-01-21",
+             /**油站名称 */
+             serviceStationName: "大观gatxllis园站",
+             /**项目名称 */
+             entryName: "gatxllis",
+             /**设备SN */
+             SN: "123123422123",
+             /**有效时间 */
+             effectiveTime: "212gatxllis3-08-24",
+             /**授权码 */
+             authorization: "gatxllis",
+             /**备注 */
+             remark: "gatxllis"
+           },
+
+         ],
+         /**分页标识 */
+         pageInput:{
+           currentPage: 1,
+           pageSize: 20,
+         },
+         /**分页总数 */
+         total: 1000,
+       })
+     },this.timer)
+   })
+ }
+}

+ 46 - 1
admin.ui.plus-master/src/api/admin/deviceAuthorization/oilSdkAuthorDto.ts

@@ -3,6 +3,42 @@
  *  数据对象的Dto
  * */
 
+import {pageInput} from "/@/api/admin/shareDto/shareDto";
+
+/**
+ * @name: 数据对象接口
+ * @description: 设备授权管理 - 油机SDK授权页面文件筛选条件
+ * @author wyoujia
+ * @date 2023-55-29 11:55:55
+*/
+
+export interface oilSdkFilterModel {
+  /**油站名称 */
+  serviceStationName: string | null,
+  /**项目名称 */
+  entryName: string | null,
+  /**设备SN */
+  SN: string | null,
+  /**选择的时间 */
+  selectDate: string | null,
+}
+
+export interface oilSdkTableModel {
+  /**日期 */
+  date: string | null,
+  /**油站名称 */
+  serviceStationName: string | null,
+  /**项目名称 */
+  entryName: string | null,
+  /**设备SN */
+  SN: string | null,
+  /**有效时间 */
+  effectiveTime: string | null,
+  /**授权码 */
+  authorization: string | null,
+  /**备注 */
+  remark: string | null
+}
 
 /**
  * @name: 数据对象接口
@@ -11,5 +47,14 @@
  * @date 2023-12-29 11:12:08
 */
 export interface OilSdkAuthorDto {
-
+  /**加载显示 */
+  loading: boolean,
+  /**条件查询模块 */
+  filterModel: oilSdkFilterModel,
+  /**表格信息 */
+  tableModel: oilSdkTableModel [] | null,
+  /**分页标识 */
+  pageInput: pageInput,
+  /**分页总数 */
+  total: number,
 }

+ 0 - 1
admin.ui.plus-master/src/api/admin/productionManagement/ComponentDetails.ts

@@ -155,7 +155,6 @@ export class ComponentDetails<SecurityDataType = unknown> extends HttpClient<Sec
           total: 100
         })
       },this.timer)
-
     })
   }
 

+ 83 - 0
admin.ui.plus-master/src/views/admin/authorize/component/editInfo.vue

@@ -0,0 +1,83 @@
+<template>
+  <div class="admin-authorize-editInfo">
+    <el-dialog title="修改信息" v-model="state.isShowDialog" width="769px">
+      <el-form :model="state.editData" size="default" label-width="80px">
+        <el-row :gutter="35">
+          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+            <el-form-item label="日期">
+              <el-input v-model="state.editData.date" placeholder="格式:message.router.xxx" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+            <el-form-item label="油站名称">
+              <el-input v-model="state.editData.serviceStationName" placeholder="格式:message.router.xxx" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+            <el-form-item label="项目名称">
+              <el-input v-model="state.editData.entryName" placeholder="格式:message.router.xxx" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+            <el-form-item label="设备SN">
+              <el-input v-model="state.editData.SN" placeholder="格式:message.router.xxx" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+            <el-form-item label="有效时间">
+              <el-input v-model="state.editData.effectiveTime" placeholder="格式:message.router.xxx" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+            <el-form-item label="授权码">
+              <el-input v-model="state.editData.authorization" placeholder="格式:message.router.xxx" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+            <el-form-item label="备注">
+              <el-input v-model="state.editData.remark" placeholder="格式:message.router.xxx" clearable type="textarea"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+      <template #footer>
+        <span class="dialog-footer">
+          <el-button @click="onCancel" size="default">取 消</el-button>
+          <el-button type="primary" @click="onSubmit" size="default">修 改</el-button>
+        </span>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup lang="ts">
+import {reactive} from "vue";
+import {oilSdkTableModel} from "/@/api/admin/deviceAuthorization/oilSdkAuthorDto";
+
+/**数据对象 */
+const state = reactive({
+  isShowDialog: false,
+  editData:{} as oilSdkTableModel
+})
+
+const openDialog = (val) => {
+  state.editData = JSON.parse(JSON.stringify(val))
+  state.isShowDialog = true
+}
+
+const onCancel = () => {
+  state.editData = {} as oilSdkTableModel
+  state.isShowDialog = false
+}
+
+const onSubmit = () => {
+  console.log(state.editData)
+}
+
+defineExpose({
+  openDialog,
+})
+</script>
+<style scoped lang="scss">
+
+</style>

+ 106 - 61
admin.ui.plus-master/src/views/admin/authorize/fuelingsdk.vue

@@ -1,101 +1,102 @@
 <template>
-  <div class="layout-pd">
     <!--部件电子档案-->
-    <el-row>
-      <!--操作-->
-      <el-col :xs="24" >
-        <el-card class="mt8" shadow="hover" >
-          <el-form :model="sdkData.filterModel" :inline="true" @submit.stop.prevent>
-            <el-form-item class="form_item" prop="name" style="width:100%">
-              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" class="mb20">
+  <div class="layout-pd">
+    <!--操作-->
+    <el-card  shadow="hover" >
+          <el-form :model="sdkData.filterModel" size="default" label-width="100px" class="mt35 mb35">
+            <el-row :gutter="35">
+              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="4" class="mb20">
                 <el-form-item label="油站名称">
                   <el-input v-model="sdkData.filterModel.serviceStationName" placeholder="单行输入" clearable></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" class="mb20">
+              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="4" class="mb20">
                 <el-form-item label="项目名称">
                   <el-input v-model="sdkData.filterModel.entryName" placeholder="单行输入" clearable></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" class="mb20">
+              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="4" class="mb20">
                 <el-form-item label="SN">
                   <el-input v-model="sdkData.filterModel.SN" placeholder="单行输入" clearable></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" class="mb20">
+              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="4" class="mb20">
                 <el-form-item label="选择时间">
                   <el-date-picker
                     v-model="sdkData.filterModel.selectDate"
-                    type="daterange"
+                    type="datetimerange"
                     range-separator="To"
                     start-placeholder="Start date"
                     end-placeholder="End date"
-                    :size="sdkData.filterModel.sizeDate"
                   />
                 </el-form-item>
               </el-col>
-              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" class="mb20">
+              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="4" >
                 <el-form-item>
                   <el-button type="primary" icon="ele-Search" @click="onQuery"> 查询 </el-button>
                   <el-button type="primary" icon="ele-Delete" @click="onReset"> 重置 </el-button>
                 </el-form-item>
               </el-col>
-              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" class="mb20">
+              <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="4" >
                 <el-form-item>
                   <el-button type="primary" icon="ele-UploadFilled" @click="uploadFiles"> 批量导入 </el-button>
                   <el-button type="primary" icon="ele-Document" @click="exportTable"> 导出表格 </el-button>
                 </el-form-item>
               </el-col>
-            </el-form-item>
+            </el-row>
           </el-form>
         </el-card>
-      </el-col>
-      <!--表格-->
-      <el-col :xs="24" >
-        <el-card style="height: 70vh" class="my-fill mt8" shadow="hover">
-          <el-table v-loading="sdkData.loading" :data="sdkData.tableModel" row-key="id" style="width: 100%">
-            <el-table-column prop="date" label="序号"  />
-            <el-table-column prop="serviceStationName" label="部件名称"  />
-            <el-table-column prop="entryName" label="物料号"  />
-            <el-table-column prop="SN" label="生产编号"  />
-            <el-table-column prop="effectiveTime" label="CPUID"  />
-            <el-table-column prop="authorization" label="软件版本"  />
-            <el-table-column prop="remark" label="状态" width="120" />
-            <el-table-column label="操作"  fixed="right" header-align="center" align="center">
-              <template #default="{ row }">
-                <el-link
-                  class="my-el-link mr12 ml12"
-                  type="primary"
-                  icon="ele-edit"
-                  size="small"
-                  :underline="false"
-                  target="_blank"
-                >编辑</el-link>
-              </template>
-            </el-table-column>
-          </el-table>
-          <div class="my-flex my-flex-end" style="margin-top: 20px">
-            <el-pagination
-              v-model:currentPage="sdkData.pageInput.currentPage"
-              v-model:page-size="sdkData.pageInput.pageSize"
-              :total="sdkData.total"
-              :page-sizes="[10, 20, 50, 100]"
-              small
-              background
-              @size-change="onSizeChange"
-              @current-change="onCurrentChange"
-              layout="total, sizes, prev, pager, next, jumper"
-            />
-          </div>
-        </el-card>
-      </el-col>
-    </el-row>
+    <!--表格-->
+    <el-card style="height: 70vh" class="my-fill mt8" shadow="hover">
+        <el-table v-loading="sdkData.loading" :data="sdkData.tableModel" row-key="id" style="width: 100%">
+          <el-table-column prop="date" label="日期"  />
+          <el-table-column prop="serviceStationName" label="油站名称"  />
+          <el-table-column prop="entryName" label="项目名称"  />
+          <el-table-column prop="SN" label="设备SN"  />
+          <el-table-column prop="effectiveTime" label="有效时间"  />
+          <el-table-column prop="authorization" label="授权码"  />
+          <el-table-column prop="remark" label="备注"/>
+          <el-table-column label="操作"  fixed="right" header-align="center" align="center">
+            <template #default="{ row }">
+              <el-link
+                class="my-el-link mr12 ml12"
+                type="primary"
+                icon="ele-edit"
+                size="small"
+                @click="editTableData(row)"
+                :underline="false"
+                target="_blank"
+              >编辑</el-link>
+            </template>
+          </el-table-column>
+        </el-table>
+        <div class="my-flex my-flex-end" style="margin-top: 20px">
+          <el-pagination
+            v-model:currentPage="sdkData.pageInput.currentPage"
+            v-model:page-size="sdkData.pageInput.pageSize"
+            :total="sdkData.total"
+            :page-sizes="[10, 20, 50, 100]"
+            small
+            background
+            @size-change="onSizeChange"
+            @current-change="onCurrentChange"
+            layout="total, sizes, prev, pager, next, jumper"
+          />
+        </div>
+    </el-card>
+    <EditDialog ref="editDialogRef" />
   </div>
 </template>
 
-<script setup lang="ts">
-import {reactive} from "vue";
+<script setup lang="ts" name="authorize/fuelingsdk">
+import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
+import {OilSdkAuthorDto} from "/@/api/admin/deviceAuthorization/oilSdkAuthorDto";
+import {OilSdkAuthor} from "/@/api/admin/deviceAuthorization/oilSdkAuthor";
 
+/**引入组件*/
+const EditDialog = defineAsyncComponent(() => import('./component/editInfo.vue'))
+
+const editDialogRef = ref()
 /**sdk授权页面对象 */
 const sdkData = reactive({
   /**加载显示 */
@@ -110,8 +111,6 @@ const sdkData = reactive({
     SN: '',
     /**选择的时间 */
     selectDate:'',
-    /**时间长度 */
-    sizeDate: ''
   },
   /**表格信息 */
   tableModel: [],
@@ -122,6 +121,52 @@ const sdkData = reactive({
   },
   /**分页总数 */
   total: 0,
+} as OilSdkAuthorDto)
+
+/**条件查询 */
+const onQuery = () => {
+  init()
+}
+
+/**重置表单 */
+const resetForm = () => {
+  sdkData.filterModel.serviceStationName = ''
+  sdkData.filterModel.entryName = ''
+  sdkData.filterModel.SN = ''
+  sdkData.filterModel.selectDate = ''
+}
+/**重置 */
+const onReset = () => {
+  resetForm()
+  init()
+}
+
+/**初始化 */
+const init = async () => {
+  sdkData.loading = true
+  const res = await new OilSdkAuthor().getPageData()
+  console.log(res)
+  sdkData.tableModel = res?.tableModel ?? []
+  sdkData.pageInput = res?.pageInput ?? {}
+  sdkData.total = res?.total ?? 0
+  sdkData.loading = false
+}
+
+/**编辑弹窗 */
+const editTableData = (row) => {
+  editDialogRef.value.openDialog(row)
+}
+
+const onSizeChange = () => {
+  init()
+}
+
+const onCurrentChange = () =>{
+  init()
+}
+
+onMounted(() => {
+  init()
 })
 </script>