Commit f61e8f8e by 王世昌

订单状态埋点监控查询

parent c2c10cf5
...@@ -3624,7 +3624,7 @@ public class OrderSdkAdapter { ...@@ -3624,7 +3624,7 @@ public class OrderSdkAdapter {
OrderStateInfoResp orderStateInfoResp = new OrderStateInfoResp(); OrderStateInfoResp orderStateInfoResp = new OrderStateInfoResp();
orderStateInfoResp.setErrcode(Integer.parseInt(orderInfo.getCode())); orderStateInfoResp.setErrcode(Integer.parseInt(orderInfo.getCode()));
orderStateInfoResp.setErrmsg(orderInfo.getMessage()); orderStateInfoResp.setErrmsg(orderInfo.getMessage());
if (Objects.isNull(orderInfo.getResult()) || StringUtils.isBlank(orderInfo.getResult().getOrderCode())) { if (!Objects.equals(ResponseCodeConstant.RESPONSE_SUCCESS_STR, orderInfo.getCode()) || Objects.isNull(orderInfo.getResult()) || StringUtils.isBlank(orderInfo.getResult().getOrderCode())) {
return orderStateInfoResp; return orderStateInfoResp;
} }
OrderInfoReqs orderInfoReqs = orderInfo.getResult(); OrderInfoReqs orderInfoReqs = orderInfo.getResult();
...@@ -3633,9 +3633,20 @@ public class OrderSdkAdapter { ...@@ -3633,9 +3633,20 @@ public class OrderSdkAdapter {
info.setOrderState(orderInfoReqs.getOrderState()); info.setOrderState(orderInfoReqs.getOrderState());
info.setAfterSalesState(orderInfoReqs.getAfterSalesState()); info.setAfterSalesState(orderInfoReqs.getAfterSalesState());
info.setPayState(orderInfoReqs.getPayState()); info.setPayState(orderInfoReqs.getPayState());
info.setOrderOperationHistoryList(Lists.newArrayList()); info.setOrderOperationHistoryList(orderInfoReqs.getOrderOperationHistoryList());
// 获取当前状态最后一条匹配的操作时间
if (CollectionUtils.isNotEmpty(orderInfoReqs.getOrderOperationHistoryList())) {
orderStateInfoResp.setData(); List<OrderOperationHistoryResp> historyList = orderInfoReqs.getOrderOperationHistoryList();
for (int i = historyList.size() - 1; i <= 0; i--) {
OrderOperationHistoryResp historyResp = historyList.get(i);
if (Objects.equals(historyResp.getTargetOrderState(), orderInfoReqs.getOrderState())) {
info.setStateUpdateTimestamp(historyResp.getUpdateTimestamp());
info.setStateTimeout(historyResp.getStateTimeout());
break;
}
}
}
orderStateInfoResp.setData(info);
return orderStateInfoResp;
} }
} }
...@@ -38,6 +38,7 @@ public class OrderReportController { ...@@ -38,6 +38,7 @@ public class OrderReportController {
/** /**
* 订单状态监控查询 * 订单状态监控查询
* <p>用于提供给监控系统查询</p>
* *
* @param queryResp 查询参数 * @param queryResp 查询参数
* @return {@link BaseResponse< OrderStateMonitorInfoVo >} * @return {@link BaseResponse< OrderStateMonitorInfoVo >}
......
...@@ -26,7 +26,7 @@ public class OrderStateMonitorInfoVo implements Serializable { ...@@ -26,7 +26,7 @@ public class OrderStateMonitorInfoVo implements Serializable {
/** /**
* 订单状态 * 订单状态
*/ */
private Byte orderState; private Integer orderState;
/** /**
* 状态超时时间 * 状态超时时间
......
...@@ -4486,17 +4486,24 @@ public class OrderServiceImpl implements Orderservice { ...@@ -4486,17 +4486,24 @@ public class OrderServiceImpl implements Orderservice {
BaseQueryOrderRequest request = new BaseQueryOrderRequest(); BaseQueryOrderRequest request = new BaseQueryOrderRequest();
request.setOrderId(orderCode); request.setOrderId(orderCode);
request.setPartnerId(partnerId); request.setPartnerId(partnerId);
if (Objects.nonNull(orderClient) && !Objects.equals(orderClient,0) ){ if (Objects.nonNull(orderClient) && !Objects.equals(orderClient, 0)) {
request.setOrderClient(orderClient.toString()); request.setOrderClient(orderClient.toString());
} }
// 实时查询,暂时不查询es // 实时查询,暂时不查询es
OrderStateInfoResp response = orderCenterSdkService.queryOrderStateInfo(orderCode,partnerId,orderClient,LogThreadLocal.getTrackingNo()); OrderStateInfoResp response = orderCenterSdkService.queryOrderStateInfo(orderCode, partnerId, orderClient, LogThreadLocal.getTrackingNo());
if (Objects.isNull(response) || !Objects.equals(RESPONSE_SUCCESS_CODE, response.getErrcode()) || response.getData() == null) {
if (Objects.isNull(response) || !Objects.equals(RESPONSE_SUCCESS_CODE,response.getErrcode()) || response.getData() == null) {
LogUtil.info("订单详情实时查询错误,queryOrderStateInfoResp,", response, ""); LogUtil.info("订单详情实时查询错误,queryOrderStateInfoResp,", response, "");
return ResponseUtil.error(ResponseResult.ORDER_QUERYORDER_ERROR); return ResponseUtil.error(ResponseResult.ORDER_QUERYORDER_ERROR);
} }
return null; OrderStateMonitorInfoVo infoVo = new OrderStateMonitorInfoVo();
infoVo.setOrderCode(response.getData().getOrderCode());
infoVo.setOrderState(response.getData().getOrderState());
infoVo.setStateTimeout(response.getData().getStateTimeout());
infoVo.setNeedMonitor(Objects.equals(response.getData().getStateTimeout(), 0L));
infoVo.setUpdateTimestamp(response.getData().getStateUpdateTimestamp());
return ResponseUtil.success(infoVo);
} }
......
...@@ -28,7 +28,7 @@ public class OrderStateInfoResp implements Serializable { ...@@ -28,7 +28,7 @@ public class OrderStateInfoResp implements Serializable {
private OrderStateInfo data; private OrderStateInfo data;
@Data @Data
public static class OrderStateInfo{ public static class OrderStateInfo {
/** /**
* 订单编号 * 订单编号
*/ */
...@@ -56,6 +56,26 @@ public class OrderStateInfoResp implements Serializable { ...@@ -56,6 +56,26 @@ public class OrderStateInfoResp implements Serializable {
private List<OrderOperationHistoryResp> orderOperationHistoryList; private List<OrderOperationHistoryResp> orderOperationHistoryList;
/**
* 状态更新时间戳
*/
private Long stateUpdateTimestamp;
/**
* 状态超时时间 单位:秒
*/
private Long stateTimeout;
public Long getStateUpdateTimestamp() {
return Objects.isNull(stateUpdateTimestamp) ? 0 : stateUpdateTimestamp;
}
public Long getStateTimeout() {
return Objects.isNull(stateTimeout) ? 0 : stateTimeout;
}
private List<OrderOperationHistoryResp> getOrderOperationHistoryList() { private List<OrderOperationHistoryResp> getOrderOperationHistoryList() {
return Objects.isNull(this.orderOperationHistoryList) ? Collections.emptyList() : orderOperationHistoryList; return Objects.isNull(this.orderOperationHistoryList) ? Collections.emptyList() : orderOperationHistoryList;
} }
...@@ -68,5 +88,4 @@ public class OrderStateInfoResp implements Serializable { ...@@ -68,5 +88,4 @@ public class OrderStateInfoResp implements Serializable {
} }
} }
...@@ -40,4 +40,19 @@ public class OrderOperationHistoryResp { ...@@ -40,4 +40,19 @@ public class OrderOperationHistoryResp {
*/ */
private String operator; private String operator;
/**
* 原状态
*/
private Integer originOrderState;
/**
* 目标状态
*/
private Integer targetOrderState;
/**
* 状态超时时间 单位:秒
*/
private Long stateTimeout;
} }
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