Commit 98229a3a authored by suntao's avatar suntao

Merge branch 'v1' of http://git.quantgroup.cn/QG/cash-loan-flow-boss into v1

# By junquan.wang@quantgroup.cn
# Via junquan.wang@quantgroup.cn
* 'v1' of http://git.quantgroup.cn/QG/cash-loan-flow-boss:
  贷前关单
  贷前关单
parents 5ca63ea6 4154b98c
...@@ -114,7 +114,7 @@ public class OrderController { ...@@ -114,7 +114,7 @@ public class OrderController {
*/ */
@Security(authorityId = "Order.cancelPreLoan") @Security(authorityId = "Order.cancelPreLoan")
@PostMapping("/cancel/loan") @PostMapping("/cancel/loan")
public Result<Boolean> cancelPreLoan(@RequestBody @Valid String channelOrderNumber) { public Result<Boolean> cancelPreLoan(@RequestParam @Valid String channelOrderNumber) {
if (Application.isDebug()) { if (Application.isDebug()) {
return Result.buildSuccess(this.orderService.cancelPreLoan(channelOrderNumber)); return Result.buildSuccess(this.orderService.cancelPreLoan(channelOrderNumber));
} else { } else {
......
...@@ -19,15 +19,19 @@ import cn.quantgroup.cashloanflowboss.spi.clf.entity.ClfOrderMapping; ...@@ -19,15 +19,19 @@ import cn.quantgroup.cashloanflowboss.spi.clf.entity.ClfOrderMapping;
import cn.quantgroup.cashloanflowboss.spi.clf.model.CallbackRecordVoModel; import cn.quantgroup.cashloanflowboss.spi.clf.model.CallbackRecordVoModel;
import cn.quantgroup.cashloanflowboss.spi.clf.repository.ClfOrderMappingRepository; import cn.quantgroup.cashloanflowboss.spi.clf.repository.ClfOrderMappingRepository;
import cn.quantgroup.cashloanflowboss.spi.clf.service.CLFCenterService; 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.clotho.service.ClothoCenterService;
import cn.quantgroup.cashloanflowboss.spi.jolyne.JolyneCenter; import cn.quantgroup.cashloanflowboss.spi.jolyne.JolyneCenter;
import cn.quantgroup.cashloanflowboss.spi.jolyne.JolyneUtil; import cn.quantgroup.cashloanflowboss.spi.jolyne.JolyneUtil;
import cn.quantgroup.cashloanflowboss.spi.opapi.OPCenter;
import cn.quantgroup.cashloanflowboss.spi.user.service.XyqbUserService; import cn.quantgroup.cashloanflowboss.spi.user.service.XyqbUserService;
import cn.quantgroup.cashloanflowboss.spi.xyqb.entity.Contract; import cn.quantgroup.cashloanflowboss.spi.xyqb.entity.Contract;
import cn.quantgroup.cashloanflowboss.spi.xyqb.entity.LoanApplicationHistory; import cn.quantgroup.cashloanflowboss.spi.xyqb.entity.LoanApplicationHistory;
import cn.quantgroup.cashloanflowboss.spi.xyqb.repository.CancelPreLoanRepository;
import cn.quantgroup.cashloanflowboss.spi.xyqb.service.XYQBCenterService; import cn.quantgroup.cashloanflowboss.spi.xyqb.service.XYQBCenterService;
import cn.quantgroup.cashloanflowboss.utils.JSONTools; import cn.quantgroup.cashloanflowboss.utils.JSONTools;
import cn.quantgroup.user.retbean.XUser; import cn.quantgroup.user.retbean.XUser;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
...@@ -52,6 +56,7 @@ import org.springframework.data.domain.Page; ...@@ -52,6 +56,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.client.RestTemplate;
/** /**
* function: * function:
...@@ -90,6 +95,14 @@ public class OrderServiceImpl implements OrderService{ ...@@ -90,6 +95,14 @@ public class OrderServiceImpl implements OrderService{
@Autowired @Autowired
private ClfOrderMappingRepository clfOrderMappingRepository; private ClfOrderMappingRepository clfOrderMappingRepository;
@Autowired
private CancelPreLoanRepository cancelPreLoanRepository;
@Autowired
private OPCenter opCenter;
private static final String auth = "dXNlcj14dWV6aiZwYXNzd29yZD0xMjMxMjNxd2Vxd2U%3D";
...@@ -532,25 +545,34 @@ public class OrderServiceImpl implements OrderService{ ...@@ -532,25 +545,34 @@ public class OrderServiceImpl implements OrderService{
* @param * @param
* @return * @return
*/ */
@Override
public boolean cancelPreLoan(String channelOrderNumber) { public boolean cancelPreLoan(String channelOrderNumber) {
boolean cancel = true;
/*Order order = this.orderRepository.findOrderByChannelOrderNumber(channelOrderNumber); String token = null;
ClfOrderMapping orderMapping = clfOrderMappingRepository.findByChannelOrderNoLastOne(channelOrderNumber);
ClfOrderMapping orderMapping = this.clfOrderMappingRepository.findByChannelOrderNoLastOne(channelOrderNumber);
if (orderMapping == null) { if (orderMapping == null) {
login.info("cancelPreLoan,贷前关单失败,无订单 channelOrderNumber={}", channelOrderNumber); log.info("cancelPreLoan,贷前关单失败,无订单 channelOrderNumber={}", channelOrderNumber);
return false; return false;
}*/ }
try{
Long id = xyqbCenterService.cancelPreLoan(channelOrderNumber); Long id = cancelPreLoanRepository.cancelPreLoan(orderMapping.getApplyNo());
String response = opCenter.getToken(auth);
JSONObject responseJ = JSONObject.parseObject(response);
if(responseJ != null && responseJ.containsKey("data")){
JSONObject data = (JSONObject) responseJ.get("data");
if(data != null && data.containsKey("token")){
token = String.valueOf(data.get("token"));
}
}
ConcurrentMap<Object, Object> data = Maps.newConcurrentMap(); ConcurrentMap<Object, Object> data = Maps.newConcurrentMap();
data.put("data", id); data.put("data",id);
data.put("remark", "系统关单"); data.put("remark","贷前关单");
String result = clothoCenterService.cancelPreLoan(data); String result = clothoCenterService.cancelPreLoan(data,token);
return true; }catch (Exception e){
cancel = false;
log.error(e.getMessage(),e);
}
return cancel;
} }
/** /**
...@@ -559,13 +581,12 @@ public class OrderServiceImpl implements OrderService{ ...@@ -559,13 +581,12 @@ public class OrderServiceImpl implements OrderService{
* @param * @param
* @return * @return
*/ */
@Override
public boolean cancelAfterLoan(String channelOrderNumber) { public boolean cancelAfterLoan(String channelOrderNumber) {
ClfOrderMapping orderMapping = this.clfOrderMappingRepository.findByChannelOrderNoLastOne(channelOrderNumber); ClfOrderMapping orderMapping = this.clfOrderMappingRepository.findByChannelOrderNoLastOne(channelOrderNumber);
if (orderMapping == null) { if (orderMapping == null) {
log.info("cancelAfterLoan,贷后关单失败,无订单 channelOrderNumber={}", channelOrderNumber); log.info("cancelAfterLoan,贷后关单失败,无订单 ={}", channelOrderNumber);
return false; return false;
} }
if (orderMapping.getLoanId() == null) { if (orderMapping.getLoanId() == null) {
...@@ -573,8 +594,8 @@ public class OrderServiceImpl implements OrderService{ ...@@ -573,8 +594,8 @@ public class OrderServiceImpl implements OrderService{
return false; return false;
} }
ConcurrentMap<Object, Object> data = Maps.newConcurrentMap(); ConcurrentMap<Object, Object> data = Maps.newConcurrentMap();
data.put("loanId", orderMapping.getLoanId()); data.put("loanId",orderMapping.getLoanId());
data.put("userId", orderMapping.getQgUserId()); data.put("userId",orderMapping.getQgUserId());
data.put("flowNo", UUID.randomUUID()); data.put("flowNo", UUID.randomUUID());
String id = clothoCenterService.cancelAfterLoan(data); String id = clothoCenterService.cancelAfterLoan(data);
......
package cn.quantgroup.cashloanflowboss.spi.clotho.client; package cn.quantgroup.cashloanflowboss.spi.clotho.client;
import cn.quantgroup.cashloanflowboss.spi.clotho.exception.ClothoCenterException; import cn.quantgroup.cashloanflowboss.spi.clotho.exception.ClothoCenterException;
import java.util.Map;
import org.springframework.cloud.netflix.feign.FeignClient; import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import java.util.Map; import java.util.Map;
...@@ -50,7 +52,7 @@ public interface ClothoCenter { ...@@ -50,7 +52,7 @@ public interface ClothoCenter {
* @return * @return
*/ */
@PostMapping(value = "/loan/super/close/quota", consumes = "application/x-www-form-urlencoded") @PostMapping(value = "/loan/super/close/quota", consumes = "application/x-www-form-urlencoded")
String cancelPreLoan(@RequestParam Map data); String cancelPreLoan(@RequestParam Map data,@RequestHeader(value = "x-auth-token") String token);
/** /**
* 贷后关单 * 贷后关单
...@@ -84,7 +86,7 @@ public interface ClothoCenter { ...@@ -84,7 +86,7 @@ public interface ClothoCenter {
return null; return null;
} }
@Override public String cancelPreLoan(Map data) { @Override public String cancelPreLoan(Map data, String token) {
return null; return null;
} }
......
...@@ -82,9 +82,9 @@ public class ClothoCenterService { ...@@ -82,9 +82,9 @@ public class ClothoCenterService {
} }
} }
public String cancelPreLoan(Map<Object, Object> data) { public String cancelPreLoan(Map<Object, Object> data,String token) {
if (Application.isDebug()) { if (Application.isDebug()) {
return clothoCenter.cancelPreLoan(data); return clothoCenter.cancelPreLoan(data,token);
} else { } else {
return "error"; return "error";
} }
......
package cn.quantgroup.cashloanflowboss.spi.opapi;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Component
@FeignClient(name = "OPCenterService", url = "${op.api-host}", fallback = OPCenter.Fallback.class)
public interface OPCenter {
@GetMapping(value = "/user/login")
String getToken(@RequestParam("auth") String auth);
@Component
class Fallback implements OPCenter {
@Override
public String getToken(String auth) {
return null;
}
}
}
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