Преглед на файлове

fix(scd): 修正设备控制相关路径与参数,更新设备数据展示

1. 调整deviceControl.vue的设备类型ID为2,注释无用的板子设置模块
2. 修正detail.vue跳转路径到scd设备控制页,更新时间参数和新增设备型号参数
3. 更新deviceData.vue的数据展示项与表格头,新增图表统计项
allen преди 7 часа
родител
ревизия
9cac29e23f
променени са 3 файла, в които са добавени 60 реда и са изтрити 32 реда
  1. 48 20
      pages/scd/components/deviceData.vue
  2. 8 7
      pages/scd/detail.vue
  3. 4 5
      pages/scd/deviceControl.vue

+ 48 - 20
pages/scd/components/deviceData.vue

@@ -27,20 +27,23 @@
             <text class="data-value">{{ objItem.ds == '1' ? '开机' : '关机' }}</text>
             <text class="data-label">设备开机</text>
           </view>
-          <!-- <view class="data-item">
-            <text class="data-value">{{ objItem.staytime || objItem.stay_time || objItem.step_time}}</text>
-            <text class="data-label">已培养时间</text>
-          </view> -->
           <view class="data-item">
-            <text class="data-value">{{ objItem.dver }}</text>
-            <text class="data-label">设备版本</text>
+            <text class="data-value">{{ objItem.ws }}</text>
+            <text class="data-label">工作状态</text>
           </view>
         </view>
-        <!-- <view class="data-column-right">
-          <view class="device-image-container">
-            <image class="device-image" :src="formatDevImg" mode="aspectFit"></image>
+      </view>
+      <view class="main-data-panel">
+        <view class="data-column-left">
+          <view class="data-item">
+            <text class="data-value">{{ objItem.rps }}</text>
+            <text class="data-label">雨控状态</text>
           </view>
-        </view> -->
+          <view class="data-item">
+            <text class="data-value">{{ objItem.tps }}</text>
+            <text class="data-label">温控状态</text>
+          </view>
+        </view>
       </view>
     </view>
     <!-- 图表区域 -->
@@ -95,11 +98,20 @@
           <view class="scrollable-column">
             <view class="scrollable-header">
               <text class="header-cell">设备开关</text>
-              <text class="header-cell">环境温度(°C)</text>
-              <text class="header-cell">环境湿度(%)</text>
-              <text class="header-cell">电池状态</text>
               <text class="header-cell">工作状态</text>
-              <text class="header-cell">设备版本</text>
+              <text class="header-cell">雨控状态</text>
+              <text class="header-cell">温控状态</text>
+              <text class="header-cell">倾倒状态</text>
+              <text class="header-cell">灯管状态</text>
+              <text class="header-cell">电压状态</text>
+              <text class="header-cell">定时状态</text>
+              <text class="header-cell">杀虫数量</text>
+              <text class="header-cell">温度(°C)</text>
+              <text class="header-cell">湿度(%)</text>
+              <text class="header-cell">充电电压</text>
+              <text class="header-cell">电池状态</text>
+              <text class="header-cell">信号强度</text>
+              <text class="header-cell">上报时间</text>
             </view>
             <view class="scrollable-body">
               <view
@@ -108,11 +120,20 @@
                 class="scrollable-row"
               >
                 <text class="body-cell">{{ item.ds == 1? '打开' : '关闭' }}</text>
+                <text class="body-cell">{{ item.ws }}</text>
+                <text class="body-cell">{{ item.rps }}</text>
+                <text class="body-cell">{{ item.tps }}</text>
+                <text class="body-cell">{{ item.dps }}</text>
+                <text class="body-cell">{{ item.voltval }}</text>
+                <text class="body-cell">{{ item.vps == '0' ? '正常' : '欠压' }}</text>
+                <text class="body-cell">{{ item.tt }}</text>
+                <text class="body-cell">{{ item.infr_ct }}</text>
                 <text class="body-cell">{{ item.at }}</text>
                 <text class="body-cell">{{ item.ah }}</text>
-                <text class="body-cell">{{ item.batStatus == 0? '正常' : '欠压' }}</text>
-                <text class="body-cell">{{ item.work_sta == 0? '待机' : item.work_sta == 1? '收集' : item.work_sta == 2? '培养' : '拍照' }}</text>
-                <text class="body-cell">{{ item.dver }}</text>
+                <text class="body-cell">{{ item.cv }}</text>
+                <text class="body-cell">{{ item.bv }}</text>
+                <text class="body-cell">{{ item.csq }}</text>
+                <text class="body-cell">{{ formatTime(item.addtime) }}</text>
               </view>
             </view>
           </view>
@@ -263,6 +284,9 @@ export default {
       chartTabs: [
         { name: '温度', id: 'new_tem' },
         { name: '湿度', id: 'new_hum' },
+        { name: '充电电压', id: 'cv' },
+        { name: '电池电压', id: 'bv' },
+        { name: '杀虫数量', id: 'infr_ct' },
       ],
       opts: {
         type: 'line',
@@ -489,7 +513,7 @@ export default {
     },
     openSettings(){
       uni.navigateTo({
-        url: '/pages/bzy/deviceControl?deviceId=' + this.deviceInfo.id + '&d_id=' + this.deviceInfo.d_id,
+        url: '/pages/scd/deviceControl?deviceId=' + this.deviceInfo.id + '&d_id=' + this.deviceInfo.d_id,
       });
     },
     initChart() {
@@ -631,8 +655,12 @@ export default {
         this.yData = this.polylineList.map(item => Number(item.new_tem) || 0);
       } else if (this.chartTabs[index].id === 'new_hum') {
         this.yData = this.polylineList.map(item => Number(item.new_hum) || 0);
-      } else if (this.chartTabs[index].id === 'others') {
-        this.yData = this.polylineList.map(item => Number(item.others) || 0);
+      } else if (this.chartTabs[index].id === 'cv') {
+        this.yData = this.polylineList.map(item => Number(item.others.cv) || 0);
+      } else if (this.chartTabs[index].id === 'bv') {
+        this.yData = this.polylineList.map(item => Number(item.others.bv) || 0);
+      } else if (this.chartTabs[index].id === 'infr_ct') {
+        this.yData = this.polylineList.map(item => Number(item.others.infr_ct) || 0);
       }
       this.$nextTick(() => {
         // this.drawChart();

+ 8 - 7
pages/scd/detail.vue

@@ -13,10 +13,10 @@
     <view class="operation-container" v-if="isShowOperation" @click="closeOperationHandler">
       <view class="operation-background"></view>
       <view class="operation-content">
-        <view class="operation-item" v-if="isShowPhoto" @click="handlePhotoClick">
+        <!-- <view class="operation-item" v-if="isShowPhoto" @click="handlePhotoClick">
           <image :src="photoIcon" class="operation-icon"></image>
           拍照
-        </view>
+        </view> -->
         <!-- <view class="operation-item" @click="handleServiceClick">
           <image :src="serviceIcon" class="operation-icon"></image>
           维修
@@ -236,7 +236,7 @@ export default {
     },
     handleSettingClick(){
       uni.navigateTo({
-        url: '/pages/bzy/deviceControl?deviceId=' + this.deviceInfo.id + '&d_id=' + this.deviceInfo.d_id,
+        url: '/pages/scd/deviceControl?deviceId=' + this.deviceInfo.id + '&d_id=' + this.deviceInfo.d_id,
       });
     },
     closeOperationHandler(){
@@ -419,8 +419,9 @@ export default {
         data: {
           device_type_id: this.deviceInfo.type_id,
           d_id: this.deviceInfo.d_id,
-          start_time: new Date(this.startDate).getTime()/1000,// 转成毫秒
-          end_time: new Date(this.endDate).getTime()/1000,// 转成毫秒
+          device_model: this.deviceInfo.device_model,
+          start_time: new Date(this.startDate + ' 00:00:00').getTime()/1000,// 转成毫秒
+          end_time: new Date(this.endDate + ' 23:59:59').getTime()/1000,// 转成毫秒
         },
       });
       const data = res || [];
@@ -433,8 +434,8 @@ export default {
         data: {
           device_type_id: this.deviceInfo.type_id,
           device_id: this.deviceInfo.id,
-          start_time: new Date(this.startDate).getTime()/1000,
-          end_time: new Date(this.endDate).getTime()/1000,
+          start_time: new Date(this.startDate + ' 00:00:00').getTime()/1000,
+          end_time: new Date(this.endDate + ' 23:59:59').getTime()/1000,
           page: this.page,
           page_size: this.page_size,
         },

+ 4 - 5
pages/scd/deviceControl.vue

@@ -29,10 +29,9 @@
             <!-- <view class="device-detail-btn" @click="showMqttConfig">MQTT配置</view> -->
           </view>
         </view>
-        <view class="device-detail-item">
+        <!-- <view class="device-detail-item">
           <text class="device-detail-label">板子设置</text>
           <view class="device-detail-btn-container">
-            <!-- <view class="device-detail-btn">查看原始IMEI</view> -->
             <view class="device-detail-btn" @click="showMqttConfig('imei')">更改IMEI</view>
           </view>
         </view>
@@ -45,7 +44,7 @@
             <view class="device-detail-btn force-btn" @click="setDeviceContorl('autotakephoto')">对焦拍照</view>
             <view class="device-detail-btn force-btn" @click="setDeviceContorl('turn')">转仓</view>
           </view>
-        </view>
+        </view> -->
       </view>
       <view class="device-detail-content" style="padding-bottom: 50rpx" v-if="activeTab === 'viewImage'">
         <view class="device-detail-viewImage">
@@ -229,7 +228,7 @@ export default {
     },
     async setDeviceContorl(type){
       const data = {
-        device_type_id: 3,
+        device_type_id: 2,
         d_id: this.d_id,
         cmd: type,
       }
@@ -288,7 +287,7 @@ export default {
         url: '/api/api_gateway?method=forecast.send_control.device_control',
         method: 'POST',
         data: {
-          device_type_id: 3,
+          device_type_id: 2,
           d_id: this.d_id,
           config: JSON.stringify(newForm)
         }