package com.nova.sankuai.service.impl; import cn.hutool.core.util.IdUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.nova.sankuai.domain.api.channelUnion.ChannelUnionAutoResponse; import com.nova.sankuai.domain.api.channelUnion.ChannelUnionAutoUtil; import com.nova.sankuai.domain.api.channelUnion.ChannelUnionCollisionResponse; import com.nova.sankuai.domain.api.doudouqian.DdqUtil; import com.nova.sankuai.domain.api.hengyidai.response.HyGetOrderStatusResponse; import com.nova.sankuai.domain.api.huizhixin.HzxGetResponse; import com.nova.sankuai.domain.api.huizhixin.HzxResponse; import com.nova.sankuai.domain.api.huizhixin.HzxResponseData; import com.nova.sankuai.domain.api.huizhixin.HzxUtil; import com.nova.sankuai.domain.api.rongduoduo.RongDuoDuoResponse; import com.nova.sankuai.domain.api.rongduoduo.RongDuoDuoUtil; import com.nova.sankuai.domain.api.rongduoduo.SanKuaiCustomer; import com.nova.sankuai.domain.api.taojinhui.TjhAutoResponse; import com.nova.sankuai.domain.api.taojinhui.TjhCollisionResponse; import com.nova.sankuai.domain.api.taojinhui.TjhUtil; import com.nova.sankuai.domain.api.xinyeyoupin.XinYeYouPinUtil; import com.nova.sankuai.domain.api.xinyeyoupin.XyypResponse; import com.nova.sankuai.domain.api.xinyongfei.XinYongFeiResponse; import com.nova.sankuai.domain.api.xinyongfei.XinYongFeiUtil; import com.nova.sankuai.domain.api.yibeifenqi.YiBeiCheckUserResponseVO; import com.nova.sankuai.domain.api.yibeifenqi.YiBeiRegisterDTO; import com.nova.sankuai.domain.api.yibeifenqi.YiBeiRegisterResponseVO; import com.nova.sankuai.domain.api.yibeifenqi.YiBeiUtil; import com.nova.sankuai.domain.api.yinsheng.SerialGenerator; import com.nova.sankuai.domain.api.yixin.YXUtil; import com.nova.sankuai.domain.api.yixin.response.YxLoanResponse; import com.nova.sankuai.domain.api.zhongzan.RbResponse; import com.nova.sankuai.domain.api.zzxf.ZzxfResponse; import com.nova.sankuai.domain.dto.CapitalPushDto; import com.nova.sankuai.domain.entity.*; import com.nova.sankuai.domain.enums.CustomerUserBusinessTypeEnum; import com.nova.sankuai.domain.enums.capitalInfo.*; import com.nova.sankuai.domain.vo.RongDuoDuoOrderSubmitVo; import com.nova.sankuai.domain.vo.capitalflow.CapitalRepayEntryVo; import com.nova.sankuai.domain.vo.capitalresult.*; import com.nova.sankuai.infra.config.CommonException; import com.nova.sankuai.infra.constants.Constants; import com.nova.sankuai.infra.mapper.*; import com.nova.sankuai.infra.utils.ConstantsUtil; import com.nova.sankuai.infra.utils.ResultJson; import com.nova.sankuai.infra.utils.UserUtil; import com.nova.sankuai.infra.utils.ZzxfUtil; import com.nova.sankuai.infra.utils.eshidai.EsdUtil; import com.nova.sankuai.infra.utils.hht.HhtUtil; import com.nova.sankuai.infra.utils.hjqb.HjqbUtil; import com.nova.sankuai.infra.utils.mxc.MxcUtil; import com.nova.sankuai.infra.utils.qinghuayoupin.QingHuaYouPinUtil; import com.nova.sankuai.infra.utils.ryh.RyhUtil; import com.nova.sankuai.infra.utils.sms.FirstMessage; import com.nova.sankuai.infra.utils.sms.shandongMessage.ShanDongMessageSendUtil; import com.nova.sankuai.infra.utils.syh.SyhUtil; import com.nova.sankuai.infra.utils.zhd.ZhdUtil; import com.nova.sankuai.infra.utils.zhongzan.ZhongZanUtil; import com.nova.sankuai.infra.utils.zhxyp.ZhxypUtil; import com.nova.sankuai.security.HttpClientUtil; import com.nova.sankuai.security.UserDetail; import com.nova.sankuai.service.*; import lombok.AllArgsConstructor; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletRequest; import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; /** * @author weikangdi * @create 2022/5/7 */ @Service @AllArgsConstructor public class CustomerCapitalResultServiceImpl extends ServiceImpl implements ICustomerCapitalResultService { private final CustomerMapper customerMapper; private final YXUtil yxUtil; private final ZhongZanUtil zhongZanUtil; private final CustomerCapitalResultMapper capitalResultMapper; private final CapitalInfoMapper capitalInfoMapper; private final CustomerUserMapper customerUserMapper; private final XinYongFeiUtil xinYongFeiUtil; private static final Logger log = LoggerFactory.getLogger("capitalLogger"); private final HzxUtil hzxUtil; private final YiBeiUtil yiBeiUtil; private final ZzxfUtil zzxfUtil; private final MxcUtil mxcUtil; private final TjhUtil tjhUtil; private final XinYeYouPinUtil xinYeYouPinUtil; private final ChannelUnionAutoUtil channelUnionAutoUtil; private final DdqUtil doudouUtil; private final UnionloginProductMapper unionloginProductMapper; private final RongDuoDuoUtil rongDuoDuoUtil; private final ICapitalResultCommonService capitalResultCommonService; private final IHengYiDaiService hengYiDaiService; private final IXiaoBaiYouKaService xiaoBaiYouKaService; private final ITaoHuiHuaService taoHuiHuaService; private final SmsTemplateMapper smsMapper; private final ZhxypUtil zhxypUtil; private final QingHuaYouPinUtil qingHuaYouPinUtil; @Override public void sendSmsApprovalResultAdopt() { LocalDateTime endTime = LocalDateTime.now(); LocalDateTime startTime = LocalDateTime.now().minusHours(24); List result = capitalResultMapper.findCapitalApprovalResultAdopt(startTime, endTime); //授信通过后给用户发送短信 CustomerCapitalResult capitalResult; List okNotify = smsMapper.selectList(new LambdaQueryWrapper().eq(SmsTemplate::getCode, "CAPITAL_OK_NOTIFY")); for (CapitalApprovalResultAdoptVo vo : result) { if (StringUtils.isEmpty(vo.getAppName())) continue; String content = null; for (SmsTemplate template : okNotify) { if (Objects.equals(vo.getAppName(), template.getType())) { content = template.getContent(); try { if (vo.getTotalCredit() == null) { vo.setTotalCredit("0"); } content = content.replace("${customerUserName}", vo.getCustomerUserName()); content = content.replace("${totalCredit}", vo.getTotalCredit()); boolean success = ShanDongMessageSendUtil.sendMessage(vo.getCustomerUserPhone(), content); if (success) { log.info("手机号{" + vo.getCustomerUserPhone() + "},资方【" + vo.getCapitalName() + "】授信通知短信已发送"); capitalResult = new CustomerCapitalResult(); capitalResult.setId(vo.getId()); capitalResult.setIsSendSms(1); capitalResultMapper.updateById(capitalResult); } else { log.error("为资方授信成功的客户发送短信失败!手机好为:【" + vo.getCustomerUserPhone() + "】" + "资方为: " + vo.getCapitalName()); } } catch (Exception e) { log.error("资方授信通过后给用户发送短信异常", e); } } // else { // log.error("审批通过发送短信找不到AppName: {}", vo.getCustomerUserPhone()); // } } if (content == null){ log.error("审批通过发送短信找不到AppName: {} 用户手机号:{}", vo.getAppName(), vo.getCustomerUserPhone()); } } } @Override public void makeLoans() { LocalDateTime endTime = LocalDateTime.now(); LocalDateTime startTime = LocalDateTime.now().minusHours(24); List makeLoans = capitalResultMapper.makeLoans(startTime, endTime); //授信通过后给用户发送短信 CustomerCapitalResult capitalResult; List notify = smsMapper.selectList(new LambdaQueryWrapper().eq(SmsTemplate::getCode, "MAKE_LOAN_NOTIFY")); String content; for (CapitalMackLoanAdoptVo makeLoan : makeLoans) { if (StringUtils.isEmpty(makeLoan.getAppName())) continue; for (SmsTemplate tem : notify) { if (Objects.equals(makeLoan.getAppName(), tem.getType())) { content = tem.getContent(); content = content.replace("${customerUserName}", makeLoan.getCustomerUserName()); content = content.replace("${capitalName}", makeLoan.getCapitalName()); content = content.replace("${lastNumber}", StringUtils.substring(makeLoan.getLastNumber(), makeLoan.getLastNumber().length() - 3)); try { boolean success = ShanDongMessageSendUtil.sendMessage(makeLoan.getCustomerUserPhone(), content); if (success) { log.info("手机号{" + makeLoan.getCustomerUserPhone() + "},资方【" + makeLoan.getCapitalName() + "】授信通知短信已发送"); capitalResult = new CustomerCapitalResult(); capitalResult.setId(makeLoan.getId()); capitalResult.setMakeLoanSendSms(1); capitalResultMapper.updateById(capitalResult); } else { log.error("为资方资方放款客户发送短信失败!手机好为:【" + makeLoan.getCustomerUserPhone() + "】" + "资方为: " + makeLoan.getCapitalName()); } } catch (Exception e) { log.error("资方放款用户发送短信异常", e); } } } } } @Override public void notDrawMoney() { List notDrawMoneyVos = baseMapper.selectNotDrawMoneyList(); String content; for (NotDrawMoneyVo vo : notDrawMoneyVos) { content = "【卡大拿】尊敬的${name},您在${capitalName}申请的${totalCredit}元借款已通过审核。点 dldcredit.com/kdn 立即提取,以免额度过期。退订回T"; content = content.replace("${name}", vo.getName()); content = content.replace("${capitalName}", vo.getCapitalName()); content = content.replace("${totalCredit}", vo.getTotalCredit()); FirstMessage.sendNotDrawMoneyMessage(vo.getPhone(), content); } } /** * 标注:这里是撞库开始 */ @Override public void checkCapitalInfo(Customer customer, Integer material) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + "资方列表-撞库开始:" + material); try { CustomerUser customerUser = customerUserMapper.selectOne(Wrappers.lambdaQuery() .eq(CustomerUser::getPhone, customer.getPhone())); if (customerUser == null) { log.error("日志编号:" + logNumber + "资方列表-对应用户不存在"); } List result = capitalInfoMapper.selectList(Wrappers.lambdaQuery() .eq(CapitalInfo::getEnableFlag, 1)); List capitalResultList = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()).list(); Map> collect = null; if (capitalResultList != null && !capitalResultList.isEmpty()) { collect = capitalResultList.stream().collect(Collectors.groupingBy(CustomerCapitalResult::getCapitalInfoCode)); } log.info("日志编号:" + logNumber + " checkCapitalInfo:{} ", result); for (CapitalInfo capitalInfo : result) { try { int fundType = capitalInfo.getFundType().intValue(); log.info("日志编号:" + logNumber + "资方列表-撞库 fundType:" + fundType); if (CapitalTypeEnum.UNION.getCode().equals(capitalInfo.getType()) && fundType == 0) { // 标注:随易花撞库可以参考这里 log.info("资方:{} 开始撞库", capitalInfo.getName()); checkCustomerByChannelUnion(capitalInfo, customer, customerUser, logNumber); continue; } if (material != null && fundType == 0 && !(CapitalTypeEnum.LVDI_HALF.getCode().equals(capitalInfo.getType()))) {// continue; } // 2024-08-21新增:半流程不加入该流程 Integer collionMode = capitalInfo.getCollionMode(); if (!Objects.isNull(collionMode) && collionMode.intValue() == 1 && !"慧借".equals(capitalInfo.getName())) {// 半流程且不是慧借 continue; } if (collect != null && collect.get(capitalInfo.getCode()) != null && !collect.get(capitalInfo.getCode()).isEmpty()) { continue; } log.info("日志编号:" + logNumber + "资方列表-撞库 businessType:{} code:{} type:{}", customerUser.getBusinessType(), capitalInfo.getCode(), capitalInfo.getType()); if (CustomerUserBusinessTypeEnum.RONG_YI_TUI.getCode().equals(customerUser.getBusinessType())) { if (!(CapitalInfoTypeCodeEnum.YI_XIN.getCode().equals(capitalInfo.getCode()))) { continue; } // if (!(CapitalInfoTypeCodeEnum.YI_XIN.getCode().equals(capitalInfo.getCode()) // || CapitalInfoTypeCodeEnum.XIAO_HUA_QIAN_BAO.getCode().equals(capitalInfo.getCode()))) { // continue; // } } if (CapitalTypeEnum.COMMON.getCode().equals(capitalInfo.getType())) { if (CapitalInfoTypeCodeEnum.XIN_YONG_FEI.getCode().equals(capitalInfo.getCode())) { checkCustomerByXinYongFei(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.HUI_ZHI_XIN.getCode().equals(capitalInfo.getCode())) { checkCustomerByHuiZhiXin(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.YI_BEI.getCode().equals(capitalInfo.getCode())) { checkCustomerByYiBei(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.ZHONG_ZAN.getCode().equals(capitalInfo.getCode())) { checkCustomerByZhongZan(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.TAO_JIN_HUI.getCode().equals(capitalInfo.getCode())) { checkCustomerByTaoJinHui(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.XIN_YE_YOU_PIN.getCode().equals(capitalInfo.getCode())) { checkCustomerByXinYeYouPin(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.DOU_DOU_QIAN.getCode().equals(capitalInfo.getCode())) { checkCustomerByDouDouQian(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.RONG_DUO_DUO.getCode().equals(capitalInfo.getCode())) { checkCustomerByRongDuoDuo(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.HENG_YI_DAI.getCode().equals(capitalInfo.getCode())) { hengYiDaiService.checkCustomerByHengYiDai(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.XIAO_BAI_YOU_KA.getCode().equals(capitalInfo.getCode())) { xiaoBaiYouKaService.checkCustomerByXiaoBaiYouKa(capitalInfo, customer, customerUser, logNumber); } else if (CapitalInfoTypeCodeEnum.TAO_HUI_HUA.getCode().equals(capitalInfo.getCode())) { taoHuiHuaService.checkCustomerByTaoHuiHua(capitalInfo, customer, customerUser, logNumber); } } else if (CapitalTypeEnum.LVDI_HALF.getCode().equals(capitalInfo.getType())) { checkCustomerByLvdi(capitalInfo, customer, customerUser, logNumber); } else if (CapitalTypeEnum.UNION.getCode().equals(capitalInfo.getType()) || CapitalTypeEnum.UNION_HALF.getCode().equals(capitalInfo.getType())) { // 标注:随易花撞库可以参考这里 log.info("资方:{} 开始撞库", capitalInfo.getName()); checkCustomerByChannelUnion(capitalInfo, customer, customerUser, logNumber); } } catch (Exception e) { log.error("日志编号:" + logNumber + "资方列表批量撞库失败", e); } } } catch (Exception e) { log.error("日志编号:" + logNumber + "资方列表批量撞库失败", e); } log.info("日志编号:" + logNumber + "资方列表-撞库结束"); } /** * 标注:随易花可以参考这里 * @param customer 客户申请记录 */ @Override public void pushHjqb(Customer customer) { CustomerUser customerUser = customerUserMapper.selectOne(Wrappers.lambdaQuery() .eq(CustomerUser::getPhone, customer.getPhone())); if (customerUser == null) { log.error("日志编号:" + customer.getPhone() + "资方列表-对应用户不存在"); } hjqbUtil.hjqbPushNoIncome(customerUser, "HUI_JIE_QIAN_BAO"); } /** * 标注:随易花可以参考这里 * @param customer 客户申请记录 */ @Override public void autoPushCapitalInfo(Customer customer) { CustomerUser customerUser = customerUserMapper.selectOne(Wrappers.lambdaQuery() .eq(CustomerUser::getPhone, customer.getPhone())); if (customerUser == null) { log.error("日志编号:" + customer.getPhone() + "资方列表-对应用户不存在"); } List capitalInfos = capitalInfoMapper.gettVerifyAutoPushCapitalList(customerUser.getId(), customer.getId()); if (capitalInfos != null && capitalInfos.size() > 0) { // 2024-08-22新增:随机选择三个非半流程撞库 // 1.随机选择3个并从小到大排序 Collections.shuffle(capitalInfos); List list = capitalInfos.stream() .limit(3) .collect(Collectors.toList()).stream().sorted(Comparator.comparingInt(CapitalInfo::getSeq)).collect(Collectors.toList()); for (CapitalInfo capitalInfo : list) { //for (CapitalInfo capitalInfo : capitalInfos) { try { pushCustomer(capitalInfo, customerUser, null); } catch (Exception e) { log.error("日志编号:" + capitalInfo.getName() + "推送异常", e); } } } } /** * 从浏览器h5推送数据,不包括慧借钱包 * @param customer 客户申请记录 */ @Override public void h5AutoPushCapitalInfo(Customer customer) { CustomerUser customerUser = customerUserMapper.selectOne(Wrappers.lambdaQuery() .eq(CustomerUser::getPhone, customer.getPhone())); if (customerUser == null) { log.error("日志编号:" + customer.getPhone() + "资方列表-对应用户不存在"); } List capitalInfos = capitalInfoMapper.gettVerifyAutoPushCapitalList(customerUser.getId(), customer.getId()); if (capitalInfos != null && capitalInfos.size() > 0) { // 2024-08-22新增:随机选择三个非半流程撞库 // 1.随机选择3个并从小到大排序 Collections.shuffle(capitalInfos); List list = capitalInfos.stream() .limit(3) .collect(Collectors.toList()).stream().sorted(Comparator.comparingInt(CapitalInfo::getSeq)).collect(Collectors.toList()); for (CapitalInfo capitalInfo : list) { //for (CapitalInfo capitalInfo : capitalInfos) { try { CapitalPushDto capitalPushDto = new CapitalPushDto(); // capitalPushDto.setIsNotPushHjqb(true); pushCustomer(capitalInfo, customerUser, capitalPushDto); } catch (Exception e) { log.error("日志编号:" + capitalInfo.getName() + "推送异常", e); } } } } /** * 检测用户信息 * * @param request * @return */ @Override public CustomerUser checkUser(HttpServletRequest request) { String token = request.getHeader("Authorization"); UserDetail user = UserUtil.getUser(token); if (user == null) throw new CommonException("用户Token无效"); CustomerUser customerUser = customerUserMapper.selectById(user.getId()); if (customerUser == null) throw new CommonException("用户不存在"); return customerUser; } @Override @Transactional(rollbackFor = Exception.class) public CustomerCapitalResult checkCustomerByLvdi(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库开始"); CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } try { if (customerUser.getTestFlag() != null && customerUser.getTestFlag()) { log.info("日志编号:" + logNumber + "此用户为测试用户,不推送给" + capitalInfo.getName()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } else { UUID uuid = UUID.randomUUID(); String creditNo = uuid.toString().replace("-", ""); log.info("日志编号:" + logNumber + capitalInfo.getName() + "对接原始撞库数据" + customer.toString()); log.info("日志编号:" + logNumber + "资方信息表" + capitalInfo.toString()); log.info(String.valueOf(capitalInfo.getId() == 4L)); capitalResult.setCreditNo(creditNo); // 绿地初筛接口 // 容易花不推送 RbResponse rbResponse = null; if (capitalInfo.getId() == 1L){//众赞 rbResponse = zhongZanUtil.checkUser(capitalInfo, customer, customerUser); }else if(capitalInfo.getId() == 4L && capitalInfo.getAcquisitionSwitch().equals(1)){//轻花优品 rbResponse = qingHuaYouPinUtil.checkUser(capitalInfo, customer, customerUser); } if (!Objects.isNull(rbResponse)) { if ("0".equals(rbResponse.getCode()) || "200".equals(rbResponse.getCode())) {//为了适配轻花优品加了200 log.info("日志编号:" + logNumber + " " + capitalInfo.getName() + "初筛接口撞库:准入"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); } else { log.info("日志编号:" + logNumber + " " + capitalInfo.getName() + "初筛接口撞库:拒绝"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } }else { log.error("日志编号:" + logNumber + capitalInfo.getName() + "初筛接口撞库:返回请求值为空"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } /*YxApplyCheckResponse yxCheckResponse = yxUtil.yxApplyCheck(creditNo, customer.getName(), customer.getIdCard(), customer.getPhone(), String.valueOf(customerUser.getId()), yxUtil.getFunding(capitalInfo.getCode()), log, logNumber); if (yxCheckResponse != null) { // 请求成功并且准入 if (yxCheckResponse.isSuccess() && "01".equals(yxCheckResponse.getApprovalResult())) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "初筛接口撞库:准入"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); } else { log.info("日志编号:" + logNumber + capitalInfo.getName() + "初筛接口撞库:拒绝"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } } else { log.error("日志编号:" + logNumber + capitalInfo.getName() + "初筛接口撞库:返回请求值为空"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); }*/ } } catch (Exception e) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); log.error("日志编号:" + logNumber + capitalInfo.getName() + "初筛接口撞库失败", e); } if (CustomerUserBusinessTypeEnum.RONG_YI_TUI.getCode().equals(customerUser.getBusinessType())) { capitalResult.setCapitalResultSourceCode(CapitalResultSourceCodeEnum.RONG_YI_TUI.getCode()); } capitalResultMapper.insert(capitalResult); log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库结束"); return capitalResult; } // @Override /** * 于2022-11-29新增: * 标注:随易花可以参考这里 * @param isNotCheckResult 若为true则不需要判断approval_result或check_result为1 * @return */ @Transactional(rollbackFor = Exception.class) public LvdiPushResultVo pushCustomerByLvdi(CapitalInfo capitalInfo, CustomerUser customerUser, String platform, boolean isNotCheckResult) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + capitalInfo.getName() + "对接流程开始"); LvdiPushResultVo pushResultVo = new LvdiPushResultVo(); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); log.info("日志编号:" + logNumber + customer.getId()+","+customerUser.getId()+","+capitalInfo.getCode()); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCheckResult, 1) .eq(CustomerCapitalResult::getCapitalInfoCode, capitalInfo.getCode()) .one(); if (capitalResult == null) { throw new CommonException("资方对接结果不存在"); } if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { pushResultVo.setCheckResult(true); } else { pushResultVo.setCheckResult(false); } if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "数据推送开始"); capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); try { //绿地返回解密 customer.setCreditNo(capitalResult.getCreditNo()); boolean canPush = true; /*if (CapitalInfoTypeCodeEnum.PU_RONG_HUA.getCode().equals(capitalInfo.getCode())) { boolean filter = hengYiDaiService.filterCustomerByHengYidai(customer, capitalInfo, logNumber); if (!filter) { canPush = false; capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); wrapper.set(CustomerCapitalResult::getFailedReason, "不满足推送要求,进行内部过滤"); update(wrapper); } }*/ String approvalStatus =""; if (canPush) { // 授信 boolean isSucc = false; if(capitalInfo.getId() == 1L){//众赞 isSucc = zhongZanUtil.pushProfile(customer); }else if(capitalInfo.getId() == 4L && capitalInfo.getAcquisitionSwitch().equals(1)){//轻花 RbResponse rbResponse = qingHuaYouPinUtil.pushProfile(customer); cn.hutool.json.JSONObject data = rbResponse.getData(); approvalStatus = (String) data.get("approvalStatus"); if("200".equals(rbResponse.getCode())){ isSucc = true; } } if (isSucc) { log.info("日志编号:" + logNumber + " " + capitalInfo.getName() + "授信申请成功"); //保存绿地授权编号 customerUserMapper.update(null, Wrappers.lambdaUpdate() .set(CustomerUser::getCreditNo, capitalResult.getCreditNo()) .eq(CustomerUser::getId, customerUser.getId())); if(capitalInfo.getId() == 4L){ log.info("日志编号:" + logNumber + ",id=" + capitalInfo.getId() + "授信申请成功"); if ("AUDIT_PASS".equals(approvalStatus)){ capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode()); capitalResult.setThirdOrderStatus(HyGetOrderStatusResponse.STATUS_AUDIT_SUCCESS); }else if ("AUDITING".equals(approvalStatus)){ capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_WAIT.getCode()); capitalResult.setThirdOrderStatus(HyGetOrderStatusResponse.STATUS_AUDIT_WAIT); }else if ("AUDIT_REJECT".equals(approvalStatus)){ capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REFUSE.getCode()); capitalResult.setThirdOrderStatus(HyGetOrderStatusResponse.STATUS_AUDIT_FAIL); } }else { log.info("日志编号:" + logNumber + ",其他" + capitalInfo.getId() + "授信申请成功"); capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_WAIT.getCode()); } LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); log.info("日志编号:" + logNumber + ",CustomerCapitalResult" + capitalResult.getThirdOrderStatus()); } else { if(capitalInfo.getId() == 4L){ capitalResult.setThirdOrderStatus(HyGetOrderStatusResponse.STATUS_AUDIT_FAIL); capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REFUSE.getCode()); }else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); } log.error("日志编号:" + logNumber + capitalInfo.getName() + "授信申请失败"); } /*YXResponse yxResponse = yxUtil.yxCreditApply(customer, String.valueOf(customerUser.getId()), yxUtil.getFunding(capitalInfo.getCode()), log, logNumber); if (yxResponse != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "授权申请返回结果" + yxResponse.toString()); if (yxResponse.isSuccess()) { //保存绿地授权编号 customerUserMapper.update(null, Wrappers.lambdaUpdate() .set(CustomerUser::getCreditNo, capitalResult.getCreditNo()) .eq(CustomerUser::getId, customerUser.getId())); capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_WAIT.getCode()); } else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); log.error("日志编号:" + logNumber + capitalInfo.getName() + "授权申请被拒绝" + yxResponse.toString()); } LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); } else { log.error("日志编号:" + logNumber + capitalInfo.getName() + "授权申请返回结果为空"); throw new CommonException("授权申请返回结果为空"); }*/ } } catch (Exception e) { log.error("日志编号:" + logNumber + capitalInfo.getName() + "授信申请请求失败", e); throw new CommonException("请求异常"); } log.info("日志编号:" + logNumber + capitalInfo.getName() + "数据推送结束"); } // 2022-11-29新增:不需要判断ApprovalResult为1 boolean impl = false;// 是否要执行获取url动作 if (isNotCheckResult) { impl = true; } else { if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult()) && capitalResult.getCapitalInfoId() != 4L ) { impl = true; } } // 完 // 2022-11-28修改:注释掉 // if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult())) { if (impl) { try { YxLoanResponse response = yxUtil.yxGetLoanUrl(capitalResult.getCustomerUserId().toString(), capitalResult.getCreditNo(), platform, yxUtil.getFunding(capitalResult.getCapitalInfoCode()), log, logNumber); if (response != null) { if (response.isSuccess()) { pushResultVo.setUrl(response.getReturnUrl()); pushResultVo.setUrlType(response.getUrlType()); } } } catch (Exception e) { log.error("日志编号:" + logNumber + capitalInfo.getName() + "获取借贷链接失败", e); } } log.info("日志编号:" + logNumber + capitalInfo.getName() + "对接流程结束"); return pushResultVo; } @Transactional(rollbackFor = Exception.class) @Override public CustomerCapitalResult checkCustomerByXinYongFei(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { log.info("日志编号:" + logNumber + "信用飞撞库开始"); CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } try { XinYongFeiResponse xinYongFeiResponse = xinYongFeiUtil.collisionLibraryRequest(customerUser.getPhone()); if (xinYongFeiResponse == null) { log.error("日志编号:" + logNumber + "信用飞错误,撞库对接返回为空"); throw new CommonException("信用飞错误,撞库对接失败"); } else { if (xinYongFeiResponse.getCode() == 0) { log.info("日志编号:" + logNumber + "信用飞,撞库对接信息:{}", xinYongFeiResponse.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); } else { log.error("日志编号:" + logNumber + "信用飞错误,撞库对接失败:{}", xinYongFeiResponse.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } } } catch (Exception e) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); log.error("日志编号:" + logNumber + "信用飞错误,撞库接口异常:", e); } capitalResultMapper.insert(capitalResult); log.info("日志编号:" + logNumber + "信用飞撞库结束"); return capitalResult; } // @Override /** * 于2022-11-29新增: * * @param isNotCheckResult 若为true则不需要判断approval_result或check_result为1 * @return */ @Transactional(rollbackFor = Exception.class) public XinYongFeiPushResultVo pushCustomerByXinYongFei(CapitalInfo capitalInfo, CustomerUser customerUser, boolean isNotCheckResult) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + "信用飞对接流程开始"); XinYongFeiPushResultVo pushResultVo = new XinYongFeiPushResultVo(); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, CapitalInfoTypeCodeEnum.XIN_YONG_FEI.getCode()).one(); if (capitalResult == null) { log.info("日志编号:" + logNumber + "信用飞资方对接结果不存在"); throw new CommonException("资方对接结果不存在"); } if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { pushResultVo.setCheckResult(true); // pushResultVo.setUrl(xinYongFeiUtil.getDownloadAddress()); } else { pushResultVo.setCheckResult(false); } // 于2022-11-29新增 if (isNotCheckResult) {// 不需要判断CheckResult是否为1 pushResultVo.setUrl(xinYongFeiUtil.getDownloadAddress()); } else { if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { pushResultVo.setUrl(xinYongFeiUtil.getDownloadAddress()); } } if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode()); LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); } log.info("日志编号:" + logNumber + "信用飞对接流程结束"); return pushResultVo; } @Override @Transactional(rollbackFor = Exception.class) public CustomerCapitalResult checkCustomerByHuiZhiXin(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { log.info("日志编号:" + logNumber + "汇智信撞库开始"); CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } // 汇智信撞库判断是否有身份证正反面图片,如果没有撞库失败 if (StringUtils.isBlank(customer.getIdCardBackPath()) || StringUtils.isBlank(customer.getIdCardFrontPath())) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); capitalResultMapper.insert(capitalResult); return capitalResult; } try { HzxResponse hzxResponse = hzxUtil.checkUser(customer.getIdCard(), customerUser.getPhone(), customerUser.getName()); if (hzxResponse == null) { log.error("日志编号:" + logNumber + "汇智信错误,撞库对接返回为空"); throw new CommonException("汇智信错误,撞库对接失败"); } else { if ("0000".equals(hzxResponse.getCode()) && "000".equals(hzxResponse.getData().getCode())) { log.info("日志编号:" + logNumber + "汇智信,撞库对接信息:{}", hzxResponse.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); //生成订单号,36位字符 String orderNo = ConstantsUtil.getOrder(); capitalResult.setCreditNo(orderNo); } else { log.error("日志编号:" + logNumber + "汇智信错误,撞库对接失败:{}", hzxResponse.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } } } catch (Exception e) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); log.error("日志编号:" + logNumber + "汇智信错误,撞库接口异常:", e); } capitalResultMapper.insert(capitalResult); log.info("日志编号:" + logNumber + "汇智信撞库结束"); return capitalResult; } // @Override /** * 于2022-11-29新增: * * @param isNotCheckResult 若为true则不需要判断approval_result或check_result为1 * @return */ public HuiZhiXinPushResultVo pushCustomerByHuiZhiXin(CapitalInfo capitalInfo, CustomerUser customerUser, boolean isNotCheckResult) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + "汇智信对接流程开始"); HuiZhiXinPushResultVo huiZhiXinPushResultVo = new HuiZhiXinPushResultVo(); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, CapitalInfoTypeCodeEnum.HUI_ZHI_XIN.getCode()).one(); if (capitalResult == null) { log.info("日志编号:" + logNumber + "汇智信资方对接结果不存在"); throw new CommonException("资方对接结果不存在"); } if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { huiZhiXinPushResultVo.setCheckResult(true); } else { huiZhiXinPushResultVo.setCheckResult(false); } if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "汇智信数据推送开始"); capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); String orderNo = capitalResult.getCreditNo(); log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "订单号:" + orderNo); if (StringUtils.isEmpty(orderNo)) { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "汇智信订单号为空"); throw new CommonException("订单号为空"); } try { if (StringUtils.isBlank(customer.getRelationshipName()) || StringUtils.isBlank(customer.getRelationshipPhone()) || StringUtils.isBlank(customer.getFacePhotoPath()) || StringUtils.isBlank(customer.getContactName()) || StringUtils.isBlank(customer.getContactPhone()) || StringUtils.isBlank(customer.getCompanyPhone()) || StringUtils.isBlank(customer.getCompanyName()) || StringUtils.isBlank(customer.getCompanyCity()) || StringUtils.isBlank(customer.getCompanyProvince()) || StringUtils.isBlank(customer.getCompanyCity()) || StringUtils.isBlank(customer.getMaritalStatus())) { log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "不满足汇智信推送要求"); return huiZhiXinPushResultVo; } HzxResponse apply = hzxUtil.apply(orderNo); if (apply != null) { log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "汇智信授权申请返回结果" + apply.toString()); if (apply.isSuccess()) { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode()); } else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "汇智信授权申请失败" + apply.toString()); } LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); } else { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "汇智信授权申请返回结果为空"); throw new CommonException("授权申请返回结果为空"); } } catch (Exception e) { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "汇智信授权申请失败", e); throw new CommonException("请求异常"); } log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "汇智信数据推送结束"); } // 2022-11-29新增:不需要判断ApprovalResult为1 boolean impl = false;// 是否要执行获取url动作 if (isNotCheckResult) { impl = true; } else { if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult())) { impl = true; } } // 完 // 2022-11-28修改:注释掉 // if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult())) { if (impl) { try { HzxGetResponse partnerUrl = hzxUtil.getPartnerUrl(capitalResult.getCreditNo(), null); if (partnerUrl != null) { if ("0000".equals(partnerUrl.getCode())) { huiZhiXinPushResultVo.setUrl(partnerUrl.getData().getUrl()); } } } catch (Exception e) { log.error("日志编号:" + logNumber + capitalInfo.getName() + "获取借贷链接失败", e); } } log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "汇智信对接流程结束"); return huiZhiXinPushResultVo; } @Override public CustomerCapitalResult checkCustomerByTaoJinHui(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { log.info("日志编号:" + logNumber + "淘金荟撞库开始"); CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } try { TjhCollisionResponse tjhCollisionResponse = tjhUtil.checkUser(customer.getPhone(), customer.getOs(), customer.getDeviceBrand(), customer.getDeviceOsVersion(), customer.getSystemModel()); if (tjhCollisionResponse == null) { log.error("日志编号:" + logNumber + "淘金荟错误,撞库对接返回为空"); throw new CommonException("淘金荟错误,撞库对接失败"); } else { if (1 == tjhCollisionResponse.getStatus()) { log.info("日志编号:" + logNumber + "淘金荟,撞库对接信息:{}", tjhCollisionResponse.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); } else { log.error("日志编号:" + logNumber + "淘金荟错误,撞库对接失败:{}", tjhCollisionResponse.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } } } catch (Exception e) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); log.error("日志编号:" + logNumber + "淘金荟错误,撞库接口异常:", e); } capitalResultMapper.insert(capitalResult); log.info("日志编号:" + logNumber + "淘金荟撞库结束"); return capitalResult; } // @Override /** * 于2022-11-29新增: * * @param isNotCheckResult 若为true则不需要判断approval_result或check_result为1 * @return */ public TaoJinHuiPushResultVo pushCustomerByTaoJinHui(CapitalInfo capitalInfo, CustomerUser customerUser, boolean isNotCheckResult) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + "淘金荟对接流程开始"); TaoJinHuiPushResultVo taoJinHuiPushResultVo = new TaoJinHuiPushResultVo(); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, CapitalInfoTypeCodeEnum.TAO_JIN_HUI.getCode()).one(); if (capitalResult == null) { log.info("日志编号:" + logNumber + "淘金荟资方对接结果不存在"); throw new CommonException("资方对接结果不存在"); } if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { taoJinHuiPushResultVo.setCheckResult(true); } else { taoJinHuiPushResultVo.setCheckResult(false); } String url = null; TjhAutoResponse register = null; log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",淘金荟数据推送开始"); try { register = tjhUtil.register(customer.getPhone(), customer.getOs(), customer.getDeviceBrand(), customer.getDeviceOsVersion(), customer.getSystemModel()); if (register != null) { // if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult()) && register.getUrl() != null) { // 2022-11-29新增:不需要判断ApprovalResult(为1 if (isNotCheckResult) { if (register.getUrl() != null) { url = register.getUrl(); } } else { if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult()) && register.getUrl() != null) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",淘金荟数据返回地址为:" + register.getUrl()); url = register.getUrl(); } } log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "淘金荟授权申请返回结果" + register.toString()); if (1 == register.getResult()) { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode()); } else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "淘金荟授权申请失败" + register.toString()); } } else { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "淘金荟授权申请返回结果为空"); throw new CommonException("授权申请返回结果为空"); } } catch (Exception e) { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "淘金荟授权申请失败", e); throw new CommonException("请求异常"); } log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "淘金荟数据推送结束"); if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",淘金荟数据推送结束"); } if (url != null) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",淘金荟数据返回地址为:" + url); taoJinHuiPushResultVo.setUrl(url); } else { // 2022-11-29新增:不需要判断ApprovalResult为1 if (isNotCheckResult) { if (register != null && register.getUrl() != null) { taoJinHuiPushResultVo.setUrl(register.getUrl()); } } else { if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult())) { if (register != null && register.getUrl() != null) { taoJinHuiPushResultVo.setUrl(register.getUrl()); } } } // 完 } /*else if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult())) { if (register != null && register.getUrl() != null) { taoJinHuiPushResultVo.setUrl(register.getUrl()); } }*/ log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",淘金荟对接流程结束"); return taoJinHuiPushResultVo; } @Override public CustomerCapitalResult checkCustomerByYiBei(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { log.info("日志编号:" + logNumber + "易贝分期撞库开始"); CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } try { YiBeiCheckUserResponseVO yiBeiCheckUserResponseVO = yiBeiUtil.checkUser(customerUser.getPhone()); if (yiBeiCheckUserResponseVO == null) { log.error("日志编号:" + logNumber + ",用户手机号为:" + customer.getPhone() + ",易贝分期错误,撞库对接返回为空"); throw new CommonException("易贝分期错误,撞库对接失败"); } else { if (1 == yiBeiCheckUserResponseVO.getStatus() && 1 == yiBeiCheckUserResponseVO.getData().getFilterResult()) { log.info("日志编号:" + logNumber + ",用户手机号为:" + customer.getPhone() + ",易贝分期,撞库对接信息:{}", yiBeiCheckUserResponseVO.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); } else { log.error("日志编号:" + logNumber + ",用户手机号为:" + customer.getPhone() + ",易贝分期错误,撞库对接失败:{}", yiBeiCheckUserResponseVO.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } } } catch (Exception e) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); log.error("日志编号:" + logNumber + ",用户手机号为:" + customer.getPhone() + ",易贝分期错误,撞库接口异常:", e); } capitalResultMapper.insert(capitalResult); log.info("日志编号:" + logNumber + ",用户手机号为:" + customer.getPhone() + ",易贝分期撞库结束"); return capitalResult; } // @Override /** * 于2022-11-29新增: * * @param isNotCheckResult 若为true则不需要判断approval_result或check_result为1 * @return */ public YiBeiPushResultVo pushCustomerByYiBei(CapitalInfo capitalInfo, CustomerUser customerUser, boolean isNotCheckResult) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + "易贝分期对接流程开始"); YiBeiPushResultVo yiBeiPushResultVo = new YiBeiPushResultVo(); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, CapitalInfoTypeCodeEnum.YI_BEI.getCode()).one(); if (capitalResult == null) { log.info("日志编号:" + logNumber + "易贝分期资方对接结果不存在"); throw new CommonException("资方对接结果不存在"); } if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { yiBeiPushResultVo.setCheckResult(true); } else { yiBeiPushResultVo.setCheckResult(false); } YiBeiRegisterResponseVO register = null; log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",易贝分期数据推送开始"); try { YiBeiRegisterDTO yiBeiRegisterDTO = new YiBeiRegisterDTO(); yiBeiRegisterDTO.setName(customer.getName()); yiBeiRegisterDTO.setPhone(customer.getPhone()); yiBeiRegisterDTO.setIdNo(null); register = yiBeiUtil.register(yiBeiRegisterDTO); if (register != null) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",易贝分期授权申请返回结果" + register.toString()); if (1 == register.getStatus() && 1 == register.getData().getCode()) { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode()); if (register.getData().getValidRegistration() != null) { capitalResult.setValidRegistration(register.getData().getValidRegistration()); } } else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); log.error("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",易贝分期授权申请失败" + register.toString()); } } else { log.error("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",易贝分期授权申请返回结果为空"); capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); } } catch (Exception e) { log.error("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",易贝分期授权申请失败", e); throw new CommonException("请求异常"); } if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); if (capitalResult.getValidRegistration() != null) { wrapper.set(CustomerCapitalResult::getValidRegistration, capitalResult.getValidRegistration()); } update(wrapper); log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",易贝分期数据推送结束"); } // 2022-11-29新增:不需要判断ApprovalResult为1 boolean impl = false;// 是否要执行获取url动作 if (isNotCheckResult) { impl = true; } else { if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult())) { impl = true; } } // 完 // 2022-11-28修改:注释掉 // if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult())) { if (impl) { if (register != null && register.getData() != null) { String url = register.getData().getUrl(); if (1 == register.getStatus() && 1 == register.getData().getCode() && !StringUtils.isEmpty(url)) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",易贝分期数据返回地址为:" + url); yiBeiPushResultVo.setUrl(url); } } } log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ",易贝分期对接流程结束"); return yiBeiPushResultVo; } @Override public CustomerCapitalResult checkCustomerByZhongZan(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } log.info("日志编号:" + logNumber + "中赞信服,撞库默认成功"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); capitalResultMapper.insert(capitalResult); return capitalResult; } @Override public ZhongZanPushResultVo pushCustomerByZhongZan(CapitalInfo capitalInfo, CustomerUser customerUser) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + "中赞信服对接流程开始"); ZhongZanPushResultVo zhongZanPushResultVo = new ZhongZanPushResultVo(); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",中赞信服数据推送开始"); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, CapitalInfoTypeCodeEnum.ZHONG_ZAN.getCode()).one(); if (capitalResult == null) { log.info("日志编号:" + logNumber + "中赞信服资方对接结果不存在"); throw new CommonException("资方对接结果不存在"); } if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { zhongZanPushResultVo.setCheckResult(true); } else { zhongZanPushResultVo.setCheckResult(false); } if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "中赞信服数据推送开始"); capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); try { ZzxfResponse apply = zzxfUtil.dataImport(customer); if (apply != null) { log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",中赞信服授权申请返回结果" + apply.toString()); if (0 == apply.getResponseCode()) { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode()); } else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); log.error("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",中赞信服授权申请失败" + apply.toString()); } LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); } else { log.error("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",中赞信服授权申请返回结果为空"); throw new CommonException("授权申请返回结果为空"); } } catch (Exception e) { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "中赞信服授权申请失败", e); throw new CommonException("请求异常"); } log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",中赞信服数据推送结束"); } log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",中赞信服对接流程结束"); return zhongZanPushResultVo; } @Override public CustomerCapitalResult checkCustomerByDouDouQian(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { log.info("日志编号:" + logNumber + "豆豆钱撞库开始"); CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } try { boolean checkResult = false; boolean md5Check = doudouUtil.apiMd5Check(customer); if (md5Check) { log.info("日志编号:" + logNumber + "豆豆钱,撞库成功" + customerUser.getPhone()); boolean register = doudouUtil.register(customer); if (register) { log.info("日志编号:" + logNumber + "豆豆钱,注册成功" + customerUser.getPhone()); checkResult = true; } } if (checkResult) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); } else { log.info("日志编号:" + logNumber + "豆豆钱,撞库失败"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } } catch (Exception e) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); log.error("日志编号:" + logNumber + "豆豆钱,撞库失败,接口异常:", e); } capitalResultMapper.insert(capitalResult); log.info("日志编号:" + logNumber + "豆豆钱撞库结束"); return capitalResult; } // @Override public DouDouQianOrderSubmitVo pushCustomerByDouDouQian(CapitalInfo capitalInfo, CustomerUser customerUser, boolean isNotCheckResult) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + "豆豆钱对接流程开始"); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, CapitalInfoTypeCodeEnum.DOU_DOU_QIAN.getCode()).one(); DouDouQianOrderSubmitVo res = new DouDouQianOrderSubmitVo(); if (capitalResult == null) { log.info("日志编号:" + logNumber + "豆豆钱交单进件对接结果不存在"); throw new CommonException("资方对接结果不存在"); } res.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())); res.setHasBindCard(true); res.setUrl(doudouUtil.downloadUrl); if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { if (capitalResult.getHasBindCard() == null || capitalResult.getHasBindCard() == 0) { res.setHasBindCard(false); if (!isNotCheckResult) {// 于2022-11-29新增:若不需要判断 res.setUrl(null); } return res; } else { log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "豆豆钱交单进件开始"); capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); try { String logPrefix = "日志编号:" + logNumber + ",手机号为:" + customer.getPhone(); boolean submitOrderFlag = doudouUtil.submitOrder(customer, logPrefix); if (submitOrderFlag) { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_WAIT.getCode()); } else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); } LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); } catch (Exception e) { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "豆豆钱交单进件失败", e); throw new CommonException("请求异常"); } log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",豆豆钱交单进件结束"); } } return res; } /** * 融多多撞库 * * @param capitalInfo * @param customer * @param customerUser * @param logNumber * @return */ @Transactional(rollbackFor = Exception.class) @Override public CustomerCapitalResult checkCustomerByRongDuoDuo(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { log.info("日志编号:" + logNumber + "融多多撞库开始"); CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } try { String md5Check = rongDuoDuoUtil.apiMd5Check(customer); if (RongDuoDuoUtil.getResponse(md5Check).getStatus() == 200) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); log.info("日志编号:" + logNumber + "融多多,撞库成功" + customerUser.getPhone()); } else { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); log.error("日志编号:" + logNumber + "融多多,撞库失败", customerUser.getPhone()); } } catch (Exception e) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); log.error("日志编号:" + logNumber + "融多多,撞库失败,接口异常:", e); } capitalResultMapper.insert(capitalResult); log.info("日志编号:" + logNumber + "融多多撞库结束"); return capitalResult; } /** * 推送数据给融多多 * * @param capitalInfo * @param customerUser * @return */ @Transactional(rollbackFor = Exception.class) @Override public RongDuoDuoOrderSubmitVo pushCustomerByRongDuoDuo(CapitalInfo capitalInfo, CustomerUser customerUser) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + "融多多对接流程开始"); RongDuoDuoOrderSubmitVo rongDuoDuoOrderSubmitVo = new RongDuoDuoOrderSubmitVo(); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",融多多数据推送开始"); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, CapitalInfoTypeCodeEnum.RONG_DUO_DUO.getCode()).one(); if (capitalResult == null) { log.info("日志编号:" + logNumber + "融多多资方对接结果不存在"); throw new CommonException("资方对接结果不存在"); } if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { rongDuoDuoOrderSubmitVo.setCheckResult(true); } else { rongDuoDuoOrderSubmitVo.setCheckResult(false); } if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "融多多数据推送开始"); capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); try { SanKuaiCustomer cstm = rongDuoDuoUtil.parseParam(customer); String param = RongDuoDuoUtil.encrypt(JSONObject.toJSONString(cstm)); log.info("日志编号:" + logNumber + "加密参数:" + param); String result = HttpClientUtil.getInstance().postJsonData(rongDuoDuoUtil.url2, JSONObject.toJSONString(param)); log.info("日志编号:" + logNumber + "融多多推送数返回:" + result); RongDuoDuoResponse response = JSON.parseObject(result, RongDuoDuoResponse.class); if (response != null) { log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",融多多授权申请返回结果" + response.toString()); if (0 == response.getStatus()) { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode()); } else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); log.error("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",融多多授权申请失败" + response.toString()); } LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); } else { log.error("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",融多多授权申请返回结果为空"); throw new CommonException("授权申请返回结果为空"); } } catch (Exception e) { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "融多多授权申请失败", e); throw new CommonException("请求异常"); } log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",融多多数据推送结束"); } log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",融多多对接流程结束"); return rongDuoDuoOrderSubmitVo; } @Override public CustomerCapitalResult checkCustomerByXinYeYouPin(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } log.info("日志编号:" + logNumber + "信业优品,撞库默认成功"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); String order = SerialGenerator.getOrder(); capitalResult.setCreditNo(order); capitalResultMapper.insert(capitalResult); return capitalResult; } @Override public XinYeYouPinResultVo pushCustomerByXinYeYouPin(CapitalInfo capitalInfo, CustomerUser customerUser) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + "信业优品对接流程开始"); XinYeYouPinResultVo xinYeYouPinResultVo = new XinYeYouPinResultVo(); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",信业优品数据推送开始"); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, CapitalInfoTypeCodeEnum.XIN_YE_YOU_PIN.getCode()).one(); if (capitalResult == null) { log.info("日志编号:" + logNumber + "信业优品资方对接结果不存在"); throw new CommonException("资方对接结果不存在"); } if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { xinYeYouPinResultVo.setCheckResult(true); } else { xinYeYouPinResultVo.setCheckResult(false); } if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "信业优品数据推送开始"); capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); String creditNo = capitalResult.getCreditNo(); try { XyypResponse push = xinYeYouPinUtil.push(customer, creditNo); if (push != null) { log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",信业优品授权申请返回结果" + push.toString()); if (200 == push.getCode()) { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode()); } else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); log.error("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",信业优品授权申请失败" + push.toString()); } LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); } else { log.error("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",信业优品授权申请返回结果为空"); throw new CommonException("授权申请返回结果为空"); } } catch (Exception e) { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "信业优品授权申请失败", e); throw new CommonException("请求异常"); } log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",信业优品数据推送结束"); } log.info("日志编号:" + logNumber + ",手机号为:" + customer.getPhone() + ",信业优品对接流程结束"); return xinYeYouPinResultVo; } /** * 标注:这里是撞库,面向产品方撞库不联登模式,对接我们文档,只推送电话号码 * 标注:随易花可参考这里,随易花相当于这里的撞库 * */ @Override public CustomerCapitalResult checkCustomerByChannelUnion(CapitalInfo capitalInfo, Customer customer, CustomerUser customerUser, String logNumber) { log.info("日志编号:" + logNumber + ",手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "撞库开始"); CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId()); capitalResult.setStatus(CapitalResultStatusEnum.CHECK.getCode()); CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber); log.info("日志编号:" + logNumber + ",手机号:" + customer.getPhone() + ",{}" + filterResult); if (filterResult != null) { log.info("日志编号:" + logNumber + capitalInfo.getName() + "撞库时不满足资方信息筛选条件,撞库失败"); return filterResult; } // if (StringUtils.isEmpty(capitalInfo.getAppId())) { // log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "联登数据错误,缺少appid"); // throw new CommonException("该资方不为撞库联登模式"); // } try { if (CapitalInfoTypeCodeEnum.DOU_DOU_QIAN.getCode().equals(capitalInfo.getCode()) || "YI_XIN_QIAN_BAO".equals(capitalInfo.getCode())) {// 商品-本APP或芒小橙 String url = null; if (CapitalInfoTypeCodeEnum.DOU_DOU_QIAN.getCode().equals(capitalInfo.getCode())) { url = zhxypUtil.check(customer.getIdCard(), customer.getPhone(), customer.getName()); } else { url = mxcUtil.push(customer.getIdCard(), customer.getPhone(), customer.getName()); } if (StringUtils.isNotBlank(url)) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + ", " + capitalInfo.getName() + " 撞库联登成功"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); capitalResult.setPopupDdq(0); capitalResult.setNotificationUrl(url); } else { log.error("日志编号:" + logNumber + ",手机号:" + customer.getPhone() + ", " + capitalInfo.getName() + " 撞库联登失败"); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } } else { // 若是容易花,独立处理,id=phone+System.currentTimeMillis(),返回结果是订单编号loanNo和CPS70价格yqgAmount UnionloginProduct unionloginProduct = unionloginProductMapper.selectOne(new LambdaQueryWrapper().eq(UnionloginProduct::getAppId, capitalInfo.getAppId())); if (unionloginProduct == null) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "数据错误,撞库联登模式数据为空"); throw new CommonException("错误,资方不存在"); } ChannelUnionCollisionResponse channelUnionCollisionResponse = channelUnionAutoUtil.getCollision(unionloginProduct.getCaptitalName(), unionloginProduct.getCaptitalPublicKey(), unionloginProduct.getCaptitalUrl(), unionloginProduct.getAppId(), customer.getPhone(), customer.getIdCard(), customer.getName(), customer.getCityName(), capitalInfo.getCode()); if (channelUnionCollisionResponse == null) { log.error("日志编号:" + logNumber + ",手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "错误,撞库对接返回为空"); throw new CommonException(capitalInfo.getName() + "错误,撞库对接失败"); } else { if (200 == channelUnionCollisionResponse.getCode() && (Constants.SYHCAPITALNAME.equals(capitalInfo.getName()) || "好汇推".equals(capitalInfo.getName()) || "助贷".equals(capitalInfo.getName())) || "任意花".equals(capitalInfo.getName()) || "e时贷".equals(capitalInfo.getName()) || "慧借".equals(capitalInfo.getName()) || "商城-本APP".equals(capitalInfo.getName()) ) {// 随易花或好汇推或助贷 log.info("日志编号:" + logNumber + ",手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "撞库对接信息:{}", channelUnionCollisionResponse.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); if ("商城-本APP".equals(capitalInfo.getName())) { capitalResult.setPopupDdq(0); } } else if (200 == channelUnionCollisionResponse.getCode() && channelUnionCollisionResponse.getData() && !Constants.SYHCAPITALNAME.equals(capitalInfo.getName())) { log.info("日志编号:" + logNumber + ",手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "撞库对接信息:{}", channelUnionCollisionResponse.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS); } else { log.error("日志编号:" + logNumber + ",手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "错误,撞库对接失败:{}", channelUnionCollisionResponse.toString()); capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); } } } } catch (Exception e) { capitalResult.setCheckResult(CustomerCapitalResult.CHECK_FAIL); log.error("日志编号:" + logNumber + ",手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "错误,撞库接口异常:", e); } capitalResultMapper.insert(capitalResult); log.info("日志编号:" + logNumber + ",手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "撞库结束"); return capitalResult; } /** * 标注:这里是联登 */ @Override public ChannelUnionResultVo pushCustomerByChannelUnion(CapitalInfo capitalInfo, CustomerUser customerUser, CapitalPushDto capitalPushDto) { String logNumber = IdUtil.randomUUID(); log.info("日志编号:" + logNumber + ",手机号:" + customerUser.getPhone() + "," + capitalInfo.getName() + "联登对接流程开始"); ChannelUnionResultVo channelUnionResultVo = new ChannelUnionResultVo(); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, capitalInfo.getCode()).one(); if (capitalResult == null) { log.info("日志编号:" + logNumber + "," + capitalInfo.getName() + "资方对接结果不存在"); throw new CommonException("资方对接结果不存在"); } if (CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { channelUnionResultVo.setCheckResult(true); } else { channelUnionResultVo.setCheckResult(false); } String url = null; ChannelUnionAutoResponse register = null; log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "联登数据推送开始"); if (StringUtils.isEmpty(capitalInfo.getAppId())) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "联登数据错误,缺少appid"); throw new CommonException("该资方不为撞库联登模式"); } try { UnionloginProduct unionloginProduct = unionloginProductMapper.selectOne(new LambdaQueryWrapper().eq(UnionloginProduct::getAppId, capitalInfo.getAppId())); if (unionloginProduct == null) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "联登数据错误,撞库联登模式数据为空"); throw new CommonException("错误,资方不存在"); } if ("KUAI_YI_JIN_FU".equals(capitalInfo.getCode())) { register = channelUnionAutoUtil.getAuto(capitalInfo, unionloginProduct.getCaptitalPublicKey(), unionloginProduct.getCaptitalUrl(), unionloginProduct.getAppId(), customer.getPhone(), customer.getIdCard(), customer.getName()); } else { register = channelUnionAutoUtil.getAuto(capitalInfo, unionloginProduct.getCaptitalPublicKey(), unionloginProduct.getCaptitalUrl(), unionloginProduct.getAppId(), customer.getPhone(), null, customer.getName()); } if (register != null) { if ("1".equals(capitalPushDto.getIsNotApprovalResult())) {// 于2022-11-28新增:是否不需要判断ApprovalResult为1 if (register.getUrl() != null) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "联登数据返回地址为:" + register.getUrl()); url = register.getUrl(); } } else { if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult()) && register.getUrl() != null) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "联登数据返回地址为:" + register.getUrl()); url = register.getUrl(); } } log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "," + capitalInfo.getName() + "联登授权申请返回结果" + register.toString()); if (200 == register.getCode()) { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode()); } else { capitalResult.setApprovalResult(CapitalApprovalResultEnum.APPROVAL_REQUEST_FAIL.getCode()); log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "," + capitalInfo.getName() + "登信授权申请失败" + register.toString()); } } else { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "," + capitalInfo.getName() + "联登授权申请返回结果为空"); throw new CommonException("授权申请返回结果为空"); } } catch (Exception e) { log.error("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "," + capitalInfo.getName() + "联登授权申请失败", e); throw new CommonException("请求异常"); } log.info("日志编号:" + logNumber + "资方结果id:" + capitalResult.getId() + "," + capitalInfo.getName() + "联登数据推送结束"); if (CapitalResultStatusEnum.CHECK.getCode().equals(capitalResult.getStatus()) && CustomerCapitalResult.CHECK_SUCCESS.equals(capitalResult.getCheckResult())) { capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode()); LambdaUpdateWrapper wrapper = capitalResultCommonService.getWrapper(capitalInfo, capitalResult); update(wrapper); log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "联登数据推送结束"); } if (url != null) { log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "联登数据返回地址为:" + url); channelUnionResultVo.setUrl(url); } else { if ("1".equals(capitalPushDto.getIsNotApprovalResult())) {// 于2022-11-28新增:是否不需要判断ApprovalResult为1 if (register != null && register.getUrl() != null) { channelUnionResultVo.setUrl(register.getUrl()); } } else { if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult())) { if (register != null && register.getUrl() != null) { channelUnionResultVo.setUrl(register.getUrl()); } } } // if (CapitalApprovalResultEnum.APPROVAL_SUCCESS.getCode().equals(capitalResult.getApprovalResult())) { // if (register != null && register.getUrl() != null) { // channelUnionResultVo.setUrl(register.getUrl()); // } // } } log.info("日志编号:" + logNumber + ",用户手机号:" + customer.getPhone() + "," + capitalInfo.getName() + "联登对接流程结束"); return channelUnionResultVo; } @Override public CapitalRepayEntryVo getRepayEntry(HttpServletRequest request) { CapitalRepayEntryVo entryVo = new CapitalRepayEntryVo(); entryVo.setShowRepayEntry(false); CustomerUser customerUser = checkUser(request); Customer customer = customerMapper.getLatestCustomerRecord(customerUser.getPhone()); if (customer == null) { return entryVo; } CustomerCapitalResult capitalResult = lambdaQuery() .eq(CustomerCapitalResult::getCustomerUserId, customerUser.getId()) .eq(CustomerCapitalResult::getCustomerRecordId, customer.getId()) .eq(CustomerCapitalResult::getCapitalInfoCode, CapitalInfoTypeCodeEnum.HENG_YI_DAI.getCode()).one(); if (capitalResult == null) { return entryVo; } if (HyGetOrderStatusResponse.STATUS_LOAN_APPLY_SUCCESS.equals(capitalResult.getThirdOrderStatus()) || HyGetOrderStatusResponse.STATUS_REPAY_NORMAL.equals(capitalResult.getThirdOrderStatus()) || HyGetOrderStatusResponse.STATUS_REPAY_OVERDUE.equals(capitalResult.getThirdOrderStatus())) { entryVo.setShowRepayEntry(true); entryVo.setCapitalResultId(capitalResult.getId()); entryVo.setCapitalId(capitalResult.getCapitalInfoId()); } return entryVo; } @Override public void notificationStatistics(Integer type, String capitalResultId, String notificationUrl) { if (StringUtils.isEmpty(capitalResultId)) { throw new CommonException("资方结果id不能为空"); } Long aLong = Long.valueOf(capitalResultId); CustomerCapitalResult customerCapitalResult = getById(aLong); if (customerCapitalResult == null) { throw new CommonException("资方结果不存在"); } if (type == null) { throw new CommonException("统计类型不能为空"); } if (NotificationEnum.ACCESS_POPUP_HOME.getCode().equals(type)) { Integer accessPopupHomeSum = customerCapitalResult.getAccessPopupHomeSum(); accessPopupHomeSum = accessPopupHomeSum + 1; customerCapitalResult.setAccessPopupHomeSum(accessPopupHomeSum); } else if (NotificationEnum.ACCESS_POPUP_RETURN.getCode().equals(type)) { Integer accessPopupReturnSum = customerCapitalResult.getAccessPopupReturnSum(); accessPopupReturnSum = accessPopupReturnSum + 1; customerCapitalResult.setAccessPopupReturnSum(accessPopupReturnSum); customerCapitalResult.setNotificationUrl(notificationUrl); } else if (NotificationEnum.ACCESS_CLICKED_HOME.getCode().equals(type)) { Integer accessClickedHomeSum = customerCapitalResult.getAccessClickedHomeSum(); accessClickedHomeSum = accessClickedHomeSum + 1; customerCapitalResult.setAccessClickedHomeSum(accessClickedHomeSum); } else if (NotificationEnum.ACCESS_CLICKED_RETURN.getCode().equals(type)) { Integer accessClickedReturnSum = customerCapitalResult.getAccessClickedReturnSum(); accessClickedReturnSum = accessClickedReturnSum + 1; customerCapitalResult.setAccessClickedReturnSum(accessClickedReturnSum); } update(Wrappers.lambdaUpdate() .set(CustomerCapitalResult::getAccessPopupHomeSum, customerCapitalResult.getAccessPopupHomeSum()) .set(CustomerCapitalResult::getAccessPopupReturnSum, customerCapitalResult.getAccessPopupReturnSum()) .set(CustomerCapitalResult::getAccessClickedHomeSum, customerCapitalResult.getAccessClickedHomeSum()) .set(CustomerCapitalResult::getAccessClickedReturnSum, customerCapitalResult.getAccessClickedReturnSum()) .set(CustomerCapitalResult::getNotificationUrl, customerCapitalResult.getNotificationUrl()) .eq(CustomerCapitalResult::getId, capitalResultId)); } private final SyhUtil syhUtil; private final HhtUtil hhtUtil; private final ZhdUtil zhdUtil; private final RyhUtil ryhUtil; private final HjqbUtil hjqbUtil; private final EsdUtil esdUtil; @Override /** * 标注:这里是调用联登的地方 * 标注:随易花可以参考这里,这里是推送用户资料给资方 */ public ResultJson pushCustomer(CapitalInfo capitalInfo, CustomerUser customerUser, CapitalPushDto capitalPushDto) { log.info("日志编号: CapitalPushDto "+capitalPushDto); boolean isNotPushHjqb = false;// 是否不需要推送慧借钱包 if (!Objects.isNull(capitalPushDto)) { Boolean isNotPush = capitalPushDto.getIsNotPushHjqb(); if (!Objects.isNull(isNotPush)) { if(isNotPush) { isNotPushHjqb = true; } } } if (CapitalTypeEnum.COMMON.getCode().equals(capitalInfo.getType())) {// 独立对接模式 if (CapitalInfoTypeCodeEnum.XIN_YONG_FEI.getCode().equals(capitalInfo.getCode())) { // 于2022-11-28新增:"1".equals(capitalPushDto.getIsNotApprovalResult()) XinYongFeiPushResultVo xinYongFeiPushResultVo = pushCustomerByXinYongFei(capitalInfo, customerUser, "1".equals(capitalPushDto.getIsNotApprovalResult())); // 完 return ResultJson.ok(xinYongFeiPushResultVo); } else if (CapitalInfoTypeCodeEnum.HUI_ZHI_XIN.getCode().equals(capitalInfo.getCode())) { HuiZhiXinPushResultVo huiZhiXinPushResultVo = pushCustomerByHuiZhiXin(capitalInfo, customerUser, "1".equals(capitalPushDto.getIsNotApprovalResult())); return ResultJson.ok(huiZhiXinPushResultVo); } else if (CapitalInfoTypeCodeEnum.YI_BEI.getCode().equals(capitalInfo.getCode())) { YiBeiPushResultVo yiBeiPushResultVo = pushCustomerByYiBei(capitalInfo, customerUser, "1".equals(capitalPushDto.getIsNotApprovalResult())); return ResultJson.ok(yiBeiPushResultVo); } else if (CapitalInfoTypeCodeEnum.ZHONG_ZAN.getCode().equals(capitalInfo.getCode())) { ZhongZanPushResultVo zhongZanPushResultVo = pushCustomerByZhongZan(capitalInfo, customerUser); return ResultJson.ok(zhongZanPushResultVo); } else if (CapitalInfoTypeCodeEnum.TAO_JIN_HUI.getCode().equals(capitalInfo.getCode())) { TaoJinHuiPushResultVo taoJinHuiPushResultVo = pushCustomerByTaoJinHui(capitalInfo, customerUser, "1".equals(capitalPushDto.getIsNotApprovalResult())); return ResultJson.ok(taoJinHuiPushResultVo); } else if (CapitalInfoTypeCodeEnum.XIN_YE_YOU_PIN.getCode().equals(capitalInfo.getCode())) { XinYeYouPinResultVo xinYeYouPinResultVo = pushCustomerByXinYeYouPin(capitalInfo, customerUser); return ResultJson.ok(xinYeYouPinResultVo); } else if (CapitalInfoTypeCodeEnum.DOU_DOU_QIAN.getCode().equals(capitalInfo.getCode())) { DouDouQianOrderSubmitVo vo = pushCustomerByDouDouQian(capitalInfo, customerUser, "1".equals(capitalPushDto.getIsNotApprovalResult())); return ResultJson.ok(vo); } else if (CapitalInfoTypeCodeEnum.RONG_DUO_DUO.getCode().equals(capitalInfo.getCode())) { RongDuoDuoOrderSubmitVo vo = pushCustomerByRongDuoDuo(capitalInfo, customerUser); return ResultJson.ok(vo); } else if (CapitalInfoTypeCodeEnum.HENG_YI_DAI.getCode().equals(capitalInfo.getCode())) { HengYiDaiPushResultVo hengYiDaiPushResultVo = hengYiDaiService.pushCustomerByHengYiDai(capitalInfo, customerUser); return ResultJson.ok(hengYiDaiPushResultVo); } else if (CapitalInfoTypeCodeEnum.XIAO_BAI_YOU_KA.getCode().equals(capitalInfo.getCode())) { XiaoBaiYouKaPushResultVo xiaoBaiYouKaPushResultVo = xiaoBaiYouKaService.pushCustomerByXiaoBaiYouKa(capitalInfo, customerUser, "1".equals(capitalPushDto.getIsNotApprovalResult())); return ResultJson.ok(xiaoBaiYouKaPushResultVo); } else if (CapitalInfoTypeCodeEnum.TAO_HUI_HUA.getCode().equals(capitalInfo.getCode())) { TaoHuiHuaPushResultVo taoHuiHuaPushResultVo = taoHuiHuaService.pushCustomerByTaoHuiHua(capitalInfo, customerUser, "1".equals(capitalPushDto.getIsNotApprovalResult())); return ResultJson.ok(taoHuiHuaPushResultVo); } } else if (CapitalTypeEnum.LVDI_HALF.getCode().equals(capitalInfo.getType())) {// 绿地半流程对接 String platform = null; if (capitalPushDto != null) { platform = capitalPushDto.getPlatform(); } boolean isNotApprovalResult = capitalPushDto == null? false:"1".equals(capitalPushDto.getIsNotApprovalResult()); LvdiPushResultVo lvdiPushResultVo = pushCustomerByLvdi(capitalInfo, customerUser, platform, isNotApprovalResult); return ResultJson.ok(lvdiPushResultVo); } else if (Constants.SYHCAPITALNAME.equals(capitalInfo.getName())) {// 随易花推送 // 返回LvdiPushResultVo LvdiPushResultVo lvdiPushResultVo = syhUtil.syhPush(customerUser, capitalInfo.getCode()); return ResultJson.ok(lvdiPushResultVo); } else if ("好汇推".equals(capitalInfo.getName())) {//好汇推推送 // 返回LvdiPushResultVo LvdiPushResultVo lvdiPushResultVo = hhtUtil.hhtPush(customerUser, capitalInfo.getCode()); return ResultJson.ok(lvdiPushResultVo); } else if ("助贷".equals(capitalInfo.getName())) {//助贷推送 // 返回LvdiPushResultVo LvdiPushResultVo lvdiPushResultVo = zhdUtil.zhdPush(customerUser, capitalInfo.getCode()); return ResultJson.ok(lvdiPushResultVo); } else if ("任意花".equals(capitalInfo.getName())) {//任意花 // 返回LvdiPushResultVo LvdiPushResultVo lvdiPushResultVo = ryhUtil.ryhPush(customerUser, capitalInfo.getCode()); return ResultJson.ok(lvdiPushResultVo); }else if ("慧借".equals(capitalInfo.getName())) {//慧借钱包 // 返回LvdiPushResultVo if (!isNotPushHjqb) { LvdiPushResultVo lvdiPushResultVo = hjqbUtil.hjqbPush(customerUser, capitalInfo.getCode()); return ResultJson.ok(lvdiPushResultVo); } else { return null; } } else if ("e时贷".equals(capitalInfo.getName())) {//助贷推送 // 返回LvdiPushResultVo LvdiPushResultVo lvdiPushResultVo = esdUtil.esdPush(customerUser, capitalInfo.getCode()); return ResultJson.ok(lvdiPushResultVo); } else if ("商城-本APP".equals(capitalInfo.getName())) {//商城-本APP return null; } else {// 面向产品方撞库联登模式 ChannelUnionResultVo channelUnionResultVo = pushCustomerByChannelUnion(capitalInfo, customerUser, capitalPushDto); return ResultJson.ok(channelUnionResultVo); } return null; } }