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