Commit 4aef5ed3 by huluobin

物流回调oms

parent f11835ee
package com.bailuntec.ana.application.purchase;
import com.bailuntec.ana.domain.purchase.LogisticsOrder;
import com.bailuntec.ana.domain.purchase.PurchaseOrder;
import com.bailuntec.ana.vo.purchase.CallBackLogisticsOrder;
import com.bailuntec.ana.vo.purchase.PmsCallBackResult;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import java.util.Map;
/**
......@@ -25,4 +27,11 @@ public interface ILogisticsOrderService extends IService<LogisticsOrder> {
* @param request
*/
void callBackLogisticsOrder(PmsCallBackResult<Map<String, CallBackLogisticsOrder>> request);
/**
* 设置采购单物流信息
*
* @param purchaseOrderList 采购单列表
*/
void setLogisticsOrder(List<PurchaseOrder> purchaseOrderList);
}
......@@ -8,17 +8,21 @@ 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.common.util.ListUtil;
import com.bailuntec.ana.infrastructure.mapper.order.OrderDetailMapper;
import com.bailuntec.ana.infrastructure.mapper.purchase.LogisticsOrderMapper;
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.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;
/**
* <p>
......@@ -69,4 +73,16 @@ public class LogisticsOrderServiceImpl extends ServiceImpl<LogisticsOrderMapper,
purchaseOrderService.callbackOms(order);
});
}
@Override
public void setLogisticsOrder(List<PurchaseOrder> purchaseOrderList) {
List<String> purchaseOrderIdList = purchaseOrderList.stream().map(PurchaseOrder::getId).collect(Collectors.toList());
if (ListUtil.isNotEmpty(purchaseOrderIdList)) {
List<LogisticsOrder> logisticsOrderList = baseMapper.selectList(new LambdaQueryWrapper<LogisticsOrder>()
.in(LogisticsOrder::getPurchaseOrderId, purchaseOrderIdList));
Map<String, LogisticsOrder> logisticsOrderMap = logisticsOrderList.stream()
.collect(Collectors.toMap(LogisticsOrder::getPurchaseOrderId, logisticsOrder -> logisticsOrder, (k1, k2) -> k1));
purchaseOrderList.forEach(purchaseOrder -> purchaseOrder.setLogisticsOrder(logisticsOrderMap.get(purchaseOrder.getId())));
}
}
}
package com.bailuntec.ana.application.purchase.impl;
import com.bailuntec.ana.application.order.IOrderDetailService;
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;
......@@ -50,7 +50,7 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
@Resource
OrderDetailMapper orderDetailMapper;
@Resource
IOrderDetailService orderDetailService;
ILogisticsOrderService logisticsOrderService;
@Resource
IOrderService orderService;
@Resource
......@@ -183,6 +183,9 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
purchaseInfo.setPlatSkus(purchaseOrder.getPurchaseOrderDetailList().stream().map(purchaseOrderDetail -> purchaseOrderDetail.getOrderDetail()
.getSkuNo()).collect(Collectors.toList()));
purchaseInfo.setTrackingNo(purchaseOrder.getLogisticsOrder().getTrackingNumber());
purchaseInfo.setProvider(purchaseOrder.getLogisticsOrder().getCarrier());
return purchaseInfo;
})
.collect(Collectors.toList()));
......@@ -197,6 +200,7 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
public List<PurchaseOrder> listByOrderId(String orderId) {
List<PurchaseOrder> purchaseOrderList = baseMapper.selectByOrderId(orderId);
purchaseOrderDetailService.setPurchaseOrderDetail(purchaseOrderList);
logisticsOrderService.setLogisticsOrder(purchaseOrderList);
return purchaseOrderList;
}
......
......@@ -52,4 +52,7 @@ public class PurchaseOrder extends BaseModel {
@TableField(exist = false)
private List<PurchaseOrderDetail> purchaseOrderDetailList;
@TableField(exist = false)
private LogisticsOrder logisticsOrder;
}
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