From 2cad0284bd59efd17be1da8b122a983d9cbdbac5 Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期五, 28 六月 2024 17:04:06 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV

---
 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoLoss.java     |    7 --
 pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictVo.java         |    2 
 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java   |    9 +++
 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/result/SellResultCode.java       |    2 
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml                             |   12 ++++
 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateCtrl.java |  109 ++++++++++++++++++++++--------------
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeCardOperateMapper.java              |    7 ++
 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoReissue.java  |   10 +--
 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java     |    5 +
 9 files changed, 105 insertions(+), 58 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 00cb1f0..69f2e43 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
@@ -125,4 +125,11 @@
      * @return
      */
     Double getTotalAmount(Map<?, ?> params);
+
+    /**
+     * 鏍规嵁姘村崱缂栧彿鑾峰彇鍏舵寕澶辨椂閫�娆鹃噾棰濓紙琛ュ崱鏃跺垽鏂娇鐢級
+     * @param cardNum
+     * @return
+     */
+    Double getTradeAmountByCardNo(Long cardNum);
 }
\ No newline at end of file
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 3114482..d9fa1de 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeCardOperateMapper.xml
@@ -665,4 +665,16 @@
       </if>
     </where>
   </select>
+
+  <!--鏍规嵁姘村崱缂栧彿鑾峰彇鍏舵寕澶辨椂閫�娆鹃噾棰濓紙琛ュ崱鏃跺垽鏂娇鐢級-->
+  <select id="getTradeAmountByCardNo" resultType="java.lang.Double">
+    SELECT
+    ope.trade_amount AS tradeAmount
+    FROM se_client_card card
+    INNER JOIN se_card_operate ope ON ope.card_id = card.id
+    <where>
+      AND ope.operate_type = 6
+      AND card.cardNum = #{cardNum}
+    </where>
+  </select>
 </mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictVo.java
index 1f712ff..ec67ab5 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictVo.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictVo.java
@@ -25,7 +25,7 @@
 
     @Schema(description = "琛屾斂鍖虹紪鍙�", requiredMode = Schema.RequiredMode.REQUIRED)
     @NotEmpty(message = "琛屾斂鍖虹紪鍙蜂笉鑳戒负绌�") //涓嶈兘涓虹┖涔熶笉鑳戒负null
-    @Length(message = "琛屾斂鍖虹紪鍙锋槸涓�浣嶆垨涓や綅鏁�", min = 1, max = 2)
+    @Length(message = "琛屾斂鍖虹紪鍙锋槸涓�浣嶆垨涓や綅鏁�", min = 1, max = 3)
     public String num ;
 
     @Schema(description = "琛屾斂鍖虹骇鍒�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
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 bb54a18..404e0c2 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
@@ -1,5 +1,7 @@
 package com.dy.pipIrrSell.cardOperate;
 
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONObject;
 import com.dy.common.aop.SsoAop;
 import com.dy.common.webUtil.BaseResponse;
 import com.dy.common.webUtil.BaseResponseUtils;
@@ -9,8 +11,10 @@
 import com.dy.pipIrrGlobal.pojoSe.SeCardOperate;
 import com.dy.pipIrrGlobal.pojoSe.SeClientCard;
 import com.dy.pipIrrGlobal.util.AmountToChinese;
-import com.dy.pipIrrGlobal.util.Constant;
-import com.dy.pipIrrGlobal.voSe.*;
+import com.dy.pipIrrGlobal.voSe.VoActiveCard;
+import com.dy.pipIrrGlobal.voSe.VoOperate;
+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;
@@ -134,7 +138,9 @@
         seClientCard.setClientid(clientId);
         seClientCard.setMoney(amount);
         seClientCard.setState(CardStateENUM.NORMAL.getCode());
-        seClientCard.setOriginalCardId(originalCardId);
+        if(originalCardId != null) {
+            seClientCard.setOriginalCardId(originalCardId);
+        }
         seClientCard.setCreatedt(activeTime);
         seClientCard.setLastoper(LastOperateENUM.ACTIVE.getCode());
         Long cardId = Optional.ofNullable(clientCardSv.add(seClientCard)).orElse(0L) ;
@@ -194,15 +200,6 @@
      * @param bindingResult
      * @return
      */
-    @Operation(summary = "琛ュ崱", description = "琛ュ崱")
-    @ApiResponses(value = {
-            @ApiResponse(
-                    responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
-                    description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�",
-                    content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
-                            schema = @Schema(implementation = Boolean.class))}
-            )
-    })
     @PostMapping(path = "reissue", consumes = MediaType.APPLICATION_JSON_VALUE)
     @Transactional(rollbackFor = Exception.class)
     @SsoAop()
@@ -218,6 +215,7 @@
          * cardId           鍘熸按鍗★紙鎸傚け姘村崱锛塈D锛岃浆绉讳綑棰濆悗闇�瑕佹洿鏂板崱浣欓涓�0
          * moeny            浣欓锛屾寕澶辨椂浣跨敤
          * cardCost         鍗$墖璐圭敤
+         * reissueAmount    閫�杩橀噾棰�
          * paymentId        鏀粯鏂瑰紡缂栧彿
          * remarks          澶囨敞
          * operator         鎿嶄綔浜虹紪鍙�
@@ -227,15 +225,32 @@
         String clientNum = "";
         Long cardNum = po.getCardNum();
         Long cardId = 0L;
-        Integer cardCost = po.getCardCost();
+        Integer cardCost = Optional.ofNullable(po.getCardCost()).orElse(0);
         Float reissueAmount = po.getReissueAmount();
         Long paymentId = po.getPaymentId();
         String remarks = po.getRemarks();
         Long operator = po.getOperator();
+        String protocol = null;
 
-        // 鍒ゆ柇褰撳墠姘村崱鏄惁涓烘寕澶辩姸鎬佷笖鏈ˉ鍗★紝浠呭凡缁忔寕澶卞叾鏈ˉ鍗$殑鍙互琛ュ崱
+        // 濡傛灉浼犲叆鐨勬槸10浣嶇殑姘村崱缂栧彿锛屽崌涓�17浣嶆按鍗$紪鍙�
+        String cardNumS = String.valueOf(cardNum).trim();
+        if(cardNumS.length() == 10) {
+            cardNumS = "100000" + cardNumS.substring(0,6) + "0" + cardNumS.substring(6);
+            protocol = "p206V1_0_1";
+        }
+        cardNum = Long.valueOf(cardNumS);
+
+        // 鍒ゆ柇褰撳墠姘村崱鏄惁涓烘寕澶辩姸鎬佷笖鏈ˉ鍗★紝浠呭凡缁忔寕澶变笖鏈ˉ鍗$殑鍙互琛ュ崱
         if(!cardOperateSv.isLostAndUnreplaced(cardNum)) {
-            return BaseResponseUtils.buildFail(SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+            return BaseResponseUtils.buildErrorMsg(SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+        }
+
+        // 濡傛灉浼犲叆浜嗛��杩橀噾棰濓紝闇�瑕佸垽鏂�佸崱锛堣鎸傚け鐨勬按鍗★級鎸傚け鏃舵槸鍚﹀凡缁忛��娆撅紝鏃犺閫�娆惧灏戦兘鎻愮ず鐢ㄦ埛鎸傚け鏃跺凡閫�娆�
+        if(reissueAmount != null) {
+            Double tradeAmount = cardOperateSv.getTradeAmountByCardNo(cardNum);
+            if(tradeAmount != null) {
+                return BaseResponseUtils.buildErrorMsg(SellResultCode.THE_FEE_CANNOT_BE_REFUNDED.getMessage());
+            }
         }
 
         /**
@@ -243,7 +258,7 @@
          */
         Map map = Optional.ofNullable(clientCardSv.getCardIdAndClientNum(cardNum)).orElse(new HashMap());
         if(map == null || map.size() <= 0) {
-            return BaseResponseUtils.buildFail(SellResultCode.CARD_NUMBER_MISTAKE.getMessage());
+            return BaseResponseUtils.buildErrorMsg(SellResultCode.CARD_NUMBER_MISTAKE.getMessage());
         }
         clientNum = map.get("clientNum").toString();
         cardId = Long.parseLong(map.get("cardId").toString());
@@ -251,18 +266,22 @@
         /**
          * 濡傛灉鏄ˉ鍗¤皟鐢ㄧ殑寮�鍗′笖杞Щ浜嗛��杩橀噾棰濓紝闇�淇敼鎸傚け鍗′綑棰濅负0
          */
-        SeClientCard seClientCard = new SeClientCard();
-        seClientCard.setId(cardId);
-        seClientCard.setMoney(0f);
-        cardOperateSv.updateClientCard(seClientCard);
+        if(reissueAmount != null) {
+            SeClientCard seClientCard = new SeClientCard();
+            seClientCard.setId(cardId);
+            seClientCard.setMoney(0f);
+            cardOperateSv.updateClientCard(seClientCard);
+        }
 
         /**
          * 娣诲姞寮�鍗¤褰曪紝閫�杩橀噾棰濆啿鍒版柊鍗′腑
          */
         DtoActiveCard dtoActiveCard = new DtoActiveCard();
+        dtoActiveCard.setProtocol(protocol);
         dtoActiveCard.setCardAddr(cardAddr);
         dtoActiveCard.setClientNum(clientNum);
-        dtoActiveCard.setOriginalCardId(cardNum);
+        dtoActiveCard.setOriginalCardId(cardId);
+        //dtoActiveCard.setOriginalCardId(cardNum);
         dtoActiveCard.setCardCost(cardCost);
         dtoActiveCard.setAmount(reissueAmount);
         dtoActiveCard.setPaymentId(paymentId);
@@ -271,14 +290,17 @@
         BaseResponse<java.lang.Boolean> baseResponse_addActive = add_active(dtoActiveCard, null);
 
         if(!baseResponse_addActive.getCode().equals("0001")) {
-            return BaseResponseUtils.buildFail(SellResultCode.REPLACE_FAIL_WRITE_RECHARGE_ERROR.getMessage());
+            return BaseResponseUtils.buildErrorMsg(SellResultCode.REPLACE_FAIL_WRITE_RECHARGE_ERROR.getMessage());
         }
 
-        String theContent = String.valueOf(baseResponse_addActive.getContent());
-        cardNum = Long.parseLong(theContent.substring(theContent.indexOf("=") + 1, theContent.indexOf(",")));
+        JSONObject job_content = (JSONObject) JSON.toJSON( baseResponse_addActive.getContent());
+        cardNum = job_content.getLong("cardNum");
+        String orderNumber = job_content.getString("orderNumber");
+        String projectNo = job_content.getString("projectNo");
 
         Map map_response = new HashMap();
-        map_response.put("projectCode", Constant.projectCode_ym);
+        map_response.put("projectNo", projectNo);
+        map_response.put("orderNumber", orderNumber);
         map_response.put("cardNum", cardNum);
         return BaseResponseUtils.buildSuccess(map_response) ;
     }
@@ -411,15 +433,6 @@
      * @param bindingResult
      * @return
      */
-    @Operation(summary = "娣诲姞鎸傚け璁板綍", description = "娣诲姞鎸傚け璁板綍")
-    @ApiResponses(value = {
-            @ApiResponse(
-                    responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
-                    description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�",
-                    content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
-                            schema = @Schema(implementation = Boolean.class))}
-            )
-    })
     @PostMapping(path = "loss", consumes = MediaType.APPLICATION_JSON_VALUE)
     @Transactional(rollbackFor = Exception.class)
     @SsoAop()
