From a2d5f396dcee51917d333e42a977a544091e5389 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期一, 10 二月 2025 14:02:57 +0800 Subject: [PATCH] 大屏展示--昨日农户用水前5名统计,昨日取水口用水统计前5名统计实现 --- pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossSv.java | 80 ++++++++++++++++++++++++++++++++++------ 1 files changed, 68 insertions(+), 12 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossSv.java index fcf0413..4692924 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossSv.java @@ -3,7 +3,9 @@ import com.alibaba.fastjson2.JSON; import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.daoRm.RmLossDayMapper; +import com.dy.pipIrrGlobal.daoSt.StLossMonthMapper; import com.dy.pipIrrGlobal.voSt.VoDayLoss; +import com.dy.pipIrrGlobal.voSt.VoMonthAmount; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.common.utils.PojoUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -12,7 +14,6 @@ import java.text.ParseException; import java.util.List; import java.util.Map; -import java.util.Optional; /** * @Author: liurunyu @@ -25,7 +26,10 @@ public class LossSv { @Autowired - private RmLossDayMapper rmLossDayMapper ; + private RmLossDayMapper dayDao; + + @Autowired + private StLossMonthMapper monthDao; /** * 缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲� @@ -37,28 +41,28 @@ // 鐢熸垚鏌ヨ鍙傛暟 Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 - Long itemTotal = rmLossDayMapper.selectIntakeCount4LossDay(qo.intakeNum) ; + Long itemTotal = dayDao.selectIntakeCount4LossDay(qo.intakeNum) ; if(itemTotal != null && itemTotal > 0){ rsVo.pageSize = qo.pageSize ; rsVo.pageCurr = qo.pageCurr ; rsVo.calculateAndSet(itemTotal, params); - List<VoDayLoss> list = rmLossDayMapper.selectIntakes4LossDay(params); + List<VoDayLoss> list = dayDao.selectIntakes4LossDay(params); if(list == null || list.size() == 0){ rsVo.obj = list ; }else{ String json = JSON.toJSONString(list) ; params.put("intakesJson", json); - List<VoDayLoss> list01_05 = rmLossDayMapper.selectLossAmountOfDay01_05(params); + List<VoDayLoss> list01_05 = dayDao.selectLossAmountOfDay01_05(params); if(list01_05 != null && list01_05.size() > 0){ - //涓嬮潰1鍒�31鍙峰垎浜�6涓煡璇紝鍘熷洜鏄叆涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� - List<VoDayLoss> list06_10 = rmLossDayMapper.selectLossAmountOfDay06_10(params); - List<VoDayLoss> list11_15 = rmLossDayMapper.selectLossAmountOfDay11_15(params); - List<VoDayLoss> list16_20 = rmLossDayMapper.selectLossAmountOfDay16_20(params); - List<VoDayLoss> list21_25 = rmLossDayMapper.selectLossAmountOfDay21_25(params); - List<VoDayLoss> list26_31 = rmLossDayMapper.selectLossAmountOfDay26_31(params); + //涓嬮潰1鍒�31鍙峰垎浜�6涓煡璇紝鍘熷洜鏄湪涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoDayLoss> list06_10 = dayDao.selectLossAmountOfDay06_10(params); + List<VoDayLoss> list11_15 = dayDao.selectLossAmountOfDay11_15(params); + List<VoDayLoss> list16_20 = dayDao.selectLossAmountOfDay16_20(params); + List<VoDayLoss> list21_25 = dayDao.selectLossAmountOfDay21_25(params); + List<VoDayLoss> list26_31 = dayDao.selectLossAmountOfDay26_31(params); this.merge(list01_05, list06_10, list11_15, list16_20, list21_25, list26_31); } rsVo.obj = list01_05 ; @@ -126,7 +130,59 @@ } } } - } + + /** + * 缁熻鎸囧畾鏈堜唤鍚勬湀婕忔崯閲� + * @param qo + * @return + */ + public QueryResultVo<List<VoMonthAmount>> lossAmountOfMonth(LossQo qo) throws ParseException { + QueryResultVo<List<VoMonthAmount>> rsVo = new QueryResultVo<>() ; + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = monthDao.selectIntakeCount4LossMonth(qo.intakeNum) ; + + if(itemTotal != null && itemTotal > 0){ + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + rsVo.calculateAndSet(itemTotal, params); + + List<VoMonthAmount> list = monthDao.selectIntakes4LossMonth(params); + if(list == null || list.size() == 0){ + rsVo.obj = list ; + }else{ + String json = JSON.toJSONString(list) ; + params.put("intakesJson", json); + + List<VoMonthAmount> list01_06 = monthDao.selectLossAmountOfMonth01_06(params); + if(list01_06 != null && list01_06.size() > 0){ + //涓嬮潰1鍒�12鏈堝垎浜�2涓煡璇紝鍘熷洜鏄湪涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoMonthAmount> list07_12 = monthDao.selectLossAmountOfMonth07_12(params); + this.merge(list01_06, list07_12); + } + rsVo.obj = list01_06 ; + } + } + return rsVo ; + } + + private void merge(List<VoMonthAmount> list01_06, + List<VoMonthAmount> list07_12){ + for(VoMonthAmount vo01_06 : list01_06){ + for(VoMonthAmount vo07_12 : list07_12){ + if(vo01_06.intakeId.longValue() == vo07_12.intakeId.longValue()){ + vo01_06.month7 = vo07_12.month7 ; + vo01_06.month8 = vo07_12.month8 ; + vo01_06.month9 = vo07_12.month9 ; + vo01_06.month10 = vo07_12.month10 ; + vo01_06.month11 = vo07_12.month11 ; + vo01_06.month12 = vo07_12.month12 ; + break ; + } + } + } + } } -- Gitblit v1.8.0