From d1e380d5bc8d6cda7dc26778dd638b3367483ae7 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期五, 11 四月 2025 17:27:30 +0800
Subject: [PATCH] 小程序6种开关阀操作失败时重发一次

---
 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java |  137 +++++++++++++++++++++++++++------------------
 1 files changed, 81 insertions(+), 56 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java
index 3e6b1fd..0005593 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java
@@ -5,11 +5,13 @@
 import com.dy.common.webUtil.QueryResultVo;
 import com.dy.pipIrrGlobal.pojoSe.SeVcOperate;
 import com.dy.pipIrrGlobal.pojoSe.SeVirtualCard;
+import com.dy.pipIrrGlobal.voIr.VoPlanDetails;
 import com.dy.pipIrrGlobal.voSe.VoRechargeProfile;
 import com.dy.pipIrrGlobal.voSe.VoVcRecharge;
 import com.dy.pipIrrGlobal.voSe.VoVirtualCard;
 import com.dy.pipIrrWechat.result.WechatResultCode;
 import com.dy.pipIrrWechat.util.PayHelper;
+import com.dy.pipIrrWechat.virtualCard.dto.Client;
 import com.dy.pipIrrWechat.virtualCard.dto.DtoCancel;
 import com.dy.pipIrrWechat.virtualCard.dto.DtoRegist;
 import com.dy.pipIrrWechat.virtualCard.enums.LastOperateENUM;
@@ -23,10 +25,7 @@
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
-import java.util.Optional;
+import java.util.*;
 
 /**
  * @author ZhuBaoMin
@@ -57,61 +56,68 @@
         if(bindingResult != null && bindingResult.hasErrors()){
             return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
         }
-        Long clientId = po.getClientId();
 
-        // 鑾峰彇5绾ц鏀垮尯鍒掍覆areaCode
-        Long areaCodeL = virtualCardSv.getAreaCodeById(clientId);
-        if(areaCodeL == null) {
-            return BaseResponseUtils.buildErrorMsg(WechatResultCode.AREA_CODE_MISTAKE.getMessage());
+        Map map_result = virtualCardSv.addVC(po.getClientId(), 0D);
+        if(map_result.get("success").equals(false)) {
+            return BaseResponseUtils.buildErrorMsg(map_result.get("msg").toString());
         }
-        String areaCode = String.valueOf(areaCodeL);
+        return BaseResponseUtils.buildSuccess() ;
 
-        /**
-         * 鏍规嵁琛屾斂鍖哄垝涓诧紙areaCode锛夊湪铏氭嫙鍗¤〃涓拡瀵硅櫄鎷熷崱缂栧彿锛坴cNum锛夎繘琛屾ā绯婃煡璇�
-         * 濡傛灉5浣嶉『搴忓彿宸茬粡杈惧埌鏈�澶у�硷紝鎻愮ず鐢ㄦ埛鑱旂郴绯荤粺绠$悊鍛�
-         * 濡傛灉5浣嶉『搴忓彿鏈揪鍒版渶澶у�硷紝鍒欏姞1
-         * cardNum涓烘柊鐨勫崱鍙�
-         */
-        String vcNum = Optional.ofNullable(virtualCardSv.getVcCardNumOfMax(areaCode)).orElse("");
-        if(vcNum != null && vcNum.trim().length() > 0) {
-            Integer number = Integer.parseInt(vcNum.substring(12));
-            number = number + 1;
-            if(number > 65535) {
-                return BaseResponseUtils.buildErrorMsg(WechatResultCode.CARD_NUMBER_OVERRUN.getMessage());
-            }
-            vcNum = vcNum.substring(0, 12) + String.format("%05d", number);
-        } else {
-            vcNum = areaCode + "00001";
-        }
-
-        // 鐢熸垚铏氭嫙鍗¤褰�
-        SeVirtualCard seVirtualCard = new SeVirtualCard();
-        seVirtualCard.setVcNum(Long.parseLong(vcNum));
-        seVirtualCard.setClientId(clientId);
-        seVirtualCard.setMoney(0d);
-        seVirtualCard.setState((byte)1);
-        seVirtualCard.setLastOperate(LastOperateENUM.OPEN_ACCOUNT.getCode());
-        seVirtualCard.setLastOperateTime(new Date());
-        seVirtualCard.setInUse((byte) 0);
-        seVirtualCard.setCreateTime(new Date());
-        Long vcId = virtualCardSv.insertVirtualCard(seVirtualCard);
-        if(vcId == null) {
-            return BaseResponseUtils.buildErrorMsg(WechatResultCode.VC_OPEN_ACCOUNT_FAIL.getMessage());
-        }
-
-        // 鐢熸垚铏氭嫙鍗℃搷浣滆褰曪紝娉ㄥ唽铏氭嫙鍗℃搷浣滀汉涓哄啘鎴�
-        SeVcOperate seVcOperate = new SeVcOperate();
-        seVcOperate.setVcId(vcId);
-        seVcOperate.setClientId(clientId);
-        seVcOperate.setOperateType(LastOperateENUM.OPEN_ACCOUNT.getCode());
-        seVcOperate.setOperator(clientId);
-        seVcOperate.setOperateTime(new Date());
-        Long vcOperateId = virtualCardSv.insertVcOperate(seVcOperate);
-        if(vcOperateId == null) {
-            return BaseResponseUtils.buildErrorMsg(WechatResultCode.VC_OPEN_ACCOUNT_FAIL.getMessage());
-        }
-
-        return BaseResponseUtils.buildSuccess(true) ;
+        //Long clientId = po.getClientId();
+        //
+        //// 鑾峰彇5绾ц鏀垮尯鍒掍覆areaCode
+        //Long areaCodeL = virtualCardSv.getAreaCodeById(clientId);
+        //if(areaCodeL == null) {
+        //    return BaseResponseUtils.buildErrorMsg(WechatResultCode.AREA_CODE_MISTAKE.getMessage());
+        //}
+        //String areaCode = String.valueOf(areaCodeL);
+        //
+        ///**
+        // * 鏍规嵁琛屾斂鍖哄垝涓诧紙areaCode锛夊湪铏氭嫙鍗¤〃涓拡瀵硅櫄鎷熷崱缂栧彿锛坴cNum锛夎繘琛屾ā绯婃煡璇�
+        // * 濡傛灉5浣嶉『搴忓彿宸茬粡杈惧埌鏈�澶у�硷紝鎻愮ず鐢ㄦ埛鑱旂郴绯荤粺绠$悊鍛�
+        // * 濡傛灉5浣嶉『搴忓彿鏈揪鍒版渶澶у�硷紝鍒欏姞1
+        // * cardNum涓烘柊鐨勫崱鍙�
+        // */
+        //String vcNum = Optional.ofNullable(virtualCardSv.getVcCardNumOfMax(areaCode)).orElse("");
+        //if(vcNum != null && vcNum.trim().length() > 0) {
+        //    Integer number = Integer.parseInt(vcNum.substring(12));
+        //    number = number + 1;
+        //    if(number > 65535) {
+        //        return BaseResponseUtils.buildErrorMsg(WechatResultCode.CARD_NUMBER_OVERRUN.getMessage());
+        //    }
+        //    vcNum = vcNum.substring(0, 12) + String.format("%05d", number);
+        //} else {
+        //    vcNum = areaCode + "00001";
+        //}
+        //
+        //// 鐢熸垚铏氭嫙鍗¤褰�
+        //SeVirtualCard seVirtualCard = new SeVirtualCard();
+        //seVirtualCard.setVcNum(Long.parseLong(vcNum));
+        //seVirtualCard.setClientId(clientId);
+        //seVirtualCard.setMoney(0d);
+        //seVirtualCard.setState((byte)1);
+        //seVirtualCard.setLastOperate(LastOperateENUM.OPEN_ACCOUNT.getCode());
+        //seVirtualCard.setLastOperateTime(new Date());
+        //seVirtualCard.setInUse((byte) 0);
+        //seVirtualCard.setCreateTime(new Date());
+        //Long vcId = virtualCardSv.insertVirtualCard(seVirtualCard);
+        //if(vcId == null) {
+        //    return BaseResponseUtils.buildErrorMsg(WechatResultCode.VC_OPEN_ACCOUNT_FAIL.getMessage());
+        //}
+        //
+        //// 鐢熸垚铏氭嫙鍗℃搷浣滆褰曪紝娉ㄥ唽铏氭嫙鍗℃搷浣滀汉涓哄啘鎴�
+        //SeVcOperate seVcOperate = new SeVcOperate();
+        //seVcOperate.setVcId(vcId);
+        //seVcOperate.setClientId(clientId);
+        //seVcOperate.setOperateType(LastOperateENUM.OPEN_ACCOUNT.getCode());
+        //seVcOperate.setOperator(clientId);
+        //seVcOperate.setOperateTime(new Date());
+        //Long vcOperateId = virtualCardSv.insertVcOperate(seVcOperate);
+        //if(vcOperateId == null) {
+        //    return BaseResponseUtils.buildErrorMsg(WechatResultCode.VC_OPEN_ACCOUNT_FAIL.getMessage());
+        //}
+        //
+        //return BaseResponseUtils.buildSuccess(true) ;
     }
 
     /**
@@ -344,4 +350,23 @@
             return BaseResponseUtils.buildException(e.getMessage()) ;
         }
     }
+
+    /**
+     * 缁戝畾铏氭嫙鍗″埌鍙栨按鍙�
+     * @return
+     */
+    @PostMapping(path = "linkVcToIntake")
+    @Transactional(rollbackFor = Exception.class)
+    public BaseResponse<Boolean> linkVcToIntake(@RequestBody @Valid Client client, BindingResult bindingResult) {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+
+        Long clientId = client.getClientId();
+        Map map_result = virtualCardSv.linkVcToIntake(clientId);
+        if(map_result.get("success").equals(false)) {
+            return BaseResponseUtils.buildErrorMsg(map_result.get("msg").toString());
+        }
+        return BaseResponseUtils.buildSuccess() ;
+    }
 }

--
Gitblit v1.8.0