Browse Source

2021-12-23

East 3 years ago
parent
commit
285f43a3a7

+ 35 - 28
public/static/dahua/index.html

@@ -1,35 +1,42 @@
+<!--
+ * @Author: your name
+ * @Date: 2021-12-07 09:45:10
+ * @LastEditTime: 2021-12-23 08:51:21
+ * @LastEditors: your name
+ * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+ * @FilePath: \hyyfClient\public\static\dahua\index.html
+-->
 <!DOCTYPE html>
 <html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  <head>
+    <meta charset="UTF-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
     <title>Document</title>
-    <link rel="stylesheet" href="./static/WSPlayer/player.css">
+    <link rel="stylesheet" href="./static/WSPlayer/player.css" />
     <script src="./static/jquery-3.6.0.min.js"></script>
     <script src="./static/WSPlayer/PlayerControl.js"></script>
-</head>
-<body style="margin: 0; width: 100%; height: 100%">
+  </head>
+  <body style="margin: 0; width: 100%; height: 100%">
     <div id="ws-record-player" style="width: 100%; height: 600px;"></div>
-</body>
-<script type="module">
-  import WSPlayer from "./src/WSPlayer/WSPlayer.js";
-  let recordPlayer = new WSPlayer({
-    el: 'ws-record-player', // 必传
-    type: 'record', // real | record
-    serverIp: '36.26.62.70',
-    num: 1,
-    showControl: true,
-  })
-  let url = location.href;
-  let rtsps = url.split('?')[1];
-  let token = url.split('?')[2];
-  let rtsp = rtsps + '?' + token;
-  console.log(rtsp)
-  recordPlayer.playRecord({
-    rtspURL: rtsp, // String | Array[String] 可以传入多个rtsp地址,将会按照顺序在播放器中播放,最多播放四个
-    decodeMode: 'canvas', // 解码方式, video|canvas 可以不传,自动识别,h264使用video播放,265使用canvas播放
-    // wsURL: '' // 选择传递,默认播放器是连接服务器对应的websocket,但是也可以指定连接websocket地址
-  })
-</script>
+  </body>
+  <script type="module">
+    import WSPlayer from "./src/WSPlayer/WSPlayer.js";
+    let recordPlayer = new WSPlayer({
+      el: "ws-record-player", // 必传
+      type: "record", // real | record
+      serverIp: "36.26.62.70",
+      num: 1,
+      showControl: true,
+    });
+    let url = location.href;
+    let rtsps = url.split("?")[1];
+    let token = url.split("?")[2];
+    let rtsp = rtsps + "?" + token;
+    recordPlayer.playRecord({
+      rtspURL: rtsp, // String | Array[String] 可以传入多个rtsp地址,将会按照顺序在播放器中播放,最多播放四个
+      decodeMode: "canvas", // 解码方式, video|canvas 可以不传,自动识别,h264使用video播放,265使用canvas播放
+      // wsURL: '' // 选择传递,默认播放器是连接服务器对应的websocket,但是也可以指定连接websocket地址
+    });
+  </script>
 </html>

+ 1 - 1
src/utils/chenApi.js

