diff --git a/src/main/java/com/zhgd/xmgl/device/water/task/WaterMeterTask.java b/src/main/java/com/zhgd/xmgl/device/water/task/WaterMeterTask.java index af415f6f5..a2296bd04 100644 --- a/src/main/java/com/zhgd/xmgl/device/water/task/WaterMeterTask.java +++ b/src/main/java/com/zhgd/xmgl/device/water/task/WaterMeterTask.java @@ -1,7 +1,6 @@ package com.zhgd.xmgl.device.water.task; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.zhgd.jeecg.common.api.vo.Result; import com.zhgd.xmgl.modules.water.entity.WaterMeter; import com.zhgd.xmgl.modules.water.entity.WaterMeterMonthRecord; import com.zhgd.xmgl.modules.water.mapper.WaterMeterMapper; @@ -11,7 +10,6 @@ import org.apache.commons.collections.MapUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; -import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import java.math.BigDecimal; @@ -38,33 +36,34 @@ public class WaterMeterTask { * 统计前一月的用水 */ @Scheduled(cron = "0 0 2 * * ?") - public void getMonthWaterMeterTask(){ + public void getMonthWaterMeterTask() { try { - QueryWrapper queryWrapper=new QueryWrapper<>(); - List list=waterMeterMapper.selectList(queryWrapper); - if(list!=null&&list.size()>0){ - for (WaterMeter waterMeter:list){ - Map data=waterMeterMonthRecordMapper.selectWaterMeterMonthRecordByMeterNo(waterMeter.getWaterMeterNo()); - WaterMeterMonthRecord waterMeterMonthRecord=new WaterMeterMonthRecord(); - waterMeterMonthRecord.setMonthTime(MapUtils.getString(data,"monthTime")); - waterMeterMonthRecord.setProjectSn(waterMeter.getProjectSn()); - waterMeterMonthRecord.setWaterMeterNo(waterMeter.getWaterMeterNo()); - waterMeterMonthRecord.setWaterTonnage(new BigDecimal(MapUtils.getString(data,"useWater"))); - waterMeterMonthRecord.setStartWaterVolume(new BigDecimal(MapUtils.getString(data,"startWaterVolume"))); - waterMeterMonthRecord.setEndWaterVolume(new BigDecimal(MapUtils.getString(data,"endWaterVolume"))); - QueryWrapper qw=new QueryWrapper<>(); - qw.lambda().eq(WaterMeterMonthRecord::getProjectSn,waterMeter.getProjectSn()) - .eq(WaterMeterMonthRecord::getMonthTime,MapUtils.getString(data,"monthTime")) - .eq(WaterMeterMonthRecord::getWaterMeterNo,waterMeter.getWaterMeterNo()); - WaterMeterMonthRecord oldWaterMeterMonthRecord=waterMeterMonthRecordMapper.selectOne(qw); - if(oldWaterMeterMonthRecord!=null){ - waterMeterMonthRecord.setId(oldWaterMeterMonthRecord.getId()); - }else{ - waterMeterMonthRecord.setAddTime(new Date()); - waterMeterMonthRecordMapper.insert(waterMeterMonthRecord); - } - } - } + QueryWrapper queryWrapper = new QueryWrapper<>(); + List list = waterMeterMapper.selectList(queryWrapper); + if (list != null && list.size() > 0) { + for (WaterMeter waterMeter : list) { + Map data = waterMeterMonthRecordMapper.selectWaterMeterMonthRecordByMeterNo(waterMeter.getWaterMeterNo()); + WaterMeterMonthRecord waterMeterMonthRecord = new WaterMeterMonthRecord(); + waterMeterMonthRecord.setMonthTime(MapUtils.getString(data, "monthTime")); + waterMeterMonthRecord.setProjectSn(waterMeter.getProjectSn()); + waterMeterMonthRecord.setWaterMeterNo(waterMeter.getWaterMeterNo()); + waterMeterMonthRecord.setWaterTonnage(new BigDecimal(MapUtils.getString(data, "useWater"))); + waterMeterMonthRecord.setStartWaterVolume(new BigDecimal(MapUtils.getString(data, "startWaterVolume"))); + waterMeterMonthRecord.setEndWaterVolume(new BigDecimal(MapUtils.getString(data, "endWaterVolume"))); + QueryWrapper qw = new QueryWrapper<>(); + qw.lambda().eq(WaterMeterMonthRecord::getProjectSn, waterMeter.getProjectSn()) + .eq(WaterMeterMonthRecord::getMonthTime, MapUtils.getString(data, "monthTime")) + .eq(WaterMeterMonthRecord::getWaterMeterNo, waterMeter.getWaterMeterNo()); + WaterMeterMonthRecord oldWaterMeterMonthRecord = waterMeterMonthRecordMapper.selectOne(qw); + if (oldWaterMeterMonthRecord != null) { + waterMeterMonthRecord.setId(oldWaterMeterMonthRecord.getId()); + waterMeterMonthRecordMapper.updateById(waterMeterMonthRecord); + } else { + waterMeterMonthRecord.setAddTime(new Date()); + waterMeterMonthRecordMapper.insert(waterMeterMonthRecord); + } + } + } } catch (Exception e) { log.error("定时任务计算前一月的用水", e); } diff --git a/src/main/java/com/zhgd/xmgl/modules/water/mapper/xml/WaterMeterMonthRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/water/mapper/xml/WaterMeterMonthRecordMapper.xml index 47236d6b0..cb9716224 100644 --- a/src/main/java/com/zhgd/xmgl/modules/water/mapper/xml/WaterMeterMonthRecordMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/water/mapper/xml/WaterMeterMonthRecordMapper.xml @@ -1,60 +1,91 @@ - - - - + + + -