From 07a41ade45c962e93a9d449ce1be0eec52e66a6a Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期三, 19 三月 2025 10:44:32 +0800
Subject: [PATCH] 内部单不能修改报告

---
 src/components/view/a6-device-management.vue |  137 ++++++++++++++++++++++++++++++++-------------
 1 files changed, 98 insertions(+), 39 deletions(-)

diff --git a/src/components/view/a6-device-management.vue b/src/components/view/a6-device-management.vue
index dfe4981..478341e 100644
--- a/src/components/view/a6-device-management.vue
+++ b/src/components/view/a6-device-management.vue
@@ -51,15 +51,15 @@
 
 <template>
 	<div class="role_manage">
-		<div>
+		<div v-if="!showData">
 			<el-row class="title">
-				<el-col :span="12" style="padding-left: 20px;">璁惧宸ュ叿鏄庣粏</el-col>
+				<el-col :span="12" style="padding-left: 20px;text-align: left;">璁惧宸ュ叿鏄庣粏</el-col>
 				<el-col :span="12" style="text-align: right;">
 					<el-button size="medium" type="primary" @click="dialogVisible2 = true">鏂板</el-button>
 				</el-col>
 			</el-row>
 		</div>
-		<div class="search">
+		<div class="search" v-if="!showData">
 			<div class="search_thing">
 				<div class="search_label">鐘舵�侊細</div>
 				<el-select v-model="componentData.entity.deviceStatus" placeholder="鍏ㄩ儴" size="small">
@@ -82,7 +82,7 @@
 				<el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
 			</div>
 		</div>
-		<div class="table">
+		<div class="table" v-if="!showData">
 			<!-- 璇硶 瀛愮粍浠堕�氳繃 this.$emit +浼犲叆鏂规硶鍚� 璋冪敤鐖剁粍浠舵柟娉� 渚嬪  this.$emit锛坰electAllByOne锛� 灏遍渶鍦ㄧ埗缁勪欢澹版槑骞朵紶鍏�  @selectAllByOne="selectAllByOne"-->
 			<ValueTable @selectAllByOne="selectAllByOne" @isUpdate="isUpdate" ref="ValueTable"
 				:url="$api.deviceScope.selectDeviceParameter" :upUrl="$api.deviceScope.upDeviceParameter"
@@ -162,7 +162,7 @@
 				</el-col>
 				<!-- 鍙宠竟甯冨眬 -->
 				<el-col :span="7">
-					<el-form :label-position="labelPosition" :model="formData" label-width="120px" ref="ruleForm">
+					<el-form :label-position="labelPosition" :model="formData" label-width="140px" ref="ruleForm">
             <!-- 瀹為獙瀹ゅ垪琛� -->
             <el-form-item label="鎵�灞為儴闂�:">
               <el-select :disabled="isUp" v-model="formData.subordinateDepartmentsId" placeholder="璇烽�夋嫨" size="small" style="width:100%">
@@ -410,7 +410,7 @@
 						v-model="configForm.y"></el-input>
 			</div>
       <div class="search_thing">
-				<div class="search_label"><span style="color:red;margin-right: 4px;">*</span>鍏紡锛�</div>
+				<div class="search_label">鍏紡锛�</div>
 				<el-input size="small" placeholder="璇疯緭鍏�" clearable
 						v-model="configForm.formula"></el-input>
 			</div>
@@ -421,17 +421,30 @@
 				</el-row>
 			</span>
     </el-dialog>
+    <dataAcquisitionConfig v-if="showData" :deviceId="deviceId"/>
 	</div>
 </template>
 
 <script>
 	import ValueTable from '../tool/value-table.vue'
