| | |
| | | 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; |
| | |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Objects; |
| | | |
| | | @Api(tags = "用户进件(提现操作)/创建电子账簿") |
| | |
| | | private IUserService userService; |
| | | @Autowired |
| | | private IBankCardService bankCardService; |
| | | @Autowired |
| | | private DouGongBasicDataBiz douGongBasicDataBiz; |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/addElectronicLedger", method = RequestMethod.POST) |
| | |
| | | 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); |
| | | } |
| | |
| | | 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); |