From 87a9119e22d949d4b93fb88a7b9497506990b761 Mon Sep 17 00:00:00 2001 From: Administrator <zhubaomin> Date: 星期五, 29 十二月 2023 11:41:39 +0800 Subject: [PATCH] 2023-12-29 朱宝民 控制器添加、获取水卡状态 --- pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java | 141 +++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 136 insertions(+), 5 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java index 2f51190..a3f631b 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientSv.java @@ -5,13 +5,17 @@ import com.dy.pipIrrGlobal.daoSe.SeClientMapper; import com.dy.pipIrrGlobal.pojoSe.SeClient; import com.dy.pipIrrGlobal.voSe.VoClient; +import com.dy.pipIrrGlobal.voSe.VoOperate; +import com.dy.pipIrrGlobal.voSe.VoStatistics; 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.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Optional; /** * @author ZhuBaoMin @@ -31,16 +35,27 @@ /** * 鏍规嵁鎸囧畾鏉′欢鑾峰彇鍐滄埛鏁版嵁 - * @param vo + * @param queryVo * @return */ - public QueryResultVo<List<VoClient>> getClients(QueryVo vo){ - Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(vo) ; + public QueryResultVo<List<VoClient>> getClients(QueryVo queryVo){ + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo) ; Long itemTotal = seClientMapper.getRecordCount(params); QueryResultVo<List<VoClient>> rsVo = new QueryResultVo<>() ; - rsVo.pageSize = vo.pageSize ; - rsVo.pageCurr = vo.pageCurr ; + Integer pageCurr = 0; + Integer pageSize = 10000; + rsVo.pageCurr = 1; + rsVo.pageSize = 10000; + if(queryVo.pageSize != null && queryVo.pageCurr != null) { + rsVo.pageSize = queryVo.pageSize ; + rsVo.pageCurr = queryVo.pageCurr; + pageSize = queryVo.pageSize ; + pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString()); + } + params.put("pageCurr", pageCurr); + params.put("pageSize", pageSize); + rsVo.calculateAndSet(itemTotal, params); rsVo.obj = seClientMapper.getClients(params); @@ -48,6 +63,122 @@ } /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇浜ゆ槗璁板綍 + * @param vo + * @return + */ + public Map getOperates(QueryOperate vo){ + // 琛ラ綈鏌ヨ鏃堕棿 + String operateTimeStart = vo.operateTimeStart; + String operateTimeStop = vo.operateTimeStop; + if(operateTimeStart != null) { + operateTimeStart = operateTimeStart + " 00:00:00"; + vo.setOperateTimeStart(operateTimeStart); + } + if(operateTimeStop != null) { + operateTimeStop = operateTimeStop + " 23:59:59"; + vo.setOperateTimeStop(operateTimeStop); + } + + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(vo) ; + + // 鑾峰彇姹囨�荤殑璐按閲戦銆佽喘鍗¢噾棰� + Float money = 0f; + Float cardCost = 0f; + Map map_sum = Optional.ofNullable(seClientMapper.getSums(params)).orElse(new HashMap()); + if(map_sum.size() > 0) { + money = Float.parseFloat(map_sum.get("money").toString()); + cardCost = Float.parseFloat(map_sum.get("cardCost").toString()); + } + + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = seClientMapper.getOperateRecordCount(params); + + Integer pageSize = vo.getPageSize(); + // 璁$畻鎬婚〉鏁� + Integer pageTotal ; + pageTotal = (int)Math.ceil((itemTotal==null?0.0D:itemTotal.doubleValue())/pageSize); + + // 鏍规嵁褰撳墠椤电爜鍙婃瘡椤垫暟閲忚绠楀亸绉婚噺 + Integer pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString()); + params.put("pageCurr", pageCurr); + + List<VoOperate> lit = seClientMapper.getOperates(params); + Map map_record = new HashMap(); + map_record.put("itemTotal", itemTotal); + map_record.put("pageCurr", vo.pageCurr); + map_record.put("pageSize", pageSize); + map_record.put("pageTotal", pageTotal); + map_record.put("list", lit); + + Map map_result = new HashMap(); + map_result.put("money", money); + map_result.put("cardCost", cardCost); + map_result.put("records", map_record); + + return map_result; + } + + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇缁熻璁板綍 + * @param vo 浜ゆ槗姹囨�绘煡璇㈡潯浠� + * @return 浜ゆ槗姹囨�昏褰� + */ + public Map getStatistics(QueryStatistic vo){ + // 琛ラ綈鏌ヨ鏃堕棿 + String operateTimeStart = vo.operateTimeStart; + String operateTimeStop = vo.operateTimeStop; + if(operateTimeStart != null) { + operateTimeStart = operateTimeStart + " 00:00:00"; + vo.setOperateTimeStart(operateTimeStart); + } + if(operateTimeStop != null) { + operateTimeStop = operateTimeStop + " 23:59:59"; + vo.setOperateTimeStop(operateTimeStop); + } + + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(vo) ; + + // 鑾峰彇姹囨�荤殑浜ゆ槗绗旀暟銆佷氦鏄撻噾棰� + Integer count = 0; + Float money = 0f; + Map map_sum = Optional.ofNullable(seClientMapper.getStatisticSums(params)).orElse(new HashMap()); + if(map_sum.size() > 0) { + count = Integer.parseInt(map_sum.get("count").toString()); + money = Float.parseFloat(map_sum.get("money").toString()); + } + + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = seClientMapper.getStatisticRecordCount(params); + + Integer pageSize = vo.getPageSize(); + // 璁$畻鎬婚〉鏁� + Integer pageTotal ; + pageTotal = (int)Math.ceil((itemTotal==null?0.0D:itemTotal.doubleValue())/pageSize); + + // 鏍规嵁褰撳墠椤电爜鍙婃瘡椤垫暟閲忚绠楀亸绉婚噺 + Integer pageCurr = (Integer.parseInt(params.get("pageCurr").toString()) - 1) * Integer.parseInt(params.get("pageSize").toString()); + params.put("pageCurr", pageCurr); + + List<VoStatistics> lit = seClientMapper.getStatistics(params); + Map map_record = new HashMap(); + map_record.put("itemTotal", itemTotal); + map_record.put("pageCurr", vo.pageCurr); + map_record.put("pageSize", pageSize); + map_record.put("pageTotal", pageTotal); + map_record.put("list", lit); + + Map map_result = new HashMap(); + map_result.put("count", count); + map_result.put("money", money); + map_result.put("records", map_record); + + return map_result; + } + + /** * 鏍规嵁涓婚敭鑾峰彇鍐滄埛瀵硅薄 * @param id 鍐滄埛涓婚敭 * @return 鍐滄埛瀵硅薄 -- Gitblit v1.8.0