From 1ca50a0b84bbbf1c4550fa0906cb8ae5c7652149 Mon Sep 17 00:00:00 2001 From: caoyan <yan.cao@YHNJDT74FRL82.yoho01.local> Date: Wed, 26 Jun 2019 21:18:56 +0800 Subject: [PATCH] 确认收货优化 --- dal/src/main/java/com/yoho/order/dal/AbnormalPackageMapper.java | 2 +- dal/src/main/java/com/yoho/order/model/BuyerOrder.java | 6 ++---- dal/src/main/resources/META-INF/mybatis/AbnormalPackageMapper.xml | 5 ++++- order/src/main/java/com/yoho/ufo/order/service/impl/BuyerOrderServiceImpl.java | 32 ++++++++++++++++++++------------ 4 files changed, 27 insertions(+), 18 deletions(-) diff --git a/dal/src/main/java/com/yoho/order/dal/AbnormalPackageMapper.java b/dal/src/main/java/com/yoho/order/dal/AbnormalPackageMapper.java index 855afcf..bc15c2d 100644 --- a/dal/src/main/java/com/yoho/order/dal/AbnormalPackageMapper.java +++ b/dal/src/main/java/com/yoho/order/dal/AbnormalPackageMapper.java @@ -18,7 +18,7 @@ public interface AbnormalPackageMapper { int update(@Param("operateUid") Integer operateUid, @Param("updateTime") Integer updateTime, @Param("sellerWaybillCode") String sellerWaybillCode); - int selectValidCnt(); + int selectValidCnt(@Param("sellerWaybillCode") String sellerWaybillCode); List<String> selectValidSellerWaybillCodeList(@Param("buyerOrderReq") BuyerOrderReq buyerOrderReq); } diff --git a/dal/src/main/java/com/yoho/order/model/BuyerOrder.java b/dal/src/main/java/com/yoho/order/model/BuyerOrder.java index 185a94a..165a013 100644 --- a/dal/src/main/java/com/yoho/order/model/BuyerOrder.java +++ b/dal/src/main/java/com/yoho/order/model/BuyerOrder.java @@ -1,12 +1,10 @@ package com.yoho.order.model; -import lombok.Getter; -import lombok.Setter; -import lombok.ToString; - import java.io.Serializable; import java.math.BigDecimal; +import lombok.ToString; + /** * @author caoyan * @date 2018/9/12 diff --git a/dal/src/main/resources/META-INF/mybatis/AbnormalPackageMapper.xml b/dal/src/main/resources/META-INF/mybatis/AbnormalPackageMapper.xml index ce28602..c79c763 100644 --- a/dal/src/main/resources/META-INF/mybatis/AbnormalPackageMapper.xml +++ b/dal/src/main/resources/META-INF/mybatis/AbnormalPackageMapper.xml @@ -15,11 +15,14 @@ </sql> <select id="selectValidCnt" resultType="java.lang.Integer"> - select count(1) from abnormal_package where is_del = 0 + select count(1) from abnormal_package where is_del = 0 and seller_waybillCode= #{sellerWaybillCode} </select> <select id="selectValidSellerWaybillCodeList" resultType="java.lang.String" parameterType="com.yoho.order.model.BuyerOrderReq"> select seller_waybillCode from abnormal_package where is_del=0 + <if test="buyerOrderReq.sellerWaybillCode!=null and buyerOrderReq.sellerWaybillCode != ''"> + seller_waybillCode = #{buyerOrderReq.sellerWaybillCode} + </if> <if test="buyerOrderReq.start!=null and buyerOrderReq.size != null"> limit #{buyerOrderReq.start},#{buyerOrderReq.size} </if> diff --git a/order/src/main/java/com/yoho/ufo/order/service/impl/BuyerOrderServiceImpl.java b/order/src/main/java/com/yoho/ufo/order/service/impl/BuyerOrderServiceImpl.java index e3b3373..3086fa5 100644 --- a/order/src/main/java/com/yoho/ufo/order/service/impl/BuyerOrderServiceImpl.java +++ b/order/src/main/java/com/yoho/ufo/order/service/impl/BuyerOrderServiceImpl.java @@ -293,7 +293,8 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { private static final Byte QC_STATUS_EXCEPTION = 4; //待处理 - private static final List<Byte> receivedList = Lists.newArrayList(Constant.BUYER_ORDER_STATUS_PLATFORM_RECEIVE.getByteVal()); //平台质检中 + private static final List<Byte> receivedList = Lists.newArrayList(Constant.BUYER_ORDER_STATUS_ALLOCATING.getByteVal(),//卖家已发货 + Constant.BUYER_ORDER_STATUS_PLATFORM_RECEIVE.getByteVal()); //平台质检中 //待发货 private static final List<Byte> processingList = Lists.newArrayList(Constant.CANCEL_QUALITY_CHECK_FAKE.getByteVal(),//已取消(商品质检不通过) @@ -390,7 +391,7 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { resultMap.put("problemNum", problemNum); //查询异常包裹 - resultMap.put("exceptionNum", abnormalPackageMapper.selectValidCnt()); + resultMap.put("exceptionNum", abnormalPackageMapper.selectValidCnt(req.getQueryStr())); return resultMap; } @@ -892,22 +893,20 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { @Override public void batchConfirmReceive(BuyerOrderReq req) { - String orderCodes = req.getOrderCode(); - if(StringUtils.isEmpty(orderCodes)) { - return; - } + String sellerWaybillCode = req.getSellerWaybillCode(); + + List<BuyerOrder> orderList = queryOrderByQueryStr(sellerWaybillCode, null, null); + List<String> orderCodes = orderList.stream().map(BuyerOrder::getOrderCode).collect(Collectors.toList()); - String[] orderCodeArr = orderCodes.split(","); UserHelper userHelper = new UserHelper(); int operateType =OperateTypeEnum.OPERATE_TYPE_CONFIRM_RECEIVE.getCode(); - List<Long> orderCodeList = ListUtil.convertList(orderCodes, ","); + List<Long> orderCodeList = convertStringToLong(orderCodes); List<BuyerOrder> buyerOrders = buyerOrderMapper.selectBatchByOrderCode(orderCodeList); Map<String, BuyerOrder> orderMap = buyerOrders.stream().collect(Collectors.toMap(BuyerOrder::getOrderCode, item -> item)); - for(int i=0; i<orderCodeArr.length; i++) { - String orderCode = orderCodeArr[i]; - BuyerOrder buyerOrder = orderMap.get(orderCode);//buyerOrderMapper.selectByOrderCode(orderCode); + for(String orderCode : orderCodes) { + BuyerOrder buyerOrder = orderMap.get(orderCode); if( Constant.BUYER_ORDER_STATUS_ALLOCATING.getByteVal()!=buyerOrder.getStatus().byteValue()){ throw new ServiceException(400,"错误:订单"+orderCode +"状态变化,不允许确认收货,请重新刷新列表"); } @@ -923,6 +922,15 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { } } + private List<Long> convertStringToLong(List<String> orderCodeList){ + List<Long> list = Lists.newArrayList(); + for(String item : orderCodeList){ + list.add(Long.parseLong(item)); + } + + return list; + } + @Override public void updateSellerDeliveryDeal(BuyerOrderReq req,boolean againFlag){ String orderCode = req.getOrderCode(); @@ -2537,7 +2545,7 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService { @Override public PageResponseBO<String> queryAbnormalPackage(BuyerOrderReq req){ - int total = abnormalPackageMapper.selectValidCnt(); + int total = abnormalPackageMapper.selectValidCnt(req.getSellerWaybillCode()); if(total == 0){ return null; } -- libgit2 0.24.0