|
@@ -2,15 +2,15 @@
|
|
|
<div class="pigHouse">
|
|
|
<div style="height: 200px">
|
|
|
<swiper class="swiper" :options="swiperOption">
|
|
|
- <swiper-slide v-for="item in 10" :key="item" style="padding-top: 10px">
|
|
|
+ <swiper-slide v-for="(item, i) in list" :key="i" style="padding-top: 10px">
|
|
|
<div class="box">
|
|
|
- <p>育肥1栋1单元</p>
|
|
|
+ <p>{{item.room}}</p>
|
|
|
<div class="flex">
|
|
|
<div>
|
|
|
<i class="icon1"></i>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <span>36.6℃</span>
|
|
|
+ <span>{{item.temperature ? item.temperature + '℃' : '暂无数据'}}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div style="margin-top: 20px" class="flex">
|
|
@@ -18,7 +18,7 @@
|
|
|
<i class="icon2"></i>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <span>78RH</span>
|
|
|
+ <span>{{item.humidity ? item.humidity + 'RH' : '暂无数据'}}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -30,10 +30,15 @@
|
|
|
</swiper>
|
|
|
</div>
|
|
|
<br/>
|
|
|
- <x-form :formItems="formItems" :day="day" @setDay="setDay" @onClickType="onClickType"></x-form>
|
|
|
+ <x-form :formItems="formItems" :day="day" @setDay="setDay" @setChange="setChange" @onClickType="onClickType"></x-form>
|
|
|
<br/>
|
|
|
<div style="height: 600px">
|
|
|
- <chart-wsd></chart-wsd>
|
|
|
+ <chart-pig-temp v-if="tempList.list.length > 0" :tempList="tempList"></chart-pig-temp>
|
|
|
+ <el-empty v-else description="暂无数据"></el-empty>
|
|
|
+ </div>
|
|
|
+ <div style="height: 600px">
|
|
|
+ <chart-pig-hum v-if="humList.list.length > 0" :humList="humList"></chart-pig-hum>
|
|
|
+ <el-empty v-else description="暂无数据"></el-empty>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -41,17 +46,20 @@
|
|
|
<script>
|
|
|
import { swiper, swiperSlide } from 'vue-awesome-swiper'
|
|
|
import XForm from "@/components/XForm";
|
|
|
-import ChartWsd from "@/views/dashboard/chart/ChartWsd";
|
|
|
+import ChartPigTemp from "./chart/ChartPigTemp";
|
|
|
+import ChartPigHum from "./chart/ChartPigHum";
|
|
|
import 'swiper/css/swiper.css'
|
|
|
+import { getEnv, getSchool, getByFloor, getUid, getByRoom } from "../../utils/api";
|
|
|
+import {timeDate} from "../../utils";
|
|
|
+
|
|
|
export default {
|
|
|
name: "PigHouseEnv",
|
|
|
components: {
|
|
|
swiper,
|
|
|
swiperSlide,
|
|
|
XForm,
|
|
|
- ChartWsd
|
|
|
- // Swiper,
|
|
|
- // SwiperSlide
|
|
|
+ ChartPigTemp,
|
|
|
+ ChartPigHum
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
@@ -71,19 +79,29 @@ export default {
|
|
|
prevEl: '.swiper-button-prev'
|
|
|
}
|
|
|
},
|
|
|
+ list: [],
|
|
|
formItems: [
|
|
|
{
|
|
|
id: 1,
|
|
|
type: 'select',
|
|
|
label: '栋舍:',
|
|
|
placeholder: '请选择栋舍',
|
|
|
- field: 'areaId',
|
|
|
+ field: 'floorId',
|
|
|
options: [],
|
|
|
col: 4
|
|
|
},
|
|
|
{
|
|
|
id: 2,
|
|
|
type: 'select',
|
|
|
+ label: '楼层:',
|
|
|
+ placeholder: '请选择楼层',
|
|
|
+ field: 'uid',
|
|
|
+ options: [],
|
|
|
+ col: 4
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 10,
|
|
|
+ type: 'select',
|
|
|
label: '单元:',
|
|
|
placeholder: '请选择单元',
|
|
|
field: 'unitId',
|
|
@@ -119,6 +137,13 @@ export default {
|
|
|
col: 6
|
|
|
},
|
|
|
{
|
|
|
+ id: 8,
|
|
|
+ type: 'button',
|
|
|
+ text: '查询',
|
|
|
+ col: 1,
|
|
|
+ click: 'search'
|
|
|
+ },
|
|
|
+ {
|
|
|
id: 7,
|
|
|
type: 'button',
|
|
|
text: '导出数据',
|
|
@@ -127,16 +152,123 @@ export default {
|
|
|
}
|
|
|
],
|
|
|
// 默认选择本周
|
|
|
- day: 2
|
|
|
+ day: 2,
|
|
|
+ tempList: {
|
|
|
+ name: '',
|
|
|
+ list: [],
|
|
|
+ },
|
|
|
+ humList: {
|
|
|
+ name: '',
|
|
|
+ list: [],
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
+ init() {
|
|
|
+ getEnv().then(res => {
|
|
|
+ if(res.code === 10000) {
|
|
|
+ this.list = res.data;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ getSchool() {
|
|
|
+ getSchool().then(res => {
|
|
|
+ if(res.code === 10000) {
|
|
|
+ res.data.forEach(item => {
|
|
|
+ item.value = item.id;
|
|
|
+ item.label = item.floorName;
|
|
|
+ })
|
|
|
+ this.formItems[0].options = res.data;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ setChange(item) {
|
|
|
+ if(item.type === 'floorId') {
|
|
|
+ let params = {
|
|
|
+ floorId: item.data
|
|
|
+ }
|
|
|
+ getByFloor(params).then(res => {
|
|
|
+ res.data.forEach(item => {
|
|
|
+ item.value = item.uid;
|
|
|
+ item.label = item.alias
|
|
|
+ })
|
|
|
+ this.formItems[1].options = res.data;
|
|
|
+ })
|
|
|
+ } else if(item.type === 'uid') {
|
|
|
+ let params = {
|
|
|
+ uid: item.data
|
|
|
+ }
|
|
|
+ getUid(params).then(res => {
|
|
|
+ res.data.forEach(item => {
|
|
|
+ item.value = item.id;
|
|
|
+ item.label = item.roomName
|
|
|
+ })
|
|
|
+ this.formItems[2].options = res.data
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
setDay(data) {
|
|
|
this.day = data;
|
|
|
},
|
|
|
onClickType(data) {
|
|
|
console.log(data)
|
|
|
+ if(data.type === 'search') {
|
|
|
+ let data1 = data.data;
|
|
|
+ if(data1.unitId) {
|
|
|
+ let params;
|
|
|
+ if(data1.value1) {
|
|
|
+ params = {
|
|
|
+ roomId: data1.unitId,
|
|
|
+ startDate: data1.value1[0],
|
|
|
+ endDate: data1.value1[1],
|
|
|
+ type: 4,
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ let end = timeDate(new Date().getTime())
|
|
|
+ params = {
|
|
|
+ roomId: data1.unitId,
|
|
|
+ endDate: end,
|
|
|
+ type: this.day
|
|
|
+ }
|
|
|
+ }
|
|
|
+ getByRoom(params).then(res => {
|
|
|
+ if(res.code === 10000) {
|
|
|
+ this.tempList = {
|
|
|
+ name: res.data.roomName,
|
|
|
+ list: res.data.semperatures
|
|
|
+ }
|
|
|
+ this.humList = {
|
|
|
+ name: res.data.roomName,
|
|
|
+ list: res.data.humidities
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ console.log(222)
|
|
|
+ this.$message.error('请选择栋舍楼层单元查询');
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 默认显示
|
|
|
+ getTempAndHum() {
|
|
|
+ getByRoom({}).then(res => {
|
|
|
+ if(res.code === 10000) {
|
|
|
+ this.tempList = {
|
|
|
+ name: res.data.roomName,
|
|
|
+ list: res.data.semperatures
|
|
|
+ }
|
|
|
+ this.humList = {
|
|
|
+ name: res.data.roomName,
|
|
|
+ list: res.data.humidities
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ this.init()
|
|
|
+ this.getSchool()
|
|
|
+ this.getTempAndHum()
|
|
|
}
|
|
|
}
|
|
|
</script>
|