@@ -431,7 +444,7 @@
         /**
          * cardId           姘村崱缂栧彿锛堥潪浼犲叆鍙傛暟锛岀敱cardNum鍙嶆煡锛�
          * clientId         鍐滄埛缂栧彿锛堥潪浼犲叆鍙傛暟锛岀敱cardNum鍙嶆煡锛�
-         * cardNum          姘村崱缂栧彿
+         * cardNum          瑕佹寕澶辩殑姘村崱缂栧彿
          * money            浣欓
          * refund           閫�娆鹃噾棰�
          * remarks          澶囨敞
@@ -441,16 +454,23 @@
         Long cardId = 0L;
         Long clientId = 0L;
         Long cardNum = po.getCardNum();
-        Float money = po.getMoney();
-        Float refund = po.getRefund();
+        Float money = Optional.ofNullable(po.getMoney()).orElse(0f);
+        Float refund = Optional.ofNullable(po.getRefund()).orElse(0f);
         String remarks = po.getRemarks();
         Long operator = po.getOperator();
         Date lossTime = new Date();
 
+        // 濡傛灉浼犲叆鐨勬槸10浣嶇殑姘村崱缂栧彿锛屽崌涓�17浣嶆按鍗$紪鍙�
+        String cardNumS = String.valueOf(cardNum).trim();
+        if(cardNumS.length() == 10) {
+            cardNumS = "100000" + cardNumS.substring(0,6) + "0" + cardNumS.substring(6);
+        }
+        cardNum = Long.valueOf(cardNumS);
+
         // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣�
         String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(cardNum)).orElse("");
         if(stateName.length() == 0 || !stateName.equals("姝e父")) {
-            return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+            return BaseResponseUtils.buildErrorMsg(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
         }
 
         /**
@@ -458,15 +478,17 @@
          */
         Map map = Optional.ofNullable(clientCardSv.getCardIdAndClientNum(cardNum)).orElse(new HashMap());
         if(map == null || map.size() <= 0) {
-            return BaseResponseUtils.buildFail(SellResultCode.CARD_NUMBER_MISTAKE.getMessage());
+            return BaseResponseUtils.buildErrorMsg(SellResultCode.CARD_NUMBER_MISTAKE.getMessage());
         }
         cardId = Long.parseLong(map.get("cardId").toString());
         clientId = Long.parseLong(map.get("clientId").toString());
 
         /**
          * 淇敼鍐滄埛鍗′俊鎭細
-         *      鎸傚け鏃堕棿
-         *      鏈�鍚庢搷浣滅被鍨�-4
+         *  浣欓
+         *  鎸傚け鏃堕棿
+         *  鐘舵��
+         *  鏈�鍚庢搷浣滅被鍨�-6
          */
         SeClientCard seClientCard = new SeClientCard();
         seClientCard.setId(cardId);
@@ -476,11 +498,12 @@
         seClientCard.setLastoper(LastOperateENUM.LOSS.getCode());
         Integer rec_updateClientCard = Optional.ofNullable(clientCardSv.UpdateClientCard(seClientCard)).orElse(0);
         if(rec_updateClientCard == 0) {
-            return BaseResponseUtils.buildFail(SellResultCode.LOSS_FAIL_WRITE_CLIENT_CARD_ERROR.getMessage());
+            return BaseResponseUtils.buildErrorMsg(SellResultCode.LOSS_FAIL_WRITE_CLIENT_CARD_ERROR.getMessage());
         }
 
         /**
          * 娣诲姞鎸傚け璁板綍
+         * 濡傛灉閫�娆鹃噾棰濅笉涓虹┖锛屽垯浼犲叆璐熷��
          */
         SeCardOperate seCardOperate = new SeCardOperate();
         seCardOperate.setCardId(cardId);
@@ -494,7 +517,7 @@
         seCardOperate.setOperateDt(lossTime);
         Long rec = Optional.ofNullable(cardOperateSv.add(seCardOperate)).orElse(0L);
         if(rec == 0) {
-            return BaseResponseUtils.buildFail(SellResultCode.LOSS_FAIL_WRITE_LOSS_ERROR.getMessage());
+            return BaseResponseUtils.buildErrorMsg(SellResultCode.LOSS_FAIL_WRITE_LOSS_ERROR.getMessage());
         }
 
         return BaseResponseUtils.buildSuccess(true) ;
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 d9f02e0..c2635f3 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
@@ -453,4 +453,13 @@
     public String getProjectNo() {
         return baSettingsMapper.getItemValue("projectNo");
     }
+
+    /**
+     * 鏍规嵁姘村崱缂栧彿鑾峰彇鍏舵寕澶辨椂閫�娆鹃噾棰濓紙琛ュ崱鏃跺垽鏂娇鐢級
+     * @param cardNum
+     * @return
+     */
+    public Double getTradeAmountByCardNo(Long cardNum) {
+        return seCardOperateMapper.getTradeAmountByCardNo(cardNum);
+    }
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoLoss.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoLoss.java
index ac389b7..535f76d 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoLoss.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoLoss.java
@@ -1,9 +1,7 @@
 package com.dy.pipIrrSell.cardOperate.dto;
 
 import io.swagger.v3.oas.annotations.media.Schema;
-import jakarta.validation.constraints.Min;
 import jakarta.validation.constraints.NotNull;
-import jakarta.validation.constraints.Positive;
 import lombok.*;
 
 /**
@@ -23,7 +21,7 @@
     public static final long serialVersionUID = 202401191033001L;
 
     /**
-     * 姘村崱缂栧彿
+     * 瑕佹寕澶辩殑姘村崱缂栧彿
      */
     @Schema(description = "姘村崱缂栧彿", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
     @NotNull(message = "姘村崱缂栧彿涓嶈兘涓虹┖")
@@ -33,14 +31,12 @@
      * 浣欓
      */
     @Schema(description = "浣欓", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
-    @Min(value = 0, message="浣欓涓嶈兘灏忎簬0")
     private Float money;
 
     /**
      * 閫�娆鹃噾棰�
      */
     @Schema(description = "閫�娆鹃噾棰�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
-    @Min(value = 0, message="閫�娆鹃噾棰濅笉鑳藉皬浜�0")
     private Float refund;
 
     /**
@@ -53,6 +49,5 @@
      * 鎿嶄綔浜虹紪鍙�
      */
     @Schema(description = "鎿嶄綔浜虹紪鍙�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
-    @Positive(message = "鎿嶄綔浜虹紪鍙峰繀椤讳负澶т簬0鐨勬暣鏁�")
     private Long operator;
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoReissue.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoReissue.java
index 935a761..0b634e9 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoReissue.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/dto/DtoReissue.java
@@ -1,9 +1,8 @@
 package com.dy.pipIrrSell.cardOperate.dto;
 
 import io.swagger.v3.oas.annotations.media.Schema;
-import jakarta.validation.constraints.Min;
 import jakarta.validation.constraints.NotBlank;
-import jakarta.validation.constraints.Positive;
+import jakarta.validation.constraints.NotNull;
 import lombok.*;
 
 /**
@@ -32,6 +31,7 @@
      * 姘村崱缂栧彿锛屼笉鏄紑鍗℃帴鍙d紶鍏ワ紝鐢卞啘鎴风紪鍙疯幏寰楋紝鍏呭�奸渶瑕�
      */
     @Schema(description = "姘村崱缂栧彿", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    @NotNull(message = "姘村崱缂栧彿涓嶈兘涓虹┖")
     private Long cardNum;
 
     /**
@@ -45,21 +45,19 @@
      * 鍗$墖璐圭敤
      */
     @Schema(description = "鍗$墖璐圭敤", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
-    @Positive(message = "鍗$墖璐圭敤蹇呴』涓哄ぇ浜�0鐨勬暣鏁�")
     private Integer cardCost;
 
     /**
      * 閫�杩橀噾棰濓紝琛ュ紑鍗℃椂鍏呭�肩敤
      */
     @Schema(description = "閫�杩橀噾棰�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
-    @Min(value = 0, message="閫�杩橀噾棰濅笉鑳藉皬浜�0")
     private Float reissueAmount;
 
     /**
      * 鏀粯鏂瑰紡缂栧彿
      */
     @Schema(description = "鏀粯鏂瑰紡缂栧彿", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
-    @Positive(message = "鏀粯鏂瑰紡缂栧彿蹇呴』涓哄ぇ浜�0鐨勬暣鏁�")
+    @NotNull(message = "鏀粯鏂瑰紡涓嶈兘涓虹┖")
     private Long paymentId;
 
     /**
@@ -72,6 +70,6 @@
      * 鎿嶄綔浜虹紪鍙�
      */
     @Schema(description = "鎿嶄綔浜虹紪鍙�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
-    @Positive(message = "鎿嶄綔浜虹紪鍙峰繀椤讳负澶т簬0鐨勬暣鏁�")
+    @NotNull(message = "鎿嶄綔浜轰笉鑳戒负绌�")
     private Long operator;
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java
index 41af87c..dfaef27 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/clientCard/ClientCardSv.java
@@ -110,8 +110,7 @@
      * @return
      */
     public String getCardStateByCardNum(Long cardNum) {
-        String stateName = Optional.ofNullable(seClientCardMapper.getCardStateByCardNum(cardNum)).orElse("");
-        return stateName;
+        return Optional.ofNullable(seClientCardMapper.getCardStateByCardNum(cardNum)).orElse("");
     }
 
     /**
@@ -170,4 +169,6 @@
 
         return rsVo ;
     }
+
+
 }
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 c5eaca0..23112df 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
@@ -34,6 +34,8 @@
     THE_CARD_NOT_EXIST(10012, "娌℃湁绗﹀悎鏉′欢鐨勬按鍗�"),
     THE_CARD_NOT_SUPPORT_THIS_OPERATION(10013, "姘村崱鐘舵�佷笉鏀寔褰撳墠鎿嶄綔"),
 
+    THE_FEE_CANNOT_BE_REFUNDED(10014, "鍘熷崱鎸傚け鏃跺凡閫�娆撅紝琛ュ崱鏃朵笉鑳借ˉ璐圭敤"),
+
     /**
      * 鍏呭��
      */

--
Gitblit v1.8.0