From d2f5964f2286f45a3dd9a8b05d325b29d9a0a8ab Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期四, 25 一月 2024 14:30:10 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
---
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeCtrl.java | 4
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/qo/QoActiveCard.java | 47 +++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java | 46 ++++++++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoActiveCardNew.java | 55 +++++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java | 1
pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml | 71 ++++++++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java | 34 ++++++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeCardOperateMapper.java | 18 +++
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml | 7 +
9 files changed, 273 insertions(+), 10 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeCardOperateMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeCardOperateMapper.java
index 0b905c9..f4ace47 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeCardOperateMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeCardOperateMapper.java
@@ -2,9 +2,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dy.pipIrrGlobal.pojoSe.SeCardOperate;
-import com.dy.pipIrrGlobal.voSe.VoRecharge;
-import com.dy.pipIrrGlobal.voSe.VoTransaction;
-import com.dy.pipIrrGlobal.voSe.VoTransactionStatistics;
+import com.dy.pipIrrGlobal.voSe.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -96,4 +94,18 @@
*/
//Float getPaymentSums(Map<?, ?> params);
Float getPaymentSums(@Param("tradeDate") String tradeDate, @Param("paymentId") Long paymentId);
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍗¤褰曟暟
+ * @param params
+ * @return
+ */
+ Long getActiveCardRecordCount(Map<?, ?> params);
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍗¤褰�
+ * @param params
+ * @return
+ */
+ List<VoActiveCardNew> getActiveCards(Map<?, ?> params);
}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoActiveCardNew.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoActiveCardNew.java
new file mode 100644
index 0000000..21dfaba
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoActiveCardNew.java
@@ -0,0 +1,55 @@
+package com.dy.pipIrrGlobal.voSe;
+
+import com.dy.common.po.BaseEntity;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+ * @author :WuZeYu
+ * @Date :2024/1/23 16:36
+ * @LastEditTime :2024/1/23 16:36
+ * @Description
+ */
+
+@Data
+@Schema(title = "鍏呭�艰褰曡鍥惧璞�")
+public class VoActiveCardNew implements BaseEntity {
+ private static final long serialVersionUID = 2024012316370001L;
+
+ @Schema(title = "ID")
+ private Long id;
+
+ @Schema(title = "鍐滄埛濮撳悕")
+ private String clientName;
+
+ @Schema(title = "鍐滄埛缂栧彿")
+ private String clientNum;
+
+ @Schema(title = "姘村崱缂栧彿")
+ private String cardNum;
+
+ @Schema(title = "姘村崱鐘舵��")
+ private Byte state;
+
+ @Schema(title = "姘村崱鐘舵�佸悕绉�")
+ private String stateName;
+
+ @Schema(title = "鍗$墖璐圭敤")
+ private Integer cardCost;
+
+
+ @Schema(title = "鏀粯鏂瑰紡")
+ private Integer paymentId;
+
+ @Schema(title = "鎿嶄綔浜�")
+ private String operator;
+
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @Schema(title = "鎿嶄綔鏃堕棿")
+ private Date operateDt;
+}
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
index 9530df5..4b6483c 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
@@ -214,12 +214,11 @@
<select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long">
SELECT COUNT(*) AS recordCount
FROM pr_intake ge
- INNER JOIN ba_divide divi ON ge.divideId = divi.id
+ INNER JOIN pr_divide divi ON ge.divideId = divi.id
INNER JOIN ba_block blo ON divi.blockId = blo.id
INNER JOIN ba_district country ON ge.countyId = country.id
INNER JOIN ba_district town ON ge.townId = town.id
INNER JOIN ba_district village ON ge.villageId = village.id
- , (SELECT @i:=0) AS itable
<where>
ge.deleted = 0
AND divi.deleted = 0
@@ -245,6 +244,10 @@
divi.`name` AS divideName,
blo.`name` AS blockName,
ge.operateDt As operateDt,
+ (CASE
+ WHEN ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0) THEN "鏈粦瀹�"
+ WHEN ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0) THEN "宸茬粦瀹�"
+ END) AS isBind,
CONCAT(country.`name`, town.`name`, village.`name`) AS address
FROM pr_intake ge
INNER JOIN pr_divide divi ON ge.divideId = divi.id
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
index 553c23f..e274a1a 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
@@ -451,4 +451,75 @@
</where>
GROUP BY ope.payment_id, Date(ope.operate_dt)
</select>
+
+ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍗¤褰曟暟閲�-->
+ <select id="getActiveCardRecordCount" parameterType="java.util.Map" resultType="java.lang.Long">
+ select
+ COUNT(*) AS recordCount
+ FROM se_card_operate ope
+ INNER JOIN se_client_card card ON ope.card_id = card.id
+ INNER JOIN se_client cli ON ope.client_id = cli.id
+ <where>
+ AND ope.operate_type = 1
+ <if test = "clientName != null and clientName !=''">
+ AND cli.name like CONCAT('%',#{clientName},'%')
+ </if>
+
+ <if test = "cardNum != null and cardNum !=''">
+ AND card.cardNum like CONCAT('%',#{cardNum},'%')
+ </if>
+
+ <if test = "state != null and state > 0">
+ AND card.state = ${state}
+ </if>
+
+ <if test = "activeTimeStart != null and activeTimeStop != null">
+ AND ope.operate_dt BETWEEN #{activeTimeStart} AND #{activeTimeStop}
+ </if>
+ </where>
+ </select>
+
+ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍗¤褰�-->
+ <select id="getActiveCards" resultType="com.dy.pipIrrGlobal.voSe.VoActiveCardNew">
+ SELECT
+ CAST(ope.id AS char) AS id ,
+ cli.name AS clientName,
+ cli.clientNum AS clientNum,
+ card.cardNum AS cardNum,
+ card.state AS state,
+ (CASE
+ WHEN card.state = 1 THEN "姝e父"
+ WHEN card.state = 2 THEN "宸叉敞閿�"
+ WHEN card.state = 3 THEN "宸叉寕澶�"
+ END) AS stateName,
+ ope.card_cost AS cardCost,
+ ope.payment_id AS paymentId,
+ (SELECT `name` FROM ba_user WHERE id = ope.operator) AS operator,
+ ope.operate_dt AS operateDt
+ FROM se_card_operate ope
+ INNER JOIN se_client_card card ON ope.card_id = card.id
+ INNER JOIN se_client cli ON ope.client_id = cli.id
+ <where>
+ AND ope.operate_type = 1
+ <if test = "clientName != null and clientName !=''">
+ AND cli.name like CONCAT('%',#{clientName},'%')
+ </if>
+
+ <if test = "cardNum != null and cardNum !=''">
+ AND card.cardNum like CONCAT('%',#{cardNum},'%')
+ </if>
+
+ <if test = "state != null and state > 0">
+ AND card.state = ${state}
+ </if>
+
+ <if test = "activeTimeStart != null and activeTimeStop != null">
+ AND ope.operate_dt BETWEEN #{activeTimeStart} AND #{activeTimeStop}
+ </if>
+ </where>
+ ORDER BY ope.operate_dt DESC
+ <if test="pageCurr != null and pageSize != null">
+ LIMIT ${pageCurr}, ${pageSize}
+ </if>
+ </select>
</mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeCtrl.java
index fa5f55e..0d99ab9 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeCtrl.java
@@ -114,9 +114,9 @@
schema = @Schema(implementation = VoActiveCard.class))}
)
})
- @GetMapping(path = "getIntakes", consumes = MediaType.APPLICATION_JSON_VALUE)
+ @GetMapping(path = "getIntakes")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoIntake>>> getIntakes(@RequestBody @Parameter(description = "鏌ヨform琛ㄥ崟json鏁版嵁", required = true) QueryVo vo){
+ public BaseResponse<QueryResultVo<List<VoIntake>>> getIntakes(QueryVo vo){
try {
QueryResultVo<List<VoIntake>> res = intakeSv.getIntakes(vo);
if(res == null) {
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java
index 588905e..b412230 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java
@@ -9,10 +9,13 @@
import com.dy.pipIrrGlobal.pojoSe.SeCardOperate;
import com.dy.pipIrrGlobal.pojoSe.SeClientCard;
import com.dy.pipIrrGlobal.util.Constant;
+import com.dy.pipIrrGlobal.voSe.VoActiveCard;
+import com.dy.pipIrrGlobal.voSe.VoActiveCardNew;
import com.dy.pipIrrGlobal.voSe.VoRecharge;
import com.dy.pipIrrSell.cardOperate.converter.RechargeDtoMapper;
import com.dy.pipIrrSell.cardOperate.dto.*;
import com.dy.pipIrrSell.cardOperate.enums.OperateTypeENUM;
+import com.dy.pipIrrSell.cardOperate.qo.QoActiveCard;
import com.dy.pipIrrSell.cardOperate.qo.QoRecharge;
import com.dy.pipIrrSell.cardOperate.qo.QoTransaction;
import com.dy.pipIrrSell.cardOperate.qo.QoTransactionStatistics;
@@ -804,4 +807,35 @@
return BaseResponseUtils.buildException(e.getMessage()) ;
}
}
+
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍗¤褰�
+ * @param vo
+ * @return
+ */
+ @Operation(summary = "鑾峰彇寮�鍗¤褰�", description = "杩斿洖寮�鍗¤褰�")
+ @ApiResponses(value = {
+ @ApiResponse(
+ responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
+ description = "杩斿洖涓�椤靛紑鍗℃暟鎹紙BaseResponse.content:QueryResultVo[{}]锛�",
+ content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
+ schema = @Schema(implementation = VoActiveCard.class))}
+ )
+ })
+ @GetMapping(path = "/getActiveCards")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoActiveCardNew>>> get(QoActiveCard vo){
+ try {
+ QueryResultVo<List<VoActiveCardNew>> res = cardOperateSv.getActiveCards(vo);
+ if(res.itemTotal == 0) {
+ return BaseResponseUtils.buildFail(SellResultCode.No_ActiveCards.getMessage());
+ }
+ return BaseResponseUtils.buildSuccess(res);
+ } catch (Exception e) {
+ log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java
index e019024..be26372 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java
@@ -10,11 +10,10 @@
import com.dy.pipIrrGlobal.daoSe.SeClientMapper;
import com.dy.pipIrrGlobal.pojoSe.SeCardOperate;
import com.dy.pipIrrGlobal.pojoSe.SeClientCard;
-import com.dy.pipIrrGlobal.voSe.VoRecharge;
-import com.dy.pipIrrGlobal.voSe.VoTransaction;
-import com.dy.pipIrrGlobal.voSe.VoTransactionStatistics;
+import com.dy.pipIrrGlobal.voSe.*;
import com.dy.pipIrrSell.cardOperate.dto.DtoRecharge;
import com.dy.pipIrrSell.cardOperate.enums.OperateTypeENUM;
+import com.dy.pipIrrSell.cardOperate.qo.QoActiveCard;
import com.dy.pipIrrSell.cardOperate.qo.QoRecharge;
import com.dy.pipIrrSell.cardOperate.qo.QoTransaction;
import com.dy.pipIrrSell.cardOperate.qo.QoTransactionStatistics;
@@ -385,4 +384,45 @@
return map_result;
}
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍗¤褰�
+ * @param queryVo
+ * @return
+ */
+ public QueryResultVo<List<VoActiveCardNew>> getActiveCards(QoActiveCard queryVo) {
+ //瀹屽杽鏌ヨ鍏呭�艰褰曠殑璧锋鏃堕棿
+ String activeTimeStart = queryVo.activeTimeStart;
+ String activeTimeStop = queryVo.activeTimeStop;
+ if(activeTimeStart != null) {
+ activeTimeStart = activeTimeStart + " 00:00:00";
+ queryVo.setActiveTimeStart(activeTimeStart);
+ }
+ if(activeTimeStop != null) {
+ activeTimeStop = activeTimeStop + " 23:59:59";
+ queryVo.setActiveTimeStop(activeTimeStop);
+ }
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+
+ Long itemTotal = seCardOperateMapper.getActiveCardRecordCount(params);
+
+ QueryResultVo<List<VoActiveCardNew>> rsVo = new QueryResultVo<>() ;
+ 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 = seCardOperateMapper.getActiveCards(params);
+ return rsVo ;
+ }
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/qo/QoActiveCard.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/qo/QoActiveCard.java
new file mode 100644
index 0000000..251c52d
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/qo/QoActiveCard.java
@@ -0,0 +1,47 @@
+package com.dy.pipIrrSell.cardOperate.qo;
+
+import com.dy.common.webUtil.QueryConditionVo;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+
+/**
+ * @author :WuZeYu
+ * @Date :2024/1/23 14:41
+ * @LastEditTime :2024/1/23 14:41
+ * @Description
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ToString(callSuper = true)
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Schema(name = "IC鍗″紑鍗¤褰曟煡璇㈡潯浠�")
+public class QoActiveCard extends QueryConditionVo {
+
+// @Schema(description = "鎿嶄綔绫诲瀷 1-寮�鍗★紝2-琛ュ崱")
+// private Byte operateType;
+
+ @Schema(description = "鍐滄埛濮撳悕")
+ public String clientName;
+
+ @Schema(description = "IC鍗″彿")
+ //public String cardAddr;
+ public String cardNum;
+
+ @Schema(description = "鍗$墖鐘舵��")
+ private Byte state;
+
+ //@Schema(description = "寮�鍗℃椂闂確寮�濮�")
+ //public LocalDateTime activeTimeStart;
+ //
+ //@Schema(description = "寮�鍗℃椂闂確缁撴潫")
+ //public LocalDateTime activeTimeStop;
+
+ @Schema(description = "寮�鍗℃椂闂確寮�濮�")
+ public String activeTimeStart;
+
+ @Schema(description = "寮�鍗℃椂闂確缁撴潫")
+ public String activeTimeStop;
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java
index 2f0b41e..ecb786e 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java
@@ -24,6 +24,7 @@
CARD_NUMBER_ERROR(10006, "鍗″彿閿欒锛岃鍗′笉瀛樺湪"),
REPLACE_FAIL_WRITE_CLIENT_CARD_ERROR(10007, "琛ュ崱澶辫触-鍐滄埛鍗′慨鏀瑰紓甯�"),
REPLACE_FAIL_WRITE_RECHARGE_ERROR(10008, "琛ュ崱澶辫触-琛ュ崱璁板綍鍐欏叆寮傚父"),
+ No_ActiveCards(10009, "娌℃湁绗﹀悎鏉′欢鐨勫紑鍗℃暟鎹�"),
/**
* 鍏呭��
--
Gitblit v1.8.0