From 75d9e7005aa720f03cfc438f4ad48595a66dcc58 Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期五, 26 一月 2024 16:08:20 +0800
Subject: [PATCH] 1.获取补卡记录2.修改取水口是否绑定查询和地址查询3查询返回取水口ID
---
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/qo/QoReissueCard.java | 35 +++++++
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java | 46 ++++++++
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 | 57 +++++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java | 6 +
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java | 39 ++++++-
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeCardOperateMapper.java | 15 +++
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/QueryVo.java | 3
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoReissueCard.java | 47 +++++++++
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml | 30 +++++
10 files changed, 267 insertions(+), 12 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 12a6884..1acd2b6 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
@@ -109,4 +109,19 @@
* @return
*/
List<VoActiveCardNew> getActiveCards(Map<?, ?> params);
+
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇琛ュ崱璁板綍鏁�
+ * @param params
+ * @return
+ */
+ Long getReissueCardRecordCount(Map<?, ?> params);
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇琛ュ崱璁板綍
+ * @param params
+ * @return
+ */
+ List<VoReissueCard> getReissueCards(Map<?, ?> params);
}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoReissueCard.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoReissueCard.java
new file mode 100644
index 0000000..694a5d0
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSe/VoReissueCard.java
@@ -0,0 +1,47 @@
+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/26 9:31
+ * @LastEditTime :2024/1/26 9:31
+ * @Description
+ */
+@Data
+@Schema(title = "琛ュ崱璁板綍瑙嗗浘瀵硅薄")
+public class VoReissueCard implements BaseEntity {
+ private static final long serialVersionUID = 2024012609330001L;
+
+ @Schema(title = "ID")
+ private Long id;
+
+ @Schema(title = "鍐滄埛濮撳悕")
+ private String clientName;
+
+ @Schema(title = "鍐滄埛缂栧彿")
+ private String clientNum;
+
+ @Schema(title = "姘村崱缂栧彿")
+ private String cardNum;
+
+ @Schema(title = "鍗$墖璐圭敤")
+ private Integer cardCost;
+
+ @Schema(title = "琛ュ崱閲戦")
+ private Double reissueAmount;
+
+ @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 4b6483c..8f71ed3 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
@@ -234,12 +234,25 @@
<if test="blockName != null and blockName != ''">
AND blo.name = #{blockName}
</if>
+
+ <if test="isBinded == 0">
+ AND ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0)
+ </if>
+ <if test="isBinded == 1">
+ AND ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0)
+ </if>
+ <if test="isBinded == null">
+
+ </if>
+ <if test="address != null and address != ''">
+ AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%')
+ </if>
</where>
</select>
<!--鏍规嵁鎸囧畾鏉′欢鑾峰彇鍙栨按鍙h褰�-->
<select id="getIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoIntake">
- SELECT (@i:=@i+1) AS id,
+ SELECT ge.id AS id,
ge.`name` AS intakeName,
divi.`name` AS divideName,
blo.`name` AS blockName,
@@ -255,7 +268,6 @@
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
@@ -263,6 +275,7 @@
<if test="intakeName != null and intakeName != ''">
AND ge.name LIKE CONCAT('%', #{intakeName}, '%')
</if>
+
<if test="divideName != null and divideName != ''">
AND divi.name LIKE CONCAT('%', #{divideName}, '%')
</if>
@@ -270,6 +283,19 @@
<if test="blockName != null and blockName != ''">
AND blo.name = #{blockName}
</if>
+
+ <if test="isBinded == 0">
+ AND ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0)
+ </if>
+ <if test="isBinded == 1">
+ AND ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0)
+ </if>
+ <if test="isBinded == null">
+
+ </if>
+ <if test="address != null and address != ''">
+ AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%')
+ </if>
</where>
ORDER BY ge.operateDt DESC
<if test="pageCurr != null and pageSize != null">
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 903a820..c16ceaf 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
@@ -526,4 +526,61 @@
LIMIT ${pageCurr}, ${pageSize}
</if>
</select>
+
+ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇琛ュ崱璁板綍鏁伴噺-->
+ <select id="getReissueCardRecordCount" 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 = 4
+ <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 = "activeTimeStart != null and activeTimeStop != null">
+ AND ope.operate_dt BETWEEN #{reissueCardTimeStart} AND #{reissueCardTimeStop}
+ </if>
+ </where>
+ </select>
+
+ <!--鏍规嵁鎸囧畾鏉′欢鑾峰彇琛ュ崱璁板綍-->
+ <select id="getReissueCards" resultType="com.dy.pipIrrGlobal.voSe.VoReissueCard">
+ SELECT
+ CAST(ope.id AS char) AS id ,
+ cli.name AS clientName,
+ cli.clientNum AS clientNum,
+ card.cardNum AS cardNum,
+ ope.card_cost AS cardCost,
+ IFNULL(ope.no_trade_amount,0) AS reissueAmount,
+ (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 = 4
+ <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 = "activeTimeStart != null and activeTimeStop != null">
+ AND ope.operate_dt BETWEEN #{reissueCardTimeStart} AND #{reissueCardTimeStop}
+ </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/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
index 56e50c2..b1f9cfc 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
@@ -79,6 +79,12 @@
* @return 鍙栨按鍙h褰曞垪琛�
*/
public QueryResultVo<List<VoIntake>> getIntakes(QueryVo queryVo) {
+// String isBinded = queryVo.getIsBinded();
+//
+// if(isBinded == null || isBinded.length() <= 0) {
+//
+// }
+
Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
Long itemTotal = prIntakeMapper.getRecordCount(params);
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/QueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/QueryVo.java
index 197574d..c6d47b1 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/QueryVo.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/QueryVo.java
@@ -29,7 +29,8 @@
public String blockName;
@Schema(description = "鏄惁缁戝畾璁惧")
- public String isBind;
+ //0鏈粦瀹� 1宸茬粦瀹�
+ public Integer isBinded;
@Schema(description = "鍦板潃")
public String address;
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 d3cad79..d1be98a 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
@@ -12,13 +12,11 @@
import com.dy.pipIrrGlobal.voSe.VoActiveCard;
import com.dy.pipIrrGlobal.voSe.VoActiveCardNew;
import com.dy.pipIrrGlobal.voSe.VoRecharge;
+import com.dy.pipIrrGlobal.voSe.VoReissueCard;
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;
+import com.dy.pipIrrSell.cardOperate.qo.*;
import com.dy.pipIrrSell.clientCard.CardStateENUM;
import com.dy.pipIrrSell.clientCard.ClientCardSv;
import com.dy.pipIrrSell.clientCard.LastOperateENUM;
@@ -835,7 +833,7 @@
})
@GetMapping(path = "/getActiveCards")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoActiveCardNew>>> get(QoActiveCard vo){
+ public BaseResponse<QueryResultVo<List<VoActiveCardNew>>> getActiveCards(QoActiveCard vo){
try {
QueryResultVo<List<VoActiveCardNew>> res = cardOperateSv.getActiveCards(vo);
if(res.itemTotal == 0) {
@@ -848,4 +846,35 @@
}
}
+
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇琛ュ崱璁板綍
+ * @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 = "/getReissueCards")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoReissueCard>>> getReissueCards(QoReissueCard vo){
+ try {
+ QueryResultVo<List<VoReissueCard>> res = cardOperateSv.getReissueCards(vo);
+ if(res.itemTotal == 0) {
+ return BaseResponseUtils.buildFail(SellResultCode.No_ReissueCards.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 be26372..b6b2a94 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
@@ -13,10 +13,7 @@
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;
+import com.dy.pipIrrSell.cardOperate.qo.*;
import com.dy.pipIrrSell.clientCard.ClientCardSv;
import com.dy.pipIrrSell.clientCard.LastOperateENUM;
import com.dy.pipIrrSell.result.SellResultCode;
@@ -425,4 +422,45 @@
rsVo.obj = seCardOperateMapper.getActiveCards(params);
return rsVo ;
}
+
+ /**
+ * 鏍规嵁鎸囧畾鏉′欢鑾峰彇琛ュ崱璁板綍
+ * @param queryVo
+ * @return
+ */
+ public QueryResultVo<List<VoReissueCard>> getReissueCards(QoReissueCard queryVo) {
+ //瀹屽杽鏌ヨ鍏呭�艰褰曠殑璧锋鏃堕棿
+ String reissueCardTimeStart = queryVo.reissueCardTimeStart;
+ String reissueCardTimeStop = queryVo.reissueCardTimeStop;
+ if(reissueCardTimeStart != null) {
+ reissueCardTimeStart = reissueCardTimeStart + " 00:00:00";
+ queryVo.setReissueCardTimeStart(reissueCardTimeStart);
+ }
+ if(reissueCardTimeStop != null) {
+ reissueCardTimeStop = reissueCardTimeStop + " 23:59:59";
+ queryVo.setReissueCardTimeStop(reissueCardTimeStop);
+ }
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+
+ Long itemTotal = seCardOperateMapper.getReissueCardRecordCount(params);
+
+ QueryResultVo<List<VoReissueCard>> 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.getReissueCards(params);
+ return rsVo ;
+ }
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/qo/QoReissueCard.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/qo/QoReissueCard.java
new file mode 100644
index 0000000..9f746b6
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/qo/QoReissueCard.java
@@ -0,0 +1,35 @@
+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/26 9:17
+ * @LastEditTime :2024/1/26 9:17
+ * @Description
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ToString(callSuper = true)
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Schema(name = "IC鍗¤ˉ鍗¤褰曟煡璇㈡潯浠�")
+public class QoReissueCard extends QueryConditionVo {
+
+ @Schema(description = "鍐滄埛濮撳悕")
+ public String clientName;
+
+ @Schema(description = "IC鍗″彿")
+ //public String cardAddr;
+ public String cardNum;
+
+ @Schema(description = "琛ュ崱鏃堕棿_寮�濮�")
+ public String reissueCardTimeStart;
+
+ @Schema(description = "琛ュ崱鏃堕棿_缁撴潫")
+ public String reissueCardTimeStop;
+}
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 ecb786e..f07303a 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
@@ -25,6 +25,7 @@
REPLACE_FAIL_WRITE_CLIENT_CARD_ERROR(10007, "琛ュ崱澶辫触-鍐滄埛鍗′慨鏀瑰紓甯�"),
REPLACE_FAIL_WRITE_RECHARGE_ERROR(10008, "琛ュ崱澶辫触-琛ュ崱璁板綍鍐欏叆寮傚父"),
No_ActiveCards(10009, "娌℃湁绗﹀悎鏉′欢鐨勫紑鍗℃暟鎹�"),
+ No_ReissueCards(10010, "娌℃湁绗﹀悎鏉′欢鐨勮ˉ鍗℃暟鎹�"),
/**
* 鍏呭��
--
Gitblit v1.8.0