فهرست منبع

工单履历更改

qinhb 1 سال پیش
والد
کامیت
2e9a901427
2فایلهای تغییر یافته به همراه123 افزوده شده و 4 حذف شده
  1. 106 0
      src/views/pro/traceability/components/mediaCom.vue
  2. 17 4
      src/views/pro/traceability/index.vue

+ 106 - 0
src/views/pro/traceability/components/mediaCom.vue

@@ -0,0 +1,106 @@
+<!-- 报故记录 -->
+<template>
+  <div class="mainContentBox">
+    <avue-crud
+      ref="crudRef2"
+      v-model:search="search"
+      v-model="form"
+      :data="data"
+      :option="option"
+      v-model:page="page"
+    >
+      <template #menu="{row,index,type}">
+        <el-button @click="openDialog(row)"
+                   icon="el-icon-link"
+                   text
+                   type="primary"
+        >查看</el-button>
+      </template>
+    </avue-crud>
+    <el-dialog
+        v-model="dialog.visible"
+        :title="dialog.title"
+        width="60%"
+        @close="dialog.visible = false"
+    ><el-image :src="url" fit="none" />
+    </el-dialog>
+  </div>
+</template>
+<script setup>
+import { ref, getCurrentInstance } from "vue";
+import { useCrud } from "@/hooks/userCrud";
+import dictDataUtil from "@/common/configs/dictDataUtil";
+import ButtonPermKeys from "@/common/configs/buttonPermission";
+import { useCommonStoreHook, useDictionaryStoreHook } from "@/store";
+
+// 数据字典相关
+const { dicts } = useDictionaryStoreHook();
+const dialog = reactive({
+  title: "图片预览",
+  visible: false,
+});
+const url = ref(null)
+// 传入一个url,后面不带/
+const {
+  form,
+  data,
+  option,
+  search,
+  page,
+  toDeleteIds,
+  Methords,
+  Utils,
+  commonConfig,
+} = useCrud({
+  src: "/api/v1/process/media",
+});
+const { dataList, createRow, updateRow, deleteRow, searchChange, resetChange } =
+  Methords; //增删改查
+const { selectionChange, multipleDelete } = Methords; //选中和批量删除事件
+const { checkBtnPerm, downloadTemplate, exportData } = Utils; //按钮权限等工具
+
+const crudRef = ref(null); //crudRef.value 获取avue-crud对象
+const openDialog = (row) =>{
+  dialog.visible = true
+  url.value =  import.meta.env.VITE_APP_UPLOAD_URL + row.filePath
+}
+const refreshTra = (row) => {
+  commonConfig.value.params = { seqNo: row.seqNo };
+  dataList();
+};
+defineExpose({ refreshTra });
+onMounted(() => {});
+
+option.value = Object.assign(option.value, {
+  selection: false,
+  border: true,
+  index: false,
+  expandLevel: 3,
+  headerAlign: "center",
+  align: "center",
+  labelWidth: 100,
+  addBtn: false,
+  menu: true,
+  editBtn: false,
+  delBtn: false,
+  viewBtn:false,
+  header: false,
+  column: [
+    {
+      label: "上传工序",
+      prop: "operationName",
+      search: false,
+    },
+    {
+      label: "上传人员",
+      prop: "creator",
+      search: false,
+    },
+    {
+      label: "上传时间",
+      prop: "created",
+      search: false,
+    },
+  ],
+});
+</script>

+ 17 - 4
src/views/pro/traceability/index.vue

@@ -121,10 +121,19 @@
               </template>
               <FaultCom ref="faultComRef" />
             </el-tab-pane>
-            <el-tab-pane name="bugComRef" label="缺陷项">缺陷项</el-tab-pane>
-            <el-tab-pane name="imgComRef" label="图片采集"
-              >图片采集</el-tab-pane
-            >
+<!--            <el-tab-pane name="bugComRef" label="缺陷项">缺陷项</el-tab-pane>-->
+            <el-tab-pane name="mediaComRef" label="图片采集"
+              ><template #label>
+                <span
+                >图片采集
+                  <el-badge
+                      :value="tabCount.medias"
+                      class="item"
+                      type="primary"
+                  />
+                </span>
+            </template>
+            <media-com ref="mediaComRef"/></el-tab-pane>
           </el-tabs>
         </el-main>
       </el-container>
@@ -144,6 +153,7 @@ import RecordCom from "@/views/pro/traceability/components/recordCom.vue";
 import CheckCom from "@/views/pro/traceability/components/checkCom.vue";
 import EquitCom from "@/views/pro/traceability/components/equitCom.vue";
 import FaultCom from "@/views/pro/traceability/components/faultCom.vue";
+import MediaCom from "./components/mediaCom.vue";
 
 // 传入一个url,后面不带/
 const { form, data, option, search, page, toDeleteIds, Methords, Utils } =
@@ -163,6 +173,7 @@ const recordComRef = ref(null);
 const checkComRef = ref(null);
 const equitComRef = ref(null);
 const faultComRef = ref(null);
+const mediaComRef = ref(null);
 let defaultTabName = ref("traceabilityComRef");
 //tab页组件
 const tabNameComRef = new Map([
@@ -172,6 +183,7 @@ const tabNameComRef = new Map([
   ["checkComRef", checkComRef],
   ["equitComRef", equitComRef],
   ["faultComRef", faultComRef],
+  ["mediaComRef", mediaComRef],
 ]);
 let temRow = ref({});
 const tabsEvent = (pane, ev) => {
@@ -216,6 +228,7 @@ let tabCount = reactive({
   check: "",
   equit: "",
   fault: "",
+  medias: "",
 });
 
 const handleCellClick = (row, column, event) => {