Browse Source

配置需求修改,首页优化

soft5566 3 years ago
parent
commit
eb95a56753
2 changed files with 74 additions and 44 deletions
  1. 15 10
      src/views/index/index.vue
  2. 59 34
      src/views/systemSet/index.vue

+ 15 - 10
src/views/index/index.vue

@@ -66,10 +66,10 @@
 						<el-table :data="caoshi_yujing_tableData" height="350" stripe :cell-style="cell_style" v-loading="caoshi_yujing_PageParam_loading"
 						<el-table :data="caoshi_yujing_tableData" height="350" stripe :cell-style="cell_style" v-loading="caoshi_yujing_PageParam_loading"
 							:header-cell-style="header_cell_style" v-if="time_out_warning" style="width: 100%">
 							:header-cell-style="header_cell_style" v-if="time_out_warning" style="width: 100%">
 							<el-table-column prop="deviceId" label="设备号" align="center"> </el-table-column>
 							<el-table-column prop="deviceId" label="设备号" align="center"> </el-table-column>
-							<el-table-column prop="warningTime" label="告警时间" align="center"> </el-table-column>
-							<el-table-column prop="durationUse" label="使用时长" align="center"> </el-table-column>
-							<el-table-column prop="contact" label="联系方式" align="center"> </el-table-column>
-							<el-table-column prop="operator" label="操作人" align="center"> </el-table-column>
+							<el-table-column prop="warningTime" label="告警时间" align="center" width="180"> </el-table-column>
+							<el-table-column prop="durationUse" label="使用时长" align="center" width="120"> </el-table-column>
+							<el-table-column prop="contact" label="联系方式" align="center" width="160"> </el-table-column>
+							<el-table-column prop="operator" label="操作人" align="center" width="120"> </el-table-column>
 						</el-table>
 						</el-table>
 						<el-pagination class="dialog-page" @current-change="caoshi_yujing_HandleCurrentChange" v-if="time_out_warning"
 						<el-pagination class="dialog-page" @current-change="caoshi_yujing_HandleCurrentChange" v-if="time_out_warning"
 							:current-page.sync="caoshi_yujing_PageParam.currentPage" :page-size="caoshi_yujing_PageParam.pageSize"
 							:current-page.sync="caoshi_yujing_PageParam.currentPage" :page-size="caoshi_yujing_PageParam.pageSize"
@@ -653,13 +653,13 @@
 					}
 					}
 					if (res.code == 200) {
 					if (res.code == 200) {
 						this.caoshi_yujing_tableData = [];
 						this.caoshi_yujing_tableData = [];
-						for (var i = 0; i < res.monthT.length; i++) {
+						for (var i = 0; i < res.rows.length; i++) {
 							this.caoshi_yujing_tableData.push({
 							this.caoshi_yujing_tableData.push({
-								deviceId: res.monthT[i].dom + ' ' + res.monthT[i].air_name + ' ' + res.monthT[i].air_config,
-								warningTime: res.monthT[i].time,
-								operator: res.monthT[i].user_name,
-								durationUse: res.monthT[i].duration_use,
-								contact: res.monthT[i].phone
+								deviceId: res.rows[i].dom + ' ' + res.rows[i].air_name + ' ' + res.rows[i].air_config,
+								warningTime: res.rows[i].time,
+								operator: res.rows[i].user_name,
+								durationUse: res.rows[i].duration_use,
+								contact: res.rows[i].phone
 							});
 							});
 						}
 						}
 					} else {
 					} else {
@@ -985,4 +985,9 @@
 			}
 			}
 		}
 		}
 	}
 	}
+</style>
+<style>
+	.select-year input.el-input__inner {
+		cursor: pointer;
+	}
 </style>
 </style>

+ 59 - 34
src/views/systemSet/index.vue

@@ -10,23 +10,24 @@
 					</div>
 					</div>
 					<div class="cell-body">
 					<div class="cell-body">
 						<el-form ref="formData" :rules="formRules" :model="formData">
 						<el-form ref="formData" :rules="formRules" :model="formData">
-							<el-form-item prop="month_range" class="date-selet-range">
+							<el-form-item prop="temp_range" class="date-selet-range">
 								<span>在</span>
 								<span>在</span>
