Commit 06bf1b9f authored by suntao's avatar suntao

二次审批 新增异步方法

parent a689b82c
......@@ -5,6 +5,7 @@ import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.feign.EnableFeignClients;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
import org.springframework.transaction.annotation.EnableTransactionManagement;
......@@ -14,6 +15,7 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
@Configuration
@EnableAutoConfiguration
@EnableFeignClients
@EnableAsync
public class Bootstrap {
public static void main(String[] args) {
......
......@@ -22,6 +22,7 @@ import cn.quantgroup.cashloanflowboss.spi.clf.service.CLFCenterService;
import cn.quantgroup.cashloanflowboss.spi.clotho.client.ClothoCenter;
import cn.quantgroup.cashloanflowboss.spi.clotho.service.ClothoCenterService;
import cn.quantgroup.cashloanflowboss.spi.jolyne.JolyneCenter;
import cn.quantgroup.cashloanflowboss.spi.jolyne.JolyneService;
import cn.quantgroup.cashloanflowboss.spi.jolyne.JolyneUtil;
import cn.quantgroup.cashloanflowboss.spi.opapi.OPCenter;
import cn.quantgroup.cashloanflowboss.spi.user.service.XyqbUserService;
......@@ -91,6 +92,8 @@ public class OrderServiceImpl implements OrderService{
private CLFCenterService clfCenterService;
@Autowired
private JolyneCenter jolyneCenter;
@Autowired
private JolyneService jolyneService;
......@@ -403,16 +406,7 @@ public class OrderServiceImpl implements OrderService{
result = true;
}
WaitingFundingCorpOperatePeople waitingFundingCorpOperatePeople = xyqbCenterService.findWaitingFundingCorpOperatePeopleByLoanId(orderMapping.getLoanId());
if (waitingFundingCorpOperatePeople.getCreatedAt().after(new Timestamp(System.currentTimeMillis() - 5 * 60 * 1000))) {
log.info("[secendAudit]通过sql改待放款时间,channelOrderNumber={}", channelOrderNumber);
// 更新待放款时间(5分钟之前)
ArrayList<String> updateWaitingFundingCorpOperatePeople = Lists.newArrayList();
updateWaitingFundingCorpOperatePeople.add("update waiting_funding_corp_operate_people set created_at = DATE_SUB(created_at, interval 5 minute) where loan_application_history_id = " + orderMapping.getLoanId() + ";");
jolyneCenter.sqlXyqb(JolyneUtil.getJolneSql(updateWaitingFundingCorpOperatePeople));
}
jolyneService.delayUpdateWaitingXyqbSql(orderMapping.getLoanId(), 200L);
optHistoryLog.setOptLogDetail("二次风控操作成功");
optHistoryLog.setOptResult(true);
......
package cn.quantgroup.cashloanflowboss.spi.jolyne;
/**
* function:
* date: 2019/9/20
*
* @author: suntao
*/
public interface JolyneService {
String delayUpdateWaitingXyqbSql(Long sqlContent, Long delayTime);
}
package cn.quantgroup.cashloanflowboss.spi.jolyne;
import cn.quantgroup.cashloanflowboss.spi.xyqb.entity.WaitingFundingCorpOperatePeople;
import cn.quantgroup.cashloanflowboss.spi.xyqb.service.XYQBCenterService;
import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import java.sql.Timestamp;
import java.util.ArrayList;
/**
* function:
* date: 2019/9/20
*
* @author: suntao
*/
@Slf4j
@Service
public class JolyneServiceImpl implements JolyneService {
@Autowired
private XYQBCenterService xyqbCenterService;
@Autowired
private JolyneCenter jolyneCenter;
@Async
@Override
public String delayUpdateWaitingXyqbSql(Long loanId, Long delayTime) {
WaitingFundingCorpOperatePeople waitingFundingCorpOperatePeople = xyqbCenterService.findWaitingFundingCorpOperatePeopleByLoanId(loanId);
while (waitingFundingCorpOperatePeople == null) {
try {
Thread.sleep(delayTime);
} catch (InterruptedException e) {
e.printStackTrace();
}
waitingFundingCorpOperatePeople = xyqbCenterService.findWaitingFundingCorpOperatePeopleByLoanId(loanId);
}
if (waitingFundingCorpOperatePeople.getCreatedAt().getTime() > (System.currentTimeMillis() - 5 * 60 * 1000)) {
// 更新待放款时间(5分钟之前)
ArrayList<String> updateWaitingFundingCorpOperatePeople = Lists.newArrayList();
updateWaitingFundingCorpOperatePeople.add("update waiting_funding_corp_operate_people set created_at = DATE_SUB(created_at, interval 5 minute) where loan_application_history_id = " + loanId + ";");
return jolyneCenter.sqlXyqb(JolyneUtil.getJolneSql(updateWaitingFundingCorpOperatePeople));
}
return "success";
}
}
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