From b9ffd276b4fa8ca1918f486e70d7e4d0d04d9d9f Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Wed, 10 Aug 2022 08:47:46 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/zhny-dsjdp

---
 src/styles/publicBox/equirment-vid-details.css         |   46 
 src/styles/publicBox/equirment-station-details.scss    |  101 +
 src/api/farm/source.js                                 |   10 
 src/styles/publicBox/equirment-station-details.css     |  108 +
 src/views/equipment/index.vue                          |   30 
 src/styles/publicBox/equirment-vid-details.min.css     |    1 
 src/views/manage/index.vue                             | 3792 ++++++++++++++++++++++-----------------------
 src/styles/publicBox/equirment-station-details.min.css |    1 
 src/api/farm/farmingrecord.js                          |   20 
 src/views/farm/index.vue                               |  512 +++++
 src/views/home/index.vue                               |   52 
 src/styles/index.css                                   |  137 +
 public/img/icon/down_menu.png                          |    0 
 src/main.js                                            |    2 
 src/styles/publicBox/equirment-vid-details.scss        |   49 
 public/img/icon/icon_3788.png                          |    0 
 public/img/icon/up_menu.png                            |    0 
 src/api/equipment/equipment.js                         |   58 
 public/img/icon/close.png                              |    0 
 src/api/land/land.js                                   |   24 
 src/styles/index.scss                                  |    2 
 src/styles/index.min.css                               |    2 
 22 files changed, 2,932 insertions(+), 2,015 deletions(-)

diff --git a/public/img/icon/close.png b/public/img/icon/close.png
new file mode 100644
index 0000000..e78bb92
--- /dev/null
+++ b/public/img/icon/close.png
Binary files differ
diff --git a/public/img/icon/down_menu.png b/public/img/icon/down_menu.png
new file mode 100644
index 0000000..b229742
--- /dev/null
+++ b/public/img/icon/down_menu.png
Binary files differ
diff --git a/public/img/icon/icon_3788.png b/public/img/icon/icon_3788.png
new file mode 100644
index 0000000..226547e
--- /dev/null
+++ b/public/img/icon/icon_3788.png
Binary files differ
diff --git a/public/img/icon/up_menu.png b/public/img/icon/up_menu.png
new file mode 100644
index 0000000..a519ef4
--- /dev/null
+++ b/public/img/icon/up_menu.png
Binary files differ
diff --git a/src/api/equipment/equipment.js b/src/api/equipment/equipment.js
new file mode 100644
index 0000000..9e73128
--- /dev/null
+++ b/src/api/equipment/equipment.js
@@ -0,0 +1,58 @@
+import request from '@/router/axios'
+
+// 获取在线设备信息
+export const getStationAndVideoCount = (params) => {
+    return request({
+        url: 'http://dev.jxpskj.com:8030/pyh-station/stationAndVideo/count',
+        method: 'get',
+        params: {
+            ...params
+        }
+    })
+}
+
+// 获取监控/监测设备列表
+export const getStationAndVideoList = (params) => {
+    return request({
+        url: 'http://dev.jxpskj.com:8030/pyh-station/stationAndVideo/queryStationAndVideoInfo',
+        method: 'get',
+        params: {
+            ...params
+        }
+    })
+}
+
+// 根据地块获取监测监控设备
+export const getStationAndVideoByLandId = (landId, type) => {
+    return request({
+        url: 'http://dev.jxpskj.com:8030/pyh-station/stationAndVideo/queryStationAndVideoByLandId',
+        method: 'get',
+        params: {
+            land_id: landId,
+            type: type
+        }
+    })
+}
+// 根据设备号获取监测设备数据
+export const getStationDateByStcd = (stcd, startTime, endTime) => {
+    return request({
+        url: 'http://dev.jxpskj.com:8030/pyh-station/naturalFactors/findElementDataByTime',
+        method: 'get',
+        params: {
+            stcd: stcd,
+            startTime: startTime,
+            endTime: endTime
+        }
+    })
+}
+
+// 根据农场id获取设备列表 监控和监测在同一个集合
+export const queryEquipmentList = (params) => {
+    return request({
+        url: 'http://dev.jxpskj.com:8030/pyh-station/stationAndVideo/queryEquipmentList',
+        method: 'get',
+        params: {
+            ...params
+        }
+    })
+}
diff --git a/src/api/farm/farmingrecord.js b/src/api/farm/farmingrecord.js
index e2aa52e..2ff1d1e 100644
--- a/src/api/farm/farmingrecord.js
+++ b/src/api/farm/farmingrecord.js
@@ -299,24 +299,4 @@
         }
     })
 }
-// 获取在线设备信息
-export const getStationAndVideoCount = (params) => {
-    return request({
-        url: 'http://dev.jxpskj.com:8030/pyh-station/stationAndVideo/count',
-        method: 'get',
-        params: {
-            ...params
-        }
-    })
-}
-// 获取监控/监测设备列表
-export const getStationAndVideoList = (params) => {
-    return request({
-        url: 'http://dev.jxpskj.com:8030/pyh-station/stationAndVideo/queryStationAndVideoInfo',
-        method: 'get',
-        params: {
-            ...params
-        }
-    })
-}
 
diff --git a/src/api/farm/source.js b/src/api/farm/source.js
index 2c78f7e..0e4b2d6 100644
--- a/src/api/farm/source.js
+++ b/src/api/farm/source.js
@@ -9,3 +9,13 @@
         }
     })
 }
+
+export const getSimpleInfo = (code) => {
+    return request({
+        url: '/traceability/getSimpleInfo',
+        method: 'get',
+        params: {
+            code
+        }
+    })
+}
diff --git a/src/api/land/land.js b/src/api/land/land.js
index 373bd42..c957fa6 100644
--- a/src/api/land/land.js
+++ b/src/api/land/land.js
@@ -68,27 +68,3 @@
         }
     })
 }
-
-// 根据地块获取监测监控设备
-export const getStationAndVideoByLandId = (landId, type) => {
-    return request({
-        url: 'http://dev.jxpskj.com:8030/pyh-station/stationAndVideo/queryStationAndVideoByLandId',
-        method: 'get',
-        params: {
-            land_id: landId,
-            type: type
-        }
-    })
-}
-// 根据设备号获取监测设备数据
-export const getStationDateByStcd = (stcd, startTime, endTime) => {
-    return request({
-        url: 'http://dev.jxpskj.com:8030/pyh-station/naturalFactors/findElementDataByTime',
-        method: 'get',
-        params: {
-            stcd: stcd,
-            startTime: startTime,
-            endTime: endTime
-        }
-    })
-}
diff --git a/src/main.js b/src/main.js
index 456d761..0c7b472 100644
--- a/src/main.js
+++ b/src/main.js
@@ -31,6 +31,8 @@
 
 import '@dvgis/dc-sdk/dist/dc.core.min.css'
 
+
+
 Vue.prototype.$echarts = echarts
 
 global.DC = DC // 将DC提升到全局变量,方便在工程中直接使用
diff --git a/src/styles/index.css b/src/styles/index.css
index 6c7234d..cd0a317 100644
--- a/src/styles/index.css
+++ b/src/styles/index.css
@@ -27,6 +27,39 @@
   visibility: hidden;
 }
 
+.el-icon-my-nc-menu {
+  background: url("/img/icon/nc-menu.png") center no-repeat;
+  /* background-size: cover;*/
+}
+
+.el-icon-my-nc-menu:before {
+  content: "替";
+  font-size: 24px;
+  visibility: hidden;
+}
+
+.el-icon-my-jksb-menu {
+  background: url("/img/icon/jksb-menu.png") center no-repeat;
+  /* background-size: cover;*/
+}
+
+.el-icon-my-jksb-menu:before {
+  content: "替";
+  font-size: 24px;
+  visibility: hidden;
+}
+
+.el-icon-my-jcsb-menu {
+  background: url("/img/icon/jcsb-menu.png") center no-repeat;
+  /* background-size: cover;*/
+}
+
+.el-icon-my-jcsb-menu:before {
+  content: "替";
+  font-size: 24px;
+  visibility: hidden;
+}
+
 .dialog-fixed {
   margin: 0 !important;
   position: fixed;
@@ -764,6 +797,110 @@
   width: 120px;
 }
 