+  import dataAcquisitionConfig from '../do/b6-device-management/b6-data-acquisition-config.vue'
 	export default {
 		components: {
-			ValueTable
+			ValueTable,
+      dataAcquisitionConfig
 		},
 		data() {
 			return {
+				deviceId: '',
+				fileTypeOptions: [
+					{label: 'csv', value: '.csv'},
+					{label: 'db', value: '.db'},
+					{label: 'mdb', value: '.mdb'},
+					{label: 'word', value: '.docx'},
+					{label: 'excel', value: '.xlsx'},
+					{label: 'txt', value: '.txt'},
+					{label: 'png', value: '.png'},
+				],
 				//鏄惁鏄。妗堜慨璁�  true涓嶆槸 false鏄�
 				isUp: true,
 				formData: {
@@ -447,6 +460,8 @@
 				dialogVisible: false,
 				dialogVisible2: false,
 				addPower: false,
+        showData: false, // 鏁伴噰閰嶇疆椤甸潰
+        tableList: [],
 				componentData: {
 					entity: {
 						deviceStatus: null,
@@ -455,7 +470,7 @@
 						largeCategory: null,
 						orderBy: {
 							field: 'id',
-							order: 'desc'
+							order: 'asc'
 						}
 					},
 					isIndex: true,
@@ -471,12 +486,18 @@
 						font: '妗f淇',
 						type: 'text',
 						method: 'isUpdate'
-					}, {
-						id: 'handleConfig',
-						font: '鏁伴噰閰嶇疆',
-						type: 'text',
-						method: 'handleConfig'
-					}],
+					}
+          // , {
+					// 	id: 'handleConfig',
+					// 	font: '鏁伴噰閰嶇疆',
+					// 	type: 'text',
+					// 	method: 'handleConfig',
+          //   disabFun: (row, index) => {
+          //     return row.insProductItem === ''
+          //   }
+					// }
+        ],
+          headNoShow:['enDeviceName'],
 					tagField: {
 						deviceStatus: {
 							select: []
@@ -510,7 +531,8 @@
             }
 					},
 					requiredAdd: [],
-					requiredUp: []
+					requiredUp: [],
+          needSort: ['deviceName', 'acquisitionDate', 'activationDate', 'lastCalibrationDate', 'nextCalibrationDate', 'deviceStatus'],
 				},
 				entityCopy: {},
 				upIndex: 0,
@@ -565,8 +587,8 @@
 					this.subordinateDepartmentsList = data
 				})
 			},
-			refreshTable() {
-				this.$refs['ValueTable'].selectList()
+			refreshTable(e) {
+				this.$refs['ValueTable'].selectList(e)
 			},
 			refresh() {
 				this.componentData.entity = this.HaveJson(this.entityCopy)
@@ -578,6 +600,7 @@
 				let up = false
 				let del = false
 				let add = false
+        let config = false
 				for (var i = 0; i < power.length; i++) {
 					if (power[i].menuMethod == 'upDeviceParameter') {
 						up = true
@@ -588,15 +611,21 @@
 					if (power[i].menuMethod == 'addDeviceParameter') {
 						add = true
 					}
+          			if (power[i].menuMethod == 'saveDataAcquisitionConfiguration') {
+						config = true
+					}
 				}
-				if (!up) {
-					this.componentData.do.splice(1, 1)
-				}
-				if (!del) {
-					this.componentData.do.splice(0, 1)
-				}
-				this.addPower = add
-			},
+				// if (!config) {
+        //   this.componentData.do.splice(2, 1)
+        // }
+        if (!up) {
+          this.componentData.do.splice(1, 1)
+        }
+        if (!del) {
+          this.componentData.do.splice(0, 1)
+        }
+        this.addPower = add
+      },
 			// 鑾峰彇瀛楀吀
 			selectEnumByCategory() {
 				this.$axios.post(this.$api.enums.selectEnumByCategory, {
@@ -646,6 +675,23 @@
             this.componentData.tagField.insProductIds.select = [...this.componentData.tagField.insProductIds.select,...children]
             this.componentData.selectField.insProductIds.select = [...this.componentData.selectField.insProductIds.select,...children]
             return m
+          })
+          this.options.forEach(item=>{
+            if(item.children.length==0){
+              item.children = null;
+            }else{
+              item.children.forEach(m=>{
+                if(m.children.length==0){
+                  m.children = null;
+                }else{
+                  m.children.forEach(n=>{
+                    if(n.children&&n.children.length==0){
+                      n.children = null;
+                    }
+                  })
+                }
+              })
+            }
           })
 				})
       },
@@ -709,9 +755,11 @@
 					this.formData.imageName = response.data.name;
 				}
 			},
-			handleSuccessUpImg2(response, ) {
+			handleSuccessUpImg2(response) {
 				if (response.code == 200) {
 					this.$nextTick(() => {
+            this.formData.imageUpload = response.data.url;
+            this.formData.imageName = response.data.name;
 						this.formData2.imageUpload = response.data.url;
 						this.formData2.imageName = response.data.name;
 					})
@@ -763,7 +811,7 @@
 					}
 					this.$message.success('淇敼鎴愬姛')
 					this.upLoad = false
-					this.refreshTable()
+					this.refreshTable('page')
 					this.dialogVisible = false
 				}).catch(e => {
 					this.$message.error('淇敼澶辫触')
@@ -792,7 +840,7 @@
           this.$message.error('鏈緭鍏ュ惎鐢ㄦ棩鏈�')
           return
         }
-        if(!this.formData2.deviceStatus){
+        if(this.formData2.deviceStatus==='' || this.formData2.deviceStatus===null){
           this.$message.error('鏈�夋嫨褰撳墠鐘舵��')
           return
         }
@@ -801,7 +849,7 @@
           return
         }
 				this.upLoad2 = true;
-        this.formData2.insProductIds = this.formData2.insProductIds.join()
+        this.formData2.insProductIds = this.formData2.insProductIds?this.formData2.insProductIds.join():''
 				this.$axios.post(this.$api.deviceScope.addDeviceParameter, this.formData2, {
 					headers: {
 						'Content-Type': 'application/json'
@@ -813,7 +861,7 @@
 					}
 					this.$message.success('鎻愪氦鎴愬姛')
 					this.upLoad2 = false
-					this.refreshTable()
+					this.refreshTable('page')
 					this.dialogVisible2 = false
 					this.formData2 = {
 						imageUpload: '',
@@ -826,11 +874,26 @@
 				})
 			},
       handleConfig(row){
-        this.configForm = {}
-        this.dialogVisible3 = true
-        this.$axios.post(this.$api.deviceScope.getNumberCollect+'?id='+row.id).then(res => {
-          this.configForm = res.data
+        // this.configForm = {}
+        // this.dialogVisible3 = true
+        // this.$axios.post(this.$api.deviceScope.getNumberCollect+'?id='+row.id).then(res => {
+        //   this.configForm = res.data
+        // })
+        this.showData = true
+        const list = row.insProductItem.split(';')
+        let list2 = []
+        list.map((item) => {
+          const obj = Object.assign({
+			deviceId: row.id,
+            insProductItem: item,
+          })
+          list2.push(obj)
         })
+        this.tableList = list2
+		this.deviceId = row.id
+      },
+      closeDataVue () {
+        this.showData = false
       },
       submitForm3(){
         if(!this.configForm.ip){
@@ -857,10 +920,6 @@
           this.$message.error('璇峰~鍐橸');
           return
         }
-        if(!this.configForm.formula){
-          this.$message.error('璇峰~鍐欏叕寮�');
-          return
-        }
 
         this.upLoad3 = true
         this.$axios.post(this.$api.deviceScope.numberCollect, this.configForm, {
@@ -873,7 +932,7 @@
 						return
 					}
 					this.$message.success('鎿嶄綔鎴愬姛')
-					this.refreshTable()
+					this.refreshTable('page')
 					this.dialogVisible3 = false
 				}).catch(e => {
 					this.$message.error('鎿嶄綔澶辫触')

--
Gitblit v1.9.3