@@ -259,7 +259,7 @@ export function getTheSales(params) {
 // 重量详情
 export function getDayWeight(params) {
   return axios({
-    url: '/produce/weight/getBatchWeightOnPage2',
+    url: '/produce/weight/getEveryWeightOnPage',
     method: 'get',
     params: params
   })

+ 59 - 36
src/views/Alarm/alarm-set/RegularForm.vue

@@ -1,23 +1,24 @@
 <!--
  * @Author: your name
  * @Date: 2021-11-29 15:55:20
- * @LastEditTime: 2021-12-05 13:24:25
+ * @LastEditTime: 2021-12-23 14:13:45
  * @LastEditors: Please set LastEditors
  * @Description: 常规设置的每一项
  * @FilePath: \hyyfClient\src\views\Alarm\alarm-set\RegularForm.vue
 -->
 <template>
   <div class="regular-form">
-    <el-form :model="regularForm" label-width="140px">
+    <el-form :model="regularForm" label-width="200px">
       <div class="row">
         <el-form-item label="高温报警阈值:" prop="maxTem">
           <el-input style="width: 200px" v-model="regularForm.maxTem">
           </el-input>
           <span class="margin-left">℃</span>
         </el-form-item>
-        <el-form-item label="化学需氧量阈值:" prop="cod">
-          <el-input style="width: 200px" v-model="regularForm.cod"> </el-input>
-          <span class="margin-left">mg/L</span>
+        <el-form-item label="天气高温报警阈值:" prop="weatherMaxTem">
+          <el-input style="width: 200px" v-model="regularForm.weatherMaxTem">
+          </el-input>
+          <span class="margin-left-left">℃</span>
         </el-form-item>
       </div>
 
@@ -27,6 +28,31 @@
           </el-input>
           <span class="margin-left">℃</span>
         </el-form-item>
+        <el-form-item label="天气低温报警阈值:" prop="weatherMinTem">
+          <el-input style="width: 200px" v-model="regularForm.weatherMinTem">
+          </el-input>
+          <span class="margin-left-left">℃</span>
+        </el-form-item>
+      </div>
+
+      <div class="row">
+        <el-form-item label="烘干高温报警阈值:" prop="benconValue">
+          <el-input style="width: 200px" v-model="regularForm.benconValue">
+          </el-input>
+          <span class="margin-left-left">℃</span>
+        </el-form-item>
+        <el-form-item label="化学需氧量阈值:" prop="cod">
+          <el-input style="width: 200px" v-model="regularForm.cod"> </el-input>
+          <span class="margin-left">mg/L</span>
+        </el-form-item>
+      </div>
+
+      <div class="row">
+        <el-form-item label="烘干持续时长报警阈值:" prop="benconTime">
+          <el-input style="width: 200px" v-model="regularForm.benconTime">
+          </el-input>
+          <span class="margin-left-left">分钟</span>
+        </el-form-item>
         <el-form-item label="氨氮量阈值:" prop="ammonia">
           <el-input style="width: 200px" v-model="regularForm.ammonia">
           </el-input>
@@ -66,14 +92,13 @@
           </el-input>
           <span class="margin-left">T/HT</span>
         </el-form-item>
-        <el-form-item label="ph值:" prop="totalFlow">
+        <el-form-item label="ph值:" prop="ph">
           <el-input style="width: 200px" v-model="regularForm.ph"> </el-input>
           <div class="margin-left block"></div>
         </el-form-item>
       </div>
-
       <div class="row">
-        <el-form-item label="瞬时流量:" prop="totalFlow">
+        <el-form-item label="瞬时流量:" prop="flow">
           <el-input style="width: 200px" v-model="regularForm.flow"> </el-input>
           <span class="margin-left">T/HT</span>
         </el-form-item>
@@ -86,17 +111,7 @@ import { getRegularList, getRegularSet } from "utils/chenApi.js";
 export default {
   data() {
     return {
-      regularForm: {
-        maxTem: 30,
-        minTem: 15,
-        maxHum: 100,
-        minHum: 15,
-        totalFlow: 15,
-        cod: 15,
-        ammonia: 15,
-        phosphorus: 15,
-        nitrogen: 15,
-      },
+      regularForm: {},
     };
   },
   mounted() {
@@ -105,29 +120,33 @@ export default {
   methods: {
     initRegular() {
       getRegularList({}).then(({ code, data }) => {
+        this.regularForm = {
+          maxTem: "未设定",
+          minTem: "未设定",
+          maxHum: "未设定",
+          minHum: "未设定",
+          totalFlow: "未设定",
+          COD: "未设定",
+          ammonia: "未设定",
+          phosphorus: "未设定",
+          nitrogen: "未设定",
+          ph: "未设定",
+          flow: "未设定",
+          weatherMaxTem: "未设定",
+          weatherMinTem: "未设定",
+          benconTime: "未设定",
+          benconValue: "未设定",
+        };
         if (code === 10000) {
-          if (!data) {
-            this.regularForm = {
-              maxTem: "未设定",
-              minTem: "未设定",
-              maxHum: "未设定",
-              minHum: "未设定",
-              totalFlow: "未设定",
-              COD: "未设定",
-              ammonia: "未设定",
-              phosphorus: "未设定",
-              nitrogen: "未设定",
-              ph: "未设定",
-              flow: "未设定",
-            };
+          // this.regularForm = { ...regularForm, ...data };
+          for (const key in data) {
+            this.regularForm[key] = data[key] ?? "未设定";
           }
-          this.regularForm = { ...data };
         }
       });
     },
     actionRegular() {
-      getRegularSet({ ...this.regularForm }).then((res) => {
-        console.log(res);
+      getRegularSet({ ...this.regularForm }).then(() => {
         this.initRegular();
       });
     },
@@ -142,6 +161,10 @@ export default {
 .margin-left {
   padding-left: 20px;
 }
+.margin-left-left {
+  padding-left: 20px;
+  margin-right: 20px;
+}
 .block {
   display: inline-block;
   height: 10px;

+ 182 - 139
src/views/BioSafety/CarAdmin.vue

@@ -35,19 +35,37 @@
     >
       <template #right>
         <template v-if="btnSelected === 1">
-          <el-button size="mini" @click="add" type="primary">新增车辆</el-button>
-          <el-button size="mini" @click="btnSelected = 5" type="success">查看白名单</el-button>
-          <el-button size="mini" @click="btnSelected = 6" type="warning">查看黑名单</el-button>
+          <el-button size="mini" @click="add" type="primary"
+            >新增车辆</el-button
+          >
+          <el-button size="mini" @click="btnSelected = 5" type="success"
+            >查看白名单</el-button
+          >
+          <el-button size="mini" @click="btnSelected = 6" type="warning"
+            >查看黑名单</el-button
+          >
         </template>
         <template v-if="btnSelected === 5">
-          <el-button size="mini" type="success" @click="addWhite(1)">添加白名单</el-button>
-          <el-button size="mini" @click="btnSelected = 1" type="primary">查看车辆档案</el-button>
-          <el-button size="mini" @click="btnSelected = 6" type="warning">查看黑名单</el-button>
+          <el-button size="mini" type="success" @click="addWhite(1)"
+            >添加白名单</el-button
+          >
+          <el-button size="mini" @click="btnSelected = 1" type="primary"
+            >查看车辆档案</el-button
+          >
+          <el-button size="mini" @click="btnSelected = 6" type="warning"
+            >查看黑名单</el-button
+          >
         </template>
         <template v-if="btnSelected === 6">
-          <el-button size="mini" type="success" @click="addWhite(2)">添加黑名单</el-button>
-          <el-button size="mini" @click="btnSelected = 1" type="primary">查看车辆档案</el-button>
-          <el-button size="mini" @click="btnSelected = 5" type="success">查看白名单</el-button>
+          <el-button size="mini" type="success" @click="addWhite(2)"
+            >添加黑名单</el-button
+          >
+          <el-button size="mini" @click="btnSelected = 1" type="primary"
+            >查看车辆档案</el-button
+          >
+          <el-button size="mini" @click="btnSelected = 5" type="success"
+            >查看白名单</el-button
+          >
         </template>
       </template>
       <!-- <template v-slot:right>
@@ -67,22 +85,33 @@
       </template> -->
       <!--  白名单操作    -->
       <template #whiteHandle="scope">
-        <el-button size="mini" type="primary" @click="del(scope.row, 1)">移出白名单</el-button>
+        <el-button size="mini" type="primary" @click="del(scope.row, 1)"
+          >移出白名单</el-button
+        >
       </template>
       <template #blackHandle="scope">
-        <el-button size="mini" type="primary" @click="del(scope.row, 2)">移出黑名单</el-button>
+        <el-button size="mini" type="primary" @click="del(scope.row, 2)"
+          >移出黑名单</el-button
+        >
       </template>
       <!--  车辆档案操作    -->
       <template #handle="scope">
-<!--        <el-button size="mini" type="success" @click="onJoin(scope.row, 1)">加入白名单</el-button>-->
-<!--        <el-button size="mini" type="warning" @click="onJoin(scope.row, 2)">加入黑名单</el-button>-->
-        <el-button size="mini" type="danger" @click="onJoin(scope.row, 3)">删除</el-button>
+        <!--        <el-button size="mini" type="success" @click="onJoin(scope.row, 1)">加入白名单</el-button>-->
+        <!--        <el-button size="mini" type="warning" @click="onJoin(scope.row, 2)">加入黑名单</el-button>-->
+        <el-button size="mini" type="danger" @click="onJoin(scope.row, 3)"
+          >删除</el-button
+        >
       </template>
       <template v-slot:carNum="slotProps">
         {{ slotProps.row.carNum ? slotProps.row.carNum : "未识别" }}
       </template>
       <template #carHandle="scope">
-        <el-button v-if="scope.row.carNum" size="mini" @click="addBase(scope.row.carNum)">添加到车辆档案</el-button>
+        <el-button
+          v-if="scope.row.carNum"
+          size="mini"
+          @click="addBase(scope.row.carNum)"
+          >添加到车辆档案</el-button
+        >
       </template>
       <template v-slot:originalPicPath="slotProps">
         <img
@@ -174,11 +203,18 @@
         </el-button>
       </span>
     </el-dialog>
-    <el-dialog :title="showType ? '添加黑名单' : '添加白名单' " :visible.sync="isWhite" width="50%">
-      <new-table :title="''"
+    <el-dialog
+      :title="showType ? '添加黑名单' : '添加白名单'"
+      :visible.sync="isWhite"
+      width="50%"
+    >
+      <new-table
+        :title="''"
         :listData="abList"
-                 :tableItems="abItems"
-                 :shows="abShows" @selectionChange="selectionChange"></new-table>
+        :tableItems="abItems"
+        :shows="abShows"
+        @selectionChange="selectionChange"
+      ></new-table>
       <span slot="footer" class="dialog-footer">
         <el-button @click="isWhite = false">取 消</el-button>
         <el-button type="primary" @click="clickCar">
@@ -206,7 +242,16 @@ import {
   getCarWashVideo,
   getCarDrying,
   getCarDryingTemp,
-  getCarList, addCarWhite, addCarBlack, showCarWhite, addCarBase, showCarBlack, delCarWhite, delCarBlack, delCarBase, addWandB
+  getCarList,
+  addCarWhite,
+  addCarBlack,
+  showCarWhite,
+  addCarBase,
+  showCarBlack,
+  delCarWhite,
+  delCarBlack,
+  delCarBase,
+  addWandB,
 } from "../../utils/chenApi";
 import { timeDate } from "../../utils/index";
 import { mapState } from "vuex";
@@ -227,7 +272,7 @@ export default {
     return {
       btnNames: [
         // 按钮情况
-        { id: 1, name: '车辆档案'},
+        { id: 1, name: "车辆档案" },
         { id: 2, name: "车辆通行" },
         { id: 3, name: "车辆洗消" },
         { id: 4, name: "车辆烘干" },
@@ -253,12 +298,12 @@ export default {
       tempChartData: {},
       isFile: false,
       form: {
-        carId: '',
-        carNum: '',
+        carId: "",
+        carNum: "",
       },
       rules: {
-        carId: [{ required: true, message: '请输入车辆编号', trigger: 'blur' }],
-        carNum: [{ required: true, message: '请输入车牌号', trigger: 'blur' }]
+        carId: [{ required: true, message: "请输入车辆编号", trigger: "blur" }],
+        carNum: [{ required: true, message: "请输入车牌号", trigger: "blur" }],
       },
       showType: false,
       isWhite: false,
@@ -266,21 +311,21 @@ export default {
       abList: [],
       abItems: [
         {
-          prop: 'carId',
-          label: '车辆编号',
-          minWidth: '120',
-          slotName: 'carId'
+          prop: "carId",
+          label: "车辆编号",
+          minWidth: "120",
+          slotName: "carId",
         },
         {
-          prop: 'carNum',
-          label: '车牌号',
-          minWidth: '120',
-          slotName: 'carNum'
+          prop: "carNum",
+          label: "车牌号",
+          minWidth: "120",
+          slotName: "carNum",
         },
       ],
       abShows: {
         showIndex: false,
-        showSelect: true
+        showSelect: true,
       },
       selectList: [],
     };
@@ -295,24 +340,24 @@ export default {
       this.tableItems = tableItems[this.btnSelected - 1];
       if (newVal === 1) {
         // 档案
-        this.getCarList()
+        this.getCarList();
       } else if (newVal === 2) {
         // 车辆通行
         this.carPassage();
       } else if (newVal === 3) {
         // 车辆洗消
         this.carWash();
-      } else if(newVal=== 4){
+      } else if (newVal === 4) {
         // 车辆烘干
         this.carDrying();
-      } else if(newVal === 5) {
+      } else if (newVal === 5) {
         // 白名单
-        this.ShowCarWhite()
+        this.ShowCarWhite();
       } else {
         // 黑名单
-        this.ShowCarBlack()
+        this.ShowCarBlack();
       }
-    }
+    },
   },
   mounted() {
     this.formItems = formItems[this.btnSelected - 1];
@@ -321,8 +366,7 @@ export default {
     this.tableItems = tableItems[this.btnSelected - 1];
     this.tableShows = tableShows;
     // 档案
-    this.getCarList()
-
+    this.getCarList();
   },
   methods: {
     getBtnSelected(id) {
@@ -336,22 +380,22 @@ export default {
       this.listData = [];
       if (this.btnSelected === 1) {
         // 档案
-        this.getCarList()
+        this.getCarList();
       } else if (this.btnSelected === 2) {
         // 车辆通行
         this.carPassage();
       } else if (this.btnSelected === 3) {
         // 车辆洗消
         this.carWash();
-      } else if(this.btnSelected === 4){
+      } else if (this.btnSelected === 4) {
         // 车辆烘干
         this.carDrying();
-      } else if(this.btnSelected === 5) {
+      } else if (this.btnSelected === 5) {
         // 白名单
-        this.ShowCarWhite()
+        this.ShowCarWhite();
       } else {
         // 黑名单
-        this.ShowCarBlack()
+        this.ShowCarBlack();
       }
     },
     // 修改size
@@ -361,17 +405,17 @@ export default {
       this.listData = [];
       if (this.btnSelected === 1) {
         // 档案
-        this.getCarList()
+        this.getCarList();
       } else if (this.btnSelected === 2) {
         // 车辆通行
         this.carPassage();
       } else if (this.btnSelected === 3) {
         // 车辆洗消
         this.carWash();
-      } else if(this.btnSelected === 4){
+      } else if (this.btnSelected === 4) {
         // 车辆烘干
         this.carDrying();
-      } else if(this.btnSelected === 5) {
+      } else if (this.btnSelected === 5) {
         // 白名单
         this.ShowCarWhite();
       } else {
@@ -384,17 +428,17 @@ export default {
       this.pageNum = val;
       if (this.btnSelected === 1) {
         // 档案
-        this.getCarList()
+        this.getCarList();
       } else if (this.btnSelected === 2) {
         // 车辆通行
         this.carPassage();
       } else if (this.btnSelected === 3) {
         // 车辆洗消
         this.carWash();
-      } else if(this.btnSelected === 4){
+      } else if (this.btnSelected === 4) {
         // 车辆烘干
         this.carDrying();
-      } else if(this.btnSelected === 5) {
+      } else if (this.btnSelected === 5) {
         // 白名单
         this.ShowCarWhite();
       } else {
@@ -428,49 +472,49 @@ export default {
     getCarList() {
       let params = {
         pageNum: this.pageNum,
-        pageSize: this.size
-      }
-      getCarList(params).then(res => {
-        if(res.code == 200) {
+        pageSize: this.size,
+      };
+      getCarList(params).then((res) => {
+        if (res.code == 200) {
           const result = JSON.parse(res.result);
           this.total = parseInt(result.data.totalRows);
           this.listData = result.data.pageData;
         }
-      })
+      });
     },
     // 档案操作
     onJoin(row, num) {
-      if(num === 1) {
-        addCarWhite({carId: row.carId}).then(res => {
-          if(res.code == 200) {
-            this.$message.success('加入白名单成功');
+      if (num === 1) {
+        addCarWhite({ carId: row.carId }).then((res) => {
+          if (res.code == 200) {
+            this.$message.success("加入白名单成功");
             this.getCarList();
           } else {
             this.$message.error(res.errMsg);
           }
-        })
-      } else if(num === 2) {
-        addCarBlack({carId: row.carId}).then(res => {
-          if(res.code == 200) {
-            this.$message.success('加入黑名单成功');
+        });
+      } else if (num === 2) {
+        addCarBlack({ carId: row.carId }).then((res) => {
+          if (res.code == 200) {
+            this.$message.success("加入黑名单成功");
             this.getCarList();
           } else {
             this.$message.error(res.errMsg);
           }
-        })
-      } else if(num === 3) {
+        });
+      } else if (num === 3) {
         // 删除
         let params = {
-          carIdList: [row.carId]
-        }
-        delCarBase(params).then(res => {
-          if(res.code == 200) {
-            this.$message.success('删除成功');
-            this.getCarList()
+          carIdList: [row.carId],
+        };
+        delCarBase(params).then((res) => {
+          if (res.code == 200) {
+            this.$message.success("删除成功");
+            this.getCarList();
           } else {
             this.$message.error(res.errMsg);
           }
-        })
+        });
       }
     },
     // 新增车辆
@@ -484,56 +528,56 @@ export default {
       this.isWhite = true;
       let params = {
         pageNum: 1,
-        pageSize: 200
-      }
-      if(num === 1) {
+        pageSize: 200,
+      };
+      if (num === 1) {
         params.draw = 4;
         this.showType = false;
       } else {
         this.showType = true;
         params.draw = 5;
       }
-      addWandB(params).then(res => {
-        if(res.code == 200) {
+      addWandB(params).then((res) => {
+        if (res.code == 200) {
           const result = JSON.parse(res.result);
           this.abList = result.data.pageData;
         } else {
           this.$message.error(res.errMsg);
         }
-      })
+      });
     },
     clickCar() {
-      if(this.selectList.length > 0) {
+      if (this.selectList.length > 0) {
         let params = {};
         let arr = [];
-        this.selectList.forEach(item => {
-          arr.push(item.carId)
-        })
+        this.selectList.forEach((item) => {
+          arr.push(item.carId);
+        });
         params.carIdList = arr;
-        if(this.showType) {
+        if (this.showType) {
           // 黑名单
-          addCarBlack(params).then(res => {
-            if(res.code == 200) {
-              this.$message.success('添加成功!');
+          addCarBlack(params).then((res) => {
+            if (res.code == 200) {
+              this.$message.success("添加成功!");
               this.ShowCarBlack();
             } else {
-              this.$message.error(res.errMsg)
+              this.$message.error(res.errMsg);
             }
             this.isWhite = false;
-          })
+          });
         } else {
-          addCarWhite(params).then(res => {
-            if(res.code == 200) {
-              this.$message.success('添加成功!');
+          addCarWhite(params).then((res) => {
+            if (res.code == 200) {
+              this.$message.success("添加成功!");
               this.ShowCarWhite();
             } else {
-              this.$message.error(res.errMsg)
+              this.$message.error(res.errMsg);
             }
             this.isWhite = false;
-          })
+          });
         }
       } else {
-        this.$message.error('请选择要添加的车辆!');
+        this.$message.error("请选择要添加的车辆!");
       }
     },
     // 选择
@@ -544,25 +588,24 @@ export default {
     submitForm(formName) {
       this.$refs[formName].validate((valid) => {
         if (valid) {
-          if(this.showType) {
+          if (this.showType) {
             // 编辑
-
           } else {
             let params = {
-              carNum: this.form.carNum
-            }
-            addCarBase(params).then(res => {
-              if(res.code == 200) {
+              carNum: this.form.carNum,
+            };
+            addCarBase(params).then((res) => {
+              if (res.code == 200) {
                 this.reset();
-                this.$message.success('添加成功');
+                this.$message.success("添加成功");
                 this.getCarList();
               } else {
                 this.$message.error(res.errMsg);
               }
-            })
+            });
           }
         } else {
-          console.log('error submit!!');
+          console.log("error submit!!");
           return false;
         }
       });
@@ -572,78 +615,78 @@ export default {
       this.isFile = false;
       this.showType = false;
       this.form = {
-        carNum: '',
-        carId: ''
-      }
+        carNum: "",
+        carId: "",
+      };
     },
     // 白名单列表
     ShowCarWhite() {
       let params = {
         pageNum: this.pageNum,
-        pageSize: this.size
-      }
-      showCarWhite(params).then(res => {
-        if(res.code == 200) {
+        pageSize: this.size,
+      };
+      showCarWhite(params).then((res) => {
+        if (res.code == 200) {
           const result = JSON.parse(res.result);
           this.total = parseInt(result.data.totalRows);
           this.listData = result.data.pageData;
         }
-      })
+      });
     },
     // 黑名单列表
     ShowCarBlack() {
       let params = {
         pageNum: this.pageNum,
-        pageSize: this.size
-      }
-      showCarBlack(params).then(res => {
-        if(res.code == 200) {
+        pageSize: this.size,
+      };
+      showCarBlack(params).then((res) => {
+        if (res.code == 200) {
           const result = JSON.parse(res.result);
           this.total = parseInt(result.data.totalRows);
           this.listData = result.data.pageData;
         } else {
           this.$message.error(res.errMsg);
         }
-      })
+      });
     },
     // 移除黑白名单
     del(row, num) {
       let params = {
-        carIdList: [row.carId]
-      }
-      if(num === 1) {
-        delCarWhite(params).then(res => {
-          if(res.code == 200) {
-            this.$message.success('移出白名单成功!');
+        carIdList: [row.carId],
+      };
+      if (num === 1) {
+        delCarWhite(params).then((res) => {
+          if (res.code == 200) {
+            this.$message.success("移出白名单成功!");
             this.ShowCarWhite();
           } else {
-            this.$message.error(res.errMsg)
+            this.$message.error(res.errMsg);
           }
-        })
+        });
       } else {
-        delCarBlack(params).then(res => {
-          if(res.code == 200) {
-            this.$message.success('移出黑名单成功!');
+        delCarBlack(params).then((res) => {
+          if (res.code == 200) {
+            this.$message.success("移出黑名单成功!");
             this.ShowCarBlack();
           } else {
-            this.$message.error(res.errMsg)
+            this.$message.error(res.errMsg);
           }
-        })
+        });
       }
     },
 
     // 车辆通行添加到车辆档案
     addBase(id) {
       let params = {
-        carNum: id
-      }
-      addCarBase(params).then(res => {
-        if(res.code == 200) {
-          this.$message.success('添加成功!');
+        carNum: id,
+      };
+      addCarBase(params).then((res) => {
+        if (res.code == 200) {
+          this.$message.success("添加成功!");
         } else {
           this.$message.error(res.errMsg);
         }
-      })
+      });
     },
     // 车辆洗消
     carWash() {

+ 1 - 1
src/views/DeviceMana/Device.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2021-12-07 14:27:28
- * @LastEditTime: 2021-12-22 10:59:35
+ * @LastEditTime: 2021-12-23 09:25:40
  * @LastEditors: Please set LastEditors
  * @Description: 设备管理页面
  * @FilePath: \hyyfClient\src\views\DeviceMana\Device.vue

+ 7 - 0
src/views/DeviceMana/device/AddOrEdit.vue

@@ -114,11 +114,18 @@ export default {
       this.dialogVisible = true;
     },
     handleSubmit() {
+      const loading = this.$loading({
+        lock: true,
+        text: "加载中...",
+        spinner: "el-icon-loading",
+        background: "rgba(0, 0, 0, 0.7)",
+      });
       let request = postDeviceAdd;
       if (this.form.id) {
         request = postDeviceEdit;
       }
       request({ ...this.form }).then((res) => {
+        loading.close();
         if (res.code === 10000) {
           this.$message.success(`${this.form.id ? "修改" : "添加"}成功`);
           this.handleCancel();

+ 118 - 13
src/views/Env/SalePig.vue

@@ -1,14 +1,22 @@
 <!--
  * @Author: your name
  * @Date: 2021-12-07 10:07:56
- * @LastEditTime: 2021-12-22 17:37:31
+ * @LastEditTime: 2021-12-23 15:15:21
  * @LastEditors: Please set LastEditors
  * @Description: 电子秤 - TODO: 卖猪计量的视频回放按钮
  * @FilePath: \hyyfClient\src\views\Env\SalePig.vue
 -->
 <template>
   <div class="sale-pig">
-    <div class="reply" :style="{ color: color }">卖猪重量计量</div>
+    <div class="reply" :style="{ color: color }">
+      <div class="reset-title">
+        <span>卖猪重量计量</span>
+        <div class="reset-btns">
+          <el-button size="small" @click="handlePlay(1)">卖猪台点猪</el-button>
+          <el-button size="small" @click="handlePlay(2)">卖猪台猪舍</el-button>
+        </div>
+      </div>
+    </div>
     <x-form
       :formItems="formItems"
       :day="day"
@@ -27,14 +35,18 @@
     </div>
     <br />
     <div class="reply" :style="{ color: color }">重量详情</div>
+    <x-form
+      :formItems="formItemsTable"
+      :day="dayTable"
+      @setDay="setDayTable"
+      @onClickType="onClickTypeTable"
+    >
+    </x-form>
     <table-content
       :listData="elecDataList"
       :tableItems="tableItems"
       :shows="shows"
     >
-      <template #batchCode="slotProps">
-        {{ slotProps.row.batchCode + slotProps.row.batchSort }}
-      </template>
     </table-content>
     <table-footer
       :totals="total"
@@ -43,6 +55,20 @@
       @pageChange="pageChange"
     >
     </table-footer>
+    <el-dialog title="回放视频" :visible.sync="videoVisible" width="50%">
+      <div style="width: 100%; height: 560px">
+        <iframe
+          v-if="videoVisible"
+          :src="rtsp"
+          frameborder="0"
+          style="width: 100%; height: 530px;"
+        >
+        </iframe>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="videoVisible = false">关 闭</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -104,6 +130,33 @@ export default {
         },
       ],
       day: 1,
+      params: {},
+      // 卖猪详情的查询
+      formItemsTable: [
+        {
+          id: 2,
+          type: "text",
+          text: "今日",
+          value: 1,
+          col: 1.5,
+        },
+        {
+          id: 4,
+          type: "datepicker",
+          placeholder: [],
+          field: "value1",
+          col: 6,
+        },
+        {
+          id: 8,
+          type: "button",
+          text: "查询",
+          col: 2,
+          click: "search",
+        },
+      ],
+      dayTable: 1,
+      paramsTable: {},
       elecAllCount: "0",
       elecData: {
         month: [],
@@ -118,12 +171,6 @@ export default {
           slotName: "addTime",
         },
         {
-          prop: "batchCode",
-          label: "批次",
-          minWidth: "120",
-          slotName: "batchCode",
-        },
-        {
           prop: "grossWeight",
           label: "毛重",
           minWidth: "100",
@@ -149,7 +196,8 @@ export default {
       total: 0,
       pageNum: 1,
       pageSize: 20,
-      params: {},
+      videoVisible: false, // 视频回放
+      rtsp: "", // 视频回放的地址
     };
   },
   mounted() {
@@ -187,14 +235,17 @@ export default {
     },
     // 重量详情
     initDayWeight() {
+      this.pageNum = 1;
       getDayWeight({
         pageNo: this.pageNum,
         pageSize: this.pageSize,
+        startDate: this.paramsTable.time ? this.paramsTable.time[0] : undefined,
+        endDate: this.paramsTable.time ? this.paramsTable.time[1] : undefined,
+        days: this.paramsTable.time ? undefined : 0,
       }).then((res) => {
         if (res.code === 10000) {
           this.elecDataList = res.data.content;
           this.elecDataList.forEach((item) => {
-            item.addTime = item.addTime.split("T")[0];
             item.grossWeight += " kg";
             item.tareWeight += " kg";
             item.netWeight += " kg";
@@ -259,6 +310,49 @@ export default {
         }
       });
     },
+    // 卖猪详情 - 今日
+    setDayTable() {
+      this.paramsTable = {};
+      this.initDayWeight();
+    },
+    onClickTypeTable(data) {
+      this.dayTable = 8; // 随便什么数字,反正今日不被选中
+      this.paramsTable.time = data.data.value1;
+      if (!this.paramsTable.time) {
+        this.$message.info("请选择时间");
+        return;
+      }
+      this.initDayWeight();
+    },
+    // 卖猪视频播放
+    handlePlay(val) {
+      if (val === 1) {
+        this.rtsp =
+          "static/jinm/index.html?" +
+          "1" +
+          "," +
+          "ws://36.26.62.70:9080/camera_relay?tcpaddr=admin%3Ahmkj6688%40172.16.3.193" +
+          "," +
+          "rtsp://admin:hmkj6688@172.16.3.193/cam/realmonitor?channel=1&subtype=0" +
+          "," +
+          "100%" +
+          "," +
+          "0";
+      } else {
+        this.rtsp =
+          "static/jinm/index.html?" +
+          "1" +
+          "," +
+          "ws://36.26.62.70:9080/camera_relay?tcpaddr=admin%3Ahmkj6688%40172.16.3.192" +
+          "," +
+          "rtsp://admin:hmkj6688@172.16.3.193/cam/realmonitor?channel=1&subtype=0" +
+          "," +
+          "100%" +
+          "," +
+          "0";
+      }
+      this.videoVisible = true;
+    },
   },
 };
 </script>
@@ -280,6 +374,17 @@ export default {
   box-sizing: border-box;
   padding-left: 20px;
 }
+/* 为了放视频按钮 */
+.reset-title {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  padding-right: 20px;
+}
+.reset-btns {
+  display: flex;
+  align-items: center;
+}
 .echarts {
   width: 100%;
   height: 401px;