pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeClientCardMapper.java
@@ -6,6 +6,7 @@ import com.dy.pipIrrGlobal.voSe.VoCards; import com.dy.pipIrrGlobal.voSe.VoCards2; import com.dy.pipIrrGlobal.voSt.VoICCard; import com.dy.pipIrrGlobal.voWe.VoCards3; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -166,4 +167,12 @@ * @return */ List<VoCards3> getCardsByClientID(String clientId); /** * 指定时间段内开卡总数量(物理卡) * @param params * @return */ Long getOpenCountIcCardsCount(Map<String, Object> params); } pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoICCard.java
New file @@ -0,0 +1,21 @@ package com.dy.pipIrrGlobal.voSt; import com.alibaba.fastjson2.annotation.JSONField; import com.alibaba.fastjson2.writer.ObjectWriterImplToString; import lombok.Data; /** * @author :WuZeYu * @Date :2024/8/8 9:49 * @LastEditTime :2024/8/8 9:49 * @Description */ @Data public class VoICCard { private static final long serialVersionUID = 202408311404001L; /** * 水卡ID */ @JSONField(serializeUsing= ObjectWriterImplToString.class) private Long cardId; } pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml
@@ -72,7 +72,7 @@ pipIrr: global: dev: false #是否开发阶段,true或false dev: true #是否开发阶段,true或false dsName: ym #开发阶段,设置临时的数据库名称 mw: webPort: 8070 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml
@@ -569,4 +569,13 @@ ORDER BY card.id </select> <!--指定时间段内开卡总数量(物理卡)--> <select id="getOpenCountIcCardsCount" resultType="java.lang.Long"> SELECT count(*) FROM `se_client_card` WHERE createDt BETWEEN #{timeStart} AND #{timeStop} </select> </mapper> pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/card/IcCardCtrl.java
@@ -1,9 +1,18 @@ package com.dy.pipIrrStatistics.card; import com.dy.common.aop.SsoAop; import com.dy.common.webUtil.BaseResponse; import com.dy.common.webUtil.BaseResponseUtils; import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.voSt.VoICCard; import com.dy.pipIrrStatistics.card.IcCardqo.CommonQO; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; /** * @author ZhuBaoMin @@ -14,8 +23,26 @@ @Slf4j @RestController @RequestMapping(path="ic-card") @RequestMapping(path = "ic-card") @RequiredArgsConstructor public class IcCardCtrl { private final IcCardSv icCardSv; /** * 指定时间段内开卡总数量(物理卡) * * @param qo * @return */ @GetMapping(path = "/getOpenCountIcCards") @SsoAop() public BaseResponse<QueryResultVo<List<VoICCard>>> getOpenCountIcCards(CommonQO qo) { try { QueryResultVo<List<VoICCard>> res = icCardSv.getOpenCountIcCards(qo); return BaseResponseUtils.buildSuccess(res); }catch (Exception e){ log.error("获取记录异常", e); return BaseResponseUtils.buildException(e.getMessage()); } } } pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/card/IcCardSv.java
@@ -1,7 +1,19 @@ package com.dy.pipIrrStatistics.card; import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.daoSe.SeClientCardMapper; import com.dy.pipIrrGlobal.voSt.VoICCard; import com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount; import com.dy.pipIrrStatistics.card.IcCardqo.CommonQO; 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.List; import java.util.Map; /** * @author ZhuBaoMin @@ -13,4 +25,43 @@ @Slf4j @Service public class IcCardSv { @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 = seClientCardMapper.getOpenCountIcCardsCount(params); QueryResultVo<List<VoICCard>> rsVo = new QueryResultVo<>() ; rsVo.pageSize = qo.pageSize ; rsVo.pageCurr = qo.pageCurr ; rsVo.calculateAndSet(itemTotal, params); return rsVo ; } } pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/card/IcCardqo/CommonQO.java
New file @@ -0,0 +1,29 @@ package com.dy.pipIrrStatistics.card.IcCardqo; import com.dy.common.webUtil.QueryConditionVo; import com.fasterxml.jackson.annotation.JsonFormat; import jakarta.validation.constraints.NotBlank; import lombok.Data; /** * @author :WuZeYu * @Date :2024/8/8 9:33 * @LastEditTime :2024/8/8 9:33 * @Description */ @Data public class CommonQO extends QueryConditionVo { /** * 开始时间 */ @JsonFormat(pattern = "yyyy-MM-dd") private String timeStart; /** * 结束时间 */ @JsonFormat(pattern = "yyyy-MM-dd") @NotBlank(message = "结束时间不能为空") private String timeStop; } pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
@@ -25,7 +25,6 @@ import java.text.DecimalFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.List; import java.util.Map; import java.util.Optional; @@ -201,7 +200,7 @@ if(timeStart != null && timeStart != "") { timeStart = timeStart + " 00:00:00"; } else { timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); timeStart = LocalDate.now() + " 00:00:00"; } qo.setTimeStart(timeStart); @@ -240,7 +239,7 @@ if(timeStart != null && timeStart != "") { timeStart = timeStart + " 00:00:00"; } else { timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); timeStart = LocalDate.now() + " 00:00:00"; } qo.setTimeStart(timeStart); @@ -279,7 +278,7 @@ if(timeStart != null && timeStart != "") { timeStart = timeStart + " 00:00:00"; } else { timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); timeStart = LocalDate.now() + " 00:00:00"; } qo.setTimeStart(timeStart); @@ -437,7 +436,7 @@ if(timeStart != null && timeStart != "") { timeStart = timeStart + " 00:00:00"; } else { timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); timeStart = LocalDate.now() + " 00:00:00"; } qo.setTimeStart(timeStart); @@ -477,7 +476,7 @@ if(timeStart != null && timeStart != "") { timeStart = timeStart + " 00:00:00"; } else { timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); timeStart = LocalDate.now() + " 00:00:00"; } qo.setTimeStart(timeStart); @@ -518,7 +517,7 @@ if(timeStart != null && timeStart != "") { timeStart = timeStart + " 00:00:00"; } else { timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); timeStart = LocalDate.now() + " 00:00:00"; } qo.setTimeStart(timeStart); @@ -557,7 +556,7 @@ if(timeStart != null && timeStart != "") { timeStart = timeStart + " 00:00:00"; } else { timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); timeStart = LocalDate.now() + " 00:00:00"; } qo.setTimeStart(timeStart); @@ -592,7 +591,7 @@ if(timeStart != null && timeStart != "") { timeStart = timeStart + " 00:00:00"; } else { timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); timeStart = LocalDate.now() + " 00:00:00"; } qo.setTimeStart(timeStart); @@ -627,7 +626,7 @@ if(timeStart != null && timeStart != "") { timeStart = timeStart + " 00:00:00"; } else { timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); timeStart = LocalDate.now() + " 00:00:00"; } qo.setTimeStart(timeStart);