Commit 3039bfdd authored by liwenbin's avatar liwenbin
parents 9e21afa3 10d25716
package com.quantgroup.asset.distribution.service.funding.impl; package com.quantgroup.asset.distribution.service.funding.impl;
import com.alibaba.fastjson.JSON;
import com.quantgroup.asset.distribution.model.form.AssetForm; import com.quantgroup.asset.distribution.model.form.AssetForm;
import com.quantgroup.asset.distribution.model.response.GlobalResponse; import com.quantgroup.asset.distribution.model.response.GlobalResponse;
import com.quantgroup.asset.distribution.service.funding.IAidFundRouteRecordService; import com.quantgroup.asset.distribution.service.funding.IAidFundRouteRecordService;
import com.quantgroup.asset.distribution.service.funding.IAidFundRouteService; import com.quantgroup.asset.distribution.service.funding.IAidFundRouteService;
import com.quantgroup.asset.distribution.service.funding.IAidLoanFundConfigService; import com.quantgroup.asset.distribution.service.funding.IAidLoanFundConfigService;
import com.quantgroup.asset.distribution.service.httpclient.IHttpService;
import com.quantgroup.asset.distribution.service.jpa.entity.AidLoanFundConfig; import com.quantgroup.asset.distribution.service.jpa.entity.AidLoanFundConfig;
import com.quantgroup.asset.distribution.service.jpa.entity.AidLoanFundRouteRecord; import com.quantgroup.asset.distribution.service.jpa.entity.AidLoanFundRouteRecord;
import com.quantgroup.asset.distribution.service.redis.IRedisService; import com.quantgroup.asset.distribution.service.redis.IRedisService;
...@@ -16,7 +18,10 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -16,7 +18,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Comparator;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.TreeSet;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -38,6 +43,12 @@ public class AidFundRouteServiceImpl implements IAidFundRouteService { ...@@ -38,6 +43,12 @@ public class AidFundRouteServiceImpl implements IAidFundRouteService {
@Autowired @Autowired
private IRedisService<String> redisService; private IRedisService<String> redisService;
@Autowired
private IRedisService<AssetForm> redisServiceAssetForm;
@Autowired
private IHttpService iHttpService;
/** /**
* 助贷资金路由 * 助贷资金路由
* *
...@@ -71,20 +82,33 @@ public class AidFundRouteServiceImpl implements IAidFundRouteService { ...@@ -71,20 +82,33 @@ public class AidFundRouteServiceImpl implements IAidFundRouteService {
} }
//第五步 开始路由 //第五步 开始路由
if(CollectionUtils.isNotEmpty(aidLoanFundConfigList)){ if(CollectionUtils.isNotEmpty(aidLoanFundConfigList)){
//TODO 未接到助贷资金 暂时不能进行开发
//按优先级排序
TreeSet<AidLoanFundConfig> aidLoanFundConfigSet = new TreeSet<>(Comparator.comparing(AidLoanFundConfig::getFundPriority));
aidLoanFundConfigSet.addAll(aidLoanFundConfigList);
AidLoanFundConfig first = aidLoanFundConfigSet.first();
//通知资方
Map<String,String> response = iHttpService.postHasResponse(assetForm.getCallbackUrl(), assetForm.transToNotifyMap());
//保存主贷资金路由记录 log.info("通知资金系统结束,response :{}, uuid : {} , bizNo : {} , callbackUrl:{},params:{}", JSON.toJSONString(response),assetForm.getUuid(),assetForm.getBizNo(),assetForm.getCallbackUrl(), JSON.toJSONString(assetForm));
AidLoanFundRouteRecord aidLoanFundRouteRecord = new AidLoanFundRouteRecord(); if(response==null || response.size()==0 || !"200".equals(response.get("statusCode")) || "error".equals(response.get("response"))) {
aidLoanFundRouteRecord.setAidFundRouteStatus(1);//1-未完成 2-成功 3-失败 assetForm.setRepeatCount(assetForm.getRepeatCount() + 1);
aidLoanFundRouteRecord.setAssetNo(assetForm.getAssetNo()); redisServiceAssetForm.rightPushEx("AID.LOAN.FUND.ROUTE.NOTIFY.83IUE",assetForm,1, TimeUnit.DAYS);
aidLoanFundRouteRecord.setBizChannel(assetForm.getBizChannel()); log.info("通知资金系统失败,response :{}, uuid : {} , bizNo : {} , callbackUrl:{},params:{}", JSON.toJSONString(response),assetForm.getUuid(),assetForm.getBizNo(),assetForm.getCallbackUrl(), JSON.toJSONString(assetForm));
aidLoanFundRouteRecord.setBizNo(assetForm.getBizNo()); }else {
aidLoanFundRouteRecord.setFinanceProductType(Integer.parseInt(assetForm.getBizType())); //保存主贷资金路由记录
aidLoanFundRouteRecord.setUserLoanType(userLoanType); AidLoanFundRouteRecord aidLoanFundRouteRecord = new AidLoanFundRouteRecord();
// aidLoanFundRouteRecord.setFundNo("");//TODO aidLoanFundRouteRecord.setAidFundRouteStatus(1);//1-未完成 2-成功 3-失败
// aidLoanFundRouteRecord.setFundId("");//TODO aidLoanFundRouteRecord.setAssetNo(assetForm.getAssetNo());
iAidFundRouteRecordService.saveAidLoanFundRouteRecord(aidLoanFundRouteRecord); aidLoanFundRouteRecord.setBizChannel(assetForm.getBizChannel());
aidLoanFundRouteRecord.setBizNo(assetForm.getBizNo());
aidLoanFundRouteRecord.setFinanceProductType(Integer.parseInt(assetForm.getBizType()));
aidLoanFundRouteRecord.setUserLoanType(userLoanType);
aidLoanFundRouteRecord.setFundNo(first.getFundNo());
aidLoanFundRouteRecord.setFundId(first.getFundId());
iAidFundRouteRecordService.saveAidLoanFundRouteRecord(aidLoanFundRouteRecord);
}
} }
return GlobalResponse.error("未匹配到助贷资金"); return GlobalResponse.error("未匹配到助贷资金");
} }
......
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