-								<el-input placeholder="请选择温度" v-model="formData.temperature_range" @click.native="formData.temperatureDialogVisible = true">
+								<el-input placeholder="请选择温度" readonly class="temp-style" v-model="formData.temperature_range"
+									@click.native="formData.temperatureDialogVisible = true">
 								</el-input>
 								</el-input>
 								<el-dialog title="选择温度范围" top="30vh" :visible.sync="formData.temperatureDialogVisible" width="30%">
 								<el-dialog title="选择温度范围" top="30vh" :visible.sync="formData.temperatureDialogVisible" width="30%">
 									<el-slider v-model="formData.temperature_range_value" :marks="formData.marks" @change="temperature_change" range
 									<el-slider v-model="formData.temperature_range_value" :marks="formData.marks" @change="temperature_change" range
 										:min="formData.tempratureMin" :max="formData.tempratureMax"></el-slider>
 										:min="formData.tempratureMin" :max="formData.tempratureMax"></el-slider>
 								</el-dialog>
 								</el-dialog>
 								<span>区间将不开启空调,是否启用?</span>
 								<span>区间将不开启空调,是否启用?</span>
-								<span v-if="formData.open_air_condition">
+								<span v-if="formData.is_blue">
 									<el-tooltip class="item" effect="dark" content="已启用" placement="top">
 									<el-tooltip class="item" effect="dark" content="已启用" placement="top">
-										<el-switch v-model="formData.open_air_condition" active-color="#13ce66" inactive-color="#cccccc"></el-switch>
+										<el-switch v-model="formData.is_blue" active-color="#13ce66" inactive-color="#cccccc"></el-switch>
 									</el-tooltip>
 									</el-tooltip>
 								</span>
 								</span>
 								<span v-else>
 								<span v-else>
 									<el-tooltip class="item" effect="dark" content="未启用" placement="top">
 									<el-tooltip class="item" effect="dark" content="未启用" placement="top">
-										<el-switch v-model="formData.open_air_condition" active-color="#13ce66" inactive-color="#cccccc"></el-switch>
+										<el-switch v-model="formData.is_blue" active-color="#13ce66" inactive-color="#cccccc"></el-switch>
 									</el-tooltip>
 									</el-tooltip>
 								</span>
 								</span>
 							</el-form-item>
 							</el-form-item>
@@ -53,7 +54,7 @@
 								<el-input v-model="formData.overtime" maxlength="2" placeholder="请输入小时数"></el-input>
 								<el-input v-model="formData.overtime" maxlength="2" placeholder="请输入小时数"></el-input>
 								<span>小时预警</span>
 								<span>小时预警</span>
 							</el-form-item>
 							</el-form-item>
-							<el-form-item prop="send_start" style="display: inline-block;">
+							<el-form-item prop="operator" style="display: inline-block;">
 								<span>离线预警信息推送</span>
 								<span>离线预警信息推送</span>
 								<el-input v-model="formData.operator" placeholder="请输入姓名"></el-input>
 								<el-input v-model="formData.operator" placeholder="请输入姓名"></el-input>
 							</el-form-item>
 							</el-form-item>
@@ -138,6 +139,19 @@
 					}
 					}
 				}, 100);
 				}, 100);
 			}
 			}
