diff --git a/src/api/index.js b/src/api/index.js index a2c06df9..dd6d4f1b 100644 --- a/src/api/index.js +++ b/src/api/index.js @@ -886,5 +886,8 @@ getIccid(data){ getInsectChartData(data){ return sendPostParamsRequest(`/v1/getInsectChartData`, data) }, + getGetDeviceRunParam(data){ + return sendPostParamsRequest(`/v1/getGetDeviceRunParam`, data) + }, }; diff --git a/src/assets/css/main.css b/src/assets/css/main.css index ad4fde75..ee617822 100644 --- a/src/assets/css/main.css +++ b/src/assets/css/main.css @@ -1257,7 +1257,6 @@ textarea { font-family: Microsoft YaHei; font-weight: 400; color: #FFFFFF; - padding: 0 8px; } .input-sel-time .el-input__inner { @@ -1265,11 +1264,12 @@ textarea { border: 2px solid rgba(0, 186, 255, 0.4); cursor: pointer; position: relative; + color: #fff; } .input-sel-time .el-input__inner .el-range-input { background: transparent; - color: #fff; + color: #fff !important; } .input-btn { diff --git a/src/assets/css/main.scss b/src/assets/css/main.scss index 2bc9bbcd..4c5a8361 100644 --- a/src/assets/css/main.scss +++ b/src/assets/css/main.scss @@ -1329,7 +1329,6 @@ textarea { font-family: Microsoft YaHei; font-weight: 400; color: #FFFFFF; - padding: 0 8px; } .el-input__inner { @@ -1337,10 +1336,10 @@ textarea { border: 2px solid rgba(0, 186, 255, 0.40); cursor: pointer; position: relative; - + color: #fff; .el-range-input { background: transparent; - color: #fff; + color: #fff!important; } } } diff --git a/src/assets/img/img-13.jpg b/src/assets/img/img-13.jpg new file mode 100644 index 00000000..91e41e14 Binary files /dev/null and b/src/assets/img/img-13.jpg differ diff --git a/src/assets/js/echarts.js b/src/assets/js/echarts.js index d38d942a..28f09a3a 100644 --- a/src/assets/js/echarts.js +++ b/src/assets/js/echarts.js @@ -311,6 +311,151 @@ export function thisWeekTemperature_echart(id, data) { ] }; + option && myChart.setOption(option); + window.addEventListener("resize", function () { + myChart.resize(); + }); +} + +export function pestMonitor_num(id, data) { + let chartDom = document.getElementById(id); + let myChart = echarts.init(chartDom); + var myColor = [ + "#eb2100", + "#eb3600", + "#d0570e", + "#d0a00e", + "#34da62", + "#00e9db", + "#00c0e9", + "#0096f3", + "#33CCFF", + "#33FFCC", + ]; + var header=data.header + var dataList=data.data.list[0] + // 排序header + var headerNames = Object.keys(header).sort().map(key => header[key]); + // 排序数据 + var objValues = Object.keys(header).sort().map(key => Number(dataList[key]) || 0); + const maxValue = Math.max(...objValues); + const maxList = new Array(objValues.length).fill(maxValue); + const minList = new Array(objValues.length).fill(0); + var option = { + grid: { + left: "11%", + top: "3%", + right: "0%", + bottom: "3%", + containLabel: true, + }, + xAxis: [ + { + show: false, + }, + ], + yAxis: [ + { + axisTick: "none", + axisLine: "none", + offset: "27", + axisLabel: { + textStyle: { + color: "#ffffff", + fontSize: "12", + }, + }, + data:headerNames + }, + { + axisTick: "none", + axisLine: "none", + axisLabel: { + textStyle: { + color: "#ffffff", + fontSize: "12", + }, + }, + data: objValues, + }, + { + name: "", + nameTextStyle: { + color: "#ffffff", + fontSize: "16", + }, + axisLine: { + lineStyle: { + color: "rgba(0,0,0,0)", + }, + }, + data: [], + }, + ], + series: [ + { + name: "条", + type: "bar", + yAxisIndex: 0, + data: objValues, + // label: { + // normal: { + // show: true, + // position: "right", + // textStyle: { + // color: "#ffffff", + // fontSize: "16", + // }, + // }, + // }, + barWidth: 6, + itemStyle: { + normal: { + color: function (params) { + var num = myColor.length; + return myColor[params.dataIndex % num]; + }, + }, + }, + z: 2, + }, + { + name: "白框", + type: "bar", + yAxisIndex: 1, + barGap: "-100%", + data:maxList, + barWidth: 12, + itemStyle: { + normal: { + color: "#0e2147", + barBorderRadius: 5, + }, + }, + z: 1, + }, + + { + name: "外圆", + type: "scatter", + hoverAnimation: false, + data: minList, + yAxisIndex: 2, + symbolSize: 14, + itemStyle: { + normal: { + color: function (params) { + var num = myColor.length; + return myColor[params.dataIndex % num]; + }, + opacity: 1, + }, + }, + z: 2, + }, + ], + }; + option && myChart.setOption(option); window.addEventListener("resize", function () { myChart.resize(); diff --git a/src/components/large-nav.vue b/src/components/large-nav.vue index a56ffe3b..f04e6e15 100644 --- a/src/components/large-nav.vue +++ b/src/components/large-nav.vue @@ -17,8 +17,13 @@ 虫情监测 -
- +
+ + + 智能农机 +
+
+ 环境监测
@@ -48,6 +53,9 @@ export default { }, largeScreen3() { this.$router.push({ path: "/largeScreen3" }); + }, + largeScreen4() { + this.$router.push({ path: "/largeScreen4" }); }, toBackPage() { this.$router.push({ path: "/realTime" }); diff --git a/src/router/index.js b/src/router/index.js index 4cee9fa4..648de555 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -51,6 +51,10 @@ const routes = [ path: '/largeScreen3', name: 'largeScreen3', component: () => import('../views/page/largeScreen3.vue') + },{ + path: '/largeScreen4', + name: 'largeScreen4', + component: () => import('../views/page/largeScreen4.vue') }, // 虫情查看的 { diff --git a/src/views/page/heatFan.vue b/src/views/page/heatFan.vue index 535865e8..5cae15f1 100644 --- a/src/views/page/heatFan.vue +++ b/src/views/page/heatFan.vue @@ -200,11 +200,12 @@ export default { return { inputData: [], typeList1: [ - { label:this.$t('heatFan.gearOptions.gear0'), value: 0 }, - { label:this.$t('heatFan.gearOptions.gear1',{index:1}), value: 1 }, - { label:this.$t('heatFan.gearOptions.gear1',{index:2}), value: 2 }, - { label:this.$t('heatFan.gearOptions.gear1',{index:3}), value: 3 }, - { label:this.$t('heatFan.gearOptions.gear1',{index:4}), value: 4 }, + { label:this.$t('heatFan.gear0'), value: 0 }, + { label:this.$t('heatFan.gear1',{index:1}), value: 1 }, + { label:this.$t('heatFan.gear1',{index:2}), value: 2 }, + { label:this.$t('heatFan.gear1',{index:3}), value: 3 }, + { label:this.$t('heatFan.gear1',{index:4}), value: 4 }, + { label:this.$t('heatFan.gear1',{index:5}), value: 5 }, ], typeList2: [ { label: this.$t('realTime.heatingMode'), value: 1 }, diff --git a/src/views/page/intrinsicParameter.vue b/src/views/page/intrinsicParameter.vue index 09e56c12..e873e3e5 100644 --- a/src/views/page/intrinsicParameter.vue +++ b/src/views/page/intrinsicParameter.vue @@ -671,7 +671,7 @@ export default { warnModel: true, modelPassword:'', sensorType: '', - typeList1: [{ label: this.$t('intrinsicParameter.averageSoilHumidity', {index: 1}), value: 0 }, + typeList1: [{ label: this.$t('intrinsicParameterSoil.averageSoilHumidity', {index: 1}), value: 0 }, { label: this.$t('intrinsicParameterSoil.soilHumidityOptionLabel', { index: 1 }), value: 1 }, { label: this.$t('intrinsicParameterSoil.soilHumidityOptionLabel', { index: 2 }), value: 2 }, { label: this.$t('intrinsicParameterSoil.soilHumidityOptionLabel', { index: 3 }), value: 3 }, diff --git a/src/views/page/largeScreen.vue b/src/views/page/largeScreen.vue index 6eb1c69f..e5b170b6 100644 --- a/src/views/page/largeScreen.vue +++ b/src/views/page/largeScreen.vue @@ -269,20 +269,10 @@
-
虫情图片
-
-
- -
- -
-
-
{{ item.shootTime }}
-
+
项目简介
+
+ +
上海前卫柑桔有限公司成立于1992年,地处长江入海口的长兴岛上,位于青草沙水源保护区和长兴岛郊野公园内。是目前我国规模最大、集约化程度最高的柑桔生产经营企业之一。也是上海市首批通过国家认证的绿色食品,通过了HACCP国际食品安全管理体系认证,并多次在全国柑桔评比中获得金奖、银奖和“农业部优质果品”称号。公司主营业务为柑桔生产和销售,兼营场地租赁、农业旅游、衍生品开发、技术推广等业务。
虫情趋势图
@@ -405,7 +395,7 @@ 风机 - $t('text.invalid') + {{$t('text.invalid')}} 菜单
@@ -451,7 +441,7 @@ {{ item.name }} - $t('text.invalid') + {{$t('text.invalid')}} 位置{{ item.progress }}% 菜单 @@ -477,7 +467,7 @@ {{ item.title }} - $t('text.invalid') + {{$t('text.invalid')}} 菜单
@@ -502,7 +492,7 @@ {{ item.title }} - $t('text.invalid') + {{$t('text.invalid')}} 菜单 @@ -527,7 +517,7 @@ {{ item.title }} - $t('text.invalid') + {{$t('text.invalid')}} 菜单 @@ -1313,16 +1303,32 @@ export default { }); }, mapInit(){ + const that = this const map = new AMap.Map("map-13", { zoom: 18, - center: [121.696506, 31.410799], + center: [121.697751,31.410188], }); var satelliteLayer = new AMap.TileLayer.Satellite(); var roadNetLayer = new AMap.TileLayer.RoadNet(); // map.setLayers([]); // 先清空现有图层 satelliteLayer.setMap(map); // 加载卫星图层 // roadNetLayer.setMap(map); // 加载路网图层(覆盖在卫星图上) +// map.on("click", function (e) { +// // 获取点击的经纬度 +// const lnglat = e.lnglat; // 返回 AMap.LngLat 对象 +// console.log("点击的经纬度:", lnglat.toString()); // 输出:121.696506,31.410799 +// // 也可以直接获取经度和纬度 +// console.log("经度:", lnglat.getLng()); +// console.log("纬度:", lnglat.getLat()); + +// // 弹出提示框(可选) +// const infoWindow = new AMap.InfoWindow({ +// content: `位置:${lnglat.getLng()}, ${lnglat.getLat()}`, +// offset: new AMap.Pixel(0, -30), +// }); +// infoWindow.open(map, lnglat); +// }); // 添加画范围 @@ -1376,6 +1382,10 @@ size: new AMap.Size(70, 86), // 原始大小,如果不是原始大小,可以 title: "上海前卫柑桔有限公司", offset: new AMap.Pixel(-17.5, -40), //以 icon 的 [center bottom] 为原点 }); + marker.on("click", function (e) { + + that.$router.push({ path: "/largeScreen1" }); + }); map.add(marker); } @@ -3502,10 +3512,23 @@ window.open("http://localhost:8080/"); color: #fff; } } - .right-image-list,.right-charts{ + .right-image-list,.right-charts,.right-aboutUs{ width: 100%; height: calc((100% - .38rem) / 2); } + .right-aboutUs{ + color:#fff; + line-height:28px; + margin-top: .2rem; + img{ + width: 100%; + height: 1.5rem; + object-fit: cover + } + >div{ + height: calc(100% - 1.7rem); + } +} .liveVideo { width: 4rem; height: 0.43rem; diff --git a/src/views/page/largeScreen2.vue b/src/views/page/largeScreen2.vue index f2b613cb..601f5a40 100644 --- a/src/views/page/largeScreen2.vue +++ b/src/views/page/largeScreen2.vue @@ -10,44 +10,127 @@ {{ time.time }} - +
-
+
+
+
+
+ - + + \ No newline at end of file diff --git a/src/views/page/wetFan.vue b/src/views/page/wetFan.vue index c381d979..8f9155e9 100644 --- a/src/views/page/wetFan.vue +++ b/src/views/page/wetFan.vue @@ -402,12 +402,12 @@ export default { loading:null, pageName:'湿帘风机', typeList1: [ - { label:this.$t('heatFan.gearOptions.gear0'), value: 0 }, - { label:this.$t('heatFan.gearOptions.gear1',{index:1}), value: 1 }, - { label:this.$t('heatFan.gearOptions.gear1',{index:2}), value: 2 }, - { label:this.$t('heatFan.gearOptions.gear1',{index:3}), value: 3 }, - { label:this.$t('heatFan.gearOptions.gear1',{index:4}), value: 4 }, - { label:this.$t('heatFan.gearOptions.gear1',{index:5}), value: 5 }, + { label:this.$t('heatFan.gear0'), value: 0 }, + { label:this.$t('heatFan.gear1',{index:1}), value: 1 }, + { label:this.$t('heatFan.gear1',{index:2}), value: 2 }, + { label:this.$t('heatFan.gear1',{index:3}), value: 3 }, + { label:this.$t('heatFan.gear1',{index:4}), value: 4 }, + { label:this.$t('heatFan.gear1',{index:5}), value: 5 }, ], inputDataNew: [], }