| | |
| | | package com.sandu.ximon.admin.service; |
| | | |
| | | 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.sandu.common.execption.BusinessException; |
| | | import com.sandu.common.service.impl.BaseServiceImpl; |
| | | import com.sandu.ximon.admin.dto.WaterQualityDataDto; |
| | | import com.sandu.ximon.dao.domain.WaterQualityData; |
| | | import com.sandu.ximon.dao.domain.WaterQualityEquipment; |
| | | import com.sandu.ximon.dao.mapper.WaterQualityDataMapper; |
| | | import com.sandu.ximon.dao.mapper.WaterQualityEquipmentMapper; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | @Service |
| | | @AllArgsConstructor |
| | | public class WaterQualityDataService extends BaseServiceImpl<WaterQualityDataMapper, WaterQualityData> { |
| | | //水质参数获取网址,例如:"http://iot.ainongye.cn/json/设备编号.json" |
| | | private final String WATER_QUALITY_DATA_URL = "http://iot.ainongye.cn/json/"; |
| | | |
| | | /** |
| | | * 查询全部水质设备数据 |
| | |
| | | public List<WaterQualityData> listWaterQualityDataByKeyword(String keyword) { |
| | | |
| | | LambdaQueryWrapper<WaterQualityData> wrapper = Wrappers.lambdaQuery(WaterQualityData.class); |
| | | if(keyword != null){ |
| | | wrapper.like(WaterQualityData::getBelongTo,keyword); |
| | | if (keyword != null) { |
| | | wrapper.like(WaterQualityData::getBelongTo, keyword); |
| | | } |
| | | List<WaterQualityData> waterQualityDataList = list(wrapper); |
| | | return waterQualityDataList; |
| | | } |
| | | |
| | | /** |
| | | * 获取水质数据 |
| | | * |
| | | * @param waterQualityEquipmentCode 设备编号 |
| | | */ |
| | | public WaterQualityDataDto getWaterQualityDataInfo(String waterQualityEquipmentCode) { |
| | | 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: |
| | | } |
| | | } |
| | | waterQualityData.setWaterQualityEquipmentCode(waterQualityDataDto.getDid()); |
| | | save(waterQualityData); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | |
| | | return waterQualityDataDto; |
| | | } |
| | | } |