From 049dd638c4de83fd8415c258c29d9ef71fd58141 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 01 七月 2025 17:20:03 +0800
Subject: [PATCH] 1.巡检管理新建逻辑修改

---
 src/views/inspectionManagement/index.vue |  135 +++++++++++++++++++++++++++++---------------
 1 files changed, 88 insertions(+), 47 deletions(-)

diff --git a/src/views/inspectionManagement/index.vue b/src/views/inspectionManagement/index.vue
index c967f7b..4b42e60 100644
--- a/src/views/inspectionManagement/index.vue
+++ b/src/views/inspectionManagement/index.vue
@@ -1,18 +1,10 @@
 <template>
   <div class="app-container">
     <el-form :inline="true" :model="queryParams" class="search-form">
-      <el-form-item label="渚涘簲鍟嗗悕绉�">
+      <el-form-item label="鎼滅储">
         <el-input
-            v-model="queryParams.supplierName"
-            placeholder="璇疯緭鍏�"
-            clearable
-            :style="{ width: '100%' }"
-        />
-      </el-form-item>
-      <el-form-item label="鐓ょ">
-        <el-input
-            v-model="queryParams.coal"
-            placeholder="璇疯緭鍏�"
+            v-model="queryParams.searchAll"
+            placeholder="璇疯緭鍏ュ叧閿瓧"
             clearable
             :style="{ width: '100%' }"
         />
@@ -36,12 +28,20 @@
             :name="tab.name"
         />
       </el-tabs>
-      <!-- 鎿嶄綔鎸夐挳鍖� -->
-      <el-space v-if="tabName !== 'qrCodeScanRecord'">
-        <el-button type="primary" :icon="Plus" @click="handleAdd">鏂板缓</el-button>
-        <el-button type="danger" :icon="Delete" @click="handleDelete">鍒犻櫎</el-button>
-        <!-- <el-button type="info" plain :icon="Download">瀵煎嚭</el-button> -->
-      </el-space>
+      <div style="display: flex;flex-direction: row;justify-content: space-between;" v-if="tabName === 'task'">
+        <el-radio-group v-model="activeRadio" @change="radioChange">
+          <el-radio-button v-for="tab in radios"
+                           :key="tab.name"
+                           :label="tab.label"
+                           :value="tab.name"/>
+        </el-radio-group>
+        <!-- 鎿嶄綔鎸夐挳鍖� -->
+        <el-space v-if="activeRadio !== 'task'">
+          <el-button type="primary" :icon="Plus" @click="handleAdd(undefined)">鏂板缓</el-button>
+          <el-button type="danger" :icon="Delete" @click="handleDelete">鍒犻櫎</el-button>
+          <!-- <el-button type="info" plain :icon="Download">瀵煎嚭</el-button> -->
+        </el-space>
+      </div>
       <div>
         <div>
           <ETable :loading="tableLoading"
@@ -55,9 +55,9 @@
                   :operations="operationsArr"
                   @edit="handleAdd"
                   @viewFile="viewFile"
-                  v-if="tabName !== 'qrCodeScanRecord'"
+                  v-if="tabName === 'task'"
           ></ETable>
-          <el-table ref="table" :data="tableData" height="480" v-loading="tableLoading" border v-else style="width: 100%;height: calc(100vh - 27em)">
+          <el-table ref="table" :data="tableData" height="480" v-loading="tableLoading" border v-else style="width: 100%;height: calc(100vh - 25em)">
             <el-table-column label="搴忓彿" type="index" width="60" align="center" />
             <el-table-column prop="deviceName" label="璁惧鍚嶇О" :show-overflow-tooltip="true">
               <template #default="scope">
@@ -103,7 +103,12 @@
 import ETable from "@/components/Table/ETable.vue";
 import FormDia from "@/views/inspectionManagement/components/formDia.vue";
 import QrCodeDia from "@/views/inspectionManagement/components/qrCodeDia.vue";
-import {delInspectionTask, inspectionTaskList} from "@/api/inspectionManagement/index.js";
+import {
+  delInspectionTask,
+  delTimingTask,
+  inspectionTaskList,
+  timingTaskList
+} from "@/api/inspectionManagement/index.js";
 import ViewFiles from "@/views/inspectionManagement/components/viewFiles.vue";
 import {delQrCode, qrCodeList, qrCodeScanRecordList} from "@/api/inspectionUpload/index.js";
 import ViewQrCodeFiles from "@/views/inspectionManagement/components/viewQrCodeFiles.vue";
@@ -114,17 +119,22 @@
 const viewQrCodeFiles = ref()
 // 鏌ヨ鍙傛暟
 const queryParams = reactive({
-  supplierName: "",
-  coal: "",
+  searchAll: "",
 })
 // 褰撳墠鏍囩
 const activeTab = ref("task");
 const tabName = ref("task");
 // 鏍囩椤垫暟鎹�
 const tabs = reactive([
-  { name: "task", label: "浠诲姟涓嬪彂" },
-  { name: "qrCode", label: "浜岀淮鐮佺鐞�" },
+  { name: "task", label: "鐢熶骇宸℃" },
   { name: "qrCodeScanRecord", label: "鐜板満宸℃璁板綍" },
+]);
+// 鍗曢�夋
+const activeRadio = ref("taskManage");
+const radios = reactive([
+  { name: "taskManage", label: "瀹氭椂浠诲姟绠$悊" },
+  { name: "task", label: "瀹氭椂浠诲姟璁板綍" },
+  { name: "qrCode", label: "浜岀淮鐮佺鐞�" },
 ]);
 // 琛ㄦ牸
 const selectedRows = ref([]);
