From 0af4ccb5dacacce56c5fddd0d70288fc377c56be Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期二, 01 九月 2026 17:04:37 +0800
Subject: [PATCH] feat(inspection): 1.添加报告类型功能并优化检验流程 2.设备管理组件中的部门列表获取方法优化

---
 src/views/CNAS/resourceDemand/device/component/management.vue |   50 ++++++++++++++++++++++++++------------------------
 1 files changed, 26 insertions(+), 24 deletions(-)

diff --git a/src/views/CNAS/resourceDemand/device/component/management.vue b/src/views/CNAS/resourceDemand/device/component/management.vue
index 5e09090..71bbc62 100644
--- a/src/views/CNAS/resourceDemand/device/component/management.vue
+++ b/src/views/CNAS/resourceDemand/device/component/management.vue
@@ -1,7 +1,7 @@
 <!-- 璁惧宸ュ叿鏄庣粏 -->
 <template>
 	<div class="role_manage">
-    <div class="search">
+    <div class="search" v-show="!showData">
       <div>
         <el-form :model="queryParams" ref="queryParams" size="small" :inline="true">
           <el-form-item label="鐘舵��" prop="deviceStatus" class="form-item">
@@ -16,9 +16,9 @@
                       @keyup.enter.native="refreshTable()">
             </el-input>
           </el-form-item>
-          <el-form-item label="瑙勬牸鍨嬪彿" prop="specificationModel">
+          <el-form-item label="绠$悊缂栧彿" prop="managementNumber">
             <el-input size="small" placeholder="璇疯緭鍏�" clearable
-                      v-model="queryParams.specificationModel" @keyup.enter.native="refreshTable()"></el-input>
+                      v-model="queryParams.managementNumber" @keyup.enter.native="refreshTable()"></el-input>
           </el-form-item>
           <el-form-item>
             <el-button type="primary" size="mini" @click="refreshTable">鏌ヨ</el-button>
@@ -33,7 +33,7 @@
     </div>
 		<div class="table" v-show="!showData">
 			<lims-table :tableData="tableData" :column="column" :tableLoading="tableLoading" :height="'calc(100vh - 300px)'"
-				:page="page" @pagination="pagination"></lims-table>
+				:page="page" @pagination="pagination" :row-class-name="tableRowClassName"></lims-table>
 		</div>
 		<el-dialog :title="isUp ? '璁惧璇︽儏' : '妗f淇'" :visible.sync="dialogVisible" width="70%" top="5vh"
 			:before-close="handleClose">
@@ -59,7 +59,7 @@
 							<el-form-item label="浠櫒鍚嶇О:" required prop="deviceName">
 								<el-input :disabled="isUp" v-model="formData.deviceName" size="small"></el-input>
 							</el-form-item>
-							<el-form-item label="浠櫒鍚嶇ОEN:" required>
+							<el-form-item label="浠櫒鍚嶇ОEN:">
 								<el-input :disabled="isUp" v-model="formData.enDeviceName" size="small"></el-input>
 							</el-form-item>
 							<el-form-item label="瑙勬牸鍨嬪彿:" required>
@@ -216,7 +216,7 @@
 							<el-form-item label="浠櫒鍚嶇О:" required>
 								<el-input v-model="formData2.deviceName" size="small"></el-input>
 							</el-form-item>
-							<el-form-item label="浠櫒鍚嶇ОEN:" required>
+							<el-form-item label="浠櫒鍚嶇ОEN:">
 								<el-input v-model="formData2.enDeviceName" size="small"></el-input>
 							</el-form-item>
 							<el-form-item label="瑙勬牸鍨嬪彿:" required>
@@ -391,7 +391,6 @@
 import limsTable from "@/components/Table/lims-table.vue";
 import dataAcquisitionConfig from './acquisitionConfig.vue'
 import {
-	obtainItemParameterList,
 	exportEquipmentDetails,
 	getInsProduction,
 	upDeviceParameter,
@@ -400,6 +399,7 @@
 	getDeviceParameter,
 	delDeviceParameter,
 } from '@/api/cnas/resourceDemand/device.js'
+import { listDept } from '@/api/system/dept'
 import { selectUserCondition } from "@/api/business/inspectionTask";
 export default {
 	props: {
@@ -444,11 +444,9 @@
 			labelPosition: 'right',
 			dialogVisible: false,
 			dialogVisible2: false,
-			addPower: false,
 			showData: false, // 鏁伴噰閰嶇疆椤甸潰
 			tableList: [],
 			addDia: true,
-			addPower: true,
 			//璁惧绫诲瀷鍒楄〃
 			equipmentList: [],
 			// 璐熻矗浜哄垪琛�
@@ -479,7 +477,7 @@
 				{ label: "绠$悊缂栧彿", prop: "managementNumber" },
 				{ label: "鎶�鏈寚鏍�", prop: "technicalIndicators" },
 				{ label: "璐疆鏃ユ湡", prop: "acquisitionDate" },
-				{ label: "鍚敤鏃ユ湡", prop: "activationDate" },
+				{ label: "鏍″噯鏈夋晥鏈�", prop: "activationDate" },
 				{ label: "绠$悊浜�", prop: "equipmentManagerUser" },
 				{ label: "瀛樻斁鐐�", prop: "storagePoint" },
 				{ label: "鎵�灞為儴闂�", prop: "laboratoryName" },
@@ -565,7 +563,7 @@
 	mounted() {
 		this.selectEnumByCategory()
 		this.selectDevicePrincipal()
-		this.obtainItemParameterList()
+		this.obtainDepartmentList()
 		this.getInsProductIds()
 		// 鍒濆鍖�
 		this.clickSidebar(this.clickNodeVal)
@@ -575,13 +573,13 @@
 		handleNotification(cate) {
 			this.queryParams.largeCategory = cate
 		},
-		obtainItemParameterList() {
-			obtainItemParameterList().then(res => {
+		obtainDepartmentList() {
+			listDept({ status: '0' }).then(res => {
 				let data = []
 				res.data.forEach(a => {
 					data.push({
-						label: a.laboratoryName,
-						value: a.id
+						label: a.deptName,
+						value: a.deptId
 					})
 				})
 				this.subordinateDepartmentsList = data
@@ -608,6 +606,18 @@
 			this.page.size = limit;
 			this.getList();
 		},
+    tableRowClassName({ row }) {
+      const today = new Date();
+      const targetDate = new Date(row.activationDate);
+      const fiveDaysBeforeTarget = new Date(targetDate);
+      // 璁$畻鍓嶄簲澶╃殑鏃ユ湡
+      fiveDaysBeforeTarget.setDate(targetDate.getDate() - 5);
+      // 姣旇緝鏃堕渶瑕佺‘淇濇瘮杈冪殑鏄畬鏁寸殑鏃ユ湡鏃堕棿锛屽寘鍚椂鍒嗙
+      if (today > fiveDaysBeforeTarget) {
+        return 'red-row';
+      }
+      return '';
+    },
 		refresh() {
 			this.queryParams = {};
 			this.page.current = 1;
@@ -771,10 +781,6 @@
 				this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉�')
 				return
 			}
-			if (!this.formData.enDeviceName) {
-				this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉癊N')
-				return
-			}
 			if (!this.formData.specificationModel) {
 				this.$message.error('鏈緭鍏ヨ鏍煎瀷鍙�')
 				return
@@ -805,7 +811,7 @@
 			delete this.formData.updateUser
 			const formData = this.HaveJson(this.formData)
 			formData.insProductIds = formData.insProductIds ? formData.insProductIds.join() : ''
-			if (formData.authorizedPerson.length === 0) {
+			if (formData.authorizedPerson && formData.authorizedPerson.length === 0) {
 				formData.authorizedPerson = ''
 			} else {
 				formData.authorizedPerson = JSON.stringify(formData.authorizedPerson)
@@ -826,10 +832,6 @@
 		submitForm2() {
 			if (!this.formData2.deviceName) {
 				this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉�')
-				return
-			}
-			if (!this.formData2.enDeviceName) {
-				this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉癊N')
 				return
 			}
 			if (!this.formData2.specificationModel) {

--
Gitblit v1.9.3