Commit 28064fc8 authored by suntao's avatar suntao

订单历史状态查询

parent f43f9e7f
package cn.quantgroup.cashloanflowboss.api.order.model;
import lombok.Data;
import java.util.List;
/**
* function:
* date: 2019/8/15
*
* @author: suntao
*/
@Data
public class HistoryOrderStatusVoModel {
private List<VoOrderStatus> historyStatus;
}
...@@ -2,6 +2,7 @@ package cn.quantgroup.cashloanflowboss.api.order.model; ...@@ -2,6 +2,7 @@ package cn.quantgroup.cashloanflowboss.api.order.model;
import lombok.Data; import lombok.Data;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
...@@ -16,7 +17,7 @@ public class OrderVo { ...@@ -16,7 +17,7 @@ public class OrderVo {
private Long id; private Long id;
private Long channelId; private Long channelId;
private String channelOrderNumber; private String channelOrderNumber;
private Long createdAt; private Date createdAt;
private String status; private String status;
/** /**
* [ {action:"audit",name:"审核"},{},{}... ] * [ {action:"audit",name:"审核"},{},{}... ]
......
package cn.quantgroup.cashloanflowboss.api.order.model;
import lombok.Data;
import java.util.Date;
/**
* function:
* date: 2019/8/16
*
* @author: suntao
*/
@Data
public class VoOrderStatus {
private String status;
private Date updateTime;
}
...@@ -24,6 +24,7 @@ import cn.quantgroup.cashloanflowboss.utils.JSONTools; ...@@ -24,6 +24,7 @@ import cn.quantgroup.cashloanflowboss.utils.JSONTools;
import cn.quantgroup.user.retbean.XUser; import cn.quantgroup.user.retbean.XUser;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
...@@ -35,6 +36,7 @@ import java.util.Objects; ...@@ -35,6 +36,7 @@ import java.util.Objects;
import java.util.UUID; import java.util.UUID;
import java.util.concurrent.ConcurrentMap; import java.util.concurrent.ConcurrentMap;
import javax.persistence.criteria.Predicate; import javax.persistence.criteria.Predicate;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -110,7 +112,7 @@ public class OrderService { ...@@ -110,7 +112,7 @@ public class OrderService {
orderVo.setId(it.getId()); orderVo.setId(it.getId());
orderVo.setChannelId(it.getRegisteredFrom()); orderVo.setChannelId(it.getRegisteredFrom());
orderVo.setChannelOrderNumber(it.getChannelOrderNo()); orderVo.setChannelOrderNumber(it.getChannelOrderNo());
orderVo.setCreatedAt(it.getCreatedAt().getTime()); orderVo.setCreatedAt(it.getCreatedAt());
if (StringUtils.isNotEmpty(it.getApplyNo())) { if (StringUtils.isNotEmpty(it.getApplyNo())) {
OrderApprove orderApprove = orderApproveRepository.findByCreditNumber(it.getApplyNo()); OrderApprove orderApprove = orderApproveRepository.findByCreditNumber(it.getApplyNo());
...@@ -268,28 +270,41 @@ public class OrderService { ...@@ -268,28 +270,41 @@ public class OrderService {
return "success".equals(cancel_result); return "success".equals(cancel_result);
} }
public XyqbHistoryOrderStatusServiceResultModel getOrderHistoryStatus(String channelOrderNumber) { public HistoryOrderStatusVoModel getOrderHistoryStatus(String channelOrderNumber) {
ClfOrderMapping orderMapping = clfOrderMappingRepository.findByChannelOrderNoLastOne(channelOrderNumber); ClfOrderMapping orderMapping = clfOrderMappingRepository.findByChannelOrderNoLastOne(channelOrderNumber);
if (orderMapping == null) { HistoryOrderStatusVoModel historyOrderStatusVoModel = new HistoryOrderStatusVoModel();
return new XyqbHistoryOrderStatusServiceResultModel(); if (orderMapping == null) {
} return historyOrderStatusVoModel;
ServiceResult<XyqbHistoryOrderStatusServiceResultModel> xyqbOrderHistoryStatusResult = xyqbCenterService.getXyqbOrderHistoryStatus(orderMapping.getApplyNo(), orderMapping.getLoanId()); }
if (xyqbOrderHistoryStatusResult.isSuccess()) { OrderApprove orderApprove = orderApproveRepository.findByCreditNumber(orderMapping.getApplyNo());
log.info("[getOrderHistoryStatus]查询成功channelOrderNumber={}, xyqbOrderHistoryStatusResult={}", channelOrderNumber, JSONTools.serialize(xyqbOrderHistoryStatusResult));
return xyqbOrderHistoryStatusResult.getData(); ServiceResult<XyqbHistoryOrderStatusServiceResultModel> xyqbOrderHistoryStatusResult = xyqbCenterService.getXyqbOrderHistoryStatus(orderMapping.getApplyNo(), orderMapping.getLoanId());
} else { if (xyqbOrderHistoryStatusResult.isSuccess()) {
log.info("[getOrderHistoryStatus]查询失败channelOrderNumber={}, xyqbOrderHistoryStatusResult={}", channelOrderNumber, JSONTools.serialize(xyqbOrderHistoryStatusResult)); log.info("[getOrderHistoryStatus]查询成功channelOrderNumber={}, xyqbOrderHistoryStatusResult={}", channelOrderNumber, JSONTools.serialize(xyqbOrderHistoryStatusResult));
return new XyqbHistoryOrderStatusServiceResultModel(); XyqbHistoryOrderStatusServiceResultModel data = xyqbOrderHistoryStatusResult.getData();
List<VoOrderStatus> historyStatusList = new ArrayList<>();
for (QueryXyqbOrderStatus queryXyqbOrderStatus : data.getHistoryStatus()) {
VoOrderStatus voOrderStatus = new VoOrderStatus();
Tuple<String, List<OrderVo.OptButton>> oneStatus = OrderUtil.getCurrentStatusAndButtons(queryXyqbOrderStatus, orderApprove);
voOrderStatus.setStatus(oneStatus.getKey());
voOrderStatus.setUpdateTime(new Date(queryXyqbOrderStatus.getUpdateTime()));
historyStatusList.add(voOrderStatus);
}
historyOrderStatusVoModel.setHistoryStatus(historyStatusList);
return historyOrderStatusVoModel;
} else {
log.info("[getOrderHistoryStatus]查询失败channelOrderNumber={}, xyqbOrderHistoryStatusResult={}", channelOrderNumber, JSONTools.serialize(xyqbOrderHistoryStatusResult));
return historyOrderStatusVoModel;
}
} }
}
/** /**
* 贷前关单 * 贷前关单
* *
* @param * @param
* @return * @return
*/ */
public boolean cancelPreLoan(String channelOrderNumber) { public boolean cancelPreLoan(String channelOrderNumber) {
/*Order order = this.orderRepository.findOrderByChannelOrderNumber(channelOrderNumber); /*Order order = this.orderRepository.findOrderByChannelOrderNumber(channelOrderNumber);
...@@ -300,39 +315,39 @@ public class OrderService { ...@@ -300,39 +315,39 @@ public class OrderService {
return false; return false;
}*/ }*/
Long id = cancelPreLoanRepository.cancelPreLoan(channelOrderNumber); Long id = cancelPreLoanRepository.cancelPreLoan(channelOrderNumber);
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 = clothoCenter.cancelPreLoan(data); String result = clothoCenter.cancelPreLoan(data);
return true; return true;
} }
/** /**
* 贷后关单 * 贷后关单
* *
* @param * @param
* @return * @return
*/ */
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={}", channelOrderNumber);
return false; return false;
} }
if (orderMapping.getLoanId() == null) { if (orderMapping.getLoanId() == null) {
log.info("cancelAfterLoan,贷后关单失败,loanId为空,channelOrderNumber={}", channelOrderNumber); log.info("cancelAfterLoan,贷后关单失败,loanId为空,channelOrderNumber={}", channelOrderNumber);
return false; return false;
}
ConcurrentMap<Object, Object> data = Maps.newConcurrentMap();
data.put("loanId", orderMapping.getLoanId());
data.put("userId", orderMapping.getQgUserId());
data.put("flowNo", UUID.randomUUID());
String id = clothoCenter.cancelAfterLoan(data);
return true;
} }
ConcurrentMap<Object, Object> data = Maps.newConcurrentMap();
data.put("loanId",orderMapping.getLoanId());
data.put("userId",orderMapping.getQgUserId());
data.put("flowNo", UUID.randomUUID());
String id = clothoCenter.cancelAfterLoan(data);
return true;
}
} }
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