@@ -137,9 +147,22 @@
 const pageSize = ref(10);
 const columns = ref([
   { prop: "taskName", label: "宸℃浠诲姟鍚嶇О", minWidth: 160 },
-  { prop: "port", label: "鍦扮偣", minWidth: 120 },
+  { prop: "inspectionLocation", label: "鍦扮偣", minWidth: 120 },
   { prop: "remarks", label: "澶囨敞", minWidth: 150 },
   { prop: "inspector", label: "鎵ц宸℃浜�", minWidth: 150 },
+  { prop: "frequencyType", label: "棰戞", minWidth: 150,
+    formatter: (row, column, cellValue) => {
+    if (cellValue === 'DAILY') {
+      return '姣忔棩';
+    } else if (cellValue === 'MONTHLY') {
+      return '姣忔湀';
+    } else if (cellValue === 'WEEKLY') {
+      return '姣忓懆';
+    } else {
+      return '瀛e害'
+    }
+    }},
+  { prop: "frequencyDetail", label: "寮�濮嬫棩鏈熶笌鏃堕棿", minWidth: 150 },
   { prop: "registrant", label: "鐧昏浜�", minWidth: 100 },
   { prop: "createTime", label: "鐧昏鏃ユ湡", minWidth: 100 },
 ]);
@@ -151,21 +174,27 @@
 ]);
 
 onMounted(() => {
-  handleTabClick({ props: { name: "task" } });
+  radioChange('taskManage');
 });
 // 鏍囩椤电偣鍑�
 const handleTabClick = (tab) => {
   tabName.value = tab.props.name;
   tableData.value = [];
-  if (tabName.value === "task") {
+  getList();
+};
+const radioChange = (value) => {
+  if (value === "taskManage") {
     tableColumns.value = columns.value;
-    operationsArr.value = ['edit', 'viewFile']
+    operationsArr.value = ['edit']
+  } else if (value === "task") {
+    tableColumns.value = columns.value;
+    operationsArr.value = ['viewFile']
   } else {
     tableColumns.value = columns1.value;
     operationsArr.value = ['edit']
   }
   getList();
-};
+}
 // 鐐瑰嚮鏌ヨ
 const handleQuery = () => {
   pageNum.value = 1
@@ -174,18 +203,26 @@
 }
 const getList = () => {
   tableLoading.value = true;
-  if (tabName.value === "task") {
-    inspectionTaskList({...queryParams, size: pageSize.value, current: pageNum.value}).then(res => {
-      tableLoading.value = false;
-      tableData.value = res.data.records;
-      total.value = res.data.total;
-    })
-  } else if (tabName.value === "qrCode") {
-    qrCodeList({...queryParams, size: pageSize.value, current: pageNum.value}).then(res => {
-      tableLoading.value = false;
-      tableData.value = res.data.records;
-      total.value = res.data.total;
-    })
+  if (tabName.value === 'task') {
+    if (activeRadio.value === "task") {
+      inspectionTaskList({...queryParams, size: pageSize.value, current: pageNum.value}).then(res => {
+        tableLoading.value = false;
+        tableData.value = res.data.records;
+        total.value = res.data.total;
+      })
+    } else if (activeRadio.value === "qrCode") {
+      qrCodeList({...queryParams, size: pageSize.value, current: pageNum.value}).then(res => {
+        tableLoading.value = false;
+        tableData.value = res.data.records;
+        total.value = res.data.total;
+      })
+    } else {
+      timingTaskList({...queryParams, size: pageSize.value, current: pageNum.value}).then(res => {
+        tableLoading.value = false;
+        tableData.value = res.data.records;
+        total.value = res.data.total;
+      })
+    }
   } else {
     qrCodeScanRecordList({size: pageSize.value, current: pageNum.value}).then(res => {
       tableLoading.value = false;
@@ -193,6 +230,7 @@
       total.value = res.data.total;
     })
   }
+  
   
 };
 // 閲嶇疆鏌ヨ
@@ -207,12 +245,15 @@
 
 // 鏂板銆佺紪杈�
 const handleAdd = (row) => {
+  console.log(row)
   const type = row === undefined ? 'add' : 'edit'
   nextTick(() => {
-    if (tabName.value === "task") {
-      formDia.value?.openDialog(type, row)
-    } else if (tabName.value === "qrCode") {
-      qrCodeDia.value?.openDialog(type, row)
+    if (tabName.value === 'task') {
+      if (activeRadio.value === "taskManage") {
+        formDia.value?.openDialog(type, row)
+      } else if (activeRadio.value === "qrCode") {
+        qrCodeDia.value?.openDialog(type, row)
+      }
     } else {
       viewQrCodeFiles.value?.openDialog(row)
     }
@@ -232,8 +273,8 @@
   }
   const deleteIds = selectedRows.value.map(item => item.id);
   proxy.$modal.confirm('鏄惁纭鍒犻櫎鎵�閫夋暟鎹」锛�').then(function() {
-    if (tabName.value === "task") {
-      return delInspectionTask(deleteIds)
+    if (activeRadio.value === "taskManage") {
+      return delTimingTask(deleteIds)
     } else {
       return delQrCode(deleteIds)
     }

--
Gitblit v1.9.3