From a60332d51fec0ae9f1afecc8c7a018c77e4ac101 Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期二, 27 二月 2024 10:03:29 +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/CardOperateCtrl.java |  167 +++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 130 insertions(+), 37 deletions(-)

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 d1be98a..5978104 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
@@ -8,11 +8,9 @@
 import com.dy.pipIrrGlobal.pojoBa.BaClient;
 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.VoActiveCard;
-import com.dy.pipIrrGlobal.voSe.VoActiveCardNew;
-import com.dy.pipIrrGlobal.voSe.VoRecharge;
-import com.dy.pipIrrGlobal.voSe.VoReissueCard;
+import com.dy.pipIrrGlobal.voSe.*;
 import com.dy.pipIrrSell.cardOperate.converter.RechargeDtoMapper;
 import com.dy.pipIrrSell.cardOperate.dto.*;
 import com.dy.pipIrrSell.cardOperate.enums.OperateTypeENUM;
@@ -35,6 +33,7 @@
 import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
 
+import java.math.BigDecimal;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 
@@ -222,6 +221,12 @@
         String remarks = po.getRemarks();
         Long operator = po.getOperator();
 
+        // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣�
+        String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse("");
+        if(stateName.length() == 0 || !stateName.equals("姝e父")) {
+            return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+        }
+
         /**
          * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿
          */
@@ -340,6 +345,12 @@
         Long operator = po.getOperator();
         Date cancelTime = new Date();
 
+        // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣�
+        String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse("");
+        if(stateName.length() == 0 || !stateName.equals("姝e父")) {
+            return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+        }
+
         /**
          * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿
          */
@@ -430,6 +441,12 @@
         Long operator = po.getOperator();
         Date lossTime = new Date();
 
+        // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣�
+        String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse("");
+        if(stateName.length() == 0 || !stateName.equals("姝e父")) {
+            return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+        }
+
         /**
          * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿
          */
@@ -464,6 +481,7 @@
         seCardOperate.setClientId(clientId);
         seCardOperate.setMoney(money);
         seCardOperate.setTradeAmount(-refund);
+        seCardOperate.setPaymentId(1L);
         seCardOperate.setOperateType(OperateTypeENUM.LOSS.getCode());
         seCardOperate.setRemarks(remarks);
         seCardOperate.setOperator(operator);
@@ -517,6 +535,12 @@
         String remarks = po.getRemarks();
         Long operator = po.getOperator();
         Date reversalTime = new Date();
+
+        // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣�
+        String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse("");
+        if(stateName.length() == 0 || !stateName.equals("姝e父")) {
+            return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+        }
 
         /**
          * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿
@@ -605,6 +629,12 @@
         Long operator = po.getOperator();
         Date refundTime = new Date();
 
+        // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣�
+        String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse("");
+        if(stateName.length() == 0 || !stateName.equals("姝e父")) {
+            return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+        }
+
         /**
          * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿
          */
@@ -637,7 +667,8 @@
         seCardOperate.setCardId(cardId);
         seCardOperate.setClientId(clientId);
         seCardOperate.setMoney(money);
-        seCardOperate.setNoTradeAmount(refund);
+        //seCardOperate.setNoTradeAmount(refund);
+        seCardOperate.setRefundAmount(refund);
         seCardOperate.setOperateType(OperateTypeENUM.REFUND.getCode());
         seCardOperate.setRemarks(remarks);
         seCardOperate.setOperator(operator);
@@ -690,6 +721,12 @@
         String remarks = po.getRemarks();
         Long operator = po.getOperator();
         Date unlockTime = new Date();
+
+        // 楠岃瘉姘村崱鐘舵�佹槸鍚︽敮鎸佸綋鍓嶆搷浣�
+        String stateName = Optional.ofNullable(clientCardSv.getCardStateByCardNum(Long.parseLong(cardNum))).orElse("");
+        if(stateName.length() == 0 || !stateName.equals("宸叉寕澶�")) {
+            return BaseResponseUtils.buildFail(stateName + ", " + SellResultCode.THE_CARD_NOT_SUPPORT_THIS_OPERATION.getMessage());
+        }
 
         /**
          * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿
@@ -755,13 +792,15 @@
     public BaseResponse<QueryResultVo<List<VoRecharge>>> get(QoRecharge vo){
         try {
             QueryResultVo<List<VoRecharge>> res = cardOperateSv.getRecharges(vo);
+            if(res.itemTotal == 0) {
+                return BaseResponseUtils.buildFail(SellResultCode.No_RECHARGES.getMessage());
+            }
             return BaseResponseUtils.buildSuccess(res);
         } catch (Exception e) {
             log.error("鑾峰彇鍏呭�艰褰曞紓甯�", e);
             return BaseResponseUtils.buildException(e.getMessage()) ;
         }
     }
-
 
     /**
      * 鏍规嵁鎸囧畾鏉′欢鑾峰彇浜ゆ槗鏄庣粏
@@ -791,33 +830,6 @@
 
 
     /**
-     * 鑾峰彇浜ゆ槗姹囨�昏褰�
-     * @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 = BaClient.class))}
-            )
-    })
-    @GetMapping(path = "getStatistics")
-    @SsoAop()
-    public BaseResponse<Map> getStatistics(QoTransactionStatistics vo){
-        try {
-            Map res = cardOperateSv.getTransactionStatistics(vo);
-            return BaseResponseUtils.buildSuccess(res);
-        } catch (Exception e) {
-            log.error("鏌ヨ浜ゆ槗姹囨�昏褰曞紓甯�", e);
-            return BaseResponseUtils.buildException(e.getMessage()) ;
-        }
-    }
-
-
-    /**
      * 鏍规嵁鎸囧畾鏉′欢鑾峰彇寮�鍗¤褰�
      * @param vo
      * @return
@@ -833,9 +845,9 @@
     })
     @GetMapping(path = "/getActiveCards")
     @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoActiveCardNew>>> getActiveCards(QoActiveCard vo){
+    public BaseResponse<QueryResultVo<List<VoActiveCard>>> getActiveCards(QoActiveCard vo){
         try {
-            QueryResultVo<List<VoActiveCardNew>> res = cardOperateSv.getActiveCards(vo);
+            QueryResultVo<List<VoActiveCard>> res = cardOperateSv.getActiveCards(vo);
             if(res.itemTotal == 0) {
                 return BaseResponseUtils.buildFail(SellResultCode.No_ActiveCards.getMessage());
             }
@@ -845,8 +857,6 @@
             return BaseResponseUtils.buildException(e.getMessage()) ;
         }
     }
-
-
 
     /**
      * 鏍规嵁鎸囧畾鏉′欢鑾峰彇琛ュ崱璁板綍
@@ -877,4 +887,87 @@
         }
     }
 
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鑾峰彇閫氱敤鎿嶄綔璁板綍
+     * 娉ㄩ攢銆佹寕澶便�佸啿姝c�佽В閿侀�氱敤
+     * 娉ㄩ攢-3锛屾寕澶�-6锛屽啿姝�-7锛岃В閿�-8
+     * @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 = "/getOptions")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoOperate>>> getCommonOperations(QoCommonOperate vo){
+        // 楠岃瘉鎿嶄綔绫诲瀷鏄惁姝g‘
+        Integer operateType = Optional.ofNullable(vo.getOperateType()).orElse(0);
+        if(operateType != 3 && operateType != 6 && operateType != 7 && operateType != 8) {
+            return BaseResponseUtils.buildFail(SellResultCode.PARAMS_ERROR.getMessage());
+        }
+
+        try {
+            QueryResultVo<List<VoOperate>> res = cardOperateSv.getCommonOperations(vo);
+            if(res.itemTotal == 0) {
+                return BaseResponseUtils.buildFail(SellResultCode.No_CANCELS.getMessage());
+            }
+            return BaseResponseUtils.buildSuccess(res);
+        } catch (Exception e) {
+            log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+            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 = "/get_receipts")
+    @SsoAop()
+    public BaseResponse<Map> getReceipts(QoReceipt vo){
+        try {
+            Map res = Optional.ofNullable(cardOperateSv.getReceipts(vo)).orElse(new HashMap());
+            if(res.size() == 0) {
+                return BaseResponseUtils.buildFail(SellResultCode.No_RECEIPTS.getMessage());
+            }
+            return BaseResponseUtils.buildSuccess(res);
+        } catch (Exception e) {
+            log.error("鑾峰彇鐢靛瓙閽卞寘璐︽埛璁板綍", e);
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+
+    /**
+     * 閲戦杞ぇ鍐�
+     * @param amount
+     * @return
+     */
+
+    @GetMapping(path = "/amount_to_chinese")
+    public BaseResponse<Boolean> amountToChinese(BigDecimal amount) {
+        try {
+            AmountToChinese amountToChinese = new AmountToChinese();
+            String chinese = amountToChinese.toChinese(amount);
+            return BaseResponseUtils.buildSuccess(chinese) ;
+        } catch (Exception e) {
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+
+    }
 }

--
Gitblit v1.8.0