+.public-equirment-station-details {
+  position: fixed;
+  top: 50%;
+  left: 50%;
+  transform: translate(-50%, -50%);
+  width: 648px;
+  height: 401px;
+  background-color: transparent;
+  z-index: 99;
+  font-size: 16px;
+  box-shadow: inset 0px 3px 20px 1px #5BC3D1;
+  opacity: 1;
+  border: 1px solid #69E2ED;
+  background: rgba(20, 66, 104, 0.8);
+  border-radius: 10px;
+  margin: 0;
+  padding: 0;
+}
+
+.public-equirment-station-details .header {
+  position: relative;
+  width: 270px;
+  height: 24px;
+  font-size: 18px;
+  font-family: Microsoft YaHei-Bold, Microsoft YaHei;
+  font-weight: bold;
+  color: #58BFCD;
+  line-height: 20px;
+  margin: 20px auto;
+}
+
+.public-equirment-station-details .header .close {
+  position: absolute;
+  top: -20px;
+  right: -260px;
+  cursor: pointer;
+}
+
+.public-equirment-station-details .content {
+  overflow: scroll;
+  height: 330px;
+}
+
+.public-equirment-station-details .content .itemTitle {
+  box-sizing: border-box;
+  width: 607px;
+  height: 70px;
+  background: #0D1E34;
+  border-radius: 0px 0px 0px 0px;
+  opacity: 1;
+  margin-left: 17px;
+  margin-bottom: 10px;
+  padding: 15px 20px;
+  border: 1px solid transparent;
+}
+
+.public-equirment-station-details .content .itemTitle img {
+  float: left;
+}
+
+.public-equirment-station-details .content .itemTitle .type {
+  float: left;
+  margin-left: 20px;
+}
+
+.public-equirment-station-details .content .itemTitle .type h1 {
+  font-size: 16px;
+  color: #58BFCD;
+  margin-bottom: 4px;
+}
+
+.public-equirment-station-details .content .itemTitle .type span {
+  font-size: 13px;
+  color: #FFFFFF;
+  opacity: 0.5;
+}
+
+.public-equirment-station-details .content .itemTitle .data {
+  float: left;
+  margin-left: 208px;
+  width: 80px;
+  height: 34px;
+  font-size: 34px;
+  font-family: DS-Digital-Italic, DS-Digital;
+  font-weight: normal;
+  color: #58BFCD;
+  line-height: 32px;
+}
+
+.public-equirment-station-details .content .itemTitle .openMenuIcon {
+  margin-left: 95px;
+  margin-top: 4px;
+  cursor: pointer;
+}
+
+.public-equirment-station-details .content .EchartsBox_div {
+  width: 607px;
+  height: 210px;
+  background: #0D1E34;
+  margin-left: 17px;
+  margin-top: -11px;
+  margin-bottom: 10px;
+}
+
 .public-nape-plot-details {
   position: fixed;
   top: 50%;
diff --git a/src/styles/index.min.css b/src/styles/index.min.css
index 1ae2515..257487c 100644
--- a/src/styles/index.min.css
+++ b/src/styles/index.min.css
@@ -1 +1 @@
-.emit-el-date-picker input{background:#003555;border-color:#849EAE;color:rgba(255,255,255,0.6)}.el-icon-my-sy{background:url("/img/icon/1016.png") center no-repeat}.el-icon-my-sy:before{content:"替";font-size:18px;visibility:hidden}.el-icon-my-sb{background:url("/img/icon/3666.png") center no-repeat}.el-icon-my-sb:before{content:"替";font-size:24px;visibility:hidden}.dialog-fixed{margin:0 !important;position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);z-index:99}.equipment-plot-select .el-input{position:relative;display:flex;align-items:center;justify-content:center}.equipment-plot-select .el-input .el-input__suffix{display:flex;align-items:center;justify-content:center}.equipment-plot-select input{color:#fff;font-size:28px !important;font-weight:bold;background:transparent !important;border:none !important}.manage-select{background-color:#05243e !important}.manage-option{background-color:#05243e !important;color:#a5cacc}.public-org-nav-bar{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:1208px;background-color:transparent;z-index:99;font-size:14px;box-shadow:inset 0px 0px 30px 1px rgba(33,186,196,0.16);border:1px solid #69E2ED;background:rgba(20,66,104,0.8)}.public-org-nav-bar .header{position:relative;border-radius:8px 8px 0 0;width:100%;height:58px;line-height:58px;background:linear-gradient(96deg, #142B4B 0%, #0F1525 100%)}.public-org-nav-bar .header .logo{position:aboslute;top:0;left:0;width:8px;height:100%;background:#69E2ED}.public-org-nav-bar .header .title{position:absolute;top:0;left:25px;font-size:18px;font-weight:bold;color:#66DDE9}.public-org-nav-bar .header .close{position:absolute;right:20px;top:0;left:auto;bottom:0;margin:auto;width:28px;height:28px;cursor:pointer;opacity:0.6}.public-org-nav-bar .content{clear:both;width:100%;height:500px;margin-top:0px;text-align:center;overflow-y:auto;border-radius:0 0 8px 8px}.public-org-nav-bar .content .farm-profiles{position:relative}.public-org-nav-bar .content .farm-profiles .btn-grounp{position:absolute;top:18px;right:20px}.public-org-nav-bar .content .farm-profiles .btn-grounp .details{text-align:right;font-size:18px;color:#08F4FF;cursor:pointer}.public-org-nav-bar .content .farm-profiles .btn-grounp .scene{margin-top:24px;display:flex;align-items:center;justify-content:center;width:100px;height:30px;background:rgba(102,221,233,0.16);border-radius:4px 4px 4px 4px;border:1px solid #66DDE9;box-sizing:border-box}.public-org-nav-bar .content .farm-profiles .btn-grounp .scene img{height:24px}.public-org-nav-bar .content .farm-profiles .farm-content{padding:30px 20px;font-size:16px;color:#fff}.public-org-nav-bar .content .farm-profiles .farm-content .row{margin-top:30px;display:flex;justify-content:space-between}.public-org-nav-bar .content .farm-profiles .farm-content .row .l{display:flex;align-items:flex-start;justify-content:flex-end;width:100px;height:24px;color:#A9D1D7}.public-org-nav-bar .content .farm-profiles .farm-content .row .r{display:flex;align-items:center;justify-content:flex-start;text-align:left;margin-left:24px;flex:1}.public-org-nav-bar .content .farm-profiles .farm-content .row .r img{margin-right:16px;width:102px;height:102px;border-radius:4px 4px 4px 4px}.public-org-nav-bar .content .farm-profiles .farm-content .row:first-child{margin-top:0}.public-org-market-bar{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:1208px;background-color:transparent;z-index:99;font-size:14px;box-shadow:inset 0px 0px 30px 1px rgba(33,186,196,0.16);border:1px solid #69E2ED;background:rgba(20,66,104,0.8)}.public-org-market-bar .header{position:relative;border-radius:8px 8px 0 0;width:100%;height:58px;line-height:58px;background:linear-gradient(96deg, #142B4B 0%, #0F1525 100%)}.public-org-market-bar .header .logo{position:aboslute;top:0;left:0;width:8px;height:100%;background:#69E2ED}.public-org-market-bar .header .title{position:absolute;top:0;left:25px;font-size:18px;font-weight:bold;color:#66DDE9}.public-org-market-bar .header .close{position:absolute;right:20px;top:0;left:auto;bottom:0;margin:auto;width:28px;height:28px;cursor:pointer;opacity:0.6}.public-org-market-bar .content{clear:both;width:100%;height:650px;margin-top:0px;text-align:center;overflow-y:auto;border-radius:0 0 8px 8px}.public-org-market-bar .content .market-title{display:-webkit-box;padding-left:30px;padding-top:30px}.public-org-market-bar .content .market-title .date{padding-left:30px}.public-org-market-bar .content .market-title .query-button{width:47%;text-align:end}.public-org-market-bar .content .market-content{display:-webkit-box;padding-left:30px;padding-top:30px}.public-org-market-bar .content .market-content .market-chart{width:758px;height:520px}.public-org-market-bar .content .market-content .market-list{margin-left:30px;width:31%;height:520px}.public-org-market-bar .content .market-content .market-list .market-list-item{flex:1;display:flex;flex-direction:column}.public-org-market-bar .content .market-content .market-list .market-list-item>div{position:relative;flex:1;padding:15px 20px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(102,221,233,0.1);border-radius:8px;font-size:18px;color:#a9d1d7}.public-org-market-bar .content .market-content .market-list .market-list-item>div>.t-item{display:flex;align-items:center;justify-content:space-between}.public-org-market-bar .content .market-content .market-list .market-list-item>div>.t-item>div:first-child{font-weight:bold;color:#66dde9}.public-org-market-bar .content .market-content .market-list .market-list-item>div>.b-item{display:flex;align-items:center;justify-content:space-between}.public-org-market-bar .content .market-content .market-list .market-list-item>div>.b-item>div:first-child{color:#fff}.public-org-market-bar .content .market-content .market-list .market-list-item>div .t-border{top:0;bottom:auto}.public-org-market-bar .content .market-content .market-list .market-list-item>div .b-border{top:auto;bottom:0}.public-org-market-bar .content .market-content .market-list .market-list-item>div .t-border,.public-org-market-bar .content .market-content .market-list .market-list-item>div .b-border{position:absolute;left:0;right:0;margin:auto;width:80%;height:1px;background:linear-gradient(89deg, rgba(102,221,233,0) 0%, #66dde9 51%, rgba(102,221,233,0) 100%)}.public-org-market-bar .content .market-content .market-list .market-list-item>div:first-child{margin-bottom:15px}.public-trace-table{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:1208px;background-color:transparent;z-index:99;font-size:16px;box-shadow:inset 0px 0px 30px 1px rgba(33,186,196,0.16);border:1px solid #69E2ED;background:rgba(20,66,104,0.8)}.public-trace-table .header{position:relative;border-radius:8px 8px 0 0;width:100%;height:58px;line-height:58px;background:linear-gradient(96deg, #142B4B 0%, #0F1525 100%)}.public-trace-table .header .logo{position:aboslute;top:0;left:0;width:8px;height:100%;background:#69E2ED}.public-trace-table .header .title{position:absolute;top:0;left:25px;font-size:18px;font-weight:bold;color:#66DDE9}.public-trace-table .header .close{position:absolute;right:20px;top:0;left:auto;bottom:0;margin:auto;width:28px;height:28px;cursor:pointer;opacity:0.6}.public-trace-table .content{display:flex;flex-direction:column;clear:both;width:100%;height:600px;margin-top:0px;text-align:center;overflow:hidden;border-radius:0 0 8px 8px}.public-trace-table .content .action-bar{padding:0 30px;display:flex;align-items:center;justify-content:space-between;height:74px}.public-trace-table .content .action-bar>.search .search-input input{color:#fff;background:rgba(33,186,196,0.2);border-color:#21BAC4}.public-trace-table .content .action-bar .btn-grounp .search{color:#fff;background:#21BAC4;border-color:#21BAC4}.public-trace-table .content .action-bar .btn-grounp .reset{color:#fff;background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.2)}.public-trace-table .content .table-list{flex:1;display:flex;flex-direction:column}.public-trace-table .content .table-list .t-header{display:flex;align-items:center;justify-content:space-between;height:56px;font-size:18px;font-weight:bold;color:#fff;background:linear-gradient(90deg, rgba(49,137,153,0.5) 0%, rgba(49,161,168,0.5) 44%, rgba(49,137,153,0.5) 100%)}.public-trace-table .content .table-list .t-header .sym-style{text-align:left}.public-trace-table .content .table-list .t-body{flex:1;overflow-y:auto}.public-trace-table .content .table-list .table-list{display:flex;flex-direction:row;align-items:center;justify-content:space-between;height:94px;border-bottom:1px solid #E8ECEF;color:#fff}.public-trace-table .content .table-list .table-list .sym-style{display:flex;justify-content:space-between}.public-trace-table .content .table-list .table-list .sym-style .l{display:flex;align-items:center}.public-trace-table .content .table-list .table-list .sym-style .l img{width:94px;height:56px}.public-trace-table .content .table-list .table-list .sym-style .r{margin-left:20px;flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-around}.public-trace-table .content .table-list .table-list .sym-style .r .title{font-size:18px;font-weight:bold}.public-trace-table .content .table-list .table-list .sym-style .r .unit{font-size:14px}.public-trace-table .content .table-list .table-list:last-child{border:none}.public-trace-table .content .table-list .t-header>div:first-child,.public-trace-table .content .table-list .table-list>div:first-child{margin-left:30px;flex:1}.public-trace-table .content .table-list .t-header>div:nth-child(2),.public-trace-table .content .table-list .table-list>div:nth-child(2){width:200px}.public-trace-table .content .table-list .t-header>div:nth-child(3),.public-trace-table .content .table-list .table-list>div:nth-child(3){width:240px}.public-trace-table .content .table-list .t-header>div:nth-child(4),.public-trace-table .content .table-list .table-list>div:nth-child(4){width:260px}.public-trace-table .content .table-list .t-header>div:nth-child(5),.public-trace-table .content .table-list .table-list>div:nth-child(5){width:200px}.public-trace-table .content .table-list .t-header>div:nth-child(5) .look,.public-trace-table .content .table-list .table-list>div:nth-child(5) .look{color:#00F0FF;background:rgba(0,240,255,0.2);border-color:#00F0FF}.el-scrollbar{position:relative}.el-scrollbar .el-scrollbar__wrap{overflow-x:hidden}.public-farm-oper-table{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:1208px;background-color:transparent;z-index:99;font-size:16px;box-shadow:inset 0px 0px 30px 1px rgba(33,186,196,0.16);border:1px solid #69E2ED;background:rgba(20,66,104,0.8)}.public-farm-oper-table .header{position:relative;border-radius:8px 8px 0 0;width:100%;height:58px;line-height:58px;background:linear-gradient(96deg, #142B4B 0%, #0F1525 100%)}.public-farm-oper-table .header .logo{position:aboslute;top:0;left:0;width:8px;height:100%;background:#69E2ED}.public-farm-oper-table .header .title{position:absolute;top:0;left:25px;font-size:18px;font-weight:bold;color:#66DDE9}.public-farm-oper-table .header .close{position:absolute;right:20px;top:0;left:auto;bottom:0;margin:auto;width:28px;height:28px;cursor:pointer;opacity:0.6}.public-farm-oper-table .content{display:flex;flex-direction:column;clear:both;width:100%;height:600px;margin-top:0px;text-align:center;overflow:hidden;border-radius:0 0 8px 8px}.public-farm-oper-table .content .action-bar{padding:0 30px;display:flex;align-items:center;justify-content:space-between;height:74px}.public-farm-oper-table .content .action-bar>.search .search-input input{color:#fff;background:rgba(33,186,196,0.2);border-color:#21BAC4}.public-farm-oper-table .content .action-bar>.search .select-type input{color:#fff;background:rgba(33,186,196,0.2);border-color:#21BAC4}.public-farm-oper-table .content .action-bar>.search .select-plot{margin-left:30px}.public-farm-oper-table .content .action-bar>.search .select-plot input{color:#fff;background:rgba(33,186,196,0.2);border-color:#21BAC4}.public-farm-oper-table .content .action-bar .btn-grounp .search{color:#fff;background:#21BAC4;border-color:#21BAC4}.public-farm-oper-table .content .action-bar .btn-grounp .reset{color:#fff;background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.2)}.public-farm-oper-table .content .table-list{height:calc(100% - 74px);display:flex;flex-direction:column}.public-farm-oper-table .content .table-list .t-header{display:flex;align-items:center;justify-content:space-between;height:56px;font-size:18px;font-weight:bold;color:#fff;background:linear-gradient(90deg, rgba(49,137,153,0.5) 0%, rgba(49,161,168,0.5) 44%, rgba(49,137,153,0.5) 100%)}.public-farm-oper-table .content .table-list .t-body{height:calc(100% - 56px);overflow-y:auto}.public-farm-oper-table .content .table-list .table-list{display:flex;flex-direction:row;align-items:center;justify-content:space-between;height:65px;border-bottom:1px solid #E8ECEF;color:#fff}.public-farm-oper-table .content .table-list .table-list:last-child{border:none}.public-farm-oper-table .content .table-list .t-header>div:first-child,.public-farm-oper-table .content .table-list .table-list>div:first-child{width:132px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(2),.public-farm-oper-table .content .table-list .table-list>div:nth-child(2){width:124px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(3),.public-farm-oper-table .content .table-list .table-list>div:nth-child(3){width:172px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(4),.public-farm-oper-table .content .table-list .table-list>div:nth-child(4){width:144px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(5),.public-farm-oper-table .content .table-list .table-list>div:nth-child(5){width:132px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(6),.public-farm-oper-table .content .table-list .table-list>div:nth-child(6){flex:1}.public-farm-oper-table .content .table-list .t-header>div:nth-child(7),.public-farm-oper-table .content .table-list .table-list>div:nth-child(7){flex:1}.public-farm-oper-table .content .table-list .t-header>div:nth-child(8),.public-farm-oper-table .content .table-list .table-list>div:nth-child(8){width:120px}.public-nape-plot-details{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:700px;z-index:99;font-size:16px;box-shadow:inset 0px 3px 20px 1px #5BC3D1;border:1px solid #58BFCD;background:rgba(20,66,104,0.8);border-radius:16px}.public-nape-plot-details .header{display:flex;align-items:center;justify-content:space-around;position:relative;border-radius:8px 8px 0 0;width:100%;height:86px;box-sizing:border-box;border:1px solid #3F7D93}.public-nape-plot-details .header .nav{display:flex;align-items:center;justify-content:center;width:200px;height:50px;color:#fff;background:url(/img/icon/popup-nav-btn.png) no-repeat;background-size:100% 100%;cursor:pointer;font-size:18px}.public-nape-plot-details .header .nav.on{background:url(/img/icon/popup-nav-btn-sel.png) no-repeat;background-size:100% 100%}.public-nape-plot-details .header .close{position:absolute;top:0;right:-30px;transform:translate(100%, 0);cursor:pointer}.public-nape-plot-details .content{display:flex;flex-direction:column;clear:both;width:100%;height:484px;margin-top:0px;text-align:center;overflow:hidden;border-radius:0 0 8px 8px}.public-nape-plot-details .content .box{margin:20px 25px;height:calc(100% - 40px);overflow-y:auto}.public-nape-plot-details .content .box>div{margin-top:20px;padding:0 20px}.public-nape-plot-details .content .box>div:first-child{margin:0}.public-nape-plot-details .content .zypz-box>div{display:flex;align-items:center;height:120px;color:#A9D1D7;background:#0D1E34}.public-nape-plot-details .content .zypz-box>div .logo{width:90px;height:90px;border-radius:50%}.public-nape-plot-details .content .zypz-box>div .titles-box{margin-left:30px;display:flex;align-items:flex-start;flex-direction:column}.public-nape-plot-details .content .zypz-box>div .titles-box .title{font-size:18px;font-weight:bold}.public-nape-plot-details .content .zypz-box>div .titles-box .time{margin-top:15px;font-size:14px}.public-nape-plot-details .content .nscz-box>div{position:relative;height:84px;margin-top:10px;padding:10px 20px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between;background:rgba(102,221,233,0.1);border-radius:8px;font-size:18px;color:#a9d1d7}.public-nape-plot-details .content .nscz-box>div .t-border{position:absolute;top:0;left:0;right:0;bottom:auto;margin:auto;width:80%;height:1px;background:linear-gradient(89deg, rgba(102,221,233,0) 0%, #66dde9 51%, rgba(102,221,233,0) 100%)}.public-nape-plot-details .content .nscz-box>div .t-item{display:flex;align-items:center;justify-content:space-between}.public-nape-plot-details .content .nscz-box>div .t-item>div{flex:1}.public-nape-plot-details .content .nscz-box>div .t-item>div:first-child{text-align:left;font-size:18px;font-weight:bold;color:#66dde9}.public-nape-plot-details .content .nscz-box>div .t-item>div:last-child{text-align:right}.public-nape-plot-details .content .nscz-box>div .b-item{display:flex;align-items:center;justify-content:space-between}.public-nape-plot-details .content .nscz-box>div .b-item>div{flex:1}.public-nape-plot-details .content .nscz-box>div .b-item>div:first-child{text-align:left;color:#fff}.public-nape-plot-details .content .nscz-box>div .b-item>div:last-child{text-align:right}.public-nape-plot-details .content .base-box>div{height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0D1E34}.public-nape-plot-details .content .base-box>div .current-val{margin-top:12px;font-size:32px}.public-nape-plot-details .content .base-box .plot-name{color:#62D4E0}.public-nape-plot-details .content .base-box .plot-area{color:#53B5F9}.public-nape-plot-details .content .base-box .plot-type{color:#9270DE}html,body{font-size:16px}html div,html ul,body div,body ul{scrollbar-width:thin}p{margin:0;padding:0}ul{margin:0;padding:0}ul li{margin:0;padding:0;list-style:none}.deblurring{image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;-ms-interpolation-mode:nearest-neighbor}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{border-radius:10px;-webkit-box-shadow:inset 0 0 5px rgba(0,0,0,0.2);background:rgba(0,0,0,0.2)}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 5px rgba(0,0,0,0.2);border-radius:0;background:rgba(0,0,0,0.1)}.div-icon{background:transparent !important}.farm-map-icon{font-weight:bold;color:#fca607;text-align:center}.farm-map-icon img{width:24px}
+.emit-el-date-picker input{background:#003555;border-color:#849EAE;color:rgba(255,255,255,0.6)}.el-icon-my-sy{background:url("/img/icon/1016.png") center no-repeat}.el-icon-my-sy:before{content:"替";font-size:18px;visibility:hidden}.el-icon-my-sb{background:url("/img/icon/3666.png") center no-repeat}.el-icon-my-sb:before{content:"替";font-size:24px;visibility:hidden}.el-icon-my-nc-menu{background:url("/img/icon/nc-menu.png") center no-repeat}.el-icon-my-nc-menu:before{content:"替";font-size:24px;visibility:hidden}.el-icon-my-jksb-menu{background:url("/img/icon/jksb-menu.png") center no-repeat}.el-icon-my-jksb-menu:before{content:"替";font-size:24px;visibility:hidden}.el-icon-my-jcsb-menu{background:url("/img/icon/jcsb-menu.png") center no-repeat}.el-icon-my-jcsb-menu:before{content:"替";font-size:24px;visibility:hidden}.dialog-fixed{margin:0 !important;position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);z-index:99}.equipment-plot-select .el-input{position:relative;display:flex;align-items:center;justify-content:center}.equipment-plot-select .el-input .el-input__suffix{display:flex;align-items:center;justify-content:center}.equipment-plot-select input{color:#fff;font-size:28px !important;font-weight:bold;background:transparent !important;border:none !important}.manage-select{background-color:#05243e !important}.manage-option{background-color:#05243e !important;color:#a5cacc}.public-org-nav-bar{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:1208px;background-color:transparent;z-index:99;font-size:14px;box-shadow:inset 0px 0px 30px 1px rgba(33,186,196,0.16);border:1px solid #69E2ED;background:rgba(20,66,104,0.8)}.public-org-nav-bar .header{position:relative;border-radius:8px 8px 0 0;width:100%;height:58px;line-height:58px;background:linear-gradient(96deg, #142B4B 0%, #0F1525 100%)}.public-org-nav-bar .header .logo{position:aboslute;top:0;left:0;width:8px;height:100%;background:#69E2ED}.public-org-nav-bar .header .title{position:absolute;top:0;left:25px;font-size:18px;font-weight:bold;color:#66DDE9}.public-org-nav-bar .header .close{position:absolute;right:20px;top:0;left:auto;bottom:0;margin:auto;width:28px;height:28px;cursor:pointer;opacity:0.6}.public-org-nav-bar .content{clear:both;width:100%;height:500px;margin-top:0px;text-align:center;overflow-y:auto;border-radius:0 0 8px 8px}.public-org-nav-bar .content .farm-profiles{position:relative}.public-org-nav-bar .content .farm-profiles .btn-grounp{position:absolute;top:18px;right:20px}.public-org-nav-bar .content .farm-profiles .btn-grounp .details{text-align:right;font-size:18px;color:#08F4FF;cursor:pointer}.public-org-nav-bar .content .farm-profiles .btn-grounp .scene{margin-top:24px;display:flex;align-items:center;justify-content:center;width:100px;height:30px;background:rgba(102,221,233,0.16);border-radius:4px 4px 4px 4px;border:1px solid #66DDE9;box-sizing:border-box}.public-org-nav-bar .content .farm-profiles .btn-grounp .scene img{height:24px}.public-org-nav-bar .content .farm-profiles .farm-content{padding:30px 20px;font-size:16px;color:#fff}.public-org-nav-bar .content .farm-profiles .farm-content .row{margin-top:30px;display:flex;justify-content:space-between}.public-org-nav-bar .content .farm-profiles .farm-content .row .l{display:flex;align-items:flex-start;justify-content:flex-end;width:100px;height:24px;color:#A9D1D7}.public-org-nav-bar .content .farm-profiles .farm-content .row .r{display:flex;align-items:center;justify-content:flex-start;text-align:left;margin-left:24px;flex:1}.public-org-nav-bar .content .farm-profiles .farm-content .row .r img{margin-right:16px;width:102px;height:102px;border-radius:4px 4px 4px 4px}.public-org-nav-bar .content .farm-profiles .farm-content .row:first-child{margin-top:0}.public-org-market-bar{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:1208px;background-color:transparent;z-index:99;font-size:14px;box-shadow:inset 0px 0px 30px 1px rgba(33,186,196,0.16);border:1px solid #69E2ED;background:rgba(20,66,104,0.8)}.public-org-market-bar .header{position:relative;border-radius:8px 8px 0 0;width:100%;height:58px;line-height:58px;background:linear-gradient(96deg, #142B4B 0%, #0F1525 100%)}.public-org-market-bar .header .logo{position:aboslute;top:0;left:0;width:8px;height:100%;background:#69E2ED}.public-org-market-bar .header .title{position:absolute;top:0;left:25px;font-size:18px;font-weight:bold;color:#66DDE9}.public-org-market-bar .header .close{position:absolute;right:20px;top:0;left:auto;bottom:0;margin:auto;width:28px;height:28px;cursor:pointer;opacity:0.6}.public-org-market-bar .content{clear:both;width:100%;height:650px;margin-top:0px;text-align:center;overflow-y:auto;border-radius:0 0 8px 8px}.public-org-market-bar .content .market-title{display:-webkit-box;padding-left:30px;padding-top:30px}.public-org-market-bar .content .market-title .date{padding-left:30px}.public-org-market-bar .content .market-title .query-button{width:47%;text-align:end}.public-org-market-bar .content .market-content{display:-webkit-box;padding-left:30px;padding-top:30px}.public-org-market-bar .content .market-content .market-chart{width:758px;height:520px}.public-org-market-bar .content .market-content .market-list{margin-left:30px;width:31%;height:520px}.public-org-market-bar .content .market-content .market-list .market-list-item{flex:1;display:flex;flex-direction:column}.public-org-market-bar .content .market-content .market-list .market-list-item>div{position:relative;flex:1;padding:15px 20px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(102,221,233,0.1);border-radius:8px;font-size:18px;color:#a9d1d7}.public-org-market-bar .content .market-content .market-list .market-list-item>div>.t-item{display:flex;align-items:center;justify-content:space-between}.public-org-market-bar .content .market-content .market-list .market-list-item>div>.t-item>div:first-child{font-weight:bold;color:#66dde9}.public-org-market-bar .content .market-content .market-list .market-list-item>div>.b-item{display:flex;align-items:center;justify-content:space-between}.public-org-market-bar .content .market-content .market-list .market-list-item>div>.b-item>div:first-child{color:#fff}.public-org-market-bar .content .market-content .market-list .market-list-item>div .t-border{top:0;bottom:auto}.public-org-market-bar .content .market-content .market-list .market-list-item>div .b-border{top:auto;bottom:0}.public-org-market-bar .content .market-content .market-list .market-list-item>div .t-border,.public-org-market-bar .content .market-content .market-list .market-list-item>div .b-border{position:absolute;left:0;right:0;margin:auto;width:80%;height:1px;background:linear-gradient(89deg, rgba(102,221,233,0) 0%, #66dde9 51%, rgba(102,221,233,0) 100%)}.public-org-market-bar .content .market-content .market-list .market-list-item>div:first-child{margin-bottom:15px}.public-trace-table{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:1208px;background-color:transparent;z-index:99;font-size:16px;box-shadow:inset 0px 0px 30px 1px rgba(33,186,196,0.16);border:1px solid #69E2ED;background:rgba(20,66,104,0.8)}.public-trace-table .header{position:relative;border-radius:8px 8px 0 0;width:100%;height:58px;line-height:58px;background:linear-gradient(96deg, #142B4B 0%, #0F1525 100%)}.public-trace-table .header .logo{position:aboslute;top:0;left:0;width:8px;height:100%;background:#69E2ED}.public-trace-table .header .title{position:absolute;top:0;left:25px;font-size:18px;font-weight:bold;color:#66DDE9}.public-trace-table .header .close{position:absolute;right:20px;top:0;left:auto;bottom:0;margin:auto;width:28px;height:28px;cursor:pointer;opacity:0.6}.public-trace-table .content{display:flex;flex-direction:column;clear:both;width:100%;height:600px;margin-top:0px;text-align:center;overflow:hidden;border-radius:0 0 8px 8px}.public-trace-table .content .action-bar{padding:0 30px;display:flex;align-items:center;justify-content:space-between;height:74px}.public-trace-table .content .action-bar>.search .search-input input{color:#fff;background:rgba(33,186,196,0.2);border-color:#21BAC4}.public-trace-table .content .action-bar .btn-grounp .search{color:#fff;background:#21BAC4;border-color:#21BAC4}.public-trace-table .content .action-bar .btn-grounp .reset{color:#fff;background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.2)}.public-trace-table .content .table-list{flex:1;display:flex;flex-direction:column}.public-trace-table .content .table-list .t-header{display:flex;align-items:center;justify-content:space-between;height:56px;font-size:18px;font-weight:bold;color:#fff;background:linear-gradient(90deg, rgba(49,137,153,0.5) 0%, rgba(49,161,168,0.5) 44%, rgba(49,137,153,0.5) 100%)}.public-trace-table .content .table-list .t-header .sym-style{text-align:left}.public-trace-table .content .table-list .t-body{flex:1;overflow-y:auto}.public-trace-table .content .table-list .table-list{display:flex;flex-direction:row;align-items:center;justify-content:space-between;height:94px;border-bottom:1px solid #E8ECEF;color:#fff}.public-trace-table .content .table-list .table-list .sym-style{display:flex;justify-content:space-between}.public-trace-table .content .table-list .table-list .sym-style .l{display:flex;align-items:center}.public-trace-table .content .table-list .table-list .sym-style .l img{width:94px;height:56px}.public-trace-table .content .table-list .table-list .sym-style .r{margin-left:20px;flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-around}.public-trace-table .content .table-list .table-list .sym-style .r .title{font-size:18px;font-weight:bold}.public-trace-table .content .table-list .table-list .sym-style .r .unit{font-size:14px}.public-trace-table .content .table-list .table-list:last-child{border:none}.public-trace-table .content .table-list .t-header>div:first-child,.public-trace-table .content .table-list .table-list>div:first-child{margin-left:30px;flex:1}.public-trace-table .content .table-list .t-header>div:nth-child(2),.public-trace-table .content .table-list .table-list>div:nth-child(2){width:200px}.public-trace-table .content .table-list .t-header>div:nth-child(3),.public-trace-table .content .table-list .table-list>div:nth-child(3){width:240px}.public-trace-table .content .table-list .t-header>div:nth-child(4),.public-trace-table .content .table-list .table-list>div:nth-child(4){width:260px}.public-trace-table .content .table-list .t-header>div:nth-child(5),.public-trace-table .content .table-list .table-list>div:nth-child(5){width:200px}.public-trace-table .content .table-list .t-header>div:nth-child(5) .look,.public-trace-table .content .table-list .table-list>div:nth-child(5) .look{color:#00F0FF;background:rgba(0,240,255,0.2);border-color:#00F0FF}.el-scrollbar{position:relative}.el-scrollbar .el-scrollbar__wrap{overflow-x:hidden}.public-farm-oper-table{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:1208px;background-color:transparent;z-index:99;font-size:16px;box-shadow:inset 0px 0px 30px 1px rgba(33,186,196,0.16);border:1px solid #69E2ED;background:rgba(20,66,104,0.8)}.public-farm-oper-table .header{position:relative;border-radius:8px 8px 0 0;width:100%;height:58px;line-height:58px;background:linear-gradient(96deg, #142B4B 0%, #0F1525 100%)}.public-farm-oper-table .header .logo{position:aboslute;top:0;left:0;width:8px;height:100%;background:#69E2ED}.public-farm-oper-table .header .title{position:absolute;top:0;left:25px;font-size:18px;font-weight:bold;color:#66DDE9}.public-farm-oper-table .header .close{position:absolute;right:20px;top:0;left:auto;bottom:0;margin:auto;width:28px;height:28px;cursor:pointer;opacity:0.6}.public-farm-oper-table .content{display:flex;flex-direction:column;clear:both;width:100%;height:600px;margin-top:0px;text-align:center;overflow:hidden;border-radius:0 0 8px 8px}.public-farm-oper-table .content .action-bar{padding:0 30px;display:flex;align-items:center;justify-content:space-between;height:74px}.public-farm-oper-table .content .action-bar>.search .search-input input{color:#fff;background:rgba(33,186,196,0.2);border-color:#21BAC4}.public-farm-oper-table .content .action-bar>.search .select-type input{color:#fff;background:rgba(33,186,196,0.2);border-color:#21BAC4}.public-farm-oper-table .content .action-bar>.search .select-plot{margin-left:30px}.public-farm-oper-table .content .action-bar>.search .select-plot input{color:#fff;background:rgba(33,186,196,0.2);border-color:#21BAC4}.public-farm-oper-table .content .action-bar .btn-grounp .search{color:#fff;background:#21BAC4;border-color:#21BAC4}.public-farm-oper-table .content .action-bar .btn-grounp .reset{color:#fff;background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.2)}.public-farm-oper-table .content .table-list{height:calc(100% - 74px);display:flex;flex-direction:column}.public-farm-oper-table .content .table-list .t-header{display:flex;align-items:center;justify-content:space-between;height:56px;font-size:18px;font-weight:bold;color:#fff;background:linear-gradient(90deg, rgba(49,137,153,0.5) 0%, rgba(49,161,168,0.5) 44%, rgba(49,137,153,0.5) 100%)}.public-farm-oper-table .content .table-list .t-body{height:calc(100% - 56px);overflow-y:auto}.public-farm-oper-table .content .table-list .table-list{display:flex;flex-direction:row;align-items:center;justify-content:space-between;height:65px;border-bottom:1px solid #E8ECEF;color:#fff}.public-farm-oper-table .content .table-list .table-list:last-child{border:none}.public-farm-oper-table .content .table-list .t-header>div:first-child,.public-farm-oper-table .content .table-list .table-list>div:first-child{width:132px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(2),.public-farm-oper-table .content .table-list .table-list>div:nth-child(2){width:124px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(3),.public-farm-oper-table .content .table-list .table-list>div:nth-child(3){width:172px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(4),.public-farm-oper-table .content .table-list .table-list>div:nth-child(4){width:144px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(5),.public-farm-oper-table .content .table-list .table-list>div:nth-child(5){width:132px}.public-farm-oper-table .content .table-list .t-header>div:nth-child(6),.public-farm-oper-table .content .table-list .table-list>div:nth-child(6){flex:1}.public-farm-oper-table .content .table-list .t-header>div:nth-child(7),.public-farm-oper-table .content .table-list .table-list>div:nth-child(7){flex:1}.public-farm-oper-table .content .table-list .t-header>div:nth-child(8),.public-farm-oper-table .content .table-list .table-list>div:nth-child(8){width:120px}.public-equirment-station-details{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:648px;height:401px;background-color:transparent;z-index:99;font-size:16px;box-shadow:inset 0px 3px 20px 1px #5BC3D1;opacity:1;border:1px solid #69E2ED;background:rgba(20,66,104,0.8);border-radius:10px;margin:0;padding:0}.public-equirment-station-details .header{position:relative;width:270px;height:24px;font-size:18px;font-family:Microsoft YaHei-Bold, Microsoft YaHei;font-weight:bold;color:#58BFCD;line-height:20px;margin:20px auto}.public-equirment-station-details .header .close{position:absolute;top:-20px;right:-260px;cursor:pointer}.public-equirment-station-details .content{overflow:scroll;height:330px}.public-equirment-station-details .content .itemTitle{box-sizing:border-box;width:607px;height:70px;background:#0D1E34;border-radius:0px 0px 0px 0px;opacity:1;margin-left:17px;margin-bottom:10px;padding:15px 20px;border:1px solid transparent}.public-equirment-station-details .content .itemTitle img{float:left}.public-equirment-station-details .content .itemTitle .type{float:left;margin-left:20px}.public-equirment-station-details .content .itemTitle .type h1{font-size:16px;color:#58BFCD;margin-bottom:4px}.public-equirment-station-details .content .itemTitle .type span{font-size:13px;color:#FFFFFF;opacity:0.5}.public-equirment-station-details .content .itemTitle .data{float:left;margin-left:208px;width:80px;height:34px;font-size:34px;font-family:DS-Digital-Italic, DS-Digital;font-weight:normal;color:#58BFCD;line-height:32px}.public-equirment-station-details .content .itemTitle .openMenuIcon{margin-left:95px;margin-top:4px;cursor:pointer}.public-equirment-station-details .content .EchartsBox_div{width:607px;height:210px;background:#0D1E34;margin-left:17px;margin-top:-11px;margin-bottom:10px}.public-nape-plot-details{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:700px;z-index:99;font-size:16px;box-shadow:inset 0px 3px 20px 1px #5BC3D1;border:1px solid #58BFCD;background:rgba(20,66,104,0.8);border-radius:16px}.public-nape-plot-details .header{display:flex;align-items:center;justify-content:space-around;position:relative;border-radius:8px 8px 0 0;width:100%;height:86px;box-sizing:border-box;border:1px solid #3F7D93}.public-nape-plot-details .header .nav{display:flex;align-items:center;justify-content:center;width:200px;height:50px;color:#fff;background:url(/img/icon/popup-nav-btn.png) no-repeat;background-size:100% 100%;cursor:pointer;font-size:18px}.public-nape-plot-details .header .nav.on{background:url(/img/icon/popup-nav-btn-sel.png) no-repeat;background-size:100% 100%}.public-nape-plot-details .header .close{position:absolute;top:0;right:-30px;transform:translate(100%, 0);cursor:pointer}.public-nape-plot-details .content{display:flex;flex-direction:column;clear:both;width:100%;height:484px;margin-top:0px;text-align:center;overflow:hidden;border-radius:0 0 8px 8px}.public-nape-plot-details .content .box{margin:20px 25px;height:calc(100% - 40px);overflow-y:auto}.public-nape-plot-details .content .box>div{margin-top:20px;padding:0 20px}.public-nape-plot-details .content .box>div:first-child{margin:0}.public-nape-plot-details .content .zypz-box>div{display:flex;align-items:center;height:120px;color:#A9D1D7;background:#0D1E34}.public-nape-plot-details .content .zypz-box>div .logo{width:90px;height:90px;border-radius:50%}.public-nape-plot-details .content .zypz-box>div .titles-box{margin-left:30px;display:flex;align-items:flex-start;flex-direction:column}.public-nape-plot-details .content .zypz-box>div .titles-box .title{font-size:18px;font-weight:bold}.public-nape-plot-details .content .zypz-box>div .titles-box .time{margin-top:15px;font-size:14px}.public-nape-plot-details .content .nscz-box>div{position:relative;height:84px;margin-top:10px;padding:10px 20px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between;background:rgba(102,221,233,0.1);border-radius:8px;font-size:18px;color:#a9d1d7}.public-nape-plot-details .content .nscz-box>div .t-border{position:absolute;top:0;left:0;right:0;bottom:auto;margin:auto;width:80%;height:1px;background:linear-gradient(89deg, rgba(102,221,233,0) 0%, #66dde9 51%, rgba(102,221,233,0) 100%)}.public-nape-plot-details .content .nscz-box>div .t-item{display:flex;align-items:center;justify-content:space-between}.public-nape-plot-details .content .nscz-box>div .t-item>div{flex:1}.public-nape-plot-details .content .nscz-box>div .t-item>div:first-child{text-align:left;font-size:18px;font-weight:bold;color:#66dde9}.public-nape-plot-details .content .nscz-box>div .t-item>div:last-child{text-align:right}.public-nape-plot-details .content .nscz-box>div .b-item{display:flex;align-items:center;justify-content:space-between}.public-nape-plot-details .content .nscz-box>div .b-item>div{flex:1}.public-nape-plot-details .content .nscz-box>div .b-item>div:first-child{text-align:left;color:#fff}.public-nape-plot-details .content .nscz-box>div .b-item>div:last-child{text-align:right}.public-nape-plot-details .content .base-box>div{height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0D1E34}.public-nape-plot-details .content .base-box>div .current-val{margin-top:12px;font-size:32px}.public-nape-plot-details .content .base-box .plot-name{color:#62D4E0}.public-nape-plot-details .content .base-box .plot-area{color:#53B5F9}.public-nape-plot-details .content .base-box .plot-type{color:#9270DE}html,body{font-size:16px}html div,html ul,body div,body ul{scrollbar-width:thin}p{margin:0;padding:0}ul{margin:0;padding:0}ul li{margin:0;padding:0;list-style:none}.deblurring{image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;-ms-interpolation-mode:nearest-neighbor}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{border-radius:10px;-webkit-box-shadow:inset 0 0 5px rgba(0,0,0,0.2);background:rgba(0,0,0,0.2)}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 5px rgba(0,0,0,0.2);border-radius:0;background:rgba(0,0,0,0.1)}.div-icon{background:transparent !important}.farm-map-icon{font-weight:bold;color:#fca607;text-align:center}.farm-map-icon img{width:24px}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 8b63ca9..078a880 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -3,6 +3,8 @@
 @import "./publicBox/market-nav-bar.scss";
 @import "./publicBox/trace-table.scss";
 @import "./publicBox/farm-oper-table.scss";
+@import "./publicBox/equirment-station-details.scss";
+@import "./publicBox/equirment-vid-details.scss";
 
 @import "./publicNapeBox/nape-plot-details.scss";
 
diff --git a/src/styles/publicBox/equirment-station-details.css b/src/styles/publicBox/equirment-station-details.css
new file mode 100644
index 0000000..48a3670
--- /dev/null
+++ b/src/styles/publicBox/equirment-station-details.css
@@ -0,0 +1,108 @@
+.public-equirment-station-details {
+  position: fixed;
+  top: 50%;
+  left: 50%;
+  transform: translate(-50%, -50%);
+  width: 648px;
+  height: 401px;
+  background-color: transparent;
+  z-index: 99;
+  font-size: 16px;
+  box-shadow: inset 0px 3px 20px 1px #5BC3D1;
+  opacity: 1;
+  border: 1px solid #69E2ED;
+  background: rgba(20, 66, 104, 0.8);
+  border-radius: 10px;
+  margin: 0;
+  padding: 0;
+}
+
+.public-equirment-station-details .header {
+  position: relative;
+  width: 270px;
+  height: 24px;
+  font-size: 18px;
+  font-family: Microsoft YaHei-Bold, Microsoft YaHei;
+  font-weight: bold;
+  color: #58BFCD;
+  line-height: 20px;
+  margin: 20px auto;
+}
+
+.public-equirment-station-details .header div {
+  text-align: center;
+}
+
+.public-equirment-station-details .header .close {
+  position: absolute;
+  top: -20px;
+  right: -260px;
+  cursor: pointer;
+}
+
+.public-equirment-station-details .content {
+  overflow: scroll;
+  height: 330px;
+}
+
+.public-equirment-station-details .content .itemTitle {
+  box-sizing: border-box;
+  width: 607px;
+  height: 70px;
+  background: #0D1E34;
+  border-radius: 0px 0px 0px 0px;
+  opacity: 1;
+  margin-left: 17px;
+  margin-bottom: 10px;
+  padding: 15px 20px;
+  border: 1px solid transparent;
+}
+
+.public-equirment-station-details .content .itemTitle img {
+  float: left;
+}
+
+.public-equirment-station-details .content .itemTitle .type {
+  float: left;
+  margin-left: 20px;
+  width: 150px;
+}
+
+.public-equirment-station-details .content .itemTitle .type h1 {
+  font-size: 16px;
+  color: #58BFCD;
+  margin-bottom: 4px;
+}
+
+.public-equirment-station-details .content .itemTitle .type span {
+  font-size: 13px;
+  color: #FFFFFF;
+  opacity: 0.5;
+}
+
+.public-equirment-station-details .content .itemTitle .data {
+  float: left;
+  margin-left: 158px;
+  width: 80px;
+  height: 34px;
+  font-size: 34px;
+  font-family: DS-Digital-Italic, DS-Digital;
+  font-weight: normal;
+  color: #58BFCD;
+  line-height: 32px;
+}
+
+.public-equirment-station-details .content .itemTitle .openMenuIcon {
+  margin-left: 90px;
+  margin-top: 4px;
+  cursor: pointer;
+}
+
+.public-equirment-station-details .content .EchartsBox_div {
+  width: 607px;
+  height: 210px;
+  background: #0D1E34;
+  margin-left: 17px;
+  margin-top: -11px;
+  margin-bottom: 10px;
+}
diff --git a/src/styles/publicBox/equirment-station-details.min.css b/src/styles/publicBox/equirment-station-details.min.css
new file mode 100644
index 0000000..d462786
--- /dev/null
+++ b/src/styles/publicBox/equirment-station-details.min.css
@@ -0,0 +1 @@
+.public-equirment-station-details{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:648px;height:401px;background-color:transparent;z-index:99;font-size:16px;box-shadow:inset 0px 3px 20px 1px #5BC3D1;opacity:1;border:1px solid #69E2ED;background:rgba(20,66,104,0.8);border-radius:10px;margin:0;padding:0}.public-equirment-station-details .header{position:relative;width:270px;height:24px;font-size:18px;font-family:Microsoft YaHei-Bold, Microsoft YaHei;font-weight:bold;color:#58BFCD;line-height:20px;margin:20px auto}.public-equirment-station-details .header div{text-align:center}.public-equirment-station-details .header .close{position:absolute;top:-20px;right:-260px;cursor:pointer}.public-equirment-station-details .content{overflow:scroll;height:330px}.public-equirment-station-details .content .itemTitle{box-sizing:border-box;width:607px;height:70px;background:#0D1E34;border-radius:0px 0px 0px 0px;opacity:1;margin-left:17px;margin-bottom:10px;padding:15px 20px;border:1px solid transparent}.public-equirment-station-details .content .itemTitle img{float:left}.public-equirment-station-details .content .itemTitle .type{float:left;margin-left:20px;width:150px}.public-equirment-station-details .content .itemTitle .type h1{font-size:16px;color:#58BFCD;margin-bottom:4px}.public-equirment-station-details .content .itemTitle .type span{font-size:13px;color:#FFFFFF;opacity:0.5}.public-equirment-station-details .content .itemTitle .data{float:left;margin-left:158px;width:80px;height:34px;font-size:34px;font-family:DS-Digital-Italic, DS-Digital;font-weight:normal;color:#58BFCD;line-height:32px}.public-equirment-station-details .content .itemTitle .openMenuIcon{margin-left:90px;margin-top:4px;cursor:pointer}.public-equirment-station-details .content .EchartsBox_div{width:607px;height:210px;background:#0D1E34;margin-left:17px;margin-top:-11px;margin-bottom:10px}
diff --git a/src/styles/publicBox/equirment-station-details.scss b/src/styles/publicBox/equirment-station-details.scss
new file mode 100644
index 0000000..fea4d3a
--- /dev/null
+++ b/src/styles/publicBox/equirment-station-details.scss
@@ -0,0 +1,101 @@
+.public-equirment-station-details  {
+    position: fixed;
+    top: 50%;
+    left: 50%;
+    transform: translate(-50%, -50%);
+    width: 648px;
+    height: 401px;
+    background-color: transparent;
+    z-index: 99;
+    font-size: 16px;
+    box-shadow: inset 0px 3px 20px 1px #5BC3D1;
+    opacity: 1;
+    border: 1px solid #69E2ED;
+    background: rgba(20, 66, 104, 0.8);
+    border-radius: 10px;
+    margin: 0;
+    padding: 0;
+
+    .header {
+        position: relative;
+        width: 270px;
+        height: 24px;
+        font-size: 18px;
+        font-family: Microsoft YaHei-Bold, Microsoft YaHei;
+        font-weight: bold;
+        color: #58BFCD;
+        line-height: 20px;
+        margin: 20px auto;
+        
+        div {
+            text-align: center;
+        }
+        .close {
+            position: absolute;
+            top:-20px;
+            right:-260px;
+            cursor: pointer;
+        }
+    }
+    .content {
+        overflow: scroll;
+        height: 330px;
+        .itemTitle {
+            box-sizing: border-box;
+            width: 607px;
+            height: 70px;
+            background: #0D1E34;
+            border-radius: 0px 0px 0px 0px;
+            opacity: 1;
+            margin-left: 17px;
+            margin-bottom: 10px;
+            padding: 15px 20px;
+            border: 1px solid transparent;
+    
+            img{
+                float: left;
+            }
+            .type  {
+                float: left;
+                margin-left: 20px;
+                width: 150px;
+              h1{
+                  font-size: 16px;
+                  color: #58BFCD ;
+                  margin-bottom: 4px;
+              }
+              span{
+                  font-size: 13px;
+                  color: #FFFFFF;
+                  opacity: 0.5;
+              }
+            }
+            .data {
+                float: left;
+                margin-left: 158px;
+                width: 80px;
+                height: 34px;
+                font-size: 34px;
+                font-family: DS-Digital-Italic, DS-Digital;
+                font-weight: normal;
+                color: #58BFCD;
+                line-height: 32px;
+            }
+            .openMenuIcon {
+                margin-left: 90px;
+                margin-top: 4px;
+                cursor: pointer;
+            }
+        }
+        .EchartsBox_div {
+            width: 607px;
+            height: 210px;
+            background: #0D1E34;
+            margin-left: 17px;
+            margin-top: -11px;
+            margin-bottom: 10px;
+        }
+    }
+   
+   
+}
\ No newline at end of file
diff --git a/src/styles/publicBox/equirment-vid-details.css b/src/styles/publicBox/equirment-vid-details.css
new file mode 100644
index 0000000..5468b0d
--- /dev/null
+++ b/src/styles/publicBox/equirment-vid-details.css
@@ -0,0 +1,46 @@
+.public-equirment-vid-details {
+  position: fixed;
+  top: 50%;
+  left: 50%;
+  transform: translate(-50%, -50%);
+  width: 648px;
+  height: 401px;
+  background-color: transparent;
+  z-index: 99;
+  font-size: 16px;
+  box-shadow: inset 0px 3px 20px 1px #5BC3D1;
+  opacity: 1;
+  border: 1px solid #69E2ED;
+  background: rgba(20, 66, 104, 0.8);
+  border-radius: 10px;
+  margin: 0;
+  padding: 0;
+}
+
+.public-equirment-vid-details .header {
+  position: relative;
+  width: 270px;
+  height: 24px;
+  font-size: 18px;
+  font-family: Microsoft YaHei-Bold, Microsoft YaHei;
+  font-weight: bold;
+  color: #58BFCD;
+  line-height: 20px;
+  margin: 20px auto;
+}
+
+.public-equirment-vid-details .header div {
+  text-align: center;
+}
+
+.public-equirment-vid-details .header .close {
+  position: absolute;
+  top: -20px;
+  right: -260px;
+  cursor: pointer;
+}
+
+.public-equirment-vid-details .content .video {
+  height: 310px;
+  margin: 0 40px;
+}
diff --git a/src/styles/publicBox/equirment-vid-details.min.css b/src/styles/publicBox/equirment-vid-details.min.css
new file mode 100644
index 0000000..82a1356
--- /dev/null
+++ b/src/styles/publicBox/equirment-vid-details.min.css
@@ -0,0 +1 @@
+.public-equirment-vid-details{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:648px;height:401px;background-color:transparent;z-index:99;font-size:16px;box-shadow:inset 0px 3px 20px 1px #5BC3D1;opacity:1;border:1px solid #69E2ED;background:rgba(20,66,104,0.8);border-radius:10px;margin:0;padding:0}.public-equirment-vid-details .header{position:relative;width:270px;height:24px;font-size:18px;font-family:Microsoft YaHei-Bold, Microsoft YaHei;font-weight:bold;color:#58BFCD;line-height:20px;margin:20px auto}.public-equirment-vid-details .header div{text-align:center}.public-equirment-vid-details .header .close{position:absolute;top:-20px;right:-260px;cursor:pointer}.public-equirment-vid-details .content .video{height:310px;margin:0 40px}
diff --git a/src/styles/publicBox/equirment-vid-details.scss b/src/styles/publicBox/equirment-vid-details.scss
new file mode 100644
index 0000000..a8e7126
--- /dev/null
+++ b/src/styles/publicBox/equirment-vid-details.scss
@@ -0,0 +1,49 @@
+.public-equirment-vid-details  {
+        position: fixed;
+        top: 50%;
+        left: 50%;
+        transform: translate(-50%, -50%);
+        width: 648px;
+        height: 401px;
+        background-color: transparent;
+        z-index: 99;
+        font-size: 16px;
+        box-shadow: inset 0px 3px 20px 1px #5BC3D1;
+        opacity: 1;
+        border: 1px solid #69E2ED;
+        background: rgba(20, 66, 104, 0.8);
+        border-radius: 10px;
+        margin: 0;
+        padding: 0;
+    
+        .header {
+            position: relative;
+            width: 270px;
+            height: 24px;
+            font-size: 18px;
+            font-family: Microsoft YaHei-Bold, Microsoft YaHei;
+            font-weight: bold;
+            color: #58BFCD;
+            line-height: 20px;
+            margin: 20px auto;
+
+            div {
+                text-align: center;
+            }
+            .close {
+                position: absolute;
+                top:-20px;
+                right:-260px;
+                cursor: pointer;
+            }
+    
+        }
+        .content {
+           .video {
+            height: 310px;
+            margin: 0 40px;
+           }
+        }
+       
+       
+    }
\ No newline at end of file
diff --git a/src/views/equipment/index.vue b/src/views/equipment/index.vue
index d4934d9..3fb109e 100644
--- a/src/views/equipment/index.vue
+++ b/src/views/equipment/index.vue
@@ -69,6 +69,7 @@
                             </ul>
                         </div>
                         <div class="nape-boxs">
+                            <!-- 气象监测 -->
                             <div v-for="(item, index) in stationData.weatherList" :key="index">
                                 <div class="top">
                                     <div class="l">
@@ -94,6 +95,7 @@
                                     >{{tmpTDiff(item.valueDataList[item.valueDataList.length-1].startTime)}}天前更新</div>
                                 </div>
                             </div>
+                            <!-- 土壤监测 -->
                             <div v-for="(item, index) in stationData.soliList" :key="index">
                                 <div class="top">
                                     <div class="l">
@@ -114,9 +116,12 @@
                                         <span class="old-btn" @click="historyData(item)">历史数据</span>
                                     </div>
 
-                                    <div class="r">{{tmpTDiff(item.valueDataList[item.valueDataList.length-1].startTime)}}天前更新</div>
+                                    <div
+                                        class="r"
+                                    >{{tmpTDiff(item.valueDataList[item.valueDataList.length-1].startTime)}}天前更新</div>
                                 </div>
                             </div>
+                            <!-- 空气监测 -->
                             <div v-for="(item, index) in stationData.airList" :key="index">
                                 <div class="top">
                                     <div class="l">
@@ -137,9 +142,12 @@
                                         <span class="old-btn" @click="historyData(item)">历史数据</span>
                                     </div>
 
-                                    <div class="r">{{tmpTDiff(item.valueDataList[item.valueDataList.length-1].startTime)}}天前更新</div>
+                                    <div
+                                        class="r"
+                                    >{{tmpTDiff(item.valueDataList[item.valueDataList.length-1].startTime)}}天前更新</div>
                                 </div>
                             </div>
+                            <!-- 水质监测 -->
                             <div v-for="(item, index) in stationData.waterList" :key="index">
                                 <div class="top">
                                     <div class="l">
@@ -196,10 +204,12 @@
 <script>
 
 import {
-    getLandList,
-    getStationAndVideoByLandId,
-    getStationDateByStcd
+    getLandList
 } from '@/api/land/land'
+import {
+ getStationAndVideoByLandId,
+    getStationDateByStcd
+} from '@/api/equipment/equipment'
 import { nextTick } from 'vue'
 import flvjs from 'flv.js'
 import dateUtils from '@/utils/dateUtils' // 1.先引入
@@ -359,12 +369,12 @@
         },
 
         historyData (item) {
-            var valueDataList = item.valueDataList
-            var values = []
-            var names = []
+            const valueDataList = item.valueDataList
+            const values = []
+            const names = []
             valueDataList.forEach(item => {
                 values.push(item.value)
-                names.push(item.startTime.substring(5,10) + ' ' + item.startTime.substring(11) + ':00')
+                names.push(item.startTime.substring(5, 10) + ' ' + item.startTime.substring(11) + ':00')
             })
             this.initLine('EchartsBox', '单位' + item.unit, names, values)
 
@@ -464,7 +474,7 @@
 
                 this.stationData = res.data.data
                 if (this.stationData.soilList.length == 0 && this.stationData.weatherList.length == 0 &&
-                        this.stationData.airList.length == 0 && this.stationData.waterList.length == 0) {
+                    this.stationData.airList.length == 0 && this.stationData.waterList.length == 0) {
                     this.isNostaList = false
                 } else {
                     this.isNostaList = true
diff --git a/src/views/farm/index.vue b/src/views/farm/index.vue
index 779c7ea..e77f1a4 100644
--- a/src/views/farm/index.vue
+++ b/src/views/farm/index.vue
@@ -71,7 +71,7 @@
             </div>
 
             <div v-show="ncjscz == 'cz'" class="lists-box nscz">
-                <div v-for="(item, index) in farmRecordList" :key="index">
+                <div v-for="(item, index) in farmRecordList" :key="'item'+index">
                     <div class="t-border"></div>
                     <div class="t-item">
                         <div>{{item.typeName}}</div>
@@ -117,7 +117,7 @@
             </div>
 
             <div v-show="zydksb == 'zy'" class="lists-box dk">
-                <div v-for="(item, index) in farmPlantList" :key="index">
+                <div v-for="(item, index) in farmPlantList" :key="'farmPlantList'+index">
                     <div class="title">
                         <img :src="item.url" alt />
                         {{item.strainName}}
@@ -130,7 +130,7 @@
             </div>
 
             <div v-show="zydksb == 'dk'" class="lists-box dk">
-                <div v-for="(item, index) in plotLists" :key="index" @click="setCenter(item)">
+                <div v-for="(item, index) in plotLists" :key="'plotLists'+index" @click="setCenter(item)">
                     <div class="title">
                         <img :src="item.url" alt />
                         {{item.landName}}
@@ -143,12 +143,55 @@
             </div>
 
             <div v-show="zydksb =='sb'" class="lists-box sb">
-                <div v-for="(item, index) in equipmentList" :key="index">
+                <div
+                        v-for="(item, index) in equipmentList"
+                        :key="'equipmentList' + index"
+                        class="lists-item"
+                        @click="item.dictTypeNum == 0?goToJkDetail(item
+                        ):goToDetail(item)"
+                >
                     <div class="title">
-                        <img src="/img/icon/jk.png" alt />{{item.name}}
+                        <img v-if="item.dictTypeNum == 0" src="/img/icon/jk.png" alt />
+                        <img v-else-if="item.dictTypeNum == 1" src="/img/icon/qx.png" alt />
+                        <img v-else-if="item.dictTypeNum == 2" src="/img/icon/qx.png" alt />
+                        <img v-else-if="item.dictTypeNum == 3" src="/img/icon/sz.png" alt />
+                        <img v-else-if="item.dictTypeNum == 4" src="/img/icon/tr.png" alt />
+                        <img v-else src="/img/icon/qx.png" alt />
+                        {{item.name}}
                     </div>
-                    <div class="type off">在线</div>
+                    <div class="type on" v-if="item.status">在线</div>
+                    <div class="type off" v-else>离线</div>
                 </div>
+                <!-- 视频监控数据 -->
+<!--                <div v-for="(item, index) in equipmentList.vidList"-->
+<!--                     :key="'vidList'+index"-->
+<!--                     class="lists-item"-->
+<!--                     @click="goToJkDetail(item)">-->
+<!--                    <div class="title">-->
+<!--                        <img src="/img/icon/jk.png" alt />-->
+<!--                        {{item.name}}-->
+<!--                    </div>-->
+<!--                    <div class="type on" v-if="item.onLine == 0">在线</div>-->
+<!--                    <div class="type off" v-else>离线</div>-->
+<!--                </div>-->
+                <!-- 监测设备数据 -->
+<!--                <div-->
+<!--                    v-for="(item, index) in equipmentList.staList"-->
+<!--                    :key="'staList' + index"-->
+<!--                    class="lists-item"-->
+<!--                    @click="goToDetail(item)"-->
+<!--                >-->
+<!--                    <div class="title">-->
+<!--                        <img v-if="item.dictTypeNum == 1" src="/img/icon/qx.png" alt />-->
+<!--                        <img v-else-if="item.dictTypeNum == 2" src="/img/icon/qx.png" alt />-->
+<!--                        <img v-else-if="item.dictTypeNum == 3" src="/img/icon/sz.png" alt />-->
+<!--                        <img v-else-if="item.dictTypeNum == 4" src="/img/icon/tr.png" alt />-->
+<!--                        <img v-else src="/img/icon/qx.png" alt />-->
+<!--                        {{item.name}}-->
+<!--                    </div>-->
+<!--                    <div class="type on" v-if="item.onLine == 0">在线</div>-->
+<!--                    <div class="type off" v-else>离线</div>-->
+<!--                </div>-->
             </div>
         </div>
 
@@ -197,29 +240,31 @@
                 </div>
                 <div class="table-list">
                     <div class="t-header">
-                        <div class="sym-style">溯源码样式</div>
+<!--                        <div class="sym-style">溯源码样式</div>-->
+                        <div>产品名称</div>
                         <div>溯源码编号</div>
                         <div>已绑定溯源/总数</div>
                         <div>创建时间</div>
                         <div>操作</div>
                     </div>
                     <div class="t-body">
-                        <div class="table-list" v-for="(item, index) in sourceList" :key="index">
-                            <div class="sym-style">
-                                <div class="l">
-                                    <img src="/img/icon/sym.png" alt />
-                                </div>
-                                <div class="r">
-                                    <div class="title">常规-样式1</div>
-                                    <div class="unit">5cm*3cm</div>
-                                </div>
-                            </div>
+                        <div class="table-list" v-for="(item, index) in sourceList" :key="'sourceList'+index">
+<!--                            <div class="sym-style">-->
+<!--                                <div class="l">-->
+<!--                                    <img src="/img/icon/sym.png" alt />-->
+<!--                                </div>-->
+<!--                                <div class="r">-->
+<!--                                    <div class="title">常规-样式1</div>-->
+<!--                                    <div class="unit">5cm*3cm</div>-->
+<!--                                </div>-->
+<!--                            </div>-->
+                            <div>{{item.productName}}</div>
                             <div>{{item.code}}</div>
                             <div>{{item.bind == 0 ? 1 : 0}}/1</div>
                             <div>{{item.createTime}}</div>
                             <div>
                                 <el-button
-                                    @click="openPopup('/img/icon/sym.png')"
+                                    @click="openPopup(item.code)"
                                     size="small"
                                     class="look"
                                     type="info"
@@ -255,7 +300,7 @@
             </template>
             <template slot="public-box-content">
                 <div v-show="plotDetailsNape == 'zypz'" class="box zypz-box">
-                    <div v-for="(item, index) in plotDetailsPlantList" :key="index">
+                    <div v-for="(item, index) in plotDetailsPlantList" :key="'plotDetailsPlantList'+index">
                         <img class="logo" :src="item.url" alt />
                         <div class="titles-box">
                             <div class="title">{{item.strainName}}</div>
@@ -266,7 +311,7 @@
                     </div>
                 </div>
                 <div v-show="plotDetailsNape == 'nscz'" class="box nscz-box">
-                    <div v-for="(item, index) in plotDetailsRecordList" :key="index">
+                    <div v-for="(item, index) in plotDetailsRecordList" :key="'plotDetailsRecordList'+index">
                         <div class="t-border"></div>
                         <div class="t-item">
                             <div class="type">{{item.typeName}}</div>
@@ -299,26 +344,176 @@
             </template>
         </public-nape-box>
 
-        <el-dialog
-            title="溯源码"
-            custom-class="dialog-fixed"
-            :visible.sync="dialogVisible"
-            :before-close="handleClose"
-        >
+        <el-dialog title="溯源码" custom-class="dialog-fixed" :visible.sync="dialogVisible">
             <img style="width: 500px;" :src="currentUrl" alt />
         </el-dialog>
+
+        <public-box
+            v-show="staionDetail"
+            :closeFlag="'staionDetail'"
+            :className="'public-equirment-station-details'"
+        >
+            <template slot="public-box-header">
+                <div>{{staInfo.name}}</div>
+                <img
+                    @click="staionDetail = false"
+                    src="../../../public/img/icon/close.png"
+                    class="close"
+                />
+            </template>
+            <template slot="public-box-content">
+                <!-- 气象监测 -->
+                <div class="item" v-for="(item, staListIndex) in stationData.weatherList"
+                     :key="'weatherList' + staListIndex">
+                    <div class="itemTitle">
+                        <img src="../../../public/img/icon/icon_3788.png" alt />
+                        <div class="type">
+                            <h1>{{item.name}}</h1>
+                            <span>单位:{{item.unit}}</span>
+                        </div>
+                        <div class="data">{{item.valueDataList[item.valueDataList.length-1].value}}</div>
+                        <img
+                            src="../../../public/img/icon/up_menu.png"
+                            class="openMenuIcon"
+                            @click="showEchart(staListIndex,null)"
+                            v-if="echartIsShow && jcIndex == staListIndex"
+                            alt
+                        />
+                        <img
+                            src="../../../public/img/icon/down_menu.png"
+                            class="openMenuIcon"
+                            @click="showEchart(staListIndex,item)"
+                            v-else
+                            alt
+                        />
+                    </div>
+                    <div class="echart" v-show="echartIsShow && jcIndex == staListIndex">
+                        <div :id="'EchartsBox'+staListIndex" class="EchartsBox_div"></div>
+                    </div>
+                </div>
+                <!-- 土壤监测 -->
+                <div class="item" v-for="(item, staListIndex) in stationData.soliList"
+                     :key="'soliList' + staListIndex">
+                    <div class="itemTitle">
+                        <img src="../../../public/img/icon/icon_3788.png" alt />
+                        <div class="type">
+                            <h1>{{item.name}}</h1>
+                            <span>单位:{{item.unit}}</span>
+                        </div>
+                        <div class="data">{{item.valueDataList[item.valueDataList.length-1].value}}</div>
+                        <img
+                                src="../../../public/img/icon/up_menu.png"
+                                class="openMenuIcon"
+                                @click="showEchart(staListIndex,null)"
+                                v-if="echartIsShow && jcIndex == staListIndex"
+                                alt
+                        />
+                        <img
+                                src="../../../public/img/icon/down_menu.png"
+                                class="openMenuIcon"
+                                @click="showEchart(staListIndex,item)"
+                                v-else
+                                alt
+                        />
+                    </div>
+                    <div class="echart" v-show="echartIsShow && jcIndex == staListIndex">
+                        <div :id="'EchartsBox'+staListIndex" class="EchartsBox_div"></div>
+                    </div>
+                </div>
+                <!-- 空气监测 -->
+                <div class="item" v-for="(item, staListIndex) in stationData.airList"
+                     :key="'airList' + staListIndex">
+                    <div class="itemTitle">
+                        <img src="../../../public/img/icon/icon_3788.png" alt />
+                        <div class="type">
+                            <h1>{{item.name}}</h1>
+                            <span>单位:{{item.unit}}</span>
+                        </div>
+                        <div class="data">{{item.valueDataList[item.valueDataList.length-1].value}}</div>
+                        <img
+                                src="../../../public/img/icon/up_menu.png"
+                                class="openMenuIcon"
+                                @click="showEchart(staListIndex,null)"
+                                v-if="echartIsShow && jcIndex == staListIndex"
+                                alt
+                        />
+                        <img
+                                src="../../../public/img/icon/down_menu.png"
+                                class="openMenuIcon"
+                                @click="showEchart(staListIndex,item)"
+                                v-else
+                                alt
+                        />
+                    </div>
+                    <div class="echart" v-show="echartIsShow && jcIndex == staListIndex">
+                        <div :id="'EchartsBox'+staListIndex" class="EchartsBox_div"></div>
+                    </div>
+                </div>
+                <!-- 水质监测 -->
+                <div class="item" v-for="(item, staListIndex) in stationData.waterList"
+                     :key="'waterList' + staListIndex">
+                    <div class="itemTitle">
+                        <img src="../../../public/img/icon/icon_3788.png" alt />
+                        <div class="type">
+                            <h1>{{item.name}}</h1>
+                            <span>单位:{{item.unit}}</span>
+                        </div>
+                        <div class="data">{{item.valueDataList[item.valueDataList.length-1].value}}</div>
+                        <img
+                                src="../../../public/img/icon/up_menu.png"
+                                class="openMenuIcon"
+                                @click="showEchart(staListIndex,null)"
+                                v-if="echartIsShow && jcIndex == staListIndex"
+                                alt
+                        />
+                        <img
+                                src="../../../public/img/icon/down_menu.png"
+                                class="openMenuIcon"
+                                @click="showEchart(staListIndex,item)"
+                                v-else
+                                alt
+                        />
+                    </div>
+                    <div class="echart" v-show="echartIsShow && jcIndex == staListIndex">
+                        <div :id="'EchartsBox'+staListIndex" class="EchartsBox_div"></div>
+                    </div>
+                </div>
+            </template>
+        </public-box>
+
+        <public-box
+            v-show="JkDetail"
+            :closeFlag="'JkDetail'"
+            :className="'public-equirment-vid-details'"
+        >
+            <template slot="public-box-header">
+                <div>{{vidInfo.name}}</div>
+                <img
+                    @click="JkDetail = false"
+                    src="../../../public/img/icon/close.png"
+                    class="close"
+                />
+            </template>
+            <template slot="public-box-content">
+                <div class="video">
+                    <video id="videoElement" autoplay muted width="100%" height="100%"></video>
+                </div>
+            </template>
+        </public-box>
     </div>
 </template>
 
 <script>
 
-import { getSourceList } from '@/api/farm/source'
+import { getSimpleInfo, getSourceList } from '@/api/farm/source'
+import flvjs from 'flv.js'
 import {
     getLandList,
     getFarmingRecordList,
-    getFarmPlantList,
-    getStationAndVideoList
+    getFarmPlantList
 } from '@/api/farm/farmingrecord'
+import dateUtils from '@/utils/dateUtils'
+import { getStationDateByStcd, queryEquipmentList } from '@/api/equipment/equipment'
 
 export default {
     data () {
@@ -346,6 +541,18 @@
             currentClickPlot: {},
             // 物联网设备
             equipmentList: {},
+            // 监测设备详情
+            staionDetail: false,
+            // 监控设备详情
+            JkDetail: false,
+            // 监测设备echart展示
+            echartIsShow: false,
+            // 监测列表index
+            jcIndex: 0,
+            flvPlayer: null,
+            vidInfo: {}, // 视频数据
+            staInfo: {}, // 监测数据
+            stationData: {} // 监测详细数据
         }
     },
     created () {
@@ -413,8 +620,11 @@
             this.$router.go(-1)
         },
 
-        openPopup (url) {
-            this.currentUrl = url
+        openPopup (code) {
+            getSimpleInfo(code).then(res => {
+                this.currentUrl = res.data.data.qrcode
+            })
+
             this.dialogVisible = true
         },
 
@@ -480,10 +690,243 @@
         },
         getStationAndVideo () {
             var that = this
-            getStationAndVideoList({ type: 'ALL',farmId: this.currentDetails.id }).then((res) => {
+            queryEquipmentList({ type: 'ALL', farmId: this.currentDetails.id }).then((res) => {
                 if (JSON.stringify(res.data) != '{}' && res.data.data) {
-                    that.equipmentList = res.data.data.staList
+                    that.equipmentList = res.data.data.equipmentList
                 }
+            })
+        },
+        // 跳转 监测 设备详情窗口
+        goToDetail (item) {
+            this.staInfo = item
+            this.getStationDateByStcd(item.stcd)
+            this.staionDetail = true
+        },
+        // 跳转 监控 设备详情窗口
+        goToJkDetail (item) {
+            this.vidInfo = item
+            this.JkDetail = true
+            this.$nextTick(() => {
+                this.playFlvVideo('wss://www.ainfo.top:700/rtp/34020000001110000105_34020000001310000002.flv')
+            })
+        },
+        // echart
+        initLine (dom, yName, x, y) {
+            const that = this
+            const chartDom = document.getElementById(dom)
+            const myChart = this.$echarts.init(chartDom)
+
+            const option = {
+                tooltip: {},
+                grid: {
+                    top: '30px',
+                    left: '28px',
+                    right: '28px',
+                    bottom: '0px',
+                    containLabel: true
+                },
+                xAxis: [
+                    {
+
+                        type: 'category',
+                        boundaryGap: false,
+                        axisLine: {
+                            show: true,
+                            lineStyle: {
+                                color: '#697B89'
+                            }
+                        },
+                        axisLabel: {
+                            // 坐标轴刻度标签的相关设置
+                            lineHeight: 18,
+                            textStyle: {
+                                color: '#A9D1D7',
+                                margin: 8
+                            },
+                            formatter: function (value) {
+                                var ret = ''// 拼接加\n返回的类目项
+                                var maxLength = 5// 每项显示文字个数
+                                value = value.replace(/\s*/g, '')
+                                var valLength = value.length// X轴类目项的文字个数
+
+                                var rowN = Math.ceil(valLength / maxLength) // 类目项需要换行的行数
+                                // 如果类目项的文字大于5,
+                                if (rowN > 1) {
+                                    for (var i = 0; i < rowN; i++) {
+                                        var temp = ''// 每次截取的字符串
+                                        var start = i * maxLength// 开始截取的位置
+                                        var end = start + maxLength// 结束截取的位置
+                                        // 这里也可以加一个是否是最后一行的判断,但是不加也没有影响,那就不加吧
+                                        temp = value.substring(start, end) + '\n'
+                                        ret += temp // 凭借最终的字符串
+                                    }
+                                    return ret
+                                } else {
+                                    return value
+                                }
+                            }
+                        },
+                        axisTick: { show: false },
+                        data: x
+                    }
+                ],
+                yAxis: [
+                    {
+                        name: yName,
+                        nameTextStyle: {
+                            color: '#A9D1D7'
+                        },
+                        type: 'value',
+                        min: 0,
+                        splitLine: {
+                            show: false
+                        },
+                        axisLine: {
+                            show: true,
+                            lineStyle: {
+                                color: '#697B89'
+                            }
+                        },
+                        axisLabel: {
+                            margin: 8,
+                            textStyle: {
+                                color: '#A9D1D7'
+                            }
+                        },
+                        axisTick: { show: false }
+                    }
+                ],
+                series: [
+                    {
+                        type: 'line',
+                        smooth: true, // 是否平滑曲线显示
+                        symbolSize: 0,
+                        lineStyle: {
+                            normal: {
+                                color: '#5ABF78' // 线条颜色
+                            }
+                        },
+                        areaStyle: {
+                            // 区域填充样式
+                            normal: {
+                                // 线性渐变,前4个参数分别是x0,y0,x2,y2(范围0~1);相当于图形包围盒中的百分比。如果最后一个参数是‘true’,则该四个值是绝对像素位置。
+                                color: new that.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
+                                    offset: 0,
+                                    color: 'rgba(90, 191, 120, 0.5000)'
+                                }, {
+                                    offset: 1,
+                                    color: 'rgba(90, 191, 120, 0)'
+                                }]),
+
+                                shadowColor: 'rgba(53,142,215, 0.9)', // 阴影颜色
+                                shadowBlur: 20 // shadowBlur设图形阴影的模糊大小。配合shadowColor,shadowOffsetX/Y, 设置图形的阴影效果。
+                            }
+                        },
+                        data: y
+                    }
+                ]
+            }
+
+            option && myChart.setOption(option)
+        },
+        // 点击展示监测设备echart图
+        showEchart (index, item) {
+            if (this.jcIndex == index) {
+                this.echartIsShow = !this.echartIsShow
+            } else {
+                this.jcIndex = index
+                this.echartIsShow = true
+            }
+            if (item) {
+                const valueDataList = item.valueDataList
+                const values = []
+                const names = []
+                valueDataList.forEach(item => {
+                    values.push(item.value)
+                    names.push(item.startTime.substring(5, 10) + ' ' + item.startTime.substring(11) + ':00')
+                })
+                this.initLine('EchartsBox' + index, '单位' + item.unit, names, values)
+            }
+        },
+        // flv视频播放
+        playFlvVideo (url) {
+            // 先销毁
+            if (this.flvPlayer) {
+                this.flvPlayer.pause()
+                this.flvPlayer.unload()
+                this.flvPlayer.detachMediaElement()
+                this.flvPlayer.destroy()
+                this.flvPlayer = null
+            }
+            if (flvjs.isSupported()) {
+                var videoElement = document.getElementById('videoElement')
+                this.flvPlayer = flvjs.createPlayer({
+                    type: 'flv',
+                    isLive: true,
+                    hasAudio: false,
+                    stashInitialSize: 128,
+                    url: url
+                }, {
+                    enableStashBuffer: false,
+                    fixAudioTimestampGap: false
+                })
+                this.flvPlayer.attachMediaElement(videoElement)
+                this.flvPlayer.load()
+                this.flvPlayer.play()
+            }
+        },
+        // 根据设备号获取监测数据
+        getStationDateByStcd (stcd) {
+            // const startTime = dateUtils.getSpecifyMonthDate(3)// 获取3个月前时间
+            const startTime = dateUtils.getSpecifyDayDate(10)// 获取10天前时间
+            const endTime = dateUtils.getDayLast()// 获取今天最后日期
+            getStationDateByStcd(stcd, startTime, endTime).then((res) => {
+                // 遍历气象大集合
+                res.data.data.weatherList.forEach(function (item, index) {
+                    // 把气象无效数据过滤掉
+                    var list = item.valueDataList.filter(vaItem => {
+                        return vaItem.value != '0.0'
+                    })
+                    // 如果没有找到就不做操作
+                    if (list.length > 0) {
+                        item.valueDataList = list
+                    }
+                })
+                // 遍历水质
+                res.data.data.waterList.forEach(function (item, index) {
+                    // 把水质无效数据过滤掉
+                    var list = item.valueDataList.filter(vaItem => {
+                        return vaItem.value != '0.0'
+                    })
+                    // 如果没有找到就不做操作
+                    if (list.length > 0) {
+                        item.valueDataList = list
+                    }
+                })
+                // 遍历土壤
+                res.data.data.soilList.forEach(function (item, index) {
+                    // 把水质无效数据过滤掉
+                    var list = item.valueDataList.filter(vaItem => {
+                        return vaItem.value != '0.0'
+                    })
+                    // 如果没有找到就不做操作
+                    if (list.length > 0) {
+                        item.valueDataList = list
+                    }
+                })
+                // 遍历空气
+                res.data.data.airList.forEach(function (item, index) {
+                    // 把水质无效数据过滤掉
+                    var list = item.valueDataList.filter(vaItem => {
+                        return vaItem.value != '0.0'
+                    })
+                    // 如果没有找到就不做操作
+                    if (list.length > 0) {
+                        item.valueDataList = list
+                    }
+                })
+
+                this.stationData = res.data.data
             })
         }
     }
@@ -788,6 +1231,9 @@
             & > div:last-child {
                 border: none;
             }
+            .lists-item {
+                cursor: pointer;
+            }
         }
 
         .dk.lists-box {
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index eb9c23e..5dbbcfc 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -334,19 +334,26 @@
             </template>
             <template slot="public-box-content">
                 <div class="market-title">
-                    <el-select placeholder="请选择农场"></el-select>
+                    <el-select v-model="farm.id" placeholder="请选择农场" @change="scFarmChange">
+                        <el-option
+                                v-for="item in farmNumArray"
+                                :key="item.id"
+                                :label="item.farmName"
+                                :value="item.id">
+                        </el-option>
+                    </el-select>
                     <div class="date">
                         <el-date-picker
-                            v-model="value1"
-                            type="daterange"
+                            v-model="scSelectTime"
+                            type="daterange" value-format="yyyy-MM-dd"
                             range-separator="至"
                             start-placeholder="开始时间"
                             end-placeholder="结束时间"
                         ></el-date-picker>
                     </div>
                     <div class="query-button">
-                        <el-button type="primary" icon="el-icon-search">查询</el-button>
-                        <el-button type="info" icon="el-icon-refresh-right">重置</el-button>
+                        <el-button type="primary" icon="el-icon-search" @click="searchMarketDistrict">查询</el-button>
+                        <el-button type="info" icon="el-icon-refresh-right" @click="scltReset">重置</el-button>
                     </div>
                 </div>
 
@@ -522,6 +529,10 @@
 <script>
 // eslint-disable-next-line no-unused-vars
 import {
+    getStationAndVideoCount,
+    getStationAndVideoList
+} from '@/api/equipment/equipment'
+import {
     getFarmingCount,
     getFarmingStatis,
     pagePalnt,
@@ -531,9 +542,7 @@
     selectMarketDistrict,
     getFarmList,
     getLandList,
-    getFarmingRecordList,
-    getStationAndVideoCount,
-    getStationAndVideoList
+    getFarmingRecordList
 } from '@/api/farm/farmingrecord'
 // eslint-disable-next-line no-unused-vars
 import { selectXCount } from '@/api/land/land'
@@ -559,6 +568,10 @@
             salaNumY: [],
             // 市场流通
             marketDistrict: [],
+            farm: {},
+            scSelectTime: '',
+            scStartTime: '',
+            scEndTime: '',
             ncListShow: false,
             jkListShow: false,
             jcListShow: false,
@@ -1037,6 +1050,20 @@
                 that.marketDistrict = res.data.data
             })
         },