+			var checkOperator = (rule, value, callback) => {
+				if (!value) {
+					return callback(new Error('操作员不能为空'));
+				}
+				setTimeout(() => {
+					var reg = /^[\u4e00-\u9fa5]{2,3}$/
+					if (!reg.test(value)) {
+						callback(new Error('操作员请输入2-3个汉字姓名'));
+					} else {
+						callback();
+					}
+				}, 100);
+			}
 			var checkPhone = (rule, value, callback) => {
 			var checkPhone = (rule, value, callback) => {
 				if (!value) {
 				if (!value) {
 					return callback(new Error('请输入手机号'));
 					return callback(new Error('请输入手机号'));
@@ -169,25 +183,24 @@
 			return {
 			return {
 				// 提交表单数据
 				// 提交表单数据
 				formData: {
 				formData: {
-					temperature_range_value: [18, 28],
+					temperature_range_value: [5, 28],
 					tempratureMin: 0,
 					tempratureMin: 0,
 					tempratureMax: 35,
 					tempratureMax: 35,
 					marks: {
 					marks: {
-						0: '0℃',
-						8: '8℃',
-						18: '18℃',
+						5: '5℃',
 						28: '28℃'
 						28: '28℃'
 					},
 					},
-					temperature_range: '18℃ - 28℃',
+					temperature_range: '5℃ - 28℃',
+					paramTemp: '',
+					is_blue: false,
 					temperatureDialogVisible: false,
 					temperatureDialogVisible: false,
-					open_air_condition: false,
 					start_tiao: '',
 					start_tiao: '',
 					send_jian: '',
 					send_jian: '',
 					send_start: '',
 					send_start: '',
 					phone: '',
 					phone: '',
 					state: 1,
 					state: 1,
 					overtime: 6,
 					overtime: 6,
-					operator: '陈斌'
+					operator: ''
 				},
 				},
 				currentPage: 1,
 				currentPage: 1,
 				rows: 6,
 				rows: 6,
@@ -202,6 +215,9 @@
 					send_start: [{
 					send_start: [{
 						validator: checkStart
 						validator: checkStart
 					}],
 					}],
+					operator: [{
+						validator: checkOperator
+					}],
 					phone: [{
 					phone: [{
 						validator: checkPhone
 						validator: checkPhone
 					}],
 					}],
@@ -212,7 +228,7 @@
 			}
 			}
 		},
 		},
 		mounted() {
 		mounted() {
-			this.get_data()
+			this.get_data();
 		},
 		},
 		methods: {
 		methods: {
 			/**
 			/**
@@ -221,6 +237,7 @@
 			temperature_change() {
 			temperature_change() {
 				var t = this.formData.temperature_range_value;
 				var t = this.formData.temperature_range_value;
 				this.formData.temperature_range = t[0] + '℃ - ' + t[1] + '℃';
 				this.formData.temperature_range = t[0] + '℃ - ' + t[1] + '℃';
+				this.formData.paramTemp = t[0] + '-' + t[1];
 			},
 			},
 			/**
 			/**
 			 * 获取配置数据
 			 * 获取配置数据
@@ -229,21 +246,25 @@
 				const params = {
 				const params = {
 					page: this.currentPage,
 					page: this.currentPage,
 					rows: this.rows
 					rows: this.rows
-				}
+				};
 				// 开始发送请求,获取配置数据
 				// 开始发送请求,获取配置数据
 				getSet(params).then((res) => {
 				getSet(params).then((res) => {
 					// console.log(res.rows[0]);
 					// console.log(res.rows[0]);
-					let r = res.rows[0]
-					this.formData.start_tiao = r.start_tiao
-					this.formData.send_jian = r.send_jian + ''
-					this.formData.send_start = r.send_start
-					this.formData.phone = r.phone
-					this.formData.state = r.state
-					this.formData.overtime = r.overtime
+					let r = res.rows[0];
+					let t = r.temp.split('-');
+					this.formData.temperature_range = t[0] + '℃ - ' + t[1] + '℃';
+					this.formData.is_blue = r.is_blue == 1 ? true : false;
+					this.formData.start_tiao = r.start_tiao;
+					this.formData.send_jian = r.send_jian + '';
+					this.formData.send_start = r.send_start;
+					this.formData.phone = r.phone;
+					this.formData.state = r.state;
+					this.formData.operator = r.operator;
+					this.formData.overtime = r.overtime;
 				}).catch((err) => {
 				}).catch((err) => {
 					// console.log(err);
 					// console.log(err);
-					this.$message.error(err.message)
-				})
+					this.$message.error(err.message);
+				});
 			},
 			},
 			/**
 			/**
 			 * 提交修改后的配置
 			 * 提交修改后的配置
@@ -254,31 +275,34 @@
 						//form表单校验通过,可以进行下一步操作
 						//form表单校验通过,可以进行下一步操作
 						const params = {
 						const params = {
 							id: 1,
 							id: 1,
+							temp: this.formData.paramTemp,
+							is_blue: this.formData.is_blue == true ? 1 : 0,
 							start_tiao: this.formData.start_tiao,
 							start_tiao: this.formData.start_tiao,
 							send_jian: this.formData.send_jian,
 							send_jian: this.formData.send_jian,
 							send_start: this.formData.send_start,
 							send_start: this.formData.send_start,
 							phone: this.formData.phone,
 							phone: this.formData.phone,
 							state: this.formData.state,
 							state: this.formData.state,
+							operator: this.formData.operator,
 							overtime: this.formData.overtime
 							overtime: this.formData.overtime
-						}
+						};
 						// console.log(params);
 						// console.log(params);
 						// 开始发送更新配置请求
 						// 开始发送更新配置请求
 						updateSet(params).then((res) => {
 						updateSet(params).then((res) => {
 							// console.log(res);
 							// console.log(res);
 							if (res.code === 200) {
 							if (res.code === 200) {
-								this.$message.success(res.message)
+								this.$message.success(res.message);
 							} else {
 							} else {
-								this.$message.error(res.message)
+								this.$message.error(res.message);
 							}
 							}
 						}).catch((err) => {
 						}).catch((err) => {
 							// console.log(err);
 							// console.log(err);
-							this.$message.error(err.message)
-						})
+							this.$message.error(err.message);
+						});
 					} else {
 					} else {
-						this.$message.error('验证不通过')
-						return false
+						this.$message.error('验证不通过');
+						return false;
 					}
 					}
-				})
+				});
 			}
 			}
 		}
 		}
 	}
 	}
@@ -398,7 +422,8 @@
 </style>
 </style>
 
 
 <style>
 <style>
-	.el-date-range-picker__header {
-		display: none;
+	.temp-style .el-input__inner,
+	.el-form-item .el-date-editor--time .el-input__inner {
+		cursor: pointer;
 	}
 	}
 </style>
 </style>