Commit f11835ee by huluobin

采购物流回调

parent 278d3155
......@@ -2,6 +2,7 @@ package com.bailuntec.ana.application.order.impl;
import com.bailuntec.ana.application.order.IOrderDetailService;
import com.bailuntec.ana.application.order.IOrderSpecificationService;
import com.bailuntec.ana.application.purchase.IPurchaseOrderService;
import com.bailuntec.ana.domain.order.Order;
import com.bailuntec.ana.domain.order.OrderDetail;
import com.bailuntec.ana.domain.purchase.PurchaseOrderDetail;
......@@ -29,6 +30,8 @@ public class OrderDetailServiceImpl extends ServiceImpl<OrderDetailMapper, Order
@Resource
IOrderSpecificationService orderSpecificationService;
@Resource
IPurchaseOrderService purchaseOrderService;
@Override
public List<OrderDetail> selectByOrderIdAndPurchaseStatus(String orderId, Integer purchaseStatus) {
......@@ -42,13 +45,10 @@ public class OrderDetailServiceImpl extends ServiceImpl<OrderDetailMapper, Order
public void setOrderDetail(List<Order> orderList) {
List<String> orderIdList = orderList.stream().map(Order::getId).collect(Collectors.toList());
if (ListUtil.isNotEmpty(orderIdList)) {
List<OrderDetail> orderDetailList = this.list(new LambdaQueryWrapper<OrderDetail>()
.in(OrderDetail::getOrderId, orderIdList));
List<OrderDetail> orderDetailList = this.list(new LambdaQueryWrapper<OrderDetail>().in(OrderDetail::getOrderId, orderIdList));
orderSpecificationService.setOrderSpecification(orderDetailList);
Map<String, List<OrderDetail>> orderDetailMap = orderDetailList.stream()
.collect(Collectors.groupingBy(OrderDetail::getOrderId));
Map<String, List<OrderDetail>> orderDetailMap = orderDetailList.stream().collect(Collectors.groupingBy(OrderDetail::getOrderId));
orderList.forEach(order -> order.setOrderDetailList(orderDetailMap.get(order.getId())));
}
......@@ -62,9 +62,7 @@ public class OrderDetailServiceImpl extends ServiceImpl<OrderDetailMapper, Order
List<OrderDetail> orderDetailList = this.listByIds(orderDetailIdList);
orderSpecificationService.setOrderSpecification(orderDetailList);
Map<String, OrderDetail> orderDetailMap = orderDetailList.stream()
.collect(Collectors.toMap(OrderDetail::getOrderId, orderDetail -> orderDetail, (k1, k2) -> k1));
Map<String, OrderDetail> orderDetailMap = orderDetailList.stream().collect(Collectors.toMap(OrderDetail::getOrderId, orderDetail -> orderDetail, (k1, k2) -> k1));
purchaseOrderDetailList.forEach(purchaseOrderDetail -> purchaseOrderDetail.setOrderDetail(orderDetailMap.get(purchaseOrderDetail.getOrderDetailId())));
}
......@@ -75,6 +73,7 @@ public class OrderDetailServiceImpl extends ServiceImpl<OrderDetailMapper, Order
public void setOrderDetail(Order order) {
List<OrderDetail> orderDetailList = baseMapper.selectByOrderId(order.getId());
orderSpecificationService.setOrderSpecification(orderDetailList);
order.setOrderDetailList(orderDetailList);
}
}
package com.bailuntec.ana.application.purchase;
import com.bailuntec.ana.domain.purchase.LogisticsOrder;
import com.bailuntec.ana.vo.purchase.CallBackLogisticsOrder;
import com.bailuntec.ana.vo.purchase.PmsCallBackResult;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.Map;
/**
* <p>
* 服务类
* 服务类
* </p>
*
* @author robbendev
......@@ -13,4 +17,12 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface ILogisticsOrderService extends IService<LogisticsOrder> {
/**
* <p>
* 物流信息回调
* </p>
*
* @param request
*/
void callBackLogisticsOrder(PmsCallBackResult<Map<String, CallBackLogisticsOrder>> request);
}
......@@ -26,4 +26,12 @@ public interface IPurchaseOrderDetailService extends IService<PurchaseOrderDetai
*/
void setPurchaseOrderDetail(List<PurchaseOrder> purchaseOrderList);
/**
* <p>
* 设置采购订单详情
* </p>
*
* @param purchaseOrder param
*/
void setPurchaseOrderDetail(PurchaseOrder purchaseOrder);
}
package com.bailuntec.ana.application.purchase;
import com.bailuntec.ana.domain.order.Order;
import com.bailuntec.ana.domain.purchase.PurchaseOrder;
import com.bailuntec.ana.vo.purchase.PmsCallBackResult;
import com.bailuntec.ana.vo.purchase.PurchaseCallBackRequest;
......@@ -36,4 +37,12 @@ public interface IPurchaseOrderService extends IService<PurchaseOrder> {
* @return 采购订单
*/
List<PurchaseOrder> listByOrderId(String orderId);
/**
* 回调oms订单采购信息
*
* @param order 订单详情
*/
void callbackOms(Order order);
}
package com.bailuntec.ana.application.purchase.impl;
import com.bailuntec.ana.application.order.IOrderService;
import com.bailuntec.ana.application.purchase.ILogisticsOrderService;
import com.bailuntec.ana.application.purchase.IPurchaseOrderDetailService;
import com.bailuntec.ana.application.purchase.IPurchaseOrderService;
import com.bailuntec.ana.domain.order.Order;
import com.bailuntec.ana.domain.order.OrderDetail;
import com.bailuntec.ana.domain.purchase.LogisticsOrder;
import com.bailuntec.ana.domain.purchase.PurchaseOrder;
import com.bailuntec.ana.infrastructure.mapper.order.OrderDetailMapper;
import com.bailuntec.ana.infrastructure.mapper.purchase.LogisticsOrderMapper;
import com.bailuntec.ana.application.purchase.ILogisticsOrderService;
import com.bailuntec.ana.infrastructure.mapper.purchase.PurchaseOrderMapper;
import com.bailuntec.ana.vo.order.resp.PublishOrderCallBackRequest;
import com.bailuntec.ana.vo.purchase.CallBackLogisticsOrder;
import com.bailuntec.ana.vo.purchase.PmsCallBackResult;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Map;
/**
* <p>
* 服务实现类
* 服务实现类
* </p>
*
* @author robbendev
......@@ -17,4 +31,42 @@ import org.springframework.stereotype.Service;
@Service
public class LogisticsOrderServiceImpl extends ServiceImpl<LogisticsOrderMapper, LogisticsOrder> implements ILogisticsOrderService {
@Resource
PurchaseOrderMapper purchaseOrderMapper;
@Resource
OrderDetailMapper orderDetailMapper;
@Resource
IPurchaseOrderDetailService purchaseOrderDetailService;
@Resource
IPurchaseOrderService purchaseOrderService;
@Resource
IOrderService orderService;
@Override
public void callBackLogisticsOrder(PmsCallBackResult<Map<String, CallBackLogisticsOrder>> request) {
request.getData().forEach((purchaseOrderNo, callBackLogisticsOrder) -> {
PurchaseOrder purchaseOrder = purchaseOrderMapper.selectByTaskTypeAndOrderNo(request.getName(), purchaseOrderNo);
purchaseOrderDetailService.setPurchaseOrderDetail(purchaseOrder);
LogisticsOrder logisticsOrder = new LogisticsOrder();
logisticsOrder.setCarrier(callBackLogisticsOrder.getCarrier());
logisticsOrder.setPurchaseOrderId(purchaseOrder.getId());
logisticsOrder.setPurchaseOrderNo(purchaseOrder.getOrderNo());
logisticsOrder.setTrackingNumber(callBackLogisticsOrder.getTrackingNumber());
baseMapper.insert(logisticsOrder);
purchaseOrder.getPurchaseOrderDetailList().forEach(purchaseOrderDetail -> {
OrderDetail orderDetail = purchaseOrderDetail.getOrderDetail();
orderDetail.setDeliveryStatus(OrderDetail.DELIVERY_STATUS_SUCCESS);
orderDetailMapper.updateById(orderDetail);
});
Order order = orderService.queryDetail(purchaseOrder.getOrderId());
boolean isPartialDelivery = order.getOrderDetailList().stream().anyMatch(orderDetail -> !orderDetail.getDeliveryStatus().equals(OrderDetail.DELIVERY_STATUS_SUCCESS));
order.setDeliveryStatus(isPartialDelivery ? PublishOrderCallBackRequest.DELIVERY_STATUS_PARTIAL_DELIVERY : Order.DELIVERY_STATUS_SUCCESS);
orderService.updateById(order);
purchaseOrderService.callbackOms(order);
});
}
}
package com.bailuntec.ana.application.purchase.impl;
import com.bailuntec.ana.application.order.IOrderDetailService;
import com.bailuntec.ana.application.purchase.IPurchaseOrderDetailService;
import com.bailuntec.ana.domain.order.OrderDetail;
import com.bailuntec.ana.domain.purchase.PurchaseOrder;
import com.bailuntec.ana.domain.purchase.PurchaseOrderDetail;
import com.bailuntec.ana.infrastructure.common.util.ListUtil;
import com.bailuntec.ana.infrastructure.mapper.order.OrderDetailMapper;
import com.bailuntec.ana.infrastructure.mapper.purchase.PurchaseOrderDetailMapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
......@@ -24,6 +28,8 @@ import java.util.stream.Collectors;
@Service
public class PurchaseOrderDetailServiceImpl extends ServiceImpl<PurchaseOrderDetailMapper, PurchaseOrderDetail> implements IPurchaseOrderDetailService {
@Resource
IOrderDetailService orderDetailService;
@Override
public void setPurchaseOrderDetail(List<PurchaseOrder> purchaseOrderList) {
......@@ -32,12 +38,19 @@ public class PurchaseOrderDetailServiceImpl extends ServiceImpl<PurchaseOrderDet
List<PurchaseOrderDetail> purchaseOrderDetailList = baseMapper.selectList(new LambdaQueryWrapper<PurchaseOrderDetail>()
.in(PurchaseOrderDetail::getPurchaseOrderId, purchaseOrderIdList));
orderDetailService.setPurchaseOrderDetailOrderDetail(purchaseOrderDetailList);
Map<String, List<PurchaseOrderDetail>> listMap = purchaseOrderDetailList.stream()
.collect(Collectors.groupingBy(PurchaseOrderDetail::getPurchaseOrderId));
purchaseOrderList.forEach(purchaseOrder -> {
purchaseOrder.setPurchaseOrderDetailList(listMap.get(purchaseOrder.getId()));
});
purchaseOrderList.forEach(purchaseOrder -> purchaseOrder.setPurchaseOrderDetailList(listMap.get(purchaseOrder.getId())));
}
}
@Override
public void setPurchaseOrderDetail(PurchaseOrder purchaseOrder) {
List<PurchaseOrderDetail> purchaseOrderDetailList = baseMapper.selectByPurchaseOrderId(purchaseOrder.getId());
orderDetailService.setPurchaseOrderDetailOrderDetail(purchaseOrderDetailList);
purchaseOrder.setPurchaseOrderDetailList(purchaseOrderDetailList);
}
}
......@@ -108,10 +108,12 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
PurchaseOrder purchaseOrder = new PurchaseOrder();
purchaseOrder.setOrderNo(purchaseOrderNo);
purchaseOrder.setPurchaseTaskId(purchaseTaskId);
purchaseOrder.setPurchasePlat(purchaseTask.getPurchasePlat());
purchaseOrder.setTotalTax(new Currency(totalTax));
purchaseOrder.setTotalPrice(new Currency(totalPrice));
purchaseOrder.setTotalShipCost(new Currency(totalShip));
purchaseOrder.setOrderId(purchaseTask.getOrderId());
baseMapper.insert(purchaseOrder);
//采购订单详情
......@@ -145,28 +147,49 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
order.setPurchaseStatus(isPartialPurchase ? PublishOrderCallBackRequest.PURCHASE_STATUS_PARTIAL_PURCHASE : Order.PURCHASE_STATUS_SUCCESS);
orderService.updateById(order);
//回调oms系统
PublishOrderCallBackRequest callBackRequest = new PublishOrderCallBackRequest();
callBackRequest.setStatus(isPartialPurchase ? PublishOrderCallBackRequest.PURCHASE_STATUS_PARTIAL_PURCHASE : PublishOrderCallBackRequest.PURCHASE_STATUS_SUCCESS);
callBackRequest.setPdsAccountId(order.getPdsAccountId());
List<PurchaseOrder> purchaseOrderList = this.listByOrderId(order.getId());
callBackRequest.setPurchaseInfos(purchaseOrderList.stream().map(purchaseOrder -> {
PurchaseInfo purchaseInfo = new PurchaseInfo();
purchaseInfo.setPurchaseOrderNo(purchaseOrder.getOrderNo());
purchaseInfo.setTax(purchaseOrder.getTotalTax());
purchaseInfo.setShippingCost(purchaseOrder.getTotalShipCost());
purchaseInfo.setPlatSkus(purchaseOrder.getPurchaseOrderDetailList().stream().map(purchaseOrderDetail -> purchaseOrderDetail.getOrderDetail()
.getSkuNo()).collect(Collectors.toList()));
return purchaseInfo;
})
.collect(Collectors.toList()));
omsApi.updateOrderStatusForAna(callBackRequest);
}
}
@Override
public void callbackOms(Order order) {
List<PurchaseOrder> purchaseOrderList = this.listByOrderId(order.getId());
//回调oms系统
PublishOrderCallBackRequest callBackRequest = new PublishOrderCallBackRequest();
//采购状态
if (order.getPurchaseStatus().equals(Order.PURCHASE_STATUS_PARTIAL_PURCHASE)) {
callBackRequest.setStatus(PublishOrderCallBackRequest.PURCHASE_STATUS_PARTIAL_PURCHASE);
} else if (order.getPurchaseStatus().equals(Order.PURCHASE_STATUS_SUCCESS)) {
callBackRequest.setStatus(PublishOrderCallBackRequest.PURCHASE_STATUS_SUCCESS);
} else {
return;
}
if (order.getDeliveryStatus().equals(Order.DELIVERY_STATUS_PARTIAL_DELIVERY)) {
callBackRequest.setStatus(PublishOrderCallBackRequest.DELIVERY_STATUS_PARTIAL_DELIVERY);
}
if (order.getDeliveryStatus().equals(Order.DELIVERY_STATUS_SUCCESS)) {
callBackRequest.setStatus(PublishOrderCallBackRequest.DELIVERY_STATUS_SUCCESS);
}
callBackRequest.setPdsAccountId(order.getPdsAccountId());
callBackRequest.setPurchaseInfos(purchaseOrderList.stream().map(purchaseOrder -> {
PurchaseInfo purchaseInfo = new PurchaseInfo();
purchaseInfo.setPurchaseOrderNo(purchaseOrder.getOrderNo());
purchaseInfo.setTax(purchaseOrder.getTotalTax());
purchaseInfo.setShippingCost(purchaseOrder.getTotalShipCost());
purchaseInfo.setPlatSkus(purchaseOrder.getPurchaseOrderDetailList().stream().map(purchaseOrderDetail -> purchaseOrderDetail.getOrderDetail()
.getSkuNo()).collect(Collectors.toList()));
return purchaseInfo;
})
.collect(Collectors.toList()));
omsApi.updateOrderStatusForAna(callBackRequest);
}
@Resource
IPurchaseOrderDetailService purchaseOrderDetailService;
......
......@@ -7,6 +7,7 @@ import com.bailuntec.ana.domain.order.OrderDetail;
import com.bailuntec.ana.domain.order.OrderSpecification;
import com.bailuntec.ana.domain.purchase.PurchaseTask;
import com.bailuntec.ana.domain.purchase.PurchaseTaskDetail;
import com.bailuntec.ana.infrastructure.common.constant.PurchaseTaskConstant;
import com.bailuntec.ana.infrastructure.feign.PmsApi;
import com.bailuntec.ana.infrastructure.mapper.order.OrderDetailMapper;
import com.bailuntec.ana.infrastructure.mapper.order.OrderSpecificationMapper;
......@@ -51,10 +52,14 @@ public class PurchaseTaskServiceImpl extends ServiceImpl<PurchaseTaskMapper, Pur
@Override
public void addTask(Order order,
String taskType) {
order.getOrderDetailList().forEach(orderDetail -> {
//按订单详情的采购平台分组拆分采购订单
for (OrderDetail orderDetail : order.getOrderDetailList()) {
PurchaseTask purchaseTask = new PurchaseTask();
purchaseTask.setOrderId(order.getId());
purchaseTask.setTaskType(taskType);
purchaseTask.setPurchasePlat(orderDetail.getPurchasePlat());
purchaseTaskMapper.insert(purchaseTask);
PurchaseTaskDetail purchaseTaskDetail = new PurchaseTaskDetail();
......@@ -84,8 +89,11 @@ public class PurchaseTaskServiceImpl extends ServiceImpl<PurchaseTaskMapper, Pur
request.setProducts(Lists.newArrayList(purchaseProduct));
if (orderDetail.getPurchasePlat().equals("ebay")) {
taskType = PurchaseTaskConstant.ebayPurchaseT;
}
pmsApi.task(taskType, purchaseTask.getId(), 1, request);
});
}
}
......
......@@ -108,7 +108,7 @@ public class OrderDetail extends BaseModel {
@TableField(exist = false)
@ApiModelProperty(value = "采购状态1-未采购 2-采购中 3-采购失败 4-采购完成")
private Integer purchaseStatusStr;
private String purchaseStatusStr;
private String purchaseMessage;
......@@ -118,7 +118,7 @@ public class OrderDetail extends BaseModel {
@TableField(exist = false)
@ApiModelProperty(value = "采购状态1-未采购 2-采购中 3-采购失败 4-采购完成")
private Integer deliveryStatusStr;
private String deliveryStatusStr;
/**
* <p>
......
......@@ -32,6 +32,9 @@ public class LogisticsOrder extends BaseModel {
@ApiModelProperty(value = "采购订单id")
private String purchaseOrderId;
@ApiModelProperty(value = "采购订单号")
private String purchaseOrderNo;
@ApiModelProperty(value = "物流单号")
private String trackingNumber;
......
......@@ -44,6 +44,9 @@ public class PurchaseOrder extends BaseModel {
@ApiModelProperty(value = "采购任务id")
private String purchaseTaskId;
@ApiModelProperty(value = "采购平台")
private String purchasePlat;
@ApiModelProperty(value = "平台订单id")
private String orderId;
......
......@@ -42,5 +42,7 @@ public class PurchaseTask extends BaseModel {
@ApiModelProperty(value = "任务信息")
private String message;
@ApiModelProperty(value = "采购平台")
private String purchasePlat;
}
......@@ -103,8 +103,9 @@ public class DictTransferAspect {
//设置翻译后的字典值
valueField.set(object, value);
}
if ((field.getType().isAnnotationPresent(ApiModel.class) || field.getType().isAnnotationPresent(TableName.class)) &&
!field.getDeclaringClass().getName().equals(object.getClass().getName())) {
if ((field.getType().isAnnotationPresent(ApiModel.class)
|| field.getType().isAnnotationPresent(TableName.class))
&& !field.getDeclaringClass().getName().equals(object.getClass().getName())) {
field.setAccessible(true);
Object subObject = field.get(object);
......@@ -112,6 +113,14 @@ public class DictTransferAspect {
this.dictTransfer(subObject);
}
}
if (field.getType().equals(List.class)) {
field.setAccessible(true);
Object subObject = field.get(object);
if (subObject != null) {
this.dictTransfer(subObject);
}
}
}
}
......
......@@ -3,9 +3,11 @@ package com.bailuntec.ana.infrastructure.mapper.purchase;
import com.bailuntec.ana.domain.purchase.PurchaseOrderDetail;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
/**
* <p>
* Mapper 接口
* Mapper 接口
* </p>
*
* @author robbendev
......@@ -13,4 +15,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface PurchaseOrderDetailMapper extends BaseMapper<PurchaseOrderDetail> {
/**
* <p>
* 查询采购单详情
* </p>
*
* @param id 采购单id
* @return 详情列表
*/
List<PurchaseOrderDetail> selectByPurchaseOrderId(String id);
}
......@@ -2,6 +2,7 @@ package com.bailuntec.ana.infrastructure.mapper.purchase;
import com.bailuntec.ana.domain.purchase.PurchaseOrder;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
......@@ -24,4 +25,15 @@ public interface PurchaseOrderMapper extends BaseMapper<PurchaseOrder> {
* @return 采购订单
*/
List<PurchaseOrder> selectByOrderId(String orderId);
/**
* <p>
* 根据采购任务的任务类型和采购订单号查询采购订单
* </p>
*
* @param taskType 采购任务类型
* @param purchaseOrderNo 采购订单号
* @return 采购订单
*/
PurchaseOrder selectByTaskTypeAndOrderNo(@Param("taskType") String taskType, @Param("purchaseOrderNo") String purchaseOrderNo);
}
package com.bailuntec.ana.interfaces.purchase;
import com.bailuntec.ana.application.purchase.ILogisticsOrderService;
import com.bailuntec.ana.infrastructure.common.base.BaseResult;
import com.bailuntec.ana.vo.purchase.CallBackLogisticsOrder;
import com.bailuntec.ana.vo.purchase.PmsCallBackResult;
......@@ -11,6 +12,9 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.Map;
/**
* <p>
* 前端控制器
......@@ -24,6 +28,9 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/api/logisticsOrder")
public class LogisticsOrderController {
@Resource
ILogisticsOrderService logisticsOrderService;
/**
* <p>
* 回调订单物流状态
......@@ -34,7 +41,8 @@ public class LogisticsOrderController {
*/
@ApiOperation("回调订单物流状态")
@PostMapping("/callBackLogisticsOrder")
public BaseResult<Void> callBackLogisticsOrder(@RequestBody PmsCallBackResult<CallBackLogisticsOrder> request) {
public BaseResult<Void> callBackLogisticsOrder(@RequestBody PmsCallBackResult<Map<String, CallBackLogisticsOrder>> request) {
logisticsOrderService.callBackLogisticsOrder(request);
return BaseResult.success();
}
}
......@@ -57,21 +57,20 @@ public class PurchaseOrderController {
@ApiOperation("采购订单通用回调")
@PostMapping("/commonPmsCallback")
public BaseResult<Void> commonPmsCallback(@RequestBody String callbackJson) {
Map<String, String> map = JsonUtilByJackson.readValue(callbackJson, new TypeReference<Map<String, String>>() {
Map<String, Object> map = JsonUtilByJackson.readValue(callbackJson, new TypeReference<Map<String, Object>>() {
});
if (map == null) {
throw new InvalidParameterException();
}
String name = map.get("name");
String name = String.valueOf(map.get("name"));
switch (name) {
case PurchaseTaskConstant
.ebayPurchase:
case PurchaseTaskConstant.ebayPurchase:
PmsCallBackResult<PurchaseCallBackRequest> request = JsonUtilByJackson.readValue(callbackJson, new TypeReference<PmsCallBackResult<PurchaseCallBackRequest>>() {
});
return this.callBackPurchaseOrder(request);
case PurchaseTaskConstant.ebayTracking:
PmsCallBackResult<CallBackLogisticsOrder> callBackLogisticsOrder = JsonUtilByJackson.readValue(callbackJson, new TypeReference<PmsCallBackResult<CallBackLogisticsOrder>>() {
PmsCallBackResult<Map<String, CallBackLogisticsOrder>> callBackLogisticsOrder = JsonUtilByJackson.readValue(callbackJson, new TypeReference<PmsCallBackResult<Map<String, CallBackLogisticsOrder>>>() {
});
return logisticsOrderController.callBackLogisticsOrder(callBackLogisticsOrder);
default:
......
package com.bailuntec.ana.vo.purchase;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -14,8 +15,10 @@ import lombok.Data;
@Data
public class CallBackLogisticsOrder {
@JsonProperty("tracking_number")
@ApiModelProperty("物流单号")
private String tracking_number;
private String trackingNumber;
@ApiModelProperty("物流商")
private String carrier;
......
......@@ -2,4 +2,10 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.bailuntec.ana.infrastructure.mapper.purchase.PurchaseOrderDetailMapper">
<select id="selectByPurchaseOrderId" resultType="com.bailuntec.ana.domain.purchase.PurchaseOrderDetail">
select *
from purchase_order_detail
where purchase_order_id = #{id}
and record_state = 'A'
</select>
</mapper>
......@@ -7,4 +7,12 @@
from purchase_order
where order_id = #{orderId}
</select>
<select id="selectByTaskTypeAndOrderNo" resultType="com.bailuntec.ana.domain.purchase.PurchaseOrder">
select t2.*
from purchase_task t1
left join purchase_order t2 on t1.id = t2.purchase_task_id
where t1.task_type = #{taskType}
and t2.order_no = #{purchaseOrderNo}
and t2.record_state = 'A'
</select>
</mapper>
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