+        // 市场流通条件筛选
+        searchMarketDistrict () {
+            var that = this
+            var params = {}
+            params.farmId = this.farm.id
+            if (that.scSelectTime) {
+                params.startTime = that.scSelectTime[0]
+                params.endTime = that.scSelectTime[1]
+            }
+            selectMarketDistrict(Object.assign(params)).then((res) => {
+                that.marketDistrict = res.data.data
+                this.setMarketChart('marketChartQx')
+            })
+        },
         // 统计今年和去年的销售总额
         selctSaletZ () {
             var that = this
@@ -1330,6 +1357,13 @@
                     })
                 }
             })
+        },
+        scFarmChange (data) {
+            this.farm.id = data
+        },
+        scltReset () {
+            this.farm.id = ''
+            this.scSelectTime = ''
         }
     }
 }
@@ -1982,6 +2016,7 @@
                 white-space: nowrap;
                 overflow: hidden;
                 text-overflow: ellipsis;
+                cursor: pointer;
             }
 
             .box:hover {
@@ -2005,6 +2040,7 @@
         font-size: 14px;
         color: #6de9f3;
         box-sizing: border-box;
+        cursor: pointer;
 
         .icon {
             width: 24px;
diff --git a/src/views/manage/index.vue b/src/views/manage/index.vue
index f810ba4..c43eb9c 100644
--- a/src/views/manage/index.vue
+++ b/src/views/manage/index.vue
@@ -6,2017 +6,1971 @@
 * 经营主体监管
 */
 <template>
-  <div class="container">
-    <div class="toggle-plot">
-      <el-select
-        popper-class="manage-select"
-        v-model="farmValue"
-        @change="farmSelectChange"
-        placeholder="请选择农场"
-        :popper-append-to-body="false"
-      >
-        <el-option
-          v-for="item in farmSelect"
-          :key="item.id"
-          :label="item.farmName"
-          :value="item.id"
-          class=".manage-option"
-        >
-        </el-option>
-      </el-select>
-    </div>
-    <div class="main-content">
-      <div class="t">
-        <statistics-num
-          :className="'td'"
-          :totalRegion="znum"
-          :imgUrl="'/img/icon/mj.png'"
-          :unit="'亩'"
-          :title="'土地面积'"
-          :subOneTitle="'使用面积'"
-          :subOneNum="landsnum"
-          :subTwoTitle="'未使用面积'"
-          :subTwoNum="landwnum"
-        ></statistics-num>
-        <statistics-num
-          :className="'kc'"
-          :totalRegion="stockTj"
-          :imgUrl="'/img/icon/kc.png'"
-          :unit="'公斤'"
-          :title="'库存数量'"
-          :subOneTitle="'农产品'"
-          :subOneNum="stockNCP"
-          :subTwoTitle="'加工产品'"
-          :subTwoNum="stockJG"
-        ></statistics-num>
-        <statistics-num
-          :className="'nz'"
-          :totalRegion="jnStock"
-          :imgUrl="'/img/icon/syl.png'"
-          :unit="'公斤'"
-          :title="'农资年使用量'"
-          :subOneTitle="'去年使用'"
-          :subOneNum="qnStock"
-          :subTwoTitle="'本月使用'"
-          :subTwoNum="byStock"
-        ></statistics-num>
-        <statistics-num
-          :className="'cl'"
-          :totalRegion="yieldTj"
-          :imgUrl="'/img/icon/ncl.png'"
-          :unit="'公斤'"
-          :title="'年产量'"
-          :subOneTitle="'农产品'"
-          :subOneNum="yieldNCP"
-          :subTwoTitle="'加工产品'"
-          :subTwoNum="yieldJG"
-        ></statistics-num>
-        <statistics-num
-          :className="'lt'"
-          :totalRegion="salaNumBN"
-          :imgUrl="'/img/icon/lt.png'"
-          :unit="'公斤'"
-          :title="'市场流通量'"
-          :subOneTitle="'去年流通量'"
-          :subOneNum="salaNumQN"
-          :subTwoTitle="'本月流通量'"
-          :subTwoNum="salaNumBY"
-        ></statistics-num>
-      </div>
-      <div class="c">
-        <div class="time-box">
-          <time-box
-            :imgUrl="'/img/icon/current.png'"
-            :title="'溯源次数'"
-            :currentNum="sweepList['todayNum']"
-            :subTitle="'昨日溯源次数对比'"
-            :contrast="sweepList['yesterdayNum']"
-            :upDown="
+    <div class="container">
+        <div class="toggle-plot">
+            <el-select
+                popper-class="manage-select"
+                v-model="farmValue"
+                @change="farmSelectChange"
+                placeholder="请选择农场"
+                :popper-append-to-body="false"
+            >
+                <el-option
+                    v-for="item in farmSelect"
+                    :key="item.id"
+                    :label="item.farmName"
+                    :value="item.id"
+                    class=".manage-option"
+                ></el-option>
+            </el-select>
+        </div>
+        <div class="main-content">
+            <div class="t">
+                <statistics-num
+                    :className="'td'"
+                    :totalRegion="znum"
+                    :imgUrl="'/img/icon/mj.png'"
+                    :unit="'亩'"
+                    :title="'土地面积'"
+                    :subOneTitle="'使用面积'"
+                    :subOneNum="landsnum"
+                    :subTwoTitle="'未使用面积'"
+                    :subTwoNum="landwnum"
+                ></statistics-num>
+                <statistics-num
+                    :className="'kc'"
+                    :totalRegion="stockTj"
+                    :imgUrl="'/img/icon/kc.png'"
+                    :unit="'公斤'"
+                    :title="'库存数量'"
+                    :subOneTitle="'农产品'"
+                    :subOneNum="stockNCP"
+                    :subTwoTitle="'加工产品'"
+                    :subTwoNum="stockJG"
+                ></statistics-num>
+                <statistics-num
+                    :className="'nz'"
+                    :totalRegion="jnStock"
+                    :imgUrl="'/img/icon/syl.png'"
+                    :unit="'公斤'"
+                    :title="'农资年使用量'"
+                    :subOneTitle="'去年使用'"
+                    :subOneNum="qnStock"
+                    :subTwoTitle="'本月使用'"
+                    :subTwoNum="byStock"
+                ></statistics-num>
+                <statistics-num
+                    :className="'cl'"
+                    :totalRegion="yieldTj"
+                    :imgUrl="'/img/icon/ncl.png'"
+                    :unit="'公斤'"
+                    :title="'年产量'"
+                    :subOneTitle="'农产品'"
+                    :subOneNum="yieldNCP"
+                    :subTwoTitle="'加工产品'"
+                    :subTwoNum="yieldJG"
+                ></statistics-num>
+                <statistics-num
+                    :className="'lt'"
+                    :totalRegion="salaNumBN"
+                    :imgUrl="'/img/icon/lt.png'"
+                    :unit="'公斤'"
+                    :title="'市场流通量'"
+                    :subOneTitle="'去年流通量'"
+                    :subOneNum="salaNumQN"
+                    :subTwoTitle="'本月流通量'"
+                    :subTwoNum="salaNumBY"
+                ></statistics-num>
+            </div>
+            <div class="c">
+                <div class="time-box">
+                    <time-box
+                        :imgUrl="'/img/icon/current.png'"
+                        :title="'溯源次数'"
+                        :currentNum="sweepList['todayNum']"
+                        :subTitle="'昨日溯源次数对比'"
+                        :contrast="sweepList['yesterdayNum']"
+                        :upDown="
               sweepList['todayNum'] > sweepList['yesterdayNum'] ? 'up' : 'down'
             "
-          ></time-box>
-          <time-box
-            :imgUrl="'/img/icon/week.png'"
-            :title="'溯源次数'"
-            :currentNum="sweepList['thisWeekNum']"
-            :subTitle="'上周溯源次数对比'"
-            :contrast="sweepList['lastWeekNum']"
-            :upDown="
+                    ></time-box>
+                    <time-box
+                        :imgUrl="'/img/icon/week.png'"
+                        :title="'溯源次数'"
+                        :currentNum="sweepList['thisWeekNum']"
+                        :subTitle="'上周溯源次数对比'"
+                        :contrast="sweepList['lastWeekNum']"
+                        :upDown="
               sweepList['thisWeekNum'] > sweepList['lastWeekNum']
                 ? 'up'
                 : 'down'
             "
-          ></time-box>
-          <time-box
-            :imgUrl="'/img/icon/month.png'"
-            :title="'溯源次数'"
-            :currentNum="sweepList['thisMonthNum']"
-            :subTitle="'上月溯源次数对比'"
-            :contrast="sweepList['lastMonthNum']"
-            :upDown="
+                    ></time-box>
+                    <time-box
+                        :imgUrl="'/img/icon/month.png'"
+                        :title="'溯源次数'"
+                        :currentNum="sweepList['thisMonthNum']"
+                        :subTitle="'上月溯源次数对比'"
+                        :contrast="sweepList['lastMonthNum']"
+                        :upDown="
               sweepList['thisMonthNum'] > sweepList['lastMonthNum']
                 ? 'up'
                 : 'down'
             "
-          ></time-box>
-        </div>
-        <div class="task-box">
-          <div class="title">任务总数</div>
-
-          <date-select :type="'taskSelect'"></date-select>
-
-          <div class="echarts-box" id="TaskNumEcharts"></div>
-        </div>
-        <div class="nz-ncp">
-          <div class="title-box">
-            <div>
-              <div class="item" :class="{ on: nzOrNcp == 'ncp' }">
-                <div @click="nzOrNcp = 'ncp'" class="title">农产品投入</div>
-                <span></span>
-              </div>
-            </div>
-            <div>
-              <div class="item" :class="{ on: nzOrNcp == 'nz' }">
-                <div @click="nzOrNcp = 'nz'" class="title">农资投入</div>
-                <span></span>
-              </div>
-            </div>
-          </div>
-          <date-select
-            :type="'ncptrSelect'"
-            v-if="nzOrNcp == 'ncp'"
-          ></date-select>
-          <date-select
-            :type="'nztrSelect'"
-            v-if="nzOrNcp == 'nz'"
-          ></date-select>
-          <div v-if="nzOrNcp == 'ncp'" class="lists-box">
-            <div v-for="(item, index) in ncptr" :key="index">
-              <div>{{ index + 1 }}</div>
-              <div>{{ item.strainName }}</div>
-              <div>{{ item.area }}亩</div>
-            </div>
-            <!--                        <div>-->
-            <!--                            <div>2</div>-->
-            <!--                            <div>玉米</div>-->
-            <!--                            <div>75.12亩</div>-->
-            <!--                        </div>-->
-          </div>
-          <div v-if="nzOrNcp == 'nz'" class="lists-box">
-            <div v-for="(item, index) in nztr" :key="index">
-              <div>{{ index + 1 }}</div>
-              <div>{{ item.agrname }}</div>
-              <div>{{ item.cnum }}公斤</div>
-            </div>
-            <!--                        <div>-->
-            <!--                            <div>2</div>-->
-            <!--                            <div>复合肥料</div>-->
-            <!--                            <div>68公斤</div>-->
-            <!--                        </div>-->
-          </div>
-        </div>
-        <div class="trp-ncp">
-          <div class="title-box">
-            <div>
-              <div class="item" :class="{ on: trpOrNcp == 'trp' }">
-                <div @click="trpOrNcpChange('trp')" class="title">
-                  投入品监管
+                    ></time-box>
                 </div>
-                <span></span>
-              </div>
-            </div>
-            <div>
-              <div class="item" :class="{ on: trpOrNcp == 'ncp' }">
-                <div @click="trpOrNcpChange('ncp')" class="title">
-                  农产品监管
+                <div class="task-box">
+                    <div class="title">任务总数</div>
+
+                    <date-select :type="'taskSelect'"></date-select>
+
+                    <div class="echarts-box" id="TaskNumEcharts"></div>
                 </div>
-                <span></span>
-              </div>
-            </div>
+                <div class="nz-ncp">
+                    <div class="title-box">
+                        <div>
+                            <div class="item" :class="{ on: nzOrNcp == 'ncp' }">
+                                <div @click="nzOrNcp = 'ncp'" class="title">农产品投入</div>
+                                <span></span>
+                            </div>
+                        </div>
+                        <div>
+                            <div class="item" :class="{ on: nzOrNcp == 'nz' }">
+                                <div @click="nzOrNcp = 'nz'" class="title">农资投入</div>
+                                <span></span>
+                            </div>
+                        </div>
+                    </div>
+                    <date-select :type="'ncptrSelect'" v-if="nzOrNcp == 'ncp'"></date-select>
+                    <date-select :type="'nztrSelect'" v-if="nzOrNcp == 'nz'"></date-select>
+                    <div v-if="nzOrNcp == 'ncp'" class="lists-box">
+                        <div v-for="(item, index) in ncptr" :key="index">
+                            <div>{{ index + 1 }}</div>
+                            <div>{{ item.strainName }}</div>
+                            <div>{{ item.area }}亩</div>
+                        </div>
+                        <!--                        <div>-->
+                        <!--                            <div>2</div>-->
+                        <!--                            <div>玉米</div>-->
+                        <!--                            <div>75.12亩</div>-->
+                        <!--                        </div>-->
+                    </div>
+                    <div v-if="nzOrNcp == 'nz'" class="lists-box">
+                        <div v-for="(item, index) in nztr" :key="index">
+                            <div>{{ index + 1 }}</div>
+                            <div>{{ item.agrname }}</div>
+                            <div>{{ item.cnum }}公斤</div>
+                        </div>
+                        <!--                        <div>-->
+                        <!--                            <div>2</div>-->
+                        <!--                            <div>复合肥料</div>-->
+                        <!--                            <div>68公斤</div>-->
+                        <!--                        </div>-->
+                    </div>
+                </div>
+                <div class="trp-ncp">
+                    <div class="title-box">
+                        <div>
+                            <div class="item" :class="{ on: trpOrNcp == 'trp' }">
+                                <div @click="trpOrNcpChange('trp')" class="title">投入品监管</div>
+                                <span></span>
+                            </div>
+                        </div>
+                        <div>
+                            <div class="item" :class="{ on: trpOrNcp == 'ncp' }">
+                                <div @click="trpOrNcpChange('ncp')" class="title">农产品监管</div>
+                                <span></span>
+                            </div>
+                        </div>
 
-            <div class="more" @click="popDetailedSupervise">
-              明细
-              <img src="/img/icon/more.png" alt />
-            </div>
-          </div>
+                        <div class="more" @click="popDetailedSupervise">
+                            明细
+                            <img src="/img/icon/more.png" alt />
+                        </div>
+                    </div>
 
-          <div class="echarts-box" id="TrpEcharts"></div>
-          <!--                    <div v-show="trpOrNcp == 'ncp'" class="echarts-box" id="NcpEcharts"></div>-->
+                    <div class="echarts-box" id="TrpEcharts"></div>
+                    <!--                    <div v-show="trpOrNcp == 'ncp'" class="echarts-box" id="NcpEcharts"></div>-->
+                </div>
+            </div>
+            <div class="b">
+                <div class="cl-sy">
+                    <div class="title-box">
+                        <div>
+                            <div class="item" :class="{ on: cltjOrsym == 'cltj' }">
+                                <div @click="cltjOrSymChange('cltj')" class="title">产量统计</div>
+                                <span></span>
+                            </div>
+                        </div>
+                        <div>
+                            <div class="item" :class="{ on: cltjOrsym == 'sym' }">
+                                <div @click="cltjOrSymChange('sym')" class="title">溯源查询趋势图</div>
+                                <span></span>
+                            </div>
+                        </div>
+
+                        <div class="date">
+                            <date-select :type="'cltjSelect'" v-if="cltjOrsym == 'cltj'"></date-select>
+                            <date-select :type="'symSelect'" v-if="cltjOrsym == 'sym'"></date-select>
+                        </div>
+                    </div>
+
+                    <div class="echarts-box" id="ClSyEcharts"></div>
+                </div>
+                <div class="ns-nz">
+                    <div class="title-box">
+                        <div>
+                            <div class="item" :class="{ on: nsjlOrnz == 'nsjl' }">
+                                <div @click="nsjlOrnz = 'nsjl'" class="title">农事记录</div>
+                                <span></span>
+                            </div>
+                        </div>
+                        <div>
+                            <div class="item" :class="{ on: nsjlOrnz == 'nzcr' }">
+                                <div @click="nsjlOrnz = 'nzcr'" class="title">农资出入库记录</div>
+                                <span></span>
+                            </div>
+                        </div>
+
+                        <div class="more" @click="popDetailedFarming({ type: '', landId: '' })">
+                            更多
+                            <img src="/img/icon/more.png" alt />
+                        </div>
+                    </div>
+
+                    <div v-if="nsjlOrnz == 'nsjl'" class="lists-box">
+                        <div v-for="(item, index) in farminList" :key="index">
+                            <div class="t-border"></div>
+                            <div class="t-item">
+                                <div>{{ item.typeName }}</div>
+                                <div>{{ item.time }}</div>
+                            </div>
+                            <div class="b-item">
+                                <div>{{ item.strainName }}</div>
+                                <div>{{ item.realName }}</div>
+                                <div>{{ item.landName }}</div>
+                            </div>
+                            <div class="b-border"></div>
+                        </div>
+                    </div>
+                    <div v-if="nsjlOrnz == 'nzcr'" class="lists-box">
+                        <div v-for="(item, index) in stockrecordList" :key="index">
+                            <div class="t-border"></div>
+                            <div class="t-item">
+                                <div>{{ item.agrname }}</div>
+                                <div>{{ item.time1 }}</div>
+                            </div>
+                            <div class="b-item">
+                                <div>{{ item.spn }}</div>
+                                <div>{{ item.type1 }}</div>
+                                <div>{{ item.czr }}</div>
+                            </div>
+                            <div class="b-border"></div>
+                        </div>
+                    </div>
+                </div>
+            </div>
         </div>
-      </div>
-      <div class="b">
-        <div class="cl-sy">
-          <div class="title-box">
-            <div>
-              <div class="item" :class="{ on: cltjOrsym == 'cltj' }">
-                <div @click="cltjOrSymChange('cltj')" class="title">
-                  产量统计
+
+        <public-box
+            v-show="trpPopupFlag"
+            :closeFlag="'trpPopupFlag'"
+            :className="'public-farm-oper-table'"
+        >
+            <template slot="public-box-header">
+                <div class="logo"></div>
+                <div class="title">投入品监管明细</div>
+                <img
+                    @click="trpPopupFlag = false"
+                    src="/img/icon/public-close.png"
+                    alt
+                    class="close"
+                />
+            </template>
+            <template slot="public-box-content">
+                <div class="action-bar">
+                    <div class="search">
+                        <el-input
+                            class="search-input"
+                            size="small"
+                            prefix-icon="el-icon-search"
+                            placeholder="请输入农资"
+                            v-model="inputTRP_nzname"
+                        ></el-input>
+                    </div>
+                    <div class="btn-grounp">
+                        <el-button
+                            size="small"
+                            class="search"
+                            type="primary"
+                            icon="el-icon-search"
+                            @click="TRP_query"
+                        >查询</el-button>
+                        <el-button
+                            size="small"
+                            class="reset"
+                            type="info"
+                            icon="el-icon-refresh-right"
+                            @click="TRP_refresh"
+                        >重置</el-button>
+                    </div>
                 </div>
-                <span></span>
-              </div>
-            </div>
-            <div>
-              <div class="item" :class="{ on: cltjOrsym == 'sym' }">
-                <div @click="cltjOrSymChange('sym')" class="title">
-                  溯源查询趋势图
+                <div class="table-list">
+                    <div class="t-header">
+                        <div>农资</div>
+                        <div>分类</div>
+                        <div>规格</div>
+                        <div>库存</div>
+                        <div>数量</div>
+                        <div>厂家</div>
+                    </div>
+                    <div class="t-body">
+                        <div class="table-list" v-for="(item, index) in nztrAll" :key="index">
+                            <div>{{ item.agrname }}</div>
+                            <div>{{ item.stype }}</div>
+                            <div>{{ item.spn }}</div>
+                            <div>{{ item.amount }}{{ item.dic2 }}</div>
+                            <div>{{ item.cnum }}{{ item.dic1 }}</div>
+                            <div>{{ item.factoryName }}</div>
+                        </div>
+                    </div>
                 </div>
-                <span></span>
-              </div>
-            </div>
+            </template>
+        </public-box>
 
-            <div class="date">
-              <date-select
-                :type="'cltjSelect'"
-                v-if="cltjOrsym == 'cltj'"
-              ></date-select>
-              <date-select
-                :type="'symSelect'"
-                v-if="cltjOrsym == 'sym'"
-              ></date-select>
-            </div>
-          </div>
-
-          <div class="echarts-box" id="ClSyEcharts"></div>
-        </div>
-        <div class="ns-nz">
-          <div class="title-box">
-            <div>
-              <div class="item" :class="{ on: nsjlOrnz == 'nsjl' }">
-                <div @click="nsjlOrnz = 'nsjl'" class="title">农事记录</div>
-                <span></span>
-              </div>
-            </div>
-            <div>
-              <div class="item" :class="{ on: nsjlOrnz == 'nzcr' }">
-                <div @click="nsjlOrnz = 'nzcr'" class="title">
-                  农资出入库记录
+        <public-box
+            v-show="nzcrPopupFlag"
+            :closeFlag="'nzcrPopupFlag'"
+            :className="'public-farm-oper-table'"
+        >
+            <template slot="public-box-header">
+                <div class="logo"></div>
+                <div class="title">农资出入库记录</div>
+                <img
+                    @click="nzcrPopupFlag = false"
+                    src="/img/icon/public-close.png"
+                    alt
+                    class="close"
+                />
+            </template>
+            <template slot="public-box-content">
+                <div class="action-bar">
+                    <div class="search">
+                        <el-input
+                            class="search-input"
+                            size="small"
+                            prefix-icon="el-icon-search"
+                            placeholder="请输入农资"
+                            v-model="inputNZ_nzname"
+                        ></el-input>
+                    </div>
+                    <div class="btn-grounp">
+                        <el-button
+                            size="small"
+                            class="search"
+                            type="primary"
+                            icon="el-icon-search"
+                            @click="NZCR_query"
+                        >查询</el-button>
+                        <el-button
+                            size="small"
+                            class="reset"
+                            type="info"
+                            icon="el-icon-refresh-right"
+                            @click="NZCR_refresh"
+                        >重置</el-button>
+                    </div>
                 </div>
-                <span></span>
-              </div>
-            </div>
+                <div class="table-list">
+                    <div class="t-header">
+                        <div style="width: 225px">农资</div>
+                        <div>分类</div>
+                        <div>规格</div>
+                        <div>类型</div>
+                        <div>数量</div>
+                        <div>操作时间</div>
+                        <div>操作人</div>
+                    </div>
+                    <div class="t-body">
+                        <div
+                            class="table-list"
+                            v-for="(item, index) in stockrecordAll"
+                            :key="index"
+                        >
+                            <div style="width: 225px">{{ item.agrname }}</div>
+                            <div>{{ item.stype == 0 ? "采购入库" : "调拨入库" }}</div>
+                            <div>{{ item.spn }}</div>
+                            <div>{{ item.type1 }}</div>
+                            <div>{{ item.count }}</div>
+                            <div>{{ item.createTime }}</div>
+                            <div>{{ item.czr }}</div>
+                        </div>
+                    </div>
+                </div>
+            </template>
+        </public-box>
 
-            <div
-              class="more"
-              @click="popDetailedFarming({ type: '', landId: '' })"
-            >
-              更多
-              <img src="/img/icon/more.png" alt />
-            </div>
-          </div>
+        <public-box
+            v-show="ncpPopupFlag"
+            :closeFlag="'ncpPopupFlag'"
+            :className="'public-farm-oper-table'"
+        >
+            <template slot="public-box-header">
+                <div class="logo"></div>
+                <div class="title">农产品监管</div>
+                <img
+                    @click="ncpPopupFlag = false"
+                    src="/img/icon/public-close.png"
+                    alt
+                    class="close"
+                />
+            </template>
+            <template slot="public-box-content">
+                <div class="action-bar">
+                    <div class="search">
+                        <el-input
+                            class="search-input"
+                            size="small"
+                            prefix-icon="el-icon-search"
+                            placeholder="请输入农产品"
+                            v-model="inputNCP_nzname"
+                        ></el-input>
+                    </div>
+                    <div class="btn-grounp">
+                        <el-button
+                            size="small"
+                            class="search"
+                            type="primary"
+                            icon="el-icon-search"
+                            @click="NCP_query"
+                        >查询</el-button>
+                        <el-button
+                            size="small"
+                            class="reset"
+                            type="info"
+                            icon="el-icon-refresh-right"
+                            @click="NCP_refresh"
+                        >重置</el-button>
+                    </div>
+                </div>
+                <div class="table-list">
+                    <div class="t-header">
+                        <div>农产品</div>
+                        <div>作业方式</div>
+                        <div>采收地块</div>
+                        <div>类型</div>
+                        <div>采收数量</div>
+                        <div>操作时间</div>
+                        <div>操作人</div>
+                    </div>
+                    <div class="t-body">
+                        <div class="table-list" v-for="(item, index) in ncpAll" :key="index">
+                            <div>{{ item.strainName }}</div>
+                            <div>{{ item.jobWay == 0 ? "人工" : "机械" }}</div>
+                            <div>{{ item.landName }}</div>
+                            <div>{{ Number(item.leaves) + 1 }}等品</div>
+                            <div>{{ item.weight }}公斤</div>
+                            <div>{{ item.createTime }}</div>
+                            <div>{{ item.realName }}</div>
+                        </div>
+                    </div>
+                </div>
+            </template>
+        </public-box>
 
-          <div v-if="nsjlOrnz == 'nsjl'" class="lists-box">
-            <div v-for="(item, index) in farminList" :key="index">
-              <div class="t-border"></div>
-              <div class="t-item">
-                <div>{{ item.typeName }}</div>
-                <div>{{ item.time }}</div>
-              </div>
-              <div class="b-item">
-                <div>{{ item.strainName }}</div>
-                <div>{{ item.realName }}</div>
-                <div>{{ item.landName }}</div>
-              </div>
-              <div class="b-border"></div>
-            </div>
-          </div>
-          <div v-if="nsjlOrnz == 'nzcr'" class="lists-box">
-            <div v-for="(item, index) in stockrecordList" :key="index">
-              <div class="t-border"></div>
-              <div class="t-item">
-                <div>{{ item.agrname }}</div>
-                <div>{{ item.time1 }}</div>
-              </div>
-              <div class="b-item">
-                <div>{{ item.spn }}</div>
-                <div>{{ item.type1 }}</div>
-                <div>{{ item.czr }}</div>
-              </div>
-              <div class="b-border"></div>
-            </div>
-          </div>
-        </div>
-      </div>
+        <public-box
+            v-show="nsjlPopupFlag"
+            :closeFlag="'nsjlPopupFlag'"
+            :className="'public-farm-oper-table'"
+        >
+            <template slot="public-box-header">
+                <div class="logo"></div>
+                <div class="title">农事操作</div>
+                <img
+                    @click="nsjlPopupFlag = false"
+                    src="/img/icon/public-close.png"
+                    alt
+                    class="close"
+                />
+            </template>
+            <template slot="public-box-content">
+                <div class="action-bar">
+                    <div class="search">
+                        <el-select
+                            class="select-type"
+                            size="small"
+                            v-model="farmOperType"
+                            placeholder="选择农事类型"
+                        >
+                            <el-option
+                                v-for="(item, index) in farmingList"
+                                :key="index"
+                                :label="item.name"
+                                :value="item.type"
+                            ></el-option>
+                        </el-select>
+
+                        <el-select
+                            class="select-plot"
+                            size="small"
+                            v-model="farmPlotId"
+                            placeholder="选择地块"
+                        >
+                            <el-option
+                                v-for="(item, index) in plotNumArray"
+                                :key="index"
+                                :label="item.landName"
+                                :value="item.id"
+                            ></el-option>
+                        </el-select>
+                    </div>
+                    <div class="btn-grounp">
+                        <el-button
+                            size="small"
+                            class="search"
+                            type="primary"
+                            icon="el-icon-search"
+                            @click="farmSelectList"
+                        >查询</el-button>
+                        <el-button
+                            size="small"
+                            class="reset"
+                            type="info"
+                            icon="el-icon-refresh-right"
+                            @click="farmResetList"
+                        >重置</el-button>
+                    </div>
+                </div>
+                <div class="table-list">
+                    <div class="t-header">
+                        <div>农事类型</div>
+                        <div>地块</div>
+                        <div>备注</div>
+                        <div>农资</div>
+                        <div>作业方式</div>
+                        <div>农事操作时间</div>
+                        <div>创建时间</div>
+                        <div>操作人</div>
+                    </div>
+                    <div class="t-body">
+                        <div class="table-list" v-for="(item, index) in farmOperList" :key="index">
+                            <div>{{ item.typeName }}</div>
+                            <div>{{ item.landName }}</div>
+                            <div>{{ item.remarks == "" ? "--" : item.remarks }}</div>
+                            <div>{{ item.agriculturalName }}</div>
+                            <div>{{ item.jobWay == 0 ? "人工" : "机械" }}</div>
+                            <div>{{ item.time }}</div>
+                            <div>{{ item.createTime.substr(0, 10) }}</div>
+                            <div>{{ item.realName }}</div>
+                        </div>
+                    </div>
+                </div>
+            </template>
+        </public-box>
     </div>
-
-    <public-box
-      v-show="trpPopupFlag"
-      :closeFlag="'trpPopupFlag'"
-      :className="'public-farm-oper-table'"
-    >
-      <template slot="public-box-header">
-        <div class="logo"></div>
-        <div class="title">投入品监管明细</div>
-        <img
-          @click="trpPopupFlag = false"
-          src="/img/icon/public-close.png"
-          alt
-          class="close"
-        />
-      </template>
-      <template slot="public-box-content">
-        <div class="action-bar">
-          <div class="search">
-            <el-input
-              class="search-input"
-              size="small"
-              prefix-icon="el-icon-search"
-              placeholder="请输入农资"
-              v-model="inputTRP_nzname"
-            ></el-input>
-          </div>
-          <div class="btn-grounp">
-            <el-button
-              size="small"
-              class="search"
-              type="primary"
-              icon="el-icon-search"
-              @click="TRP_query"
-              >查询</el-button
-            >
-            <el-button
-              size="small"
-              class="reset"
-              type="info"
-              icon="el-icon-refresh-right"
-              @click="TRP_refresh"
-              >重置</el-button
-            >
-          </div>
-        </div>
-        <div class="table-list">
-          <div class="t-header">
-            <div>农资</div>
-            <div>分类</div>
-            <div>规格</div>
-            <div>库存</div>
-            <div>数量</div>
-            <div>厂家</div>
-          </div>
-          <div class="t-body">
-            <div
-              class="table-list"
-              v-for="(item, index) in nztrAll"
-              :key="index"
-            >
-              <div>{{ item.agrname }}</div>
-              <div>{{ item.stype }}</div>
-              <div>{{ item.spn }}</div>
-              <div>{{ item.amount }}{{ item.dic2 }}</div>
-              <div>{{ item.cnum }}{{ item.dic1 }}</div>
-              <div>{{ item.factoryName }}</div>
-            </div>
-          </div>
-        </div>
-      </template>
-    </public-box>
-
-    <public-box
-      v-show="nzcrPopupFlag"
-      :closeFlag="'nzcrPopupFlag'"
-      :className="'public-farm-oper-table'"
-    >
-      <template slot="public-box-header">
-        <div class="logo"></div>
-        <div class="title">农资出入库记录</div>
-        <img
-          @click="nzcrPopupFlag = false"
-          src="/img/icon/public-close.png"
-          alt
-          class="close"
-        />
-      </template>
-      <template slot="public-box-content">
-        <div class="action-bar">
-          <div class="search">
-            <el-input
-              class="search-input"
-              size="small"
-              prefix-icon="el-icon-search"
-              placeholder="请输入农资"
-              v-model="inputNZ_nzname"
-            ></el-input>
-          </div>
-          <div class="btn-grounp">
-            <el-button
-              size="small"
-              class="search"
-              type="primary"
-              icon="el-icon-search"
-              @click="NZCR_query"
-              >查询</el-button
-            >
-            <el-button
-              size="small"
-              class="reset"
-              type="info"
-              icon="el-icon-refresh-right"
-              @click="NZCR_refresh"
-              >重置</el-button
-            >
-          </div>
-        </div>
-        <div class="table-list">
-          <div class="t-header">
-            <div style="width: 225px">农资</div>
-            <div>分类</div>
-            <div>规格</div>
-            <div>类型</div>
-            <div>数量</div>
-            <div>操作时间</div>
-            <div>操作人</div>
-          </div>
-          <div class="t-body">
-            <div
-              class="table-list"
-              v-for="(item, index) in stockrecordAll"
-              :key="index"
-            >
-              <div style="width: 225px">{{ item.agrname }}</div>
-              <div>{{ item.stype == 0 ? "采购入库" : "调拨入库" }}</div>
-              <div>{{ item.spn }}</div>
-              <div>{{ item.type1 }}</div>
-              <div>{{ item.count }}</div>
-              <div>{{ item.createTime }}</div>
-              <div>{{ item.czr }}</div>
-            </div>
-          </div>
-        </div>
-      </template>
-    </public-box>
-
-    <public-box
-      v-show="ncpPopupFlag"
-      :closeFlag="'ncpPopupFlag'"
-      :className="'public-farm-oper-table'"
-    >
-      <template slot="public-box-header">
-        <div class="logo"></div>
-        <div class="title">农产品监管</div>
-        <img
-          @click="ncpPopupFlag = false"
-          src="/img/icon/public-close.png"
-          alt
-          class="close"
-        />
-      </template>
-      <template slot="public-box-content">
-        <div class="action-bar">
-          <div class="search">
-            <el-input
-              class="search-input"
-              size="small"
-              prefix-icon="el-icon-search"
-              placeholder="请输入农资"
-              v-model="inputNCP_nzname"
-            ></el-input>
-          </div>
-          <div class="btn-grounp">
-            <el-button
-              size="small"
-              class="search"
-              type="primary"
-              icon="el-icon-search"
-              @click="NCP_query"
-              >查询</el-button
-            >
-            <el-button
-              size="small"
-              class="reset"
-              type="info"
-              icon="el-icon-refresh-right"
-              @click="NCP_refresh"
-              >重置</el-button
-            >
-          </div>
-        </div>
-        <div class="table-list">
-          <div class="t-header">
-            <div>农资</div>
-            <div>作业方式</div>
-            <div>采收地块</div>
-            <div>类型</div>
-            <div>采收数量</div>
-            <div>操作时间</div>
-            <div>操作人</div>
-          </div>
-          <div class="t-body">
-            <div
-              class="table-list"
-              v-for="(item, index) in ncpAll"
-              :key="index"
-            >
-              <div>{{ item.strainName }}</div>
-              <div>{{ item.jobWay == 0 ? "人工" : "机械" }}</div>
-              <div>{{ item.landName }}</div>
-              <div>{{ Number(item.leaves) + 1 }}等品</div>
-              <div>{{ item.weight }}公斤</div>
-              <div>{{ item.createTime }}</div>
-              <div>{{ item.realName }}</div>
-            </div>
-          </div>
-        </div>
-      </template>
-    </public-box>
-
-    <public-box
-      v-show="nsjlPopupFlag"
-      :closeFlag="'nsjlPopupFlag'"
-      :className="'public-farm-oper-table'"
-    >
-      <template slot="public-box-header">
-        <div class="logo"></div>
-        <div class="title">农事操作</div>
-        <img
-          @click="nsjlPopupFlag = false"
-          src="/img/icon/public-close.png"
-          alt
-          class="close"
-        />
-      </template>
-      <template slot="public-box-content">
-        <div class="action-bar">
-          <div class="search">
-            <el-select
-              class="select-type"
-              size="small"
-              v-model="farmOperType"
-              placeholder="选择农事类型"
-            >
-              <el-option
-                v-for="(item, index) in farmingList"
-                :key="index"
-                :label="item.name"
-                :value="item.type"
-              ></el-option>
-            </el-select>
-
-            <el-select
-              class="select-plot"
-              size="small"
-              v-model="farmPlotId"
-              placeholder="选择地块"
-            >
-              <el-option
-                v-for="(item, index) in plotNumArray"
-                :key="index"
-                :label="item.landName"
-                :value="item.id"
-              ></el-option>
-            </el-select>
-          </div>
-          <div class="btn-grounp">
-            <el-button
-              size="small"
-              class="search"
-              type="primary"
-              icon="el-icon-search"
-              @click="farmSelectList"
-              >查询</el-button
-            >
-            <el-button
-              size="small"
-              class="reset"
-              type="info"
-              icon="el-icon-refresh-right"
-              @click="farmResetList"
-              >重置</el-button
-            >
-          </div>
-        </div>
-        <div class="table-list">
-          <div class="t-header">
-            <div>农事类型</div>
-            <div>地块</div>
-            <div>备注</div>
-            <div>农资</div>
-            <div>作业方式</div>
-            <div>农事操作时间</div>
-            <div>创建时间</div>
-            <div>操作人</div>
-          </div>
-          <div class="t-body">
-            <div
-              class="table-list"
-              v-for="(item, index) in farmOperList"
-              :key="index"
-            >
-              <div>{{ item.typeName }}</div>
-              <div>{{ item.landName }}</div>
-              <div>{{ item.remarks == "" ? "--" : item.remarks }}</div>
-              <div>{{ item.agriculturalName }}</div>
-              <div>{{ item.jobWay == 0 ? "人工" : "机械" }}</div>
-              <div>{{ item.time }}</div>
-              <div>{{ item.createTime.substr(0, 10) }}</div>
-              <div>{{ item.realName }}</div>
-            </div>
-          </div>
-        </div>
-      </template>
-    </public-box>
-  </div>
 </template>
 
 <script>
-import { selectXCount } from "@/api/land/land";
+import { selectXCount } from "@/api/land/land"
 // eslint-disable-next-line no-unused-vars
 import {
-  getStockCount,
-  statisticsStockAndYield,
-  pageCount,
-  pageCountNz,
-  selectMarketCirculate,
-  countTaskNum,
-  farmingRecords,
-  statisticsStockMonth,
-  productsSupervise,
-  pageCountNzCrk,
-  getSweepRecordStatistics,
-  getSweepRecordStatisticsByDayOrMonthOrYear,
-  getFarmingRecordList,
-  getFarmingStatis,
-  getLandList,
-  productsSuperviseList,
-  farmSelectQuery,
-} from "@/api/farm/farmingrecord";
+    getStockCount,
+    statisticsStockAndYield,
+    pageCount,
+    pageCountNz,
+    selectMarketCirculate,
+    countTaskNum,
+    farmingRecords,
+    statisticsStockMonth,
+    productsSupervise,
+    pageCountNzCrk,
+    getSweepRecordStatistics,
+    getSweepRecordStatisticsByDayOrMonthOrYear,
+    getFarmingRecordList,
+    getFarmingStatis,
+    getLandList,
+    productsSuperviseList,
+    farmSelectQuery,
+} from "@/api/farm/farmingrecord"
 
 export default {
-  data() {
-    return {
-      landsnum: 0,
-      landwnum: 0,
-      znum: 0,
-      jnStock: 0,
-      qnStock: 0,
-      byStock: 0,
-      // 库存数量统计
-      stockTj: 0,
-      // 农产品数量统计
-      stockNCP: 0,
-      // 加工产品数量统计
-      stockJG: 0,
-      // 产量按月统计
-      yieldMonth: [],
-      // 年产量统计
-      yieldTj: 0,
-      // 农产品年产量统计
-      yieldNCP: 0,
-      // 加工产品年产量统计
-      yieldJG: 0,
-      // 农产品投入
-      ncptr: [],
-      nztr: [],
-      // 统计市场流通/去年流通量/本月流通量
-      salaNumBN: [],
-      salaNumBY: [],
-      salaNumQN: [],
-      // 统计任务总数
-      taskNum: [],
-      // 农事记录
-      farminList: [],
-      // 农资出入库记录
-      stockrecordList: [],
-      // 农产品监管
-      NcpJg: [],
-      // 溯源次数
-      sweepList: {},
-      // 溯源趋势
-      sweepTrend: [],
-      nzOrNcp: "ncp",
-      trpOrNcp: "trp",
-      nsjlOrnz: "nsjl",
-      cltjOrsym: "cltj",
-      // 投入品监管窗体控制
-      trpPopupFlag: false,
-      // 农事记录窗体控制
-      nsjlPopupFlag: false,
-      // 农资出入记录窗体控制
-      nzcrPopupFlag: false,
-      // 农产品监管窗体控制
-      ncpPopupFlag: false,
-      // 农事操作记录列表
-      farmOperList: [],
-      // 选择的农事类型
-      farmOperType: "",
-      // 农场地块id
-      farmPlotId: "",
-      // 地块下拉
-      plotNumArray: [],
-      // 农事类型下拉
-      farmingList: [],
-      // 农资投入记录窗体
-      nztrAll: [],
-      // 农资出入库记录弹窗
-      stockrecordAll: [],
-      // 农产品监管记录弹窗
-      ncpAll: [],
-      // 农场下拉
-      farmSelect: [],
-      // 所选值
-      farmValue: 1,
-      inputNZ_nzname: "",
-      inputTRP_nzname: "",
-      inputNCP_nzname: "",
-    };
-  },
-  created() {
-    // 农场下拉列表
-    this.farmSelectQuery();
-
-    // 默认查询第一个农场数据
-    this.AllDataUpdate();
-  },
-  mounted() {},
-  methods: {
-    // 农场下拉选中事件
-    farmSelectChange(e) {
-      this.AllDataUpdate();
-    },
-    // 全局数据刷新事件
-    AllDataUpdate() {
-      // 获取当前时间
-      var date = new Date();
-      var y = date.getFullYear() + "-" + this.checkTime(date.getMonth() + 1);
-      var n = date.getFullYear() + "";
-      this.selectXCount();
-      this.getStockCount();
-      // 年产量与库存数量
-      this.statisticsStockAndYield(n);
-      // 按月统计产量
-      this.statisticsStockMonth(y);
-      // 农产品投入
-      this.pageCount(y);
-      // 农资投入
-      this.pageCountNz(y);
-      // 统计市场流通/去年流通量/本月流通量
-      this.selectMarketCirculate(n);
-      // 统计任务总数
-      this.countTaskNum(y);
-      // 溯源趋势统计
-      this.getSweepRecordStatisticsByDayOrMonthOrYear(y);
-      // 农事操作
-      this.farmingRecords();
-      // 农产品监管
-      this.productsSupervise(n);
-      // 农资出入库记录
-      this.pageCountNzCrk();
-      // 溯源次数统计
-      this.getSweepRecordStatistics();
-    },
-    // 农场下拉列表
-    farmSelectQuery() {
-      var params = {};
-      params.current = "1";
-      params.size = "999";
-      farmSelectQuery(Object.assign(params)).then((res) => {
-        this.farmSelect = res.data.data.records;
-      });
-    },
-    // 投入品监管明细弹窗
-    popDetailedSupervise() {
-      if (this.trpOrNcp == "trp") {
-        this.trpPopupFlag = true;
-      } else {
-        var params = {};
-        params.codes = "000000";
-        params.farmId = this.farmValue;
-        params.current = "1";
-        params.size = "999";
-        productsSuperviseList(Object.assign(params)).then((res) => {
-          this.ncpPopupFlag = true;
-          this.ncpAll = res.data.data.records;
-        });
-      }
-    },
-    // 农事记录明细弹窗
-    popDetailedFarming(item) {
-      if (this.nsjlOrnz == "nsjl") {
-        this.getFarmingStatis();
-        this.getLandList();
-        getFarmingRecordList({ type: item.type, landId: item.landId }).then(
-          (res) => {
-            this.farmOperList = res.data.data;
-            this.nsjlPopupFlag = true;
-          }
-        );
-      } else {
-        var params = {};
-        params.codes = "000000";
-        params.farmId = this.farmValue;
-        params.current = "1";
-        params.size = "999";
-        pageCountNzCrk(Object.assign(params)).then((res) => {
-          this.nzcrPopupFlag = true;
-          this.stockrecordAll = res.data.data.records;
-        });
-      }
-    },
-    // 农事操作搜索
-    farmSelectList() {
-      this.farmOperClick({ type: this.farmOperType, landId: this.farmPlotId });
-    },
-    // 农事操作重置
-    farmResetList() {
-      this.farmOperType = "";
-      this.farmPlotId = "";
-      this.farmOperClick({ type: this.farmOperType, landId: this.farmPlotId });
-    },
-    farmOperClick(item) {
-      getFarmingRecordList({ type: item.type, landId: item.landId }).then(
-        (res) => {
-          this.farmOperList = res.data.data;
-          this.farmOperPopup = true;
+    data () {
+        return {
+            landsnum: 0,
+            landwnum: 0,
+            znum: 0,
+            jnStock: 0,
+            qnStock: 0,
+            byStock: 0,
+            // 库存数量统计
+            stockTj: 0,
+            // 农产品数量统计
+            stockNCP: 0,
+            // 加工产品数量统计
+            stockJG: 0,
+            // 产量按月统计
+            yieldMonth: [],
+            // 年产量统计
+            yieldTj: 0,
+            // 农产品年产量统计
+            yieldNCP: 0,
+            // 加工产品年产量统计
+            yieldJG: 0,
+            // 农产品投入
+            ncptr: [],
+            nztr: [],
+            // 统计市场流通/去年流通量/本月流通量
+            salaNumBN: [],
+            salaNumBY: [],
+            salaNumQN: [],
+            // 统计任务总数
+            taskNum: [],
+            // 农事记录
+            farminList: [],
+            // 农资出入库记录
+            stockrecordList: [],
+            // 农产品监管
+            NcpJg: [],
+            // 溯源次数
+            sweepList: {},
+            // 溯源趋势
+            sweepTrend: [],
+            nzOrNcp: "ncp",
+            trpOrNcp: "trp",
+            nsjlOrnz: "nsjl",
+            cltjOrsym: "cltj",
+            // 投入品监管窗体控制
+            trpPopupFlag: false,
+            // 农事记录窗体控制
+            nsjlPopupFlag: false,
+            // 农资出入记录窗体控制
+            nzcrPopupFlag: false,
+            // 农产品监管窗体控制
+            ncpPopupFlag: false,
+            // 农事操作记录列表
+            farmOperList: [],
+            // 选择的农事类型
+            farmOperType: "",
+            // 农场地块id
+            farmPlotId: "",
+            // 地块下拉
+            plotNumArray: [],
+            // 农事类型下拉
+            farmingList: [],
+            // 农资投入记录窗体
+            nztrAll: [],
+            // 农资出入库记录弹窗
+            stockrecordAll: [],
+            // 农产品监管记录弹窗
+            ncpAll: [],
+            // 农场下拉
+            farmSelect: [],
+            // 所选值
+            farmValue: 1,
+            inputNZ_nzname: "",
+            inputTRP_nzname: "",
+            inputNCP_nzname: "",
         }
-      );
     },
-    // 任务总数时间查询
-    getTaskTime(e) {
-      this.countTaskNum(e);
-    },
-    // 农产品投入时间查询
-    getNcptrTime(e) {
-      this.pageCount(e);
-    },
-    // 农资投入时间查询
-    getNztrTime(e) {
-      this.pageCountNz(e);
-    },
-    // 产量统计时间查询
-    getCltjTime(e) {
-      this.statisticsStockMonth(e);
-    },
-    // 溯源趋势时间查询
-    getSymTime(e) {
-      this.getSweepRecordStatisticsByDayOrMonthOrYear(e);
-    },
-    // 农资出库记录查询按钮
-    NZCR_query() {
-      var params = {};
-      params.codes = "000000";
-      params.farmId = this.farmValue;
-      params.agrname = this.inputNZ_nzname;
-      params.current = "1";
-      params.size = "999";
-      pageCountNzCrk(Object.assign(params)).then((res) => {
-        this.nzcrPopupFlag = true;
-        this.stockrecordAll = res.data.data.records;
-      });
-    },
-    // 农资出库记录重置按钮
-    NZCR_refresh() {
-      var params = {};
-      this.inputNZ_nzname = "";
-      params.codes = "000000";
-      params.farmId = this.farmValue;
-      params.current = "1";
-      params.size = "999";
-      pageCountNzCrk(Object.assign(params)).then((res) => {
-        this.nzcrPopupFlag = true;
-        this.stockrecordAll = res.data.data.records;
-      });
-    },
-    // 投入品监管查询按钮
-    TRP_query() {
-      var params = {};
-      params.codes = "000000";
-      params.agrname = this.inputTRP_nzname;
-      params.farmId = this.farmValue;
-      pageCountNz(Object.assign(params)).then((res) => {
-        this.nztrAll = res.data.data.records;
-      });
-    },
-    // 投入品监管重置按钮
-    TRP_refresh() {
-      var params = {};
-      params.codes = "000000";
-      this.inputTRP_nzname = "";
-      params.farmId = this.farmValue;
-      pageCountNz(Object.assign(params)).then((res) => {
-        this.nztrAll = res.data.data.records;
-      });
-    },
-    // 农产品监管查询按钮
-    NCP_query() {
-      var params = {};
-      params.codes = "000000";
-      params.strainName = this.inputNCP_nzname;
-      params.farmId = this.farmValue;
-      params.current = "1";
-      params.size = "999";
-      productsSuperviseList(Object.assign(params)).then((res) => {
-        this.ncpPopupFlag = true;
-        this.ncpAll = res.data.data.records;
-      });
-    },
-    // 农产品监管重置按钮
-    NCP_refresh() {
-      var params = {};
-      params.codes = "000000";
-      this.inputNCP_nzname = "";
-      params.farmId = this.farmValue;
-      params.current = "1";
-      params.size = "999";
-      productsSuperviseList(Object.assign(params)).then((res) => {
-        this.ncpPopupFlag = true;
-        this.ncpAll = res.data.data.records;
-      });
-    },
-    initBar(dom) {
-      const that = this;
-      const chartDom = document.getElementById(dom);
-      const myChart = this.$echarts.init(chartDom);
-      var y = [];
-      for (let i = 0; i < that.taskNum.length; i++) {
-        y.push(that.taskNum[i].count);
-      }
+    created () {
+        // 农场下拉列表
+        this.farmSelectQuery()
 
-      const option = {
-        grid: {
-          top: "14%",
-          left: "2%",
-          right: "2%",
-          bottom: "2%",
-          containLabel: true,
+        // 默认查询第一个农场数据
+        this.AllDataUpdate()
+    },
+    mounted () { },
+    methods: {
+        // 农场下拉选中事件
+        farmSelectChange (e) {
+            this.AllDataUpdate()
         },
-        xAxis: {
-          type: "category",
-          data: ["已完成", "未完成", "超期完成"],
-          axisLine: {
-            lineStyle: {
-              color: "rgba(153,153,153,.4)",
-            },
-          },
-          axisTick: {
-            show: false,
-          },
-          axisLabel: {
-            color: "rgba(255,255,255,.4)",
-            rotate: 0,
-          },
+        // 全局数据刷新事件
+        AllDataUpdate () {
+            // 获取当前时间
+            var date = new Date()
+            var y = date.getFullYear() + "-" + this.checkTime(date.getMonth() + 1)
+            var n = date.getFullYear() + ""
+            this.selectXCount()
+            this.getStockCount()
+            // 年产量与库存数量
+            this.statisticsStockAndYield(n)
+            // 按月统计产量
+            this.statisticsStockMonth(y)
+            // 农产品投入
+            this.pageCount(y)
+            // 农资投入
+            this.pageCountNz(y)
+            // 统计市场流通/去年流通量/本月流通量
+            this.selectMarketCirculate(n)
+            // 统计任务总数
+            this.countTaskNum(y)
+            // 溯源趋势统计
+            this.getSweepRecordStatisticsByDayOrMonthOrYear(y)
+            // 农事操作
+            this.farmingRecords()
+            // 农产品监管
+            this.productsSupervise(n)
+            // 农资出入库记录
+            this.pageCountNzCrk()
+            // 溯源次数统计
+            this.getSweepRecordStatistics()
         },
-        yAxis: {
-          name: "(次)",
-          nameTextStyle: {
-            color: "rgba(255,255,255,.4)",
-          },
-          axisLine: {
-            lineStyle: {
-              color: "#657CA8",
-            },
-          },
-          axisTick: {
-            show: false,
-          },
-          splitLine: {
-            show: true,
-            lineStyle: {
-              color: "rgba(62,81,97, .5)",
-              type: "dashed",
-            },
-          },
-          axisLabel: {
-            color: "rgba(255,255,255,.4)",
-          },
+        // 农场下拉列表
+        farmSelectQuery () {
+            var params = {}
+            params.current = "1"
+            params.size = "999"
+            farmSelectQuery(Object.assign(params)).then((res) => {
+                this.farmSelect = res.data.data.records
+            })
         },
-        series: [
-          {
-            type: "bar",
-            barWidth: 32,
-            data: y,
-            label: {
-              show: true,
-              position: "top",
-              textStyle: {
-                color: "rgba(255,255,255,.4)",
-              },
-            },
-            itemStyle: {
-              normal: {
-                color: function (params) {
-                  var colorList = [
-                    ["#24A5DF", "#01E2D2"],
-                    ["#E59438", "#FEF880 "],
-                    ["#E34C4C", "#E6945E"],
-                  ];
-                  var index = params.dataIndex;
-                  if (params.dataIndex >= colorList.length) {
-                    index = params.dataIndex - colorList.length;
-                  }
-                  return new that.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
-                    {
-                      offset: 0,
-                      color: colorList[index][0],
-                    },
-                    {
-                      offset: 0.5,
-                      color: colorList[index][0],
-                    },
-                    {
-                      offset: 1,
-                      color: colorList[index][1],
-                    },
-                  ]);
+        // 投入品监管明细弹窗
+        popDetailedSupervise () {
+            if (this.trpOrNcp == "trp") {
+                this.trpPopupFlag = true
+            } else {
+                var params = {}
+                params.codes = "000000"
+                params.farmId = this.farmValue
+                params.current = "1"
+                params.size = "999"
+                productsSuperviseList(Object.assign(params)).then((res) => {
+                    this.ncpPopupFlag = true
+                    this.ncpAll = res.data.data.records
+                })
+            }
+        },
+        // 农事记录明细弹窗
+        popDetailedFarming (item) {
+            if (this.nsjlOrnz == "nsjl") {
+                this.getFarmingStatis()
+                this.getLandList()
+                getFarmingRecordList({ type: item.type, landId: item.landId }).then(
+                    (res) => {
+                        this.farmOperList = res.data.data
+                        this.nsjlPopupFlag = true
+                    }
+                )
+            } else {
+                var params = {}
+                params.codes = "000000"
+                params.farmId = this.farmValue
+                params.current = "1"
+                params.size = "999"
+                pageCountNzCrk(Object.assign(params)).then((res) => {
+                    this.nzcrPopupFlag = true
+                    this.stockrecordAll = res.data.data.records
+                })
+            }
+        },
+        // 农事操作搜索
+        farmSelectList () {
+            this.farmOperClick({ type: this.farmOperType, landId: this.farmPlotId })
+        },
+        // 农事操作重置
+        farmResetList () {
+            this.farmOperType = ""
+            this.farmPlotId = ""
+            this.farmOperClick({ type: this.farmOperType, landId: this.farmPlotId })
+        },
+        farmOperClick (item) {
+            getFarmingRecordList({ type: item.type, landId: item.landId }).then(
+                (res) => {
+                    this.farmOperList = res.data.data
+                    this.farmOperPopup = true
+                }
+            )
+        },
+        // 任务总数时间查询
+        getTaskTime (e) {
+            this.countTaskNum(e)
+        },
+        // 农产品投入时间查询
+        getNcptrTime (e) {
+            this.pageCount(e)
+        },
+        // 农资投入时间查询
+        getNztrTime (e) {
+            this.pageCountNz(e)
+        },
+        // 产量统计时间查询
+        getCltjTime (e) {
+            this.statisticsStockMonth(e)
+        },
+        // 溯源趋势时间查询
+        getSymTime (e) {
+            this.getSweepRecordStatisticsByDayOrMonthOrYear(e)
+        },
+        // 农资出库记录查询按钮
+        NZCR_query () {
+            var params = {}
+            params.codes = "000000"
+            params.farmId = this.farmValue
+            params.agrname = this.inputNZ_nzname
+            params.current = "1"
+            params.size = "999"
+            pageCountNzCrk(Object.assign(params)).then((res) => {
+                this.nzcrPopupFlag = true
+                this.stockrecordAll = res.data.data.records
+            })
+        },
+        // 农资出库记录重置按钮
+        NZCR_refresh () {
+            var params = {}
+            this.inputNZ_nzname = ""
+            params.codes = "000000"
+            params.farmId = this.farmValue
+            params.current = "1"
+            params.size = "999"
+            pageCountNzCrk(Object.assign(params)).then((res) => {
+                this.nzcrPopupFlag = true
+                this.stockrecordAll = res.data.data.records
+            })
+        },
+        // 投入品监管查询按钮
+        TRP_query () {
+            var params = {}
+            params.codes = "000000"
+            params.agrname = this.inputTRP_nzname
+            params.farmId = this.farmValue
+            pageCountNz(Object.assign(params)).then((res) => {
+                this.nztrAll = res.data.data.records
+            })
+        },
+        // 投入品监管重置按钮
+        TRP_refresh () {
+            var params = {}
+            params.codes = "000000"
+            this.inputTRP_nzname = ""
+            params.farmId = this.farmValue
+            pageCountNz(Object.assign(params)).then((res) => {
+                this.nztrAll = res.data.data.records
+            })
+        },
+        // 农产品监管查询按钮
+        NCP_query () {
+            var params = {}
+            params.codes = "000000"
+            params.strainName = this.inputNCP_nzname
+            params.farmId = this.farmValue
+            params.current = "1"
+            params.size = "999"
+            productsSuperviseList(Object.assign(params)).then((res) => {
+                this.ncpPopupFlag = true
+                this.ncpAll = res.data.data.records
+            })
+        },
+        // 农产品监管重置按钮
+        NCP_refresh () {
+            var params = {}
+            params.codes = "000000"
+            this.inputNCP_nzname = ""
+            params.farmId = this.farmValue
+            params.current = "1"
+            params.size = "999"
+            productsSuperviseList(Object.assign(params)).then((res) => {
+                this.ncpPopupFlag = true
+                this.ncpAll = res.data.data.records
+            })
+        },
+        initBar (dom) {
+            const that = this
+            const chartDom = document.getElementById(dom)
+            const myChart = this.$echarts.init(chartDom)
+            var y = []
+            for (let i = 0; i < that.taskNum.length; i++) {
+                y.push(that.taskNum[i].count)
+            }
+
+            const option = {
+                grid: {
+                    top: "14%",
+                    left: "2%",
+                    right: "2%",
+                    bottom: "2%",
+                    containLabel: true,
                 },
-              },
-            },
-          },
-        ],
-      };
-
-      option && myChart.setOption(option);
-    },
-
-    initTrpBar(dom) {
-      const that = this;
-      const chartDom = document.getElementById(dom);
-      const myChart = this.$echarts.init(chartDom);
-      myChart.clear();
-      var nztrData = this.nztr;
-      var nztrX = [];
-      var nztrY = [];
-      for (let i = 0; i < nztrData.length; i++) {
-        nztrX.push(nztrData[i].agrname);
-        nztrY.push(nztrData[i].cnum);
-      }
-      const option = {
-        grid: {
-          top: "14%",
-          left: "2%",
-          right: "2%",
-          bottom: "2%",
-          containLabel: true,
-        },
-        xAxis: {
-          type: "category",
-          data: nztrX,
-          axisLine: {
-            lineStyle: {
-              color: "rgba(153,153,153,.4)",
-            },
-          },
-          axisTick: {
-            show: false,
-          },
-          axisLabel: {
-            color: "rgba(255,255,255,.4)",
-            rotate: 0,
-          },
-        },
-        yAxis: {
-          max: 600,
-          name: "(公斤)",
-          nameTextStyle: {
-            color: "rgba(255,255,255,.4)",
-          },
-          axisLine: {
-            lineStyle: {
-              color: "#657CA8",
-            },
-          },
-          axisTick: {
-            show: false,
-          },
-          splitLine: {
-            show: true,
-            lineStyle: {
-              color: "rgba(62,81,97, .5)",
-              type: "dashed",
-            },
-          },
-          axisLabel: {
-            color: "rgba(255,255,255,.4)",
-          },
-        },
-        series: [
-          {
-            type: "bar",
-            barWidth: 32,
-            data: nztrY,
-            label: {
-              show: true,
-              position: "top",
-              textStyle: {
-                color: "rgba(255,255,255,.4)",
-              },
-            },
-            itemStyle: {
-              normal: {
-                color: new that.$echarts.graphic.LinearGradient(
-                  // 前四个参数用于配置渐变色的起止位置,这四个参数依次对应 右下左上 四个方位。也就是从右边开始顺时针方向。
-                  // 通过修改前4个参数,可以实现不同的渐变方向
-                  /* 第五个参数则是一个数组,用于配置颜色的渐变过程。
-                                          每项为一个对象,包含offset和color两个参数
-                                        */
-                  0,
-                  0,
-                  0,
-                  1,
-                  [
-                    {
-                      // 代表渐变色从正上方开始
-                      offset: 0, // offset范围是0~1,用于表示位置,0是指0%处的颜色
-                      color: "#24A5DF",
-                    }, // 柱图渐变色
-                    {
-                      offset: 1, // 指100%处的颜色
-                      color: "#01E2D2",
+                xAxis: {
+                    type: "category",
+                    data: ["已完成", "未完成", "超期完成"],
+                    axisLine: {
+                        lineStyle: {
+                            color: "rgba(153,153,153,.4)",
+                        },
                     },
-                  ]
-                ),
-              },
-            },
-          },
-        ],
-      };
+                    axisTick: {
+                        show: false,
+                    },
+                    axisLabel: {
+                        color: "rgba(255,255,255,.4)",
+                        rotate: 0,
+                    },
+                },
+                yAxis: {
+                    name: "(次)",
+                    nameTextStyle: {
+                        color: "rgba(255,255,255,.4)",
+                    },
+                    axisLine: {
+                        lineStyle: {
+                            color: "#657CA8",
+                        },
+                    },
+                    axisTick: {
+                        show: false,
+                    },
+                    splitLine: {
+                        show: true,
+                        lineStyle: {
+                            color: "rgba(62,81,97, .5)",
+                            type: "dashed",
+                        },
+                    },
+                    axisLabel: {
+                        color: "rgba(255,255,255,.4)",
+                    },
+                },
+                series: [
+                    {
+                        type: "bar",
+                        barWidth: 32,
+                        data: y,
+                        label: {
+                            show: true,
+                            position: "top",
+                            textStyle: {
+                                color: "rgba(255,255,255,.4)",
+                            },
+                        },
+                        itemStyle: {
+                            normal: {
+                                color: function (params) {
+                                    var colorList = [
+                                        ["#24A5DF", "#01E2D2"],
+                                        ["#E59438", "#FEF880 "],
+                                        ["#E34C4C", "#E6945E"],
+                                    ]
+                                    var index = params.dataIndex
+                                    if (params.dataIndex >= colorList.length) {
+                                        index = params.dataIndex - colorList.length
+                                    }
+                                    return new that.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
+                                        {
+                                            offset: 0,
+                                            color: colorList[index][0],
+                                        },
+                                        {
+                                            offset: 0.5,
+                                            color: colorList[index][0],
+                                        },
+                                        {
+                                            offset: 1,
+                                            color: colorList[index][1],
+                                        },
+                                    ])
+                                },
+                            },
+                        },
+                    },
+                ],
+            }
 
-      option && myChart.setOption(option);
-    },
-
-    initNcpBar(dom) {
-      const that = this;
-      const chartDom = document.getElementById(dom);
-      const myChart = this.$echarts.init(chartDom);
-      myChart.clear();
-
-      var data = that.NcpJg;
-      var dj = ["一等品", "二等品", "三等品", "四等品", "五等品"];
-      var echartData = [];
-      var sum = 0;
-      for (var i = 0; i < 5; i++) {
-        sum += Number(data[i]);
-        echartData.push({
-          name: dj[i],
-          value: data[i],
-        });
-      }
-      const option = {
-        tooltip: {
-          trigger: "item",
+            option && myChart.setOption(option)
         },
-        legend: {
-          top: "5%",
-          padding: [50, 100, 0, 0],
-          orient: "vertical",
-          left: "right",
-        },
-        series: [
-          {
-            name: "品质",
-            type: "pie",
-            radius: ["40%", "70%"],
-            avoidLabelOverlap: false,
-            label: {
-              normal: {
-                show: true,
-                formatter: "产品总数\n\n" + sum,
-                position: "center",
-                lineHight: 30,
-              },
-            },
-            labelLine: {
-              show: false,
-            },
-            data: echartData,
-          },
-        ],
-      };
 
-      option && myChart.setOption(option);
-    },
+        initTrpBar (dom) {
+            const that = this
+            const chartDom = document.getElementById(dom)
+            const myChart = this.$echarts.init(chartDom)
+            myChart.clear()
+            var nztrData = this.nztr
+            var nztrX = []
+            var nztrY = []
+            for (let i = 0; i < nztrData.length; i++) {
+                nztrX.push(nztrData[i].agrname)
+                nztrY.push(nztrData[i].cnum)
+            }
+            const option = {
+                grid: {
+                    top: "14%",
+                    left: "2%",
+                    right: "2%",
+                    bottom: "2%",
+                    containLabel: true,
+                },
+                xAxis: {
+                    type: "category",
+                    data: nztrX,
+                    axisLine: {
+                        lineStyle: {
+                            color: "rgba(153,153,153,.4)",
+                        },
+                    },
+                    axisTick: {
+                        show: false,
+                    },
+                    axisLabel: {
+                        color: "rgba(255,255,255,.4)",
+                        rotate: 0,
+                    },
+                },
+                yAxis: {
+                    max: 600,
+                    name: "(公斤)",
+                    nameTextStyle: {
+                        color: "rgba(255,255,255,.4)",
+                    },
+                    axisLine: {
+                        lineStyle: {
+                            color: "#657CA8",
+                        },
+                    },
+                    axisTick: {
+                        show: false,
+                    },
+                    splitLine: {
+                        show: true,
+                        lineStyle: {
+                            color: "rgba(62,81,97, .5)",
+                            type: "dashed",
+                        },
+                    },
+                    axisLabel: {
+                        color: "rgba(255,255,255,.4)",
+                    },
+                },
+                series: [
+                    {
+                        type: "bar",
+                        barWidth: 32,
+                        data: nztrY,
+                        label: {
+                            show: true,
+                            position: "top",
+                            textStyle: {
+                                color: "rgba(255,255,255,.4)",
+                            },
+                        },
+                        itemStyle: {
+                            normal: {
+                                color: new that.$echarts.graphic.LinearGradient(
+                                    // 前四个参数用于配置渐变色的起止位置,这四个参数依次对应 右下左上 四个方位。也就是从右边开始顺时针方向。
+                                    // 通过修改前4个参数,可以实现不同的渐变方向
+                                    /* 第五个参数则是一个数组,用于配置颜色的渐变过程。
+                                                            每项为一个对象,包含offset和color两个参数
+                                                          */
+                                    0,
+                                    0,
+                                    0,
+                                    1,
+                                    [
+                                        {
+                                            // 代表渐变色从正上方开始
+                                            offset: 0, // offset范围是0~1,用于表示位置,0是指0%处的颜色
+                                            color: "#24A5DF",
+                                        }, // 柱图渐变色
+                                        {
+                                            offset: 1, // 指100%处的颜色
+                                            color: "#01E2D2",
+                                        },
+                                    ]
+                                ),
+                            },
+                        },
+                    },
+                ],
+            }
 
-    initClSyBar(dom) {
-      const chartDom = document.getElementById(dom);
-      const myChart = this.$echarts.init(chartDom);
-      myChart.clear();
-      var data = [];
-      var data1 = ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"];
-      var data2 = [];
-      var ncp = this.yieldMonth;
-      for (let i = 0; i < ncp.length; i++) {
-        data.push(ncp[i].time);
-        data2.push(ncp[i].num);
-      }
+            option && myChart.setOption(option)
+        },
 
-      const option = {
-        grid: {
-          top: "10%",
-          right: "0%",
-          left: "0%",
-          bottom: "0%",
-          containLabel: true,
-        },
-        tooltip: {
-          trigger: "axis",
-          axisPointer: {
-            type: "shadow",
-          },
-        },
-        legend: {
-          left: "center",
-          data: ["加工产品", "农产品"],
-          textStyle: {
-            color: "#A9D1D7",
-          },
-        },
-        xAxis: {
-          data: data,
-          axisLabel: {
-            interval: 0,
-            show: true,
-            textStyle: {
-              color: "rgba(255,255,255,0.6)",
-            },
-          },
-          axisTick: {
-            show: false,
-          },
-          axisLine: {
-            show: true,
-            lineStyle: {
-              color: "#697B89",
-              width: 1,
-            },
-          },
-        },
-        yAxis: [
-          {
-            min: 0,
-            type: "value",
-            axisLabel: {
-              interval: 0,
-              show: true,
-              textStyle: {
-                color: "#B4B5BE",
-              },
-            },
-            axisLine: {
-              show: true,
-              lineStyle: {
-                color: "#697B89",
-                width: 1,
-              },
-            },
-            splitLine: {
-              show: true,
-              lineStyle: {
-                color: "rgba(62,81,97, .5)",
-                type: "dashed",
-              },
-            },
-          },
-        ],
-        series: [
-          {
-            name: "加工产品",
-            type: "bar",
-            barWidth: 14,
-            silent: true,
-            itemStyle: {
-              normal: {
-                color: "#E29646",
-              },
-            },
-            data: data1,
-          },
-          {
-            name: "农产品",
-            type: "bar",
-            barWidth: 14,
-            silent: true,
-            itemStyle: {
-              normal: {
-                color: "#6AE081",
-              },
-            },
-            data: data2,
-          },
-        ],
-      };
+        initNcpBar (dom) {
+            const that = this
+            const chartDom = document.getElementById(dom)
+            const myChart = this.$echarts.init(chartDom)
+            myChart.clear()
 
-      option && myChart.setOption(option);
-    },
-    initSymyBar(dom) {
-      const chartDom = document.getElementById(dom);
-      const myChart = this.$echarts.init(chartDom);
-      myChart.clear();
+            var data = that.NcpJg
+            var dj = ["一等品", "二等品", "三等品", "四等品", "五等品"]
+            var echartData = []
+            var sum = 0
+            for (var i = 0; i < 5; i++) {
+                sum += Number(data[i])
+                echartData.push({
+                    name: dj[i],
+                    value: data[i],
+                })
+            }
+            const option = {
+                tooltip: {
+                    trigger: "item",
+                },
+                legend: {
+                    top: "5%",
+                    padding: [50, 100, 0, 0],
+                    orient: "vertical",
+                    left: "right",
+                },
+                series: [
+                    {
+                        name: "品质",
+                        type: "pie",
+                        radius: ["40%", "70%"],
+                        avoidLabelOverlap: false,
+                        label: {
+                            normal: {
+                                show: true,
+                                formatter: "产品总数\n\n" + sum,
+                                position: "center",
+                                lineHight: 30,
+                            },
+                        },
+                        labelLine: {
+                            show: false,
+                        },
+                        data: echartData,
+                    },
+                ],
+            }
 
-      var data = this.sweepTrend;
-      var x = [];
-      var y = [];
-      for (var i = 0; i < data.length; i++) {
-        y.push(data[i].num);
-        x.push(data[i].time);
-      }
-
-      var option = {
-        grid: {
-          top: "10%",
-          right: "0%",
-          left: "0%",
-          bottom: "0%",
-          containLabel: true,
+            option && myChart.setOption(option)
         },
-        xAxis: {
-          type: "category",
-          boundaryGap: false,
-          data: x,
-        },
-        yAxis: [
-          {
-            min: 0,
-            type: "value",
-            axisLabel: {
-              interval: 0,
-              show: true,
-              textStyle: {
-                color: "#B4B5BE",
-              },
-            },
-            axisLine: {
-              show: true,
-              lineStyle: {
-                color: "#697B89",
-                width: 1,
-              },
-            },
-            splitLine: {
-              show: true,
-              lineStyle: {
-                color: "rgba(62,81,97, .5)",
-                type: "dashed",
-              },
-            },
-          },
-        ],
-        series: [
-          {
-            data: y,
-            type: "line",
-            smooth: true,
-            areaStyle: {},
-          },
-        ],
-      };
-      option && myChart.setOption(option);
-    },
-    // 农场使用率
-    selectXCount() {
-      // eslint-disable-next-line no-unused-vars
-      var that = this;
-      var farmId = that.farmValue;
-      selectXCount(farmId).then((res) => {
-        that.landsnum = res.data.data.snum.toFixed(0);
-        that.landwnum = res.data.data.wnum.toFixed(0);
-        that.znum = res.data.data.num.toFixed(0);
-      });
-    },
-    // 农资使用概况
-    getStockCount() {
-      var that = this;
-      var farmId = that.farmValue;
-      getStockCount(farmId).then((res) => {
-        that.jnStock = res.data.data.jn.toFixed(0);
-        that.qnStock = res.data.data.qn.toFixed(0);
-        that.byStock = res.data.data.by.toFixed(0);
-      });
-    },
-    // 大屏经营概况库存数量与年产量
-    statisticsStockAndYield(year) {
-      var params = {};
-      params.tenantId = "000000";
-      params.farmId = this.farmValue;
-      params.year = year;
-      statisticsStockAndYield(Object.assign(params)).then((res) => {
-        this.stockNCP = res.data.data.sum;
-        this.stockJG = res.data.data.jgsum;
-        this.stockTj = res.data.data.jgsum + res.data.data.sum;
 
-        this.yieldNCP = res.data.data.ncpNcl;
-        this.yieldJG = res.data.data.jgNcl;
-        this.yieldTj = res.data.data.ncpNcl + res.data.data.jgNcl;
-      });
-    },
-    // 按月统计产量
-    statisticsStockMonth(e) {
-      var params = {};
-      params.tenantId = "000000";
-      params.farmId = this.farmValue;
-      params.year = e;
-      statisticsStockMonth(Object.assign(params)).then((res) => {
-        this.yieldMonth = res.data.data;
-        this.initClSyBar("ClSyEcharts");
-      });
-    },
-    // 农产品监管
-    productsSupervise(year) {
-      var params = {};
-      params.tenantId = "000000";
-      params.farmId = this.farmValue;
-      params.year = year;
-      productsSupervise(Object.assign(params)).then((res) => {
-        this.NcpJg = res.data.data;
-      });
-    },
-    // 农产品投入
-    pageCount(e) {
-      var params = {};
-      params.tenantId = "000000";
-      params.farmId = this.farmValue;
-      params.year = e;
-      params.status = "1";
-      pageCount(Object.assign(params)).then((res) => {
-        this.ncptr = res.data.data;
-      });
-    },
-    // 农资投入
-    pageCountNz(e) {
-      var params = {};
-      params.codes = "000000";
-      params.farmId = this.farmValue;
-      params.year = e;
-      pageCountNz(Object.assign(params)).then((res) => {
-        this.nztr = res.data.data.records;
-        this.nztrAll = res.data.data.records;
-        // 投入品监管图表
-        this.initTrpBar("TrpEcharts");
-      });
-    },
-    // 统计市场流通/去年流通量/本月流通量
-    selectMarketCirculate(year) {
-      var params = {};
-      params.codes = "000000";
-      params.farmId = this.farmValue;
-      params.year = year;
-      selectMarketCirculate(Object.assign(params)).then((res) => {
-        this.salaNumBN = res.data.data[0].num;
-        this.salaNumQN = res.data.data[1].num;
-        this.salaNumBY = res.data.data[2].num;
-      });
-    },
-    // 统计任务总数
-    countTaskNum(year) {
-      var params = {};
-      params.codes = "000000";
-      params.farmId = this.farmValue;
-      params.year = year;
-      countTaskNum(Object.assign(params)).then((res) => {
-        this.taskNum = res.data.data;
-        this.initBar("TaskNumEcharts");
-      });
-    },
-    // 农事记录
-    farmingRecords() {
-      var params = {};
-      params.tenantId = "000000";
-      params.farmId = this.farmValue;
-      params.current = "1";
-      params.size = "3";
-      farmingRecords(Object.assign(params)).then((res) => {
-        var data = [];
-        for (var i = 0; i < res.data.data.length; i++) {
-          data.push(res.data.data[i]);
-          if (i == 3) {
-            break;
-          }
-        }
-        this.farminList = data;
-      });
-    },
-    // 农资出入库记录
-    pageCountNzCrk() {
-      var params = {};
-      params.codes = "000000";
-      params.farmId = this.farmValue;
-      params.current = "1";
-      params.size = "3";
-      pageCountNzCrk(Object.assign(params)).then((res) => {
-        this.stockrecordList = res.data.data.records;
-      });
-    },
-    // 溯源次数统计
-    getSweepRecordStatistics() {
-      var params = {};
-      // 农场id
-      params.farmId = this.farmValue;
-      getSweepRecordStatistics(Object.assign(params)).then((res) => {
-        this.sweepList = res.data.data;
-      });
-    },
-    // 溯源趋势统计
-    getSweepRecordStatisticsByDayOrMonthOrYear(year) {
-      var params = {};
-      // 农场id
-      params.farmId = this.farmValue;
-      params.time = year;
-      getSweepRecordStatisticsByDayOrMonthOrYear(Object.assign(params)).then(
-        (res) => {
-          this.sweepTrend = res.data.data;
-          if (this.cltjOrsym == "sym") {
-            this.initSymyBar("ClSyEcharts");
-          }
-        }
-      );
-    },
-    // 监管图表切换
-    trpOrNcpChange(item) {
-      var that = this;
-      that.trpOrNcp = item;
-      if (item == "trp") {
-        that.initTrpBar("TrpEcharts");
-      } else {
+        initClSyBar (dom) {
+            const chartDom = document.getElementById(dom)
+            const myChart = this.$echarts.init(chartDom)
+            myChart.clear()
+            var data = []
+            var data1 = ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]
+            var data2 = []
+            var ncp = this.yieldMonth
+            for (let i = 0; i < ncp.length; i++) {
+                data.push(ncp[i].time)
+                data2.push(ncp[i].num)
+            }
+
+            const option = {
+                grid: {
+                    top: "10%",
+                    right: "0%",
+                    left: "0%",
+                    bottom: "0%",
+                    containLabel: true,
+                },
+                tooltip: {
+                    trigger: "axis",
+                    axisPointer: {
+                        type: "shadow",
+                    },
+                },
+                legend: {
+                    left: "center",
+                    data: ["加工产品", "农产品"],
+                    textStyle: {
+                        color: "#A9D1D7",
+                    },
+                },
+                xAxis: {
+                    data: data,
+                    axisLabel: {
+                        interval: 0,
+                        show: true,
+                        textStyle: {
+                            color: "rgba(255,255,255,0.6)",
+                        },
+                    },
+                    axisTick: {
+                        show: false,
+                    },
+                    axisLine: {
+                        show: true,
+                        lineStyle: {
+                            color: "#697B89",
+                            width: 1,
+                        },
+                    },
+                },
+                yAxis: [
+                    {
+                        min: 0,
+                        type: "value",
+                        axisLabel: {
+                            interval: 0,
+                            show: true,
+                            textStyle: {
+                                color: "#B4B5BE",
+                            },
+                        },
+                        axisLine: {
+                            show: true,
+                            lineStyle: {
+                                color: "#697B89",
+                                width: 1,
+                            },
+                        },
+                        splitLine: {
+                            show: true,
+                            lineStyle: {
+                                color: "rgba(62,81,97, .5)",
+                                type: "dashed",
+                            },
+                        },
+                    },
+                ],
+                series: [
+                    {
+                        name: "加工产品",
+                        type: "bar",
+                        barWidth: 14,
+                        silent: true,
+                        itemStyle: {
+                            normal: {
+                                color: "#E29646",
+                            },
+                        },
+                        data: data1,
+                    },
+                    {
+                        name: "农产品",
+                        type: "bar",
+                        barWidth: 14,
+                        silent: true,
+                        itemStyle: {
+                            normal: {
+                                color: "#6AE081",
+                            },
+                        },
+                        data: data2,
+                    },
+                ],
+            }
+
+            option && myChart.setOption(option)
+        },
+        initSymyBar (dom) {
+            const chartDom = document.getElementById(dom)
+            const myChart = this.$echarts.init(chartDom)
+            myChart.clear()
+
+            var data = this.sweepTrend
+            var x = []
+            var y = []
+            for (var i = 0; i < data.length; i++) {
+                y.push(data[i].num)
+                x.push(data[i].time)
+            }
+
+            var option = {
+                grid: {
+                    top: "10%",
+                    right: "0%",
+                    left: "0%",
+                    bottom: "0%",
+                    containLabel: true,
+                },
+                xAxis: {
+                    type: "category",
+                    boundaryGap: false,
+                    data: x,
+                },
+                yAxis: [
+                    {
+                        min: 0,
+                        type: "value",
+                        axisLabel: {
+                            interval: 0,
+                            show: true,
+                            textStyle: {
+                                color: "#B4B5BE",
+                            },
+                        },
+                        axisLine: {
+                            show: true,
+                            lineStyle: {
+                                color: "#697B89",
+                                width: 1,
+                            },
+                        },
+                        splitLine: {
+                            show: true,
+                            lineStyle: {
+                                color: "rgba(62,81,97, .5)",
+                                type: "dashed",
+                            },
+                        },
+                    },
+                ],
+                series: [
+                    {
+                        data: y,
+                        type: "line",
+                        smooth: true,
+                        areaStyle: {},
+                    },
+                ],
+            }
+            option && myChart.setOption(option)
+        },
+        // 农场使用率
+        selectXCount () {
+            // eslint-disable-next-line no-unused-vars
+            var that = this
+            var farmId = that.farmValue
+            selectXCount(farmId).then((res) => {
+                that.landsnum = res.data.data.snum.toFixed(0)
+                that.landwnum = res.data.data.wnum.toFixed(0)
+                that.znum = res.data.data.num.toFixed(0)
+            })
+        },
+        // 农资使用概况
+        getStockCount () {
+            var that = this
+            var farmId = that.farmValue
+            getStockCount(farmId).then((res) => {
+                that.jnStock = res.data.data.jn.toFixed(0)
+                that.qnStock = res.data.data.qn.toFixed(0)
+                that.byStock = res.data.data.by.toFixed(0)
+            })
+        },
+        // 大屏经营概况库存数量与年产量
+        statisticsStockAndYield (year) {
+            var params = {}
+            params.tenantId = "000000"
+            params.farmId = this.farmValue
+            params.year = year
+            statisticsStockAndYield(Object.assign(params)).then((res) => {
+                this.stockNCP = res.data.data.sum
+                this.stockJG = res.data.data.jgsum
+                this.stockTj = res.data.data.jgsum + res.data.data.sum
+
+                this.yieldNCP = res.data.data.ncpNcl
+                this.yieldJG = res.data.data.jgNcl
+                this.yieldTj = res.data.data.ncpNcl + res.data.data.jgNcl
+            })
+        },
+        // 按月统计产量
+        statisticsStockMonth (e) {
+            var params = {}
+            params.tenantId = "000000"
+            params.farmId = this.farmValue
+            params.year = e
+            statisticsStockMonth(Object.assign(params)).then((res) => {
+                this.yieldMonth = res.data.data
+                this.initClSyBar("ClSyEcharts")
+            })
+        },
         // 农产品监管
-        that.initNcpBar("TrpEcharts");
-      }
+        productsSupervise (year) {
+            var params = {}
+            params.tenantId = "000000"
+            params.farmId = this.farmValue
+            params.year = year
+            productsSupervise(Object.assign(params)).then((res) => {
+                this.NcpJg = res.data.data
+            })
+        },
+        // 农产品投入
+        pageCount (e) {
+            var params = {}
+            params.tenantId = "000000"
+            params.farmId = this.farmValue
+            params.year = e
+            params.status = "1"
+            pageCount(Object.assign(params)).then((res) => {
+                this.ncptr = res.data.data
+            })
+        },
+        // 农资投入
+        pageCountNz (e) {
+            var params = {}
+            params.codes = "000000"
+            params.farmId = this.farmValue
+            params.year = e
+            pageCountNz(Object.assign(params)).then((res) => {
+                this.nztr = res.data.data.records
+                this.nztrAll = res.data.data.records
+                // 投入品监管图表
+                this.initTrpBar("TrpEcharts")
+            })
+        },
+        // 统计市场流通/去年流通量/本月流通量
+        selectMarketCirculate (year) {
+            var params = {}
+            params.codes = "000000"
+            params.farmId = this.farmValue
+            params.year = year
+            selectMarketCirculate(Object.assign(params)).then((res) => {
+                this.salaNumBN = res.data.data[0].num
+                this.salaNumQN = res.data.data[1].num
+                this.salaNumBY = res.data.data[2].num
+            })
+        },
+        // 统计任务总数
+        countTaskNum (year) {
+            var params = {}
+            params.codes = "000000"
+            params.farmId = this.farmValue
+            params.year = year
+            countTaskNum(Object.assign(params)).then((res) => {
+                this.taskNum = res.data.data
+                this.initBar("TaskNumEcharts")
+            })
+        },
+        // 农事记录
+        farmingRecords () {
+            var params = {}
+            params.tenantId = "000000"
+            params.farmId = this.farmValue
+            params.current = "1"
+            params.size = "3"
+            farmingRecords(Object.assign(params)).then((res) => {
+                var data = []
+                for (var i = 0; i < res.data.data.length; i++) {
+                    data.push(res.data.data[i])
+                    if (i == 3) {
+                        break
+                    }
+                }
+                this.farminList = data
+            })
+        },
+        // 农资出入库记录
+        pageCountNzCrk () {
+            var params = {}
+            params.codes = "000000"
+            params.farmId = this.farmValue
+            params.current = "1"
+            params.size = "3"
+            pageCountNzCrk(Object.assign(params)).then((res) => {
+                this.stockrecordList = res.data.data.records
+            })
+        },
+        // 溯源次数统计
+        getSweepRecordStatistics () {
+            var params = {}
+            // 农场id
+            params.farmId = this.farmValue
+            getSweepRecordStatistics(Object.assign(params)).then((res) => {
+                this.sweepList = res.data.data
+            })
+        },
+        // 溯源趋势统计
+        getSweepRecordStatisticsByDayOrMonthOrYear (year) {
+            var params = {}
+            // 农场id
+            params.farmId = this.farmValue
+            params.time = year
+            getSweepRecordStatisticsByDayOrMonthOrYear(Object.assign(params)).then(
+                (res) => {
+                    this.sweepTrend = res.data.data
+                    if (this.cltjOrsym == "sym") {
+                        this.initSymyBar("ClSyEcharts")
+                    }
+                }
+            )
+        },
+        // 监管图表切换
+        trpOrNcpChange (item) {
+            var that = this
+            that.trpOrNcp = item
+            if (item == "trp") {
+                that.initTrpBar("TrpEcharts")
+            } else {
+                // 农产品监管
+                that.initNcpBar("TrpEcharts")
+            }
+        },
+        // 产量统计图表切换
+        cltjOrSymChange (item) {
+            var that = this
+            that.cltjOrsym = item
+            if (item == "cltj") {
+                this.initClSyBar("ClSyEcharts")
+            } else {
+                // 溯源码
+                this.initSymyBar("ClSyEcharts")
+            }
+        },
+        // 本年农事操作记录,分组统计
+        getFarmingStatis () {
+            var that = this
+            var farmId = that.farmValue
+            getFarmingStatis(farmId).then((res) => {
+                that.farmingList = res.data.data
+            })
+        },
+        // 地块下拉
+        getLandList () {
+            var params = {}
+            // 农场id
+            params.farmId = this.farmValue
+            getLandList(Object.assign(params)).then((res) => {
+                this.plotNumArray = res.data.data
+            })
+        },
+        checkTime (i) {
+            if (i < 10) {
+                i = "0" + i
+            }
+            return i
+        },
     },
-    // 产量统计图表切换
-    cltjOrSymChange(item) {
-      var that = this;
-      that.cltjOrsym = item;
-      if (item == "cltj") {
-        this.initClSyBar("ClSyEcharts");
-      } else {
-        // 溯源码
-        this.initSymyBar("ClSyEcharts");
-      }
-    },
-    // 本年农事操作记录,分组统计
-    getFarmingStatis() {
-      var that = this;
-      var farmId = that.farmValue;
-      getFarmingStatis(farmId).then((res) => {
-        that.farmingList = res.data.data;
-      });
-    },
-    // 地块下拉
-    getLandList() {
-      var params = {};
-      // 农场id
-      params.farmId = this.farmValue;
-      getLandList(Object.assign(params)).then((res) => {
-        this.plotNumArray = res.data.data;
-      });
-    },
-    checkTime(i) {
-      if (i < 10) {
-        i = "0" + i;
-      }
-      return i;
-    },
-  },
 };
 </script>
 
 <style scoped lang="scss">
 .container {
-  padding: 20px;
-  position: relative;
-  width: 100%;
-  height: 100%;
-  background: #08192e;
-  box-sizing: border-box;
+    padding: 20px;
+    position: relative;
+    width: 100%;
+    height: 100%;
+    background: #08192e;
+    box-sizing: border-box;
 
-  .toggle-plot {
-    text-align: left;
-    height: 36px;
-    line-height: 36px;
-    font-size: 24px;
-    font-weight: bold;
-    color: #fff;
+    .toggle-plot {
+        text-align: left;
+        height: 36px;
+        line-height: 36px;
+        font-size: 24px;
+        font-weight: bold;
+        color: #fff;
 
-    /deep/.el-input__inner {
-      background-color: #0e3960;
-      color: #66dde9;
-      border: 1px solid #00f5fe;
-    }
-
-    /deep/.popper__arrow::after {
-      border-bottom-color: #00f5fe;
-      top: 0px;
-    }
-    /deep/.el-select-dropdown {
-      //   background-color: transparent;
-      border: 1px solid #00f5fe;
-    }
-    /deep/.el-icon-arrow-up:before {
-      color: #00f5fe;
-    }
-    .el-select-dropdown__item:hover,
-    .el-select-dropdown__item.hover {
-      background-color: #00f5fe;
-    }
-  }
-
-  .main-content {
-    margin-top: 10px;
-    height: calc(100% - 46px);
-    display: flex;
-    flex-direction: column;
-
-    .t {
-      display: flex;
-      justify-content: space-between;
-
-      & > div:first-child {
-        margin-left: 0;
-      }
-    }
-
-    .c {
-      margin-top: 20px;
-      display: flex;
-      justify-content: space-between;
-
-      & > div {
-        margin-left: 20px;
-        width: calc((100% - 80px) / 5);
-        height: 346px;
-        border-radius: 8px 8px 8px 8px;
-        background: rgba(0, 52, 85, 0.4);
-      }
-
-      & > div:first-child {
-        margin-left: 0;
-      }
-
-      & > div:last-child {
-        width: calc((100% - 80px) / 5 * 2 + 20px);
-      }
-
-      .time-box {
-        padding: 0 25px;
-        display: flex;
-        flex-direction: column;
-        box-sizing: border-box;
-
-        & > div:last-child {
-          border: none;
-        }
-      }
-
-      .task-box {
-        padding: 20px;
-        display: flex;
-        flex-direction: column;
-        box-sizing: border-box;
-
-        .title {
-          text-align: left;
-          font-size: 18px;
-          font-weight: bold;
-          color: #7ccfd6;
+        /deep/.el-input__inner {
+            background-color: #0e3960;
+            color: #66dde9;
+            border: 1px solid #00f5fe;
         }
 
-        .echarts-box {
-          margin-top: 16px;
-          flex: 1;
+        /deep/.popper__arrow::after {
+            border-bottom-color: #00f5fe;
+            top: 0px;
         }
-      }
+        /deep/.el-select-dropdown {
+            //   background-color: transparent;
+            border: 1px solid #00f5fe;
+        }
+        /deep/.el-icon-arrow-up:before {
+            color: #00f5fe;
+        }
+        .el-select-dropdown__item:hover,
+        .el-select-dropdown__item.hover {
+            background-color: #00f5fe;
+        }
+    }
 
-      .nz-ncp {
-        padding: 20px;
+    .main-content {
+        margin-top: 10px;
+        height: calc(100% - 46px);
         display: flex;
         flex-direction: column;
-        box-sizing: border-box;
 
-        .title-box {
-          display: flex;
-
-          & > div {
+        .t {
             display: flex;
-            align-items: flex-start;
-            font-size: 18px;
-            color: #a9d1d7;
-
-            .title {
-              cursor: pointer;
-            }
-
-            .on {
-              position: relative;
-              font-weight: bold;
-              color: #7ccfd6;
-
-              span {
-                position: absolute;
-                bottom: -8px;
-                left: 0;
-                width: 100%;
-                height: 3px;
-                border-radius: 3px;
-                background: #66dde9;
-              }
-            }
-          }
-
-          & > div:nth-child(2) {
-            margin-left: 60px;
-          }
-        }
-
-        .lists-box {
-          margin-top: 16px;
-          flex: 1;
-          overflow-y: auto;
-
-          & > div:nth-child(even) {
-            background: rgba(102, 221, 233, 0.1);
-          }
-
-          & > div {
-            display: flex;
-            align-items: center;
             justify-content: space-between;
-            line-height: 48px;
-            font-size: 18px;
-            color: #a9d1d7;
 
             & > div:first-child {
-              margin-left: 16px;
+                margin-left: 0;
+            }
+        }
+
+        .c {
+            margin-top: 20px;
+            display: flex;
+            justify-content: space-between;
+
+            & > div {
+                margin-left: 20px;
+                width: calc((100% - 80px) / 5);
+                height: 346px;
+                border-radius: 8px 8px 8px 8px;
+                background: rgba(0, 52, 85, 0.4);
+            }
+
+            & > div:first-child {
+                margin-left: 0;
             }
 
             & > div:last-child {
-              margin-right: 18px;
-              color: #66dde9;
-            }
-          }
-        }
-      }
-
-      .trp-ncp {
-        padding: 20px;
-        display: flex;
-        flex-direction: column;
-        box-sizing: border-box;
-
-        .title-box {
-          position: relative;
-          display: flex;
-
-          & > div {
-            display: flex;
-            align-items: flex-start;
-            font-size: 18px;
-            color: #a9d1d7;
-
-            .title {
-              cursor: pointer;
+                width: calc((100% - 80px) / 5 * 2 + 20px);
             }
 
-            .on {
-              position: relative;
-              font-weight: bold;
-              color: #7ccfd6;
+            .time-box {
+                padding: 0 25px;
+                display: flex;
+                flex-direction: column;
+                box-sizing: border-box;
 
-              span {
-                position: absolute;
-                bottom: -8px;
-                left: 0;
-                width: 100%;
-                height: 3px;
-                border-radius: 3px;
-                background: #66dde9;
-              }
+                & > div:last-child {
+                    border: none;
+                }
             }
-          }
 
-          & > div:nth-child(2) {
-            margin-left: 60px;
-          }
+            .task-box {
+                padding: 20px;
+                display: flex;
+                flex-direction: column;
+                box-sizing: border-box;
 
-          .more {
-            position: absolute;
-            top: 0;
-            left: auto;
-            right: 0;
-            bottom: 0;
-            margin: auto;
-            display: flex;
-            align-items: center;
-            font-size: 16px;
-            cursor: pointer;
-            img {
-              margin-left: 6px;
-              vertical-align: middle;
+                .title {
+                    text-align: left;
+                    font-size: 18px;
+                    font-weight: bold;
+                    color: #7ccfd6;
+                }
+
+                .echarts-box {
+                    margin-top: 16px;
+                    flex: 1;
+                }
             }
-          }
+
+            .nz-ncp {
+                padding: 20px;
+                display: flex;
+                flex-direction: column;
+                box-sizing: border-box;
+
+                .title-box {
+                    display: flex;
+
+                    & > div {
+                        display: flex;
+                        align-items: flex-start;
+                        font-size: 18px;
+                        color: #a9d1d7;
+
+                        .title {
+                            cursor: pointer;
+                        }
+
+                        .on {
+                            position: relative;
+                            font-weight: bold;
+                            color: #7ccfd6;
+
+                            span {
+                                position: absolute;
+                                bottom: -8px;
+                                left: 0;
+                                width: 100%;
+                                height: 3px;
+                                border-radius: 3px;
+                                background: #66dde9;
+                            }
+                        }
+                    }
+
+                    & > div:nth-child(2) {
+                        margin-left: 60px;
+                    }
+                }
+
+                .lists-box {
+                    margin-top: 16px;
+                    flex: 1;
+                    overflow-y: auto;
+
+                    & > div:nth-child(even) {
+                        background: rgba(102, 221, 233, 0.1);
+                    }
+
+                    & > div {
+                        display: flex;
+                        align-items: center;
+                        justify-content: space-between;
+                        line-height: 48px;
+                        font-size: 18px;
+                        color: #a9d1d7;
+
+                        & > div:first-child {
+                            margin-left: 16px;
+                        }
+
+                        & > div:last-child {
+                            margin-right: 18px;
+                            color: #66dde9;
+                        }
+                    }
+                }
+            }
+
+            .trp-ncp {
+                padding: 20px;
+                display: flex;
+                flex-direction: column;
+                box-sizing: border-box;
+
+                .title-box {
+                    position: relative;
+                    display: flex;
+
+                    & > div {
+                        display: flex;
+                        align-items: flex-start;
+                        font-size: 18px;
+                        color: #a9d1d7;
+
+                        .title {
+                            cursor: pointer;
+                        }
+
+                        .on {
+                            position: relative;
+                            font-weight: bold;
+                            color: #7ccfd6;
+
+                            span {
+                                position: absolute;
+                                bottom: -8px;
+                                left: 0;
+                                width: 100%;
+                                height: 3px;
+                                border-radius: 3px;
+                                background: #66dde9;
+                            }
+                        }
+                    }
+
+                    & > div:nth-child(2) {
+                        margin-left: 60px;
+                    }
+
+                    .more {
+                        position: absolute;
+                        top: 0;
+                        left: auto;
+                        right: 0;
+                        bottom: 0;
+                        margin: auto;
+                        display: flex;
+                        align-items: center;
+                        font-size: 16px;
+                        cursor: pointer;
+                        img {
+                            margin-left: 6px;
+                            vertical-align: middle;
+                        }
+                    }
+                }
+
+                .echarts-box {
+                    margin-top: 16px;
+                    flex: 1;
+                }
+            }
         }
 
-        .echarts-box {
-          margin-top: 16px;
-          flex: 1;
-        }
-      }
-    }
-
-    .b {
-      margin-top: 20px;
-      flex: 1;
-      display: flex;
-      justify-content: space-between;
-
-      & > div {
-        margin-left: 20px;
-        border-radius: 8px 8px 8px 8px;
-        background: rgba(0, 52, 85, 0.4);
-      }
-
-      & > div:first-child {
-        margin-left: 0;
-        flex: 1;
-      }
-
-      & > div:last-child {
-        width: 444px;
-      }
-
-      .cl-sy {
-        padding: 20px;
-        display: flex;
-        flex-direction: column;
-        box-sizing: border-box;
-
-        .title-box {
-          height: 34px;
-          position: relative;
-          display: flex;
-
-          & > div {
-            display: flex;
-            align-items: flex-start;
-            font-size: 18px;
-            color: #a9d1d7;
-
-            .on {
-              position: relative;
-              font-weight: bold;
-              color: #7ccfd6;
-
-              span {
-                position: absolute;
-                bottom: -8px;
-                left: 0;
-                width: 100%;
-                height: 3px;
-                border-radius: 3px;
-                background: #66dde9;
-              }
-            }
-          }
-
-          & > div:nth-child(2) {
-            margin-left: 60px;
-          }
-
-          .date {
-            position: absolute;
-            top: -20px;
-            left: auto;
-            right: 0;
-            bottom: auto;
-            margin: auto;
-            width: 320px;
-          }
-        }
-
-        .echarts-box {
-          margin-top: 16px;
-          flex: 1;
-        }
-      }
-
-      .ns-nz {
-        padding: 20px;
-        display: flex;
-        flex-direction: column;
-        box-sizing: border-box;
-
-        .title-box {
-          position: relative;
-          display: flex;
-
-          & > div {
-            display: flex;
-            align-items: flex-start;
-            font-size: 18px;
-            color: #a9d1d7;
-
-            .title {
-              cursor: pointer;
-            }
-
-            .on {
-              position: relative;
-              font-weight: bold;
-              color: #7ccfd6;
-
-              span {
-                position: absolute;
-                bottom: -8px;
-                left: 0;
-                width: 100%;
-                height: 3px;
-                border-radius: 3px;
-                background: #66dde9;
-              }
-            }
-          }
-
-          & > div:nth-child(2) {
-            margin-left: 60px;
-          }
-
-          .more {
-            position: absolute;
-            top: 0;
-            left: auto;
-            right: 0;
-            bottom: 0;
-            margin: auto;
-            display: flex;
-            align-items: center;
-            font-size: 16px;
-            cursor: pointer;
-            img {
-              margin-left: 6px;
-              vertical-align: middle;
-            }
-          }
-        }
-
-        .lists-box {
-          margin-top: 16px;
-          flex: 1;
-
-          display: flex;
-          flex-direction: column;
-
-          & > div {
-            position: relative;
+        .b {
+            margin-top: 20px;
             flex: 1;
-            margin-top: 10px;
-            padding: 10px 20px;
             display: flex;
-            flex-direction: column;
             justify-content: space-between;
 
-            background: rgba(102, 221, 233, 0.1);
-            border-radius: 8px;
-            font-size: 18px;
-            color: #a9d1d7;
-
-            & > .t-item {
-              display: flex;
-              align-items: center;
-              justify-content: space-between;
-
-              & > div:first-child {
-                font-weight: bold;
-                color: #66dde9;
-              }
+            & > div {
+                margin-left: 20px;
+                border-radius: 8px 8px 8px 8px;
+                background: rgba(0, 52, 85, 0.4);
             }
 
-            & > .b-item {
-              display: flex;
-              align-items: center;
-              justify-content: space-between;
-
-              & > div:first-child {
-                color: #fff;
-              }
+            & > div:first-child {
+                margin-left: 0;
+                flex: 1;
             }
 
-            .t-border {
-              top: 0;
-              bottom: auto;
+            & > div:last-child {
+                width: 444px;
             }
 
-            .b-border {
-              top: auto;
-              bottom: 0;
+            .cl-sy {
+                padding: 20px;
+                display: flex;
+                flex-direction: column;
+                box-sizing: border-box;
+
+                .title-box {
+                    height: 34px;
+                    position: relative;
+                    display: flex;
+
+                    & > div {
+                        display: flex;
+                        align-items: flex-start;
+                        font-size: 18px;
+                        color: #a9d1d7;
+
+                        .on {
+                            position: relative;
+                            font-weight: bold;
+                            color: #7ccfd6;
+
+                            span {
+                                position: absolute;
+                                bottom: -8px;
+                                left: 0;
+                                width: 100%;
+                                height: 3px;
+                                border-radius: 3px;
+                                background: #66dde9;
+                            }
+                        }
+                    }
+
+                    & > div:nth-child(2) {
+                        margin-left: 60px;
+                    }
+
+                    .date {
+                        position: absolute;
+                        top: -20px;
+                        left: auto;
+                        right: 0;
+                        bottom: auto;
+                        margin: auto;
+                        width: 320px;
+                    }
+                }
+
+                .echarts-box {
+                    margin-top: 16px;
+                    flex: 1;
+                }
             }
 
-            .t-border,
-            .b-border {
-              position: absolute;
-              left: 0;
-              right: 0;
-              margin: auto;
-              width: 80%;
-              height: 1px;
-              background: linear-gradient(
-                89deg,
-                rgba(102, 221, 233, 0) 0%,
-                #66dde9 51%,
-                rgba(102, 221, 233, 0) 100%
-              );
-            }
-          }
+            .ns-nz {
+                padding: 20px;
+                display: flex;
+                flex-direction: column;
+                box-sizing: border-box;
 
-          & > div:first-child {
-            margin-top: 10px;
-          }
+                .title-box {
+                    position: relative;
+                    display: flex;
+
+                    & > div {
+                        display: flex;
+                        align-items: flex-start;
+                        font-size: 18px;
+                        color: #a9d1d7;
+
+                        .title {
+                            cursor: pointer;
+                        }
+
+                        .on {
+                            position: relative;
+                            font-weight: bold;
+                            color: #7ccfd6;
+
+                            span {
+                                position: absolute;
+                                bottom: -8px;
+                                left: 0;
+                                width: 100%;
+                                height: 3px;
+                                border-radius: 3px;
+                                background: #66dde9;
+                            }
+                        }
+                    }
+
+                    & > div:nth-child(2) {
+                        margin-left: 60px;
+                    }
+
+                    .more {
+                        position: absolute;
+                        top: 0;
+                        left: auto;
+                        right: 0;
+                        bottom: 0;
+                        margin: auto;
+                        display: flex;
+                        align-items: center;
+                        font-size: 16px;
+                        cursor: pointer;
+                        img {
+                            margin-left: 6px;
+                            vertical-align: middle;
+                        }
+                    }
+                }
+
+                .lists-box {
+                    margin-top: 16px;
+                    flex: 1;
+
+                    display: flex;
+                    flex-direction: column;
+
+                    & > div {
+                        position: relative;
+                        flex: 1;
+                        margin-top: 10px;
+                        padding: 10px 20px;
+                        display: flex;
+                        flex-direction: column;
+                        justify-content: space-between;
+
+                        background: rgba(102, 221, 233, 0.1);
+                        border-radius: 8px;
+                        font-size: 18px;
+                        color: #a9d1d7;
+
+                        & > .t-item {
+                            display: flex;
+                            align-items: center;
+                            justify-content: space-between;
+
+                            & > div:first-child {
+                                font-weight: bold;
+                                color: #66dde9;
+                            }
+                        }
+
+                        & > .b-item {
+                            display: flex;
+                            align-items: center;
+                            justify-content: space-between;
+
+                            & > div:first-child {
+                                color: #fff;
+                            }
+                        }
+
+                        .t-border {
+                            top: 0;
+                            bottom: auto;
+                        }
+
+                        .b-border {
+                            top: auto;
+                            bottom: 0;
+                        }
+
+                        .t-border,
+                        .b-border {
+                            position: absolute;
+                            left: 0;
+                            right: 0;
+                            margin: auto;
+                            width: 80%;
+                            height: 1px;
+                            background: linear-gradient(
+                                89deg,
+                                rgba(102, 221, 233, 0) 0%,
+                                #66dde9 51%,
+                                rgba(102, 221, 233, 0) 100%
+                            );
+                        }
+                    }
+
+                    & > div:first-child {
+                        margin-top: 10px;
+                    }
+                }
+            }
         }
-      }
     }
-  }
 }
 </style>

--
Gitblit v1.9.3