Commit 83bb3b0a authored by 陈宏杰's avatar 陈宏杰

A1增量报送-测试入口

parent be7f1f44
...@@ -175,4 +175,11 @@ public class ManualToolController { ...@@ -175,4 +175,11 @@ public class ManualToolController {
} }
} }
@RequestMapping("/sendZhuDaiApply")
public String sendZhuDaiApply(String startnyr, String endnyr){
//yyyy-MM-dd
zhuDaiService.sendZhuDaiApplyToBaiHang(startnyr, endnyr);
return "SUCCESS";
}
} }
...@@ -6,6 +6,7 @@ import cn.quantgroup.report.enums.ReportType; ...@@ -6,6 +6,7 @@ import cn.quantgroup.report.enums.ReportType;
import cn.quantgroup.report.mapper.baihang.ApplyLoanInfoMapper; import cn.quantgroup.report.mapper.baihang.ApplyLoanInfoMapper;
import cn.quantgroup.report.mapper.baihang.LoanInfoMapper; import cn.quantgroup.report.mapper.baihang.LoanInfoMapper;
import cn.quantgroup.report.mapper.baihang.RepaymentLoanInfoMapper; import cn.quantgroup.report.mapper.baihang.RepaymentLoanInfoMapper;
import cn.quantgroup.report.mapper.master.ApplyLoanInfoZhuDaiMapper;
import cn.quantgroup.report.mapper.master.LoanInfoDbMapper; import cn.quantgroup.report.mapper.master.LoanInfoDbMapper;
import cn.quantgroup.report.mapper.master.RepaymentLoanInfoDbMapper; import cn.quantgroup.report.mapper.master.RepaymentLoanInfoDbMapper;
import cn.quantgroup.report.mapper.master.RepaymentLoanWhiteListMapper; import cn.quantgroup.report.mapper.master.RepaymentLoanWhiteListMapper;
...@@ -42,6 +43,7 @@ import org.springframework.jdbc.core.JdbcTemplate; ...@@ -42,6 +43,7 @@ import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper; import org.springframework.jdbc.core.RowMapper;
import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.annotation.PostConstruct; import javax.annotation.PostConstruct;
import java.io.File; import java.io.File;
...@@ -146,6 +148,8 @@ public class BaiHangZhuDaiService { ...@@ -146,6 +148,8 @@ public class BaiHangZhuDaiService {
private static final String branchTemplate = "%s 报送 : \n 成功 %s 条,失败 %s 条,白名单跳过 %s 条"; private static final String branchTemplate = "%s 报送 : \n 成功 %s 条,失败 %s 条,白名单跳过 %s 条";
private static final String rootTemplate = "%s \n %s \n %s"; private static final String rootTemplate = "%s \n %s \n %s";
@Autowired
private ApplyLoanInfoZhuDaiMapper applyLoanInfoZhuDaiMapper;
@PostConstruct @PostConstruct
...@@ -180,31 +184,34 @@ public class BaiHangZhuDaiService { ...@@ -180,31 +184,34 @@ public class BaiHangZhuDaiService {
* Scheduled 贷款申请(百行征信报送) * Scheduled 贷款申请(百行征信报送)
*/ */
public String sendZhuDaiApplyToBaiHang(String startnyr, String endnyr) { public String sendZhuDaiApplyToBaiHang(String startnyr, String endnyr) {
log.info("量化派助贷TO百行报送T+1申请开始..."); log.info("量化派助贷TO百行报送(A1)T+1申请开始...");
//yyyy-MM-dd //yyyy-MM-dd
Stopwatch queryWatch1 = Stopwatch.createStarted(); Stopwatch queryWatch1 = Stopwatch.createStarted();
BaiHangTimeRecord timeRecord = BaiHangTimeRecord.builder().startTime(startnyr).endTime(endnyr).build(); BaiHangTimeRecord timeRecord = BaiHangTimeRecord.builder().startTime(startnyr).endTime(endnyr).build();
List<ApplyLoanInfoZhuDai> applyLoanInfos = applyLoanInfoMapper.findRealTimeApplyLoanZhuDai(timeRecord); List<ApplyLoanInfoZhuDai> applyLoanInfos = applyLoanInfoMapper.findRealTimeApplyLoanZhuDai(timeRecord);
log.info("量化派助贷TO百行报送-非联合贷申请查询完成, 大小: {} , 耗时: {} ", (applyLoanInfos != null ? applyLoanInfos.size() : 0), (queryWatch1.stop().elapsed(TimeUnit.MILLISECONDS) / 1000) + ".s"); log.info("量化派助贷TO百行报送(A1)-非联合贷申请查询完成, 大小: {} , 耗时: {} ", (applyLoanInfos != null ? applyLoanInfos.size() : 0), (queryWatch1.stop().elapsed(TimeUnit.MILLISECONDS) / 1000) + ".s");
Stopwatch queryWatch2 = Stopwatch.createStarted(); // Stopwatch queryWatch2 = Stopwatch.createStarted();
List<ApplyLoanInfoZhuDai> applyLoanInfosLh = applyLoanInfoMapper.findRealTimeApplyLoanZhuDaiLh(timeRecord); // List<ApplyLoanInfoZhuDai> applyLoanInfosLh = applyLoanInfoMapper.findRealTimeApplyLoanZhuDaiLh(timeRecord);
log.info("量化派助贷TO百行报送-联合贷申请查询完成, 大小: {} , 耗时: {} ", (applyLoanInfosLh != null ? applyLoanInfosLh.size() : 0), (queryWatch2.stop().elapsed(TimeUnit.MILLISECONDS) / 1000) + ".s"); // log.info("量化派助贷TO百行报送-联合贷申请查询完成, 大小: {} , 耗时: {} ", (applyLoanInfosLh != null ? applyLoanInfosLh.size() : 0), (queryWatch2.stop().elapsed(TimeUnit.MILLISECONDS) / 1000) + ".s");
if (applyLoanInfos == null) { // if (applyLoanInfos == null) {
applyLoanInfos = new ArrayList<ApplyLoanInfoZhuDai>(); // applyLoanInfos = new ArrayList<ApplyLoanInfoZhuDai>();
} // }
if (applyLoanInfosLh != null && applyLoanInfosLh.size() > 0) { // if (applyLoanInfosLh != null && applyLoanInfosLh.size() > 0) {
applyLoanInfos.addAll(applyLoanInfosLh); // applyLoanInfos.addAll(applyLoanInfosLh);
} // }
Stopwatch sendWatch = Stopwatch.createStarted(); Stopwatch sendWatch = Stopwatch.createStarted();
AtomicInteger succ_atomicInteger = new AtomicInteger(); AtomicInteger succ_atomicInteger = new AtomicInteger();
for (int i = 0; i < applyLoanInfos.size(); i++) {
String reqId_log = ""; String reqId_log = "";
List<ApplyLoanInfoZhuDai> zhuDaiLogList = null;
for (int i = 0; i < applyLoanInfos.size(); i++) {
try { try {
ApplyLoanInfoZhuDai applyLoanInfo = applyLoanInfos.get(i); ApplyLoanInfoZhuDai applyLoanInfo = applyLoanInfos.get(i);
reqId_log = applyLoanInfo.getReqID(); reqId_log = applyLoanInfo.getReqID();
zhuDaiLogList = applyLoanInfoZhuDaiMapper.findApplyLoanInfoZhuDaiLog(applyLoanInfo.getReqID());
if (CollectionUtils.isEmpty(zhuDaiLogList)) {
//邮箱有错误的就不传 //邮箱有错误的就不传
if (!TuoMinUtils.checkEmail(applyLoanInfo.getEmailAddress())) { if (!TuoMinUtils.checkEmail(applyLoanInfo.getEmailAddress())) {
applyLoanInfo.setEmailAddress(null); applyLoanInfo.setEmailAddress(null);
...@@ -219,22 +226,24 @@ public class BaiHangZhuDaiService { ...@@ -219,22 +226,24 @@ public class BaiHangZhuDaiService {
log.info("助贷贷款申请A1报送结果, param: {} , resultStr: {} ", logJson, resultStr); log.info("助贷贷款申请A1报送结果, param: {} , resultStr: {} ", logJson, resultStr);
//if (Objects.isNull(resultStr) || !(resultStr.contains("queryHistory") && resultStr.contains("nonRevolvingLoan") && resultStr.contains("revolvingLoan"))) { //if (Objects.isNull(resultStr) || !(resultStr.contains("queryHistory") && resultStr.contains("nonRevolvingLoan") && resultStr.contains("revolvingLoan"))) {
if (Objects.isNull(resultStr) || !"success".equalsIgnoreCase(JSON.parseObject(resultStr).getString("status"))) { if (Objects.isNull(resultStr) || !"success".equalsIgnoreCase(JSON.parseObject(resultStr).getString("status"))) {
log.info("量化派助贷TO百行报送-贷款申请返回结果不正确, reqId_log: {} , applyId: {} ", reqId_log, applyLoanInfo.getApplyId()); log.info("量化派助贷TO百行报送(A1)-贷款申请返回结果不正确, reqId_log: {} , applyId: {} ", reqId_log, applyLoanInfo.getApplyId());
} else { } else {
succ_atomicInteger.getAndIncrement(); succ_atomicInteger.getAndIncrement();
} }
} else {
log.error("量化派助贷TO百行增量报送(A1)-贷款申请信息重复报送, applyLoanInfo: {} ", JSON.toJSONString(applyLoanInfo));
}
} catch (Exception e) { } catch (Exception e) {
log.error("量化派助贷TO百行报送-贷款申请信息异常, reqId_log: {} ", reqId_log, e); log.error("量化派助贷TO百行报送(A1)-贷款申请信息异常, reqId_log: {} ", reqId_log, e);
} }
} }
log.info("量化派助贷TO百行报送-贷款申请报送完成, 实际大小: {} , 报送成功大小: {} , 耗时: {} ", applyLoanInfos.size(), succ_atomicInteger.get(), (sendWatch.stop().elapsed(TimeUnit.MILLISECONDS) / 1000) + ".s"); log.info("量化派助贷TO百行报送(A1)-贷款申请报送完成, 实际大小: {} , 报送成功大小: {} , 耗时: {} ", applyLoanInfos.size(), succ_atomicInteger.get(), (sendWatch.stop().elapsed(TimeUnit.MILLISECONDS) / 1000) + ".s");
String resMsgTemp = "申请报送: 查询 %d条(联合贷%d条), 报送成功 %d条;"; String resMsgTemp = "申请报送(A1): 查询 %d条, 报送成功 %d条;";
resMsgTemp += "[" + (applyLoanInfos.size() == succ_atomicInteger.get()) + "]"; resMsgTemp += "[" + (applyLoanInfos.size() == succ_atomicInteger.get()) + "]";
return String.format(resMsgTemp, applyLoanInfos.size(), (applyLoanInfosLh != null ? applyLoanInfosLh.size() : 0), succ_atomicInteger.get()); return String.format(resMsgTemp, applyLoanInfos.size(), succ_atomicInteger.get());
} }
/** /**
* 助贷模式-实时批量报送放款D2数据 * 助贷模式-实时批量报送放款D2数据
* Scheduled 实时放款数据(百行征信报送) * Scheduled 实时放款数据(百行征信报送)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment