From c1d2051abc8ca88cd07f0d7c56c0dbf8165d5c33 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期四, 18 九月 2025 17:02:22 +0800 Subject: [PATCH] 2025.9.18 数据产品(待完成) --- src/views/fysp/check/components/CompDeviceShowTest.vue | 317 +++++++++++++++++++++++++++------------------------- 1 files changed, 162 insertions(+), 155 deletions(-) diff --git a/src/views/fysp/check/components/CompDeviceShowTest.vue b/src/views/fysp/check/components/CompDeviceShowTest.vue index 2a250e1..1daa0e4 100644 --- a/src/views/fysp/check/components/CompDeviceShowTest.vue +++ b/src/views/fysp/check/components/CompDeviceShowTest.vue @@ -1,163 +1,170 @@ <template> - <div> - <!-- 閫夐」 --> - <!-- 璁惧绫诲瀷 --> - <el-row> - <el-col> - <el-tabs - class="child_select" - placeholder="璁惧绫诲瀷" - v-model="currSelect.topDeviceTypeId" - > - <el-tab-pane - v-for="item in deviceTopTypes" - :key="item.id" - :name="item.id" + <CompGenericWrapper type="drawer"> + <template #content> + <!-- 閫夐」 --> + <!-- 璁惧绫诲瀷 --> + <el-row> + <el-col> + <el-tabs + class="child_select" + placeholder="璁惧绫诲瀷" + v-model="currSelect.topDeviceTypeId" > - <template #label> - <el-badge - :value="item.count" - :type="item.count == 0 ? 'danger' : 'primary'" - > - <span class="custom-tabs-label"> - <span>{{ item.label }}</span> - </span> - </el-badge> - </template> - </el-tab-pane> - </el-tabs> - </el-col> - </el-row> - <el-collapse v-model="activeNames" style="border: 4px"> - <el-collapse-item - v-for="item in formInfo" - :key="item.id" - :name="item.id" - class="collapse-item-class" - > - <template #title> - <div - style="display: flex; width: 100%; justify-content: space-between" - > - <div style=""> - <el-descriptions style="" :column="3" size="small" border> - <el-descriptions-item width="64px" :label="currSelect.topDeviceTypeId == 0 ? '绔欑偣鍚嶇О' : '璁惧鍚嶇О'" :span="3">{{ - item.name || '鏃�' - }}</el-descriptions-item> - <el-descriptions-item label="渚涘簲鍟�">{{ - item.supplier || '鏃�' - }}</el-descriptions-item> - <el-descriptions-item label="杩愮淮鍟�">{{ - item.maintainer || '鏃�' - }}</el-descriptions-item> - <el-descriptions-item label="杩愮淮棰戞"> - <el-select - v-model="item.maintainFrequency" - :disabled="isDisabled" - style="width: 150px" - > - <el-option - v-for="frequency of maintainFrequencysArray" - :key="frequency.key" - :label="frequency.value" - :value="frequency.key" - ></el-option> - </el-select> - </el-descriptions-item> - <el-descriptions-item label="杩愮淮浜哄憳">{{ - item.maintainStaff || '鏃�' - }}</el-descriptions-item> - <el-descriptions-item label="杩愮淮鑱旂郴鏂瑰紡">{{ - item.maintainTel || '鏃�' - }}</el-descriptions-item> - <el-descriptions-item label="鍝佺墝鍨嬪彿">{{ - item.brandModel || '鏃�' - }}</el-descriptions-item> - <el-descriptions-item label="杩愯鐘舵��"> - <el-select - v-model="item.runningStatus" - :disabled="isDisabled" - style="width: 150px" - > - <el-option - v-for="status of runStatusArray" - :key="status.key" - :label="status.value" - :value="status.key" - ></el-option> - </el-select> - </el-descriptions-item> - <el-descriptions-item label="绫诲瀷"> - {{ item._typename || '鏃�' }} - </el-descriptions-item> - </el-descriptions> - </div> - - <div style="display: flex"> - <!-- <div class="sub-title">{{ item.name }}</div> --> - <!-- 鍥剧墖 --> - <div class="image-container"> - <div - class="block-div" - @click="onClickPic($event)" - v-for="(status, index) in item._statusList" - :key="index" + <el-tab-pane + v-for="item in deviceTopTypes" + :key="item.id" + :name="item.id" + > + <template #label> + <el-badge + :value="item.count" + :type="item.count == 0 ? 'danger' : 'primary'" > - <el-image - v-if="index == 0" - fit="cover" - class="pic-style" - :src="status._picUrl" - :preview-src-list="Array.of(status._picUrl)" - /> - <span class="abstract_pic_text" v-if="index == 0">{{ - `鏈�鏂扮姸鎬佸浘鐗� ${status.dlCreateTime.slice(0, 10)}` - }}</span> + <span class="custom-tabs-label"> + <span>{{ item.label }}</span> + </span> + </el-badge> + </template> + </el-tab-pane> + </el-tabs> + </el-col> + </el-row> + <el-collapse v-model="activeNames" style="border: 4px"> + <el-collapse-item + v-for="item in formInfo" + :key="item.id" + :name="item.id" + class="collapse-item-class" + > + <template #title> + <div + style="display: flex; width: 100%; justify-content: space-between" + > + <div style=""> + <el-descriptions style="" :column="3" size="small" border> + <el-descriptions-item + width="64px" + :label=" + currSelect.topDeviceTypeId == 0 ? '绔欑偣鍚嶇О' : '璁惧鍚嶇О' + " + :span="3" + >{{ item.name || '鏃�' }}</el-descriptions-item + > + <el-descriptions-item label="渚涘簲鍟�">{{ + item.supplier || '鏃�' + }}</el-descriptions-item> + <el-descriptions-item label="杩愮淮鍟�">{{ + item.maintainer || '鏃�' + }}</el-descriptions-item> + <el-descriptions-item label="杩愮淮棰戞"> + <el-select + v-model="item.maintainFrequency" + :disabled="isDisabled" + style="width: 150px" + > + <el-option + v-for="frequency of maintainFrequencysArray" + :key="frequency.key" + :label="frequency.value" + :value="frequency.key" + ></el-option> + </el-select> + </el-descriptions-item> + <el-descriptions-item label="杩愮淮浜哄憳">{{ + item.maintainStaff || '鏃�' + }}</el-descriptions-item> + <el-descriptions-item label="杩愮淮鑱旂郴鏂瑰紡">{{ + item.maintainTel || '鏃�' + }}</el-descriptions-item> + <el-descriptions-item label="鍝佺墝鍨嬪彿">{{ + item.brandModel || '鏃�' + }}</el-descriptions-item> + <el-descriptions-item label="杩愯鐘舵��"> + <el-select + v-model="item.runningStatus" + :disabled="isDisabled" + style="width: 150px" + > + <el-option + v-for="status of runStatusArray" + :key="status.key" + :label="status.value" + :value="status.key" + ></el-option> + </el-select> + </el-descriptions-item> + <el-descriptions-item label="绫诲瀷"> + {{ item._typename || '鏃�' }} + </el-descriptions-item> + </el-descriptions> + </div> + + <div style="display: flex"> + <!-- <div class="sub-title">{{ item.name }}</div> --> + <!-- 鍥剧墖 --> + <div class="image-container"> + <div + class="block-div" + @click="onClickPic($event)" + v-for="(status, index) in item._statusList" + :key="index" + > + <el-image + v-if="index == 0" + fit="cover" + class="pic-style" + :src="status._picUrl" + :preview-src-list="Array.of(status._picUrl)" + /> + <span class="abstract_pic_text" v-if="index == 0">{{ + `鏈�鏂扮姸鎬佸浘鐗� ${status.dlCreateTime.slice(0, 10)}` + }}</span> + </div> </div> </div> </div> - </div> - </template> - <!-- 璇︾粏鍐呭寮�濮� --> - <el-form :model="item" class="form_class"> - <el-form-item label="鐘舵��"> - <el-tabs tab-position="top"> - <el-tab-pane - v-for="(status, i) in item._statusList" - :label="status.dlCreateTime.slice(0, 10)" - :key="i" - > - <el-form :model="status" class="form-class"> - <el-form-item label="浣嶇疆" style="margin-bottom: 10px"> - {{ status.dlLocation }} - </el-form-item> - <el-form-item label="鍥剧墖"> - <!-- 鍥剧墖 --> - <el-space> - <div v-if="status._paths && status._paths.length > 0"> - <el-image - v-for="(path, i) in status._paths" - fit="cover" - class="pic-style" - :src="path" - :preview-src-list="Array.of(path)" - :key="i" - /> - </div> - <el-empty v-else></el-empty> - </el-space> - </el-form-item> - </el-form> - </el-tab-pane> - </el-tabs> - </el-form-item> - </el-form> - <!-- 璇︾粏鍐呭缁撴潫 --> - </el-collapse-item> - </el-collapse> - <!-- 绌虹姸鎬� --> - <el-empty v-if="isEmpty" /> - </div> + </template> + <!-- 璇︾粏鍐呭寮�濮� --> + <el-form :model="item" class="form_class"> + <el-form-item label="鐘舵��"> + <el-tabs tab-position="top"> + <el-tab-pane + v-for="(status, i) in item._statusList" + :label="status.dlCreateTime.slice(0, 10)" + :key="i" + > + <el-form :model="status" class="form-class"> + <el-form-item label="浣嶇疆" style="margin-bottom: 10px"> + {{ status.dlLocation }} + </el-form-item> + <el-form-item label="鍥剧墖"> + <!-- 鍥剧墖 --> + <el-space> + <div v-if="status._paths && status._paths.length > 0"> + <el-image + v-for="(path, i) in status._paths" + fit="cover" + class="pic-style" + :src="path" + :preview-src-list="Array.of(path)" + :key="i" + /> + </div> + <el-empty v-else></el-empty> + </el-space> + </el-form-item> + </el-form> + </el-tab-pane> + </el-tabs> + </el-form-item> + </el-form> + <!-- 璇︾粏鍐呭缁撴潫 --> + </el-collapse-item> + </el-collapse> + <!-- 绌虹姸鎬� --> + <el-empty v-if="isEmpty" + /></template> + </CompGenericWrapper> </template> <script> @@ -165,7 +172,7 @@ import { $fysp } from '@/api/index'; import { toLabel } from '@/enum/device/device'; export default { - components: {}, + components: { }, watch: { // 閫夋嫨鏀瑰彉鐩戝惉 currSelect: { -- Gitblit v1.9.3