package com.nova.sankuai.service.impl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.nova.sankuai.domain.api.channelUnion.ChannelUnionAutoUtil;
|
import com.nova.sankuai.domain.api.doudouqian.DdqUtil;
|
import com.nova.sankuai.domain.api.huizhixin.HzxUtil;
|
import com.nova.sankuai.domain.api.rongduoduo.RongDuoDuoUtil;
|
import com.nova.sankuai.domain.api.taojinhui.TjhUtil;
|
import com.nova.sankuai.domain.api.xinyeyoupin.XinYeYouPinUtil;
|
import com.nova.sankuai.domain.api.xinyongfei.XinYongFeiUtil;
|
import com.nova.sankuai.domain.api.yibeifenqi.YiBeiUtil;
|
import com.nova.sankuai.domain.api.yixin.YXUtil;
|
import com.nova.sankuai.domain.entity.Customer;
|
import com.nova.sankuai.domain.entity.CustomerCapitalResultVm;
|
import com.nova.sankuai.infra.mapper.*;
|
import com.nova.sankuai.infra.utils.ZzxfUtil;
|
import com.nova.sankuai.service.*;
|
import lombok.AllArgsConstructor;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.stereotype.Service;
|
|
/**
|
* @author weikangdi
|
* @create 2022/5/7
|
*/
|
@Service
|
@AllArgsConstructor
|
public class CustomerCapitalResultVmServiceImpl extends ServiceImpl<CustomerCapitalResultVmMapper, CustomerCapitalResultVm> implements ICustomerCapitalResultVmService {
|
|
private final CustomerMapper customerMapper;
|
|
private final YXUtil yxUtil;
|
|
private final CustomerCapitalResultVmMapper 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 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;
|
|
@Override
|
public void collisionlibrary(Customer customer) {
|
/*String logNumber = IdUtil.randomUUID();
|
log.info("日志编号:" + logNumber + "资方列表-虚拟撞库开始");
|
try {
|
CustomerUser customerUser = customerUserMapper.selectOne(Wrappers.<CustomerUser>lambdaQuery()
|
.eq(CustomerUser::getPhone, customer.getPhone()));
|
if (customerUser == null) {
|
log.error("日志编号:" + logNumber + "资方列表-对应用户不存在");
|
}
|
List<CapitalInfo> result = capitalInfoMapper.selectList(Wrappers.<CapitalInfo>lambdaQuery()
|
.eq(CapitalInfo::getEnableFlag, 1));
|
List<CustomerCapitalResultVm> capitalResultList = lambdaQuery()
|
.eq(CustomerCapitalResultVm::getCustomerUserId, customerUser.getId())
|
.eq(CustomerCapitalResultVm::getCustomerRecordId, customer.getId()).list();
|
Map<String, List<CustomerCapitalResultVm>> collect = null;
|
if (capitalResultList != null && !capitalResultList.isEmpty()) {
|
collect = capitalResultList.stream().collect(Collectors.groupingBy(CustomerCapitalResultVm::getCapitalInfoCode));
|
}
|
for (CapitalInfo capitalInfo : result) {
|
int fundType = capitalInfo.getFundType().intValue();
|
if (fundType == 0) {// 只虚拟银行直贷撞库,线上贷款略过
|
continue;
|
}
|
if (collect != null && collect.get(capitalInfo.getCode()) != null && !collect.get(capitalInfo.getCode()).isEmpty()) {
|
continue;
|
}
|
if (CustomerUserBusinessTypeEnum.RONG_YI_TUI.getCode().equals(customerUser.getBusinessType())) {
|
if (!(CapitalInfoTypeCodeEnum.YI_XIN.getCode().equals(capitalInfo.getCode())
|
|| CapitalInfoTypeCodeEnum.XIAO_HUA_QIAN_BAO.getCode().equals(capitalInfo.getCode()))) {
|
continue;
|
}
|
}
|
// 虚拟撞库
|
vmCollisionlibrary(capitalInfo, customer, customerUser, logNumber);
|
}
|
|
} catch (Exception e) {
|
log.error("日志编号:" + logNumber + "资方列表批量虚拟撞库失败", e);
|
}
|
log.info("日志编号:" + logNumber + "资方列表-虚拟撞库结束");*/
|
}
|
|
/**
|
* 虚拟撞库
|
*/
|
/*@Transactional(rollbackFor = Exception.class)
|
public void vmCollisionlibrary(CapitalInfo capitalInfo, Customer
|
customer, CustomerUser customerUser, String logNumber) {
|
log.info("日志编号:" + logNumber + "虚拟撞库开始");
|
CustomerCapitalResult capitalResult = CustomerCapitalResult.initResult(capitalInfo, customerUser.getId(), customer.getId());
|
|
CustomerCapitalResult filterResult = capitalResultCommonService.filterCustomer(customer, capitalInfo, capitalResult, logNumber);
|
if (filterResult != null) {
|
log.info("日志编号:" + logNumber + capitalInfo.getName() + "虚拟撞库时不满足资方信息筛选条件,虚拟撞库失败");
|
return;
|
}
|
|
// 虚拟成功
|
capitalResult.setStatus(CapitalResultStatusEnum.APPLY.getCode());
|
capitalResult.setCheckResult(CustomerCapitalResult.CHECK_SUCCESS);
|
CustomerCapitalResultVm capitalResultVm = new CustomerCapitalResultVm();
|
BeanUtil.copyProperties(capitalResult, capitalResultVm, true);
|
capitalResultMapper.insert(capitalResultVm);
|
log.info("日志编号:" + logNumber + "虚拟撞库结束");
|
}*/
|
}
|