...
|
...
|
@@ -199,12 +199,24 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { |
|
|
//查询卖家快递单号
|
|
|
List<ExpressRecord> expressRecordList =expressRecordMapper.selectByOrderCodeListAndType(buyerOrderCodeList, Lists.newArrayList(EXPRESS_TYPE_SELLER_TO_JUDGE));
|
|
|
Map<String, ExpressRecord> expressRecordMap = expressRecordList.stream().collect(Collectors.toMap(ExpressRecord::getOrderCode, e->e));
|
|
|
List<Integer> sellerExpressCompanyIdList = expressRecordList.stream().map(ExpressRecord::getLogisticsType).collect(Collectors.toList());
|
|
|
|
|
|
//查询平台快递单号
|
|
|
List<ExpressRecord> platformExpressList = expressRecordMapper.selectByOrderCodeListAndType(buyerOrderCodeList, Lists.newArrayList(EXPRESS_TYPE_JUDGE_TO_BUYER, EXPRESS_TYPE_JUDGE_TO_SELLER));
|
|
|
Map<String, ExpressRecord> platformExpressRecordMap = platformExpressList.stream().collect(Collectors.toMap(ExpressRecord::getOrderCode, e->e));
|
|
|
List<Integer> platformExpressCompanyIdList = platformExpressList.stream().map(ExpressRecord::getLogisticsType).collect(Collectors.toList());
|
|
|
|
|
|
List<BuyerOrderResp> respList = convertToResp(orderList, buyerGoodsMap, sellerOrderMap, sellerGoodsMap,expressRecordMap, platformExpressRecordMap);
|
|
|
//查询快递公司名称
|
|
|
List<Integer> expressCompanyIdList = Lists.newArrayList();
|
|
|
expressCompanyIdList.addAll(sellerExpressCompanyIdList);
|
|
|
expressCompanyIdList.addAll(platformExpressCompanyIdList);
|
|
|
Map<Integer, String> companyMap = Maps.newHashMap();
|
|
|
if(CollectionUtils.isNotEmpty(expressCompanyIdList)) {
|
|
|
List<ExpressCompany> companyList = expressCompanyMapper.selectByIdList(expressCompanyIdList);
|
|
|
companyMap = companyList.stream().collect(Collectors.toMap(ExpressCompany::getId, ExpressCompany::getCompanyName));
|
|
|
}
|
|
|
|
|
|
List<BuyerOrderResp> respList = convertToResp(orderList, buyerGoodsMap, sellerOrderMap, sellerGoodsMap,expressRecordMap, platformExpressRecordMap, companyMap);
|
|
|
|
|
|
PageResponseBO<BuyerOrderResp> result=new PageResponseBO<>();
|
|
|
result.setList(respList);
|
...
|
...
|
@@ -238,6 +250,7 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { |
|
|
bo.setOrderCode(Long.valueOf(buyerOrder.getOrderCode()));
|
|
|
bo.setExpressCompanyId(req.getExpressCompanyId());
|
|
|
bo.setWayBillCode(req.getWaybillCode());
|
|
|
bo.setDepotNum(req.getDepotNo());
|
|
|
JSONObject jsonObject = serviceCaller.call(args, bo, JSONObject.class);
|
|
|
LOGGER.info("call orderAppraise result is {}", jsonObject.toJSONString());
|
|
|
if(jsonObject.getIntValue("code") != 200) {
|
...
|
...
|
@@ -258,6 +271,13 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { |
|
|
result.setReceiveName(metaValue.getString("addresseeName"));
|
|
|
result.setReceiveMobile(metaValue.getString("mobile"));
|
|
|
result.setReceiveAddress(getAddressInfo(metaValue.getString("areaCode")));
|
|
|
ExpressRecord record = expressRecordMapper.selectByOrderCodeAndType(req.getOrderCode(), null, EXPRESS_TYPE_JUDGE_TO_BUYER);
|
|
|
if(null == record) {
|
|
|
return result;
|
|
|
}
|
|
|
result.setPlatformWaybillCode(record.getWaybillCode());
|
|
|
List<ExpressCompany> companyList = expressCompanyMapper.selectByIdList(Lists.newArrayList(record.getLogisticsType()));
|
|
|
result.setExpressCompanyName(companyList.get(0).getCompanyName());
|
|
|
|
|
|
return result;
|
|
|
}
|
...
|
...
|
@@ -273,6 +293,14 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { |
|
|
result.setReceiveMobile(metaValue.getString("phone"));
|
|
|
result.setReceiveAddress(metaValue.getString("address"));
|
|
|
|
|
|
ExpressRecord record = expressRecordMapper.selectByOrderCodeAndType(req.getOrderCode(), null, EXPRESS_TYPE_JUDGE_TO_SELLER);
|
|
|
if(null == record) {
|
|
|
return result;
|
|
|
}
|
|
|
result.setPlatformWaybillCode(record.getWaybillCode());
|
|
|
List<ExpressCompany> companyList = expressCompanyMapper.selectByIdList(Lists.newArrayList(record.getLogisticsType()));
|
|
|
result.setExpressCompanyName(companyList.get(0).getCompanyName());
|
|
|
|
|
|
return result;
|
|
|
}
|
|
|
|
...
|
...
|
@@ -592,7 +620,7 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { |
|
|
|
|
|
private List<BuyerOrderResp> convertToResp(List<BuyerOrder> orderList, Map<String, BuyerOrderGoods> buyerGoodsMap,
|
|
|
Map<Integer, SellerOrder> sellerOrderMap, Map<Integer, SellerOrderGoods> sellerGoodsMap, Map<String, ExpressRecord> expressInfoMap,
|
|
|
Map<String, ExpressRecord> platformExpressRecordMap){
|
|
|
Map<String, ExpressRecord> platformExpressRecordMap, Map<Integer, String> companyMap){
|
|
|
List<BuyerOrderResp> respList = Lists.newArrayList();
|
|
|
for(BuyerOrder item : orderList) {
|
|
|
if(null == buyerGoodsMap.get(item.getOrderCode())) {
|
...
|
...
|
@@ -617,7 +645,13 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { |
|
|
resp.setSizeName(sellerGoodsMap.get(skup).getSizeName());
|
|
|
resp.setGoodsPrice(String.format("%.2f", buyerGoodsMap.get(item.getOrderCode()).getGoodsPrice().doubleValue()));
|
|
|
resp.setAmount(null == item.getAmount() ? null : String.format("%.2f", item.getAmount().doubleValue()));
|
|
|
resp.setPlatformWaybillCode(null == platformExpressRecordMap.get(item.getOrderCode()) ? "" : platformExpressRecordMap.get(item.getOrderCode()).getWaybillCode());
|
|
|
ExpressRecord platformExpressRecord = platformExpressRecordMap.get(item.getOrderCode());
|
|
|
if(null != platformExpressRecord) {
|
|
|
String platformWaybillCode = platformExpressRecord.getWaybillCode();
|
|
|
Integer logisticsType = platformExpressRecord.getLogisticsType();
|
|
|
String companyName = companyMap.get(logisticsType);
|
|
|
resp.setPlatformWaybillCode(platformWaybillCode + "(" + companyName + ")");
|
|
|
}
|
|
|
|
|
|
respList.add(resp);
|
|
|
}
|
...
|
...
|
|