| | |
| | | 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 com.sandu.ximon.dao.mapper.WaterQualityEquipmentMapper; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | private WaterQualityDataMapper waterQualityDataMapper; |
| | | |
| | | /** |
| | | * 查询全部水质设备数据 |
| | | */ |
| | | public List<WaterQualityDataBo> listWaterQualityData() { |
| | | return waterQualityDataMapper.listWaterQualityData(); |
| | | } |
| | | |
| | | /** |
| | | * 模糊查询 |
| | | */ |
| | | public List<WaterQualityDataBo> listWaterQualityDataByKeyword(String keyword) { |
| | | if (keyword == null || keyword.trim().length() == 0) { |
| | | return listWaterQualityData(); |
| | | 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 { |
| | | return waterQualityDataMapper.listWaterQualityDataByKeyword(keyword); |
| | | waterQualityDataId = waterQualityDataMapper.listWaterQualityDataId(keyword, SecurityUtils.getUserId()); |
| | | } |
| | | if (CollUtil.isEmpty(waterQualityDataId)) { |
| | | return CollUtil.newArrayList(); |
| | | } |
| | | List<WaterQualityDataBo> airEquipmentBos = waterQualityDataMapper.listWaterQualityDataByIds(waterQualityDataId); |
| | | return airEquipmentBos; |
| | | } |
| | | |
| | | /** |
| | |
| | | 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(); |
| | | throw new BusinessException("水质设备号不正确"); |
| | | log.error("水质设备号不正确"); |
| | | // throw new BusinessException("水质设备号不正确"); |
| | | } |
| | | |
| | | return waterQualityDataDto; |