From cbcada79d9326529fb968b4a0e1d9e12f5008574 Mon Sep 17 00:00:00 2001 From: wuzeyu <1223318623@qq.com> Date: 星期五, 18 十月 2024 08:42:38 +0800 Subject: [PATCH] 实现接口 最近未充值的农户 --- pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java | 27 +++++++++++++ pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml | 51 +++++++++++++++++++++++++ pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java | 18 +++++++++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmClientAmountDayLastMapper.java | 15 +++++++ 4 files changed, 111 insertions(+), 0 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmClientAmountDayLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmClientAmountDayLastMapper.java index 332281a..df753e4 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmClientAmountDayLastMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmClientAmountDayLastMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.dy.pipIrrGlobal.pojoRm.RmClientAmountDayLast; import com.dy.pipIrrGlobal.voRm.VoClientAmountDay; +import com.dy.pipIrrGlobal.voSt.VoClient; import com.dy.pipIrrGlobal.voSt.VoDayClient; import com.dy.pipIrrGlobal.voSt.VoMonthClient; import org.apache.ibatis.annotations.Mapper; @@ -109,4 +110,18 @@ * @return */ List<VoMonthClient> getMonthAmountAndMoney(Map<?, ?> params); + + /** + * 鏈�杩戞湭鍏呭�肩殑鍐滄埛鏁伴噺 + * @param params + * @return + */ + Long getNotRechargeLastClientsCount(Map<String, Object> params); + + /** + * 鏈�杩戞湭鍏呭�肩殑鍐滄埛 + * @param params + * @return + */ + List<VoClient> getNotRechargeLastClients(Map<String, Object> params); } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml index 07fb518..927a12d 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml @@ -833,4 +833,55 @@ </if> </trim> </select> + <!--鏈�杩戞湭鍏呭�肩殑鍐滄埛鏁伴噺--> + <select id="getNotRechargeLastClientsCount" resultType="java.lang.Long"> + SELECT COUNT(*) + FROM + ( SELECT + sc.id AS clientId, + sc.`name` AS clientName, + sc.clientNum AS clientNum, + sc.address AS address, + sc.phone AS phone, + sc.idCard AS idCard + FROM + se_client sc + LEFT JOIN (SELECT srh.clientId FROM `se_recharge_history` srh + <where> + srh.amount > 0 AND srh.operate_valid = 2 + <if test="timeStart != null and timeStart != ''"> + AND srh.operateDt > #{timeStart} + </if> + </where> + ) c on c.clientId = sc.id + WHERE c.clientId IS NULL + GROUP BY sc.id) d + </select> + <!--鏈�杩戞湭鍏呭�肩殑鍐滄埛--> + <select id="getNotRechargeLastClients" resultType="com.dy.pipIrrGlobal.voSt.VoClient"> + SELECT + sc.id AS clientId, + sc.`name` AS clientName, + sc.clientNum AS clientNum, + sc.address AS address, + sc.phone AS phone, + sc.idCard AS idCard + FROM + se_client sc + LEFT JOIN (SELECT srh.clientId FROM `se_recharge_history` srh + <where> + srh.amount > 0 AND srh.operate_valid = 2 + <if test="timeStart != null and timeStart != ''"> + AND srh.operateDt > #{timeStart} + </if> + </where> + ) c on c.clientId = sc.id + WHERE c.clientId IS NULL + GROUP BY sc.id + <trim prefix="limit "> + <if test="start != null and count != null"> + #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} + </if> + </trim> + </select> </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java index 7675944..d485488 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java @@ -298,4 +298,22 @@ } } + + /** + * 鏈�杩戞湭鍏呭�肩殑鍐滄埛 + * + * @param qo + * @return + */ + @GetMapping(path = "/getNotRechargeLastClients") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoClient>>> getNotRechargeLastClients(CommonQO qo) { + try { + QueryResultVo<List<VoClient>> res = clientSv.getNotRechargeLastClients(qo); + return BaseResponseUtils.buildSuccess(res); + }catch (Exception e){ + log.error("鑾峰彇璁板綍寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java index 1e5b1ad..334c320 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java @@ -493,4 +493,31 @@ rsVo.obj = rmClientAmountDayLastMapper.getMonthAmountAndMoney(params); return rsVo ; } + + /** + * 鏈�杩戞湭鍏呭�肩殑鍐滄埛 + * @param qo + * @return + */ + public QueryResultVo<List<VoClient>> getNotRechargeLastClients(CommonQO qo) { + String timeStart = qo.getTimeStart(); + if (timeStart != null && timeStart != ""){ + timeStart = timeStart + " 00:00:00"; + qo.setTimeStart(timeStart); + } + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = Optional.ofNullable(rmClientAmountDayLastMapper.getNotRechargeLastClientsCount(params)).orElse(0L); + + QueryResultVo<List<VoClient>> rsVo = new QueryResultVo<>() ; + + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = rmClientAmountDayLastMapper.getNotRechargeLastClients(params); + return rsVo ; + } } -- Gitblit v1.8.0