From dda268997ca8f8a364f7c19b45d7a43a50a98efe Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期二, 25 十月 2022 18:00:11 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/WaterQualityDataService.java |   90 +++++++++++++++++++++++++-------------------
 1 files changed, 51 insertions(+), 39 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/WaterQualityDataService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/WaterQualityDataService.java
index 5606069..27b8319 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/WaterQualityDataService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/WaterQualityDataService.java
@@ -1,11 +1,15 @@
 package com.sandu.ximon.admin.service;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.http.HttpUtil;
 import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.pagehelper.PageHelper;
+import com.sandu.common.execption.BusinessException;
+import com.sandu.common.object.BaseConditionVO;
 import com.sandu.common.service.impl.BaseServiceImpl;
 import com.sandu.ximon.admin.dto.WaterQualityDataDto;
+import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.dao.bo.WaterQualityDataBo;
 import com.sandu.ximon.dao.domain.WaterQualityData;
 import com.sandu.ximon.dao.mapper.WaterQualityDataMapper;
 import lombok.AllArgsConstructor;
@@ -19,27 +23,24 @@
     //姘磋川鍙傛暟鑾峰彇缃戝潃锛屼緥濡傦細"http://iot.ainongye.cn/json/璁惧缂栧彿.json"
     private final String WATER_QUALITY_DATA_URL = "http://iot.ainongye.cn/json/";
 
-    /**
-     * 鏌ヨ鍏ㄩ儴姘磋川璁惧鏁版嵁
-     */
-    public List<WaterQualityData> listWaterQualityData() {
-        LambdaQueryWrapper<WaterQualityData> wrapper = Wrappers.lambdaQuery(WaterQualityData.class);
-        List<WaterQualityData> list = list(wrapper);
-
-        return list;
-    }
+    private WaterQualityDataMapper waterQualityDataMapper;
 
     /**
      * 妯$硦鏌ヨ
      */
-    public List<WaterQualityData> listWaterQualityDataByKeyword(String keyword) {
-
-        LambdaQueryWrapper<WaterQualityData> wrapper = Wrappers.lambdaQuery(WaterQualityData.class);
-        if (keyword != null) {
-            wrapper.like(WaterQualityData::getBelongTo, keyword);
+    public List<WaterQualityDataBo> listWaterQualityDataByKeyword(BaseConditionVO baseConditionVO, String keyword) {
+        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+        List<Long> waterQualityDataId;
+        if (SecurityUtils.getClientId() == null) {
+            waterQualityDataId = waterQualityDataMapper.listWaterQualityDataId(keyword, null);
+        } else {
+            waterQualityDataId = waterQualityDataMapper.listWaterQualityDataId(keyword, SecurityUtils.getUserId());
         }
-        List<WaterQualityData> waterQualityDataList = list(wrapper);
-        return waterQualityDataList;
+        if (CollUtil.isEmpty(waterQualityDataId)) {
+            return CollUtil.newArrayList();
+        }
+        List<WaterQualityDataBo> airEquipmentBos = waterQualityDataMapper.listWaterQualityDataByIds(waterQualityDataId);
+        return airEquipmentBos;
     }
 
     /**
@@ -51,31 +52,42 @@
         WaterQualityDataDto waterQualityDataDto = null;
         try {
             String s = HttpUtil.get(WATER_QUALITY_DATA_URL + waterQualityEquipmentCode + ".json");
-            System.out.println(s);
-
-            waterQualityDataDto = JSON.parseObject(s, WaterQualityDataDto.class);
-            WaterQualityData waterQualityData = new WaterQualityData();
-            for (WaterQualityDataDto.WaterQualityBean bean : waterQualityDataDto.getData()) {
-                switch (bean.getCode()) {
-                    case "A211"://姘磋川PH
-                        waterQualityData.setWaterQualityPh(bean.getValue());
-                        break;
-                    case "A203"://姘磋川婧惰В姘�
-                        waterQualityData.setWaterQualityDo(bean.getValue());
-                        break;
-                    case "A343"://娴婂害
-                        waterQualityData.setWaterQualityNtu(bean.getValue());
-                        break;
-                    case "A209"://鐢靛鐜�
-                        waterQualityData.setWaterQualityEc(bean.getValue());
-                        break;
-                    default:
+            if (s.startsWith("{") && s.endsWith("}")) {
+                System.out.println(s);
+                waterQualityDataDto = JSON.parseObject(s, WaterQualityDataDto.class);
+                WaterQualityData waterQualityData = new WaterQualityData();
+                for (WaterQualityDataDto.WaterQualityBean bean : waterQualityDataDto.getData()) {
+                    switch (bean.getCode()) {
+                        case "A211"://姘磋川PH
+                            waterQualityData.setWaterQualityPh(bean.getValue());
+                            break;
+                        case "A203"://姘磋川婧惰В姘�
+                            waterQualityData.setWaterQualityDo(bean.getValue());
+                            break;
+                        case "A343"://娴婂害
+                            waterQualityData.setWaterQualityNtu(bean.getValue());
+                            break;
+                        case "A209"://鐢靛鐜�
+                            waterQualityData.setWaterQualityEc(bean.getValue());
+                            break;
+                        default:
+                    }
                 }
+                waterQualityData.setWaterQualityEquipmentCode(waterQualityDataDto.getDid());
+                //璁剧疆姘磋川璁惧鐘舵��
+                if (waterQualityDataDto != null) {
+                    waterQualityDataDto.setState(1);
+                } else {
+                    waterQualityDataDto.setState(0);
+                }
+                save(waterQualityData);
+            } else {
+                System.out.println("姘磋川鏁版嵁涓嶆纭紒");
             }
-            waterQualityData.setWaterQualityEquipmentCode(waterQualityDataDto.getDid());
-            save(waterQualityData);
         } catch (Exception e) {
             e.printStackTrace();
+            log.error("姘磋川璁惧鍙蜂笉姝g‘");
+//            throw new BusinessException("姘磋川璁惧鍙蜂笉姝g‘");
         }
 
         return waterQualityDataDto;

--
Gitblit v1.9.3