From b86f280e00ec3623bd9f220957115b8b3137ba77 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 14 十一月 2025 18:10:59 +0800
Subject: [PATCH] 汇付进件对接

---
 UserJYXTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/account/controller/ElectronicLedgerController.java |  168 +++++++++++++++++++++++++++----------------------------
 1 files changed, 82 insertions(+), 86 deletions(-)

diff --git a/UserJYXTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/account/controller/ElectronicLedgerController.java b/UserJYXTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/account/controller/ElectronicLedgerController.java
index 0af609b..1ae14d3 100644
--- a/UserJYXTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/account/controller/ElectronicLedgerController.java
+++ b/UserJYXTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/account/controller/ElectronicLedgerController.java
@@ -17,6 +17,7 @@
 import com.stylefeng.guns.modular.cloudPayment.example.*;
 import com.stylefeng.guns.modular.cloudPayment.req.BalanceAcctReq;
 import com.stylefeng.guns.modular.cloudPayment.req.UserBankAccountReq;
+import com.stylefeng.guns.modular.huifu.biz.DouGongBasicDataBiz;
 import com.stylefeng.guns.modular.system.model.*;
 import com.stylefeng.guns.modular.system.service.IBankCardService;
 import com.stylefeng.guns.modular.system.service.ICompanyService;
@@ -47,6 +48,7 @@
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
 import java.util.Objects;
 
 @Api(tags = "用户进件(提现操作)/创建电子账簿")
@@ -66,6 +68,8 @@
     private IUserService userService;
     @Autowired
     private IBankCardService bankCardService;
+    @Autowired
+    private DouGongBasicDataBiz douGongBasicDataBiz;
 
     @ResponseBody
     @RequestMapping(value = "/addElectronicLedger", method = RequestMethod.POST)
@@ -105,96 +109,87 @@
             System.out.println("验证码:"+userWithdrawalReq.getCode());
             userWithdrawalReq.setCopy1(userWithdrawalReq.getCopy1().replaceAll(" ","+"));
             userWithdrawalReq.setCopy2(userWithdrawalReq.getCopy2().replaceAll(" ","+"));
-            // 用户进件
-            CusApplicationResp cusApplicationResp = CusApplicationExample.create(userWithdrawalReq);
-            System.out.println("进件状态:"+cusApplicationResp);
-            if("succeeded".equals(cusApplicationResp.getApplicationStatus())) {
-                userWithdrawal.setTransactionAuthorizationCode(Base64Util.encode(password));
-                userWithdrawal.setUserType(1);
-                userWithdrawal.setUserId(id);
-                userWithdrawal.setImgUrl(userWithdrawalReq.getIdCardFrontPicture());
-                userWithdrawal.setImgUrlOne(userWithdrawalReq.getIdCardReversePicture());
-                userWithdrawal.setIdCardFrontPicture(userWithdrawalReq.getCopy1());
-                userWithdrawal.setIdCardReversePicture(userWithdrawalReq.getCopy2());
-
-                userWithdrawalService.insert(userWithdrawal);
-                UserWithdrawal userWithdrawal1 = new UserWithdrawal();
-                userWithdrawal1.setId(userWithdrawal.getId());
-                BeanUtils.copyProperties(cusApplicationResp, userWithdrawal1);
-                userWithdrawalService.updateById(userWithdrawal1);
-                // 开通电子账簿
-                BalanceAcctReq balanceAcctReq = new BalanceAcctReq();
-                balanceAcctReq.setCusId(userWithdrawal1.getCusId());
-                balanceAcctReq.setOutRequestNo(ToolUtil.getRandomString(32));
-                balanceAcctReq.setPassword(password);
-                ElectronicLedger electronicLedger = new ElectronicLedger();
-                electronicLedger.setBalanceAcctId(cusApplicationResp.getBalanceAcctId());
-                electronicLedger.setCreateTime(new Date());
-                electronicLedger.setCusId(cusApplicationResp.getCusId());
-                electronicLedger.setOutRequestNo(cusApplicationResp.getOutRequestNo());
-                electronicLedger.setUserId(userWithdrawal.getUserId());
-                electronicLedger.setPassword(SecureUtil.md5(password));
-                electronicLedger.setRelAcctNo(cusApplicationResp.getRelAcctNo());
-                electronicLedger.setUserType(1);
-                electronicLedgerService.insert(electronicLedger);
-                // 绑卡 存卡
-                UserBankAccount userBankAccount = new UserBankAccount();
-                userBankAccount.setBankAcctType("1");
-                userBankAccount.setOutRequestNo(ToolUtil.getRandomString(32));
-                userBankAccount.setUserType(1);
-                userBankAccount.setCreateTime(new Date());
-                userBankAccount.setBankCardCode(userWithdrawal.getBankCardCode());
-                // TODO 页面没有输入地方 需要查询
-                userBankAccount.setBankCode(userWithdrawal.getBankCode());
-                // TODO 行联号
-                userBankAccount.setBankBranchCode(userWithdrawal.getBankBranchCode());
-                userBankAccount.setPhone(userWithdrawal.getPhone());
-
-                userBankAccount.setUserId(userWithdrawal.getUserId());
-                userBankAccount.setBankName(userWithdrawal.getBankName());
-                userBankAccount.setOpenAccountName(userWithdrawalReq.getOpenAccountName());
-                int count = userBankAccountService.selectCount(new EntityWrapper<UserBankAccount>()
-                        .eq("bankCardCode", userWithdrawalReq.getBankCardCode()).eq("phone",userWithdrawalReq.getPhone()).eq("status",1));
-                if(count<1){
-                    userBankAccountService.insert(userBankAccount);
-                }
-                BankCard bankCard = new BankCard();
-                bankCard.setDriverId(userWithdrawal.getUserId());
-                bankCard.setBankAcctType("1");
-                bankCard.setOutRequestNo(ToolUtil.getRandomString(32));
-                bankCard.setInsertTime(new Date());
-                bankCard.setCode(userWithdrawal.getBankCardCode());
-                bankCard.setBankCode(userWithdrawal.getBankCode());
-                bankCard.setBankBranchCode(userWithdrawal.getBankBranchCode());
-                bankCard.setBank(userWithdrawal.getBankName());
-                bankCard.setPhone(userWithdrawal.getPhone());
-                bankCard.setName(userWithdrawal.getOpenAccountName());
-                bankCard.setIfDefault(true);
-                bankCardService.insert(bankCard);
-
-
-                UserBankAccountReq userBankAccountReq = new UserBankAccountReq();
-                BeanUtils.copyProperties(userBankAccount, userBankAccountReq);
-                System.err.println(userWithdrawalReq.getCode());
-                userBankAccountReq.setCusId(cusApplicationResp.getCusId());
-                userBankAccountReq.setCode(userWithdrawalReq.getCode());
-                return ResultUtil.success();
+            // 用户进件 TODO
+            Map<String, Object> resultMap = douGongBasicDataBiz.userBasicDataIndv(userWithdrawalReq);
+            String respCode = (String) resultMap.get("resp_code");
+            //CusApplicationResp cusApplicationResp = CusApplicationExample.create(userWithdrawalReq);
+            if(!"200".equals(respCode)) {
+                return ResultUtil.error((String) resultMap.get("resp_desc"));
             }
-            if("failed".equals(cusApplicationResp.getApplicationStatus())){
-                List<FailureMsgParam> failureMsgs = cusApplicationResp.getFailureMsgs();
-                if(failureMsgs != null && failureMsgs.size()>0){
-                    return ResultUtil.error(failureMsgs.get(0).getReason());
-                }
+            userWithdrawal.setTransactionAuthorizationCode(Base64Util.encode(password));
+            userWithdrawal.setUserType(1);
+            userWithdrawal.setUserId(id);
+            userWithdrawal.setImgUrl(userWithdrawalReq.getIdCardFrontPicture());
+            userWithdrawal.setImgUrlOne(userWithdrawalReq.getIdCardReversePicture());
+            userWithdrawal.setIdCardFrontPicture(userWithdrawalReq.getCopy1());
+            userWithdrawal.setIdCardReversePicture(userWithdrawalReq.getCopy2());
+
+            userWithdrawalService.insert(userWithdrawal);
+            //调用汇付业务入驻接口 todo
+            Map<String, Object> map = douGongBasicDataBiz.userBusinessOpen(userWithdrawalReq);
+            UserWithdrawal userWithdrawal1 = new UserWithdrawal();
+            userWithdrawal1.setId(userWithdrawal.getId());
+            BeanUtils.copyProperties(cusApplicationResp, userWithdrawal1);
+            userWithdrawalService.updateById(userWithdrawal1);
+            // 开通电子账簿
+            BalanceAcctReq balanceAcctReq = new BalanceAcctReq();
+            balanceAcctReq.setCusId(userWithdrawal1.getCusId());
+            balanceAcctReq.setOutRequestNo(ToolUtil.getRandomString(32));
+            balanceAcctReq.setPassword(password);
+            ElectronicLedger electronicLedger = new ElectronicLedger();
+            electronicLedger.setBalanceAcctId(cusApplicationResp.getBalanceAcctId());
+            electronicLedger.setCreateTime(new Date());
+            electronicLedger.setCusId(cusApplicationResp.getCusId());
+            electronicLedger.setOutRequestNo(cusApplicationResp.getOutRequestNo());
+            electronicLedger.setUserId(userWithdrawal.getUserId());
+            electronicLedger.setPassword(SecureUtil.md5(password));
+            electronicLedger.setRelAcctNo(cusApplicationResp.getRelAcctNo());
+            electronicLedger.setUserType(1);
+            electronicLedgerService.insert(electronicLedger);
+            // 绑卡 存卡
+            UserBankAccount userBankAccount = new UserBankAccount();
+            userBankAccount.setBankAcctType("1");
+            userBankAccount.setOutRequestNo(ToolUtil.getRandomString(32));
+            userBankAccount.setUserType(1);
+            userBankAccount.setCreateTime(new Date());
+            userBankAccount.setBankCardCode(userWithdrawal.getBankCardCode());
+            // TODO 页面没有输入地方 需要查询
+            userBankAccount.setBankCode(userWithdrawal.getBankCode());
+            // TODO 行联号
+            userBankAccount.setBankBranchCode(userWithdrawal.getBankBranchCode());
+            userBankAccount.setPhone(userWithdrawal.getPhone());
+
+            userBankAccount.setUserId(userWithdrawal.getUserId());
+            userBankAccount.setBankName(userWithdrawal.getBankName());
+            userBankAccount.setOpenAccountName(userWithdrawalReq.getOpenAccountName());
+            int count = userBankAccountService.selectCount(new EntityWrapper<UserBankAccount>()
+                    .eq("bankCardCode", userWithdrawalReq.getBankCardCode()).eq("phone",userWithdrawalReq.getPhone()).eq("status",1));
+            if(count<1){
+                userBankAccountService.insert(userBankAccount);
             }
+            BankCard bankCard = new BankCard();
+            bankCard.setDriverId(userWithdrawal.getUserId());
+            bankCard.setBankAcctType("1");
+            bankCard.setOutRequestNo(ToolUtil.getRandomString(32));
+            bankCard.setInsertTime(new Date());
+            bankCard.setCode(userWithdrawal.getBankCardCode());
+            bankCard.setBankCode(userWithdrawal.getBankCode());
+            bankCard.setBankBranchCode(userWithdrawal.getBankBranchCode());
+            bankCard.setBank(userWithdrawal.getBankName());
+            bankCard.setPhone(userWithdrawal.getPhone());
+            bankCard.setName(userWithdrawal.getOpenAccountName());
+            bankCard.setIfDefault(true);
+            bankCardService.insert(bankCard);
+
+
+            UserBankAccountReq userBankAccountReq = new UserBankAccountReq();
+            BeanUtils.copyProperties(userBankAccount, userBankAccountReq);
+            System.err.println(userWithdrawalReq.getCode());
+            userBankAccountReq.setCusId(cusApplicationResp.getCusId());
+            userBankAccountReq.setCode(userWithdrawalReq.getCode());
             return ResultUtil.success();
-        }catch (UpyztException e){
-            if(e.getCode().equals("100101")){
-                return ResultUtil.error(e.getIssue());
-            }
-            e.printStackTrace();
-            String message = e.getMessage();
-            return ResultUtil.error(message);
         }catch (Exception e){
+            log.error("用户进件失败", e);
             String message = e.getMessage();
             return ResultUtil.error(message);
         }
@@ -249,6 +244,7 @@
             userWithdrawal.setCode(code);
             userWithdrawal.setBankCode(bankCode);
             CusApplicationResp renew = CusApplicationExample.renew(userWithdrawal);
+            Map<String, Object> resultMap = douGongBasicDataBiz.userBasicDataIndvModify(userWithdrawal);
             log.info("修改个人用户进件信息返回:{}",renew);
             if("succeeded".equals(renew.getApplicationStatus())){
                 userWithdrawal1.setIdCardFrontPicture(copy1);

--
Gitblit v1.7.1