From 1a2b07f01ba4616fd9e894dddf474b56d020158c Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期一, 07 四月 2025 15:18:51 +0800 Subject: [PATCH] 整理版本 --- pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/card/IcCardSv.java | 226 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 226 insertions(+), 0 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/card/IcCardSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/card/IcCardSv.java new file mode 100644 index 0000000..f798af0 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/card/IcCardSv.java @@ -0,0 +1,226 @@ +package com.dy.pipIrrStatistics.card; + +import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrGlobal.daoSe.SeCardOperateMapper; +import com.dy.pipIrrGlobal.daoSe.SeClientCardMapper; +import com.dy.pipIrrGlobal.voSt.VoCardUsage; +import com.dy.pipIrrGlobal.voSt.VoICCard; +import com.dy.pipIrrStatistics.card.IcCardqo.CommonQO; +import com.dy.pipIrrStatistics.card.qo.CardUsageQO; +import lombok.extern.slf4j.Slf4j; +import org.apache.dubbo.common.utils.PojoUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; + +/** + * @author ZhuBaoMin + * @date 2024-08-08 9:10 + * @LastEditTime 2024-08-08 9:10 + * @Description + */ + +@Slf4j +@Service +public class IcCardSv { + + @Autowired + private SeCardOperateMapper seCardOperateMapper; + @Autowired + private SeClientCardMapper seClientCardMapper; + + /** + * 鎸囧畾鏃堕棿娈靛唴寮�鍗℃�绘暟閲忥紙鐗╃悊鍗★級 + * @param qo + * @return + */ + public QueryResultVo<List<VoICCard>> getOpenCountIcCards(CommonQO qo) { + + String timeStart = qo.getTimeStart(); + String timeStop = qo.getTimeStop(); + + if (timeStart != null && timeStart != ""){ + timeStart = timeStart + " 00:00:00"; + }else { + timeStart = LocalDate.now() + " 00:00:00"; + } + if (timeStop != null && timeStop != ""){ + timeStop = timeStop + " 23:59:59"; + }else { + timeStop = LocalDateTime.now().toString(); + } + qo.setTimeStart(timeStart); + qo.setTimeStop(timeStop); + + + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); + Long itemTotal = seCardOperateMapper.getOpenCountIcCardsCount(params); + + QueryResultVo<List<VoICCard>> rsVo = new QueryResultVo<>() ; + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + + rsVo.calculateAndSet(itemTotal, params); + + return rsVo ; + } + + /** + * 鎸囧畾鏃堕棿娈靛唴鎸傚け鎬绘暟閲忥紙鐗╃悊鍗★級 + * @param qo + * @return + */ + public QueryResultVo<List<VoICCard>> getLossCountIcCards(CommonQO qo) { + + String timeStart = qo.getTimeStart(); + String timeStop = qo.getTimeStop(); + + if (timeStart != null && timeStart != ""){ + timeStart = timeStart + " 00:00:00"; + }else { + timeStart = LocalDate.now() + " 00:00:00"; + } + if (timeStop != null && timeStop != ""){ + timeStop = timeStop + " 23:59:59"; + }else { + timeStop = LocalDateTime.now().toString(); + } + qo.setTimeStart(timeStart); + qo.setTimeStop(timeStop); + + + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); + Long itemTotal = seCardOperateMapper.getLossCountIcCardsCount(params); + + QueryResultVo<List<VoICCard>> rsVo = new QueryResultVo<>() ; + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + + rsVo.calculateAndSet(itemTotal, params); + + return rsVo ; + } + + /** + * 鎸囧畾鏃堕棿娈靛唴鍏呭�兼�绘暟閲忥紙鐗╃悊鍗★級 + * @param qo + * @return + */ + public QueryResultVo<List<VoICCard>> getRechargeCountIcCards(CommonQO qo) { + + String timeStart = qo.getTimeStart(); + String timeStop = qo.getTimeStop(); + + if (timeStart != null && timeStart != ""){ + timeStart = timeStart + " 00:00:00"; + }else { + timeStart = LocalDate.now() + " 00:00:00"; + } + if (timeStop != null && timeStop != ""){ + timeStop = timeStop + " 23:59:59"; + }else { + timeStop = LocalDateTime.now().toString(); + } + qo.setTimeStart(timeStart); + qo.setTimeStop(timeStop); + + + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); + Long itemTotal = seCardOperateMapper.getRechargeCountIcCardsCount(params); + + QueryResultVo<List<VoICCard>> rsVo = new QueryResultVo<>() ; + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + + rsVo.calculateAndSet(itemTotal, params); + + return rsVo ; + } + + /** + * 褰撳墠浣欓鎬婚噺锛堢墿鐞嗗崱锛� + * @param + * @return + */ + public Double getTotalMoneyIcCards() { + + Double totalMoney = seClientCardMapper.getTotalMoneyIcCards(); + return totalMoney ; + } + + /** + * 鑾峰彇鎸囧畾鏃堕棿娈垫按鍗′娇鐢ㄦ儏鍐碉細鍏呭�煎悎璁°�佹秷璐瑰悎璁°�佷綑棰� + * @param qo + * @return + */ + public QueryResultVo<List<VoCardUsage>> getCardUsages(CardUsageQO qo) { + + String timeStart = qo.getTimeStart(); + String timeStop = qo.getTimeStop(); + + if (timeStart != null && timeStart != ""){ + timeStart = timeStart + " 00:00:00"; + }else { + timeStart = LocalDateTime.now().minusYears(1).toString(); + } + if (timeStop != null && timeStop != ""){ + timeStop = timeStop + " 23:59:59"; + }else { + timeStop = LocalDateTime.now().toString(); + } + qo.setTimeStart(timeStart); + qo.setTimeStop(timeStop); + + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); + + //Long itemTotal = seCardOperateMapper.getOpenCountIcCardsCount(params); + Integer itemTotal = 0; + List<VoCardUsage> all = seClientCardMapper.getCardUsagesCount(params); + if(all != null && all.size() > 0) { + itemTotal = all.size(); + } + + QueryResultVo<List<VoCardUsage>> rsVo = new QueryResultVo<>() ; + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + + rsVo.calculateAndSet(Long.parseLong(itemTotal.toString()), params); + rsVo.obj = seClientCardMapper.getCardUsages(params); + return rsVo ; + } + + /** + * 鑾峰彇鍞按鎬昏淇℃伅锛氬厖鍊奸噾棰濇�昏銆佹按琛ㄦ秷璐归噾棰濇�昏 + * @param qo + * @return + */ + public Map getTotalWaterUse(CardUsageQO qo) { + + String timeStart = qo.getTimeStart(); + String timeStop = qo.getTimeStop(); + + if (timeStart != null && timeStart != ""){ + timeStart = timeStart + " 00:00:00"; + }else { + timeStart = LocalDate.now() + " 00:00:00"; + } + if (timeStop != null && timeStop != ""){ + timeStop = timeStop + " 23:59:59"; + }else { + timeStop = LocalDateTime.now().toString(); + } + + Float totalRecharge = Optional.ofNullable(seClientCardMapper.getTotalRecharge(timeStart, timeStop)).orElse(0f); + Float totalConsumption = Optional.ofNullable(seClientCardMapper.getTotalConsumption(timeStart, timeStop)).orElse(0f); + Map mat_total = new HashMap(); + mat_total.put("totalRecharge", totalRecharge); + mat_total.put("totalConsumption", totalConsumption); + return mat_total; + } +} -- Gitblit v1.8.0