Procházet zdrojové kódy

fix:修改区域管理以及监控对象的新增编辑弹窗

lh_hub před 6 měsíci
rodič
revize
66a32324ba

+ 5 - 3
snowy-admin-web/src/views/basicset/monitor/form.vue

@@ -25,7 +25,7 @@
 			<a-form-item label="监控位置区域">
 				<a-input v-model:value="formData.monitorPoint" placeholder="请输入监控位置区域" allow-clear />
 			</a-form-item>
-			<a-form-item label="报警上限">
+			<a-form-item label="报警上限" name="limitUp">
 				<a-input-number
 					id="inputNumber"
 					v-model:value="formData.limitUp"
@@ -34,7 +34,7 @@
 					style="width: 100%"
 				/>
 			</a-form-item>
-			<a-form-item label="报警下限">
+			<a-form-item label="报警下限" name="limitDown">
 				<a-input-number
 					id="inputNumber"
 					v-model:value="formData.limitDown"
@@ -64,7 +64,9 @@
 	// 默认要校验的
 	const formRules = {
 		name: [required('请输入对象名称')],
-		status: [required('请选择对象状态')]
+		status: [required('请选择对象状态')],
+		limitUp: [required('请输入报警上限')],
+		limitDown: [required('请输入报警下限')]
 	}
 
 	// 表单数据

+ 29 - 13
snowy-admin-web/src/views/motoring/location/form.vue

@@ -1,6 +1,6 @@
 <template>
 	<xn-form-container
-		:title="formData.id ? '编辑区域' : '新增区域'"
+		:title="formData.id ? '编辑点位' : '新增点位'"
 		:width="'800px'"
 		:visible="visible"
 		:destroy-on-close="true"
@@ -15,11 +15,11 @@
 		>
 			<a-row :gutter="10">
 				<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
-					<a-form-item label="区域名称" name="name">
-						<a-input v-model:value="formData.name" placeholder="请输入区域名称" allow-clear />
+					<a-form-item label="点位名称" name="name">
+						<a-input v-model:value="formData.name" placeholder="请输入点位名称" allow-clear />
 					</a-form-item>
 				</a-col>
-				<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
+				<!-- <a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
 					<a-form-item label="上级区域:" name="parentId">
 						<a-tree-select
 							v-model:value="formData.parentId"
@@ -38,7 +38,7 @@
 							treeLine
 						/>
 					</a-form-item>
-				</a-col>
+				</a-col> -->
 
 				<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
 					<a-form-item label="监控对象" name="monitorTargetId">
@@ -47,6 +47,7 @@
 							v-model:value="formData.monitorTargetId"
 							:options="monitorTargetOptions"
 							placeholder="请选择监控对象"
+							@change="monitorTargetIdChange"
 						/>
 					</a-form-item>
 				</a-col>
@@ -58,14 +59,14 @@
 							v-model:value="formData.monitorDeviceId"
 							:options="memListOptions"
 							placeholder="请选择监控设备"
-							@change="monitorTargetChange"
+							@change="monitorDeviceIdChange"
 						/>
 					</a-form-item>
 				</a-col>
 
 				<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
 					<a-form-item label="传感器编号" name="sensorCode">
-						<a-input v-model:value="formData.sensorCode" placeholder="请输入传感器编号" allow-clear />
+						<a-input v-model:value="formData.sensorCode" disabled placeholder="请输入传感器编号" allow-clear />
 					</a-form-item>
 				</a-col>
 
@@ -93,7 +94,7 @@
 				</a-col>
 
 				<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
-					<a-form-item label="报警上限">
+					<a-form-item label="报警上限" name="limitUp">
 						<a-input-number
 							id="inputNumber"
 							v-model:value="formData.limitUp"
@@ -104,7 +105,7 @@
 					</a-form-item>
 				</a-col>
 				<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
-					<a-form-item label="报警下限">
+					<a-form-item label="报警下限" name="limitDown">
 						<a-input-number
 							id="inputNumber"
 							v-model:value="formData.limitDown"
@@ -143,7 +144,7 @@
 	// 默认要校验的
 	const formRules = {
 		name: [required('请输入区域名称')],
-		parentId: [required('请选择上级区域')],
+		// parentId: [required('请选择上级区域')],
 		monitorTargetId: [required('请选择监控对象')],
 		monitorDeviceId: [required('请选择监控设备')],
 		sensorRoute: [required('请输入传感器路数')],
@@ -158,7 +159,9 @@
 	const onOpen = (record, parentId) => {
 		loadData()
 		visible.value = true
-		formData.value = {}
+		formData.value = {
+			parentId: 0
+		}
 		if (parentId) {
 			formData.value.parentId = parentId
 		}
@@ -182,6 +185,7 @@
 		setupApi.setupList({ isAll: false }).then((res) => {
 			monitorTargetOptions.value = (res || []).map((item) => {
 				return {
+					...item,
 					value: item['id'],
 					label: item['name']
 				}
@@ -189,8 +193,10 @@
 		})
 		// 获取监控设备
 		memApi.memList({ isAll: false }).then((res) => {
+			console.log(res)
 			memListOptions.value = (res || []).map((item) => {
 				return {
+					...item,
 					value: item['id'],
 					label: item['deviceName'],
 					modelName: item['modelName'],
@@ -202,16 +208,26 @@
 	}
 
 	// 选中监控设备
-	const monitorTargetChange = (value) => {
-		console.log(value, '1')
+	const monitorDeviceIdChange = (value) => {
 		if (value) {
 			const data = memListOptions.value.find((item) => item.value === value)
+			// console.log(data, '1')
+			formData.value.sensorCode = data.deviceCode //设备编号
 			formData.value.modelName = data.modelName //监控设备型号
 			formData.value.deviceCode = data.deviceCode //冷链编号
 			sensorRouteMax.value = data.sensorCount //传感器路数的最大值
 		}
 	}
 
+	// 选中监控对象
+	const monitorTargetIdChange = (value) => {
+		if (value) {
+			const item = monitorTargetOptions.value.find((item) => item.value === value)
+			formData.value.limitUp = item.limitUp //监控设备型号
+			formData.value.limitDown = item.limitDown //冷链编号
+		}
+	}
+
 	// 关闭抽屉
 	const onClose = () => {
 		formRef.value.resetFields()

+ 2 - 2
snowy-admin-web/src/views/motoring/location/index.vue

@@ -21,8 +21,8 @@
 								class="ant-advanced-search-form"
 							>
 								<a-col :xs="24" :sm="24" :md="12" :lg="8" :xl="8"
-									><a-form-item label="区域名称" name="name">
-										<a-input v-model:value="searchFormState.name" placeholder="请输入区域名称" /> </a-form-item
+									><a-form-item label="点位名称" name="name">
+										<a-input v-model:value="searchFormState.name" placeholder="请输入点位名称" /> </a-form-item
 								></a-col>
 							</a-form>
 						</a-row>