Explorar o código

Str工具类改为hutool包下;店铺查询方法改为带缓存的方法;异步代码块调整;

codingliang hai 1 ano
pai
achega
fb24cf4e41

+ 124 - 162
src/main/java/com/sqx/modules/errand/service/impl/TbIndentServiceImpl.java

@@ -26,7 +26,11 @@ import com.sqx.modules.common.entity.CommonInfo;
 import com.sqx.modules.common.service.CommonInfoService;
 import com.sqx.modules.errand.dao.ErrandEvaluateDao;
 import com.sqx.modules.errand.dao.TbIndentDao;
-import com.sqx.modules.errand.dto.*;
+import com.sqx.modules.errand.dto.OrderRiderDeliveryDTO;
+import com.sqx.modules.errand.dto.RiderDeliveryDTO;
+import com.sqx.modules.errand.dto.RiderTransferByOrderIdDTO;
+import com.sqx.modules.errand.dto.RiderTransferOrderDTO;
+import com.sqx.modules.errand.dto.WaitForAcceptOrderQueryDTO;
 import com.sqx.modules.errand.entity.ErrandAddress;
 import com.sqx.modules.errand.entity.ErrandEvaluate;
 import com.sqx.modules.errand.entity.ErrandRedPacket;
@@ -54,7 +58,6 @@ import com.sqx.modules.shop.service.ShopMessageService;
 import com.sqx.modules.utils.HttpClientUtil;
 import com.sqx.modules.utils.SenInfoCheckUtil;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
 import org.gavaghan.geodesy.Ellipsoid;
 import org.gavaghan.geodesy.GlobalCoordinates;
 import org.redisson.api.RLock;
@@ -161,7 +164,7 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
                             } else {
                                 indentType = "外卖";
                             }
-                            if (StringUtils.isNotEmpty(userEntity.getRiderOpenId())) {
+                            if (StrUtil.isNotEmpty(userEntity.getRiderOpenId())) {
                                 List<String> msgList = new ArrayList<>();
                                 //1:帮我送;2:帮我取;3:同城帮买;4:同城服务
                                 msgList.add(indentType);
@@ -185,7 +188,7 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
                                 msgList.add(indent.getCreateTime());
                                 SenInfoCheckUtil.sendRiderMsg(userEntity.getRiderOpenId(), templateId, msgList, 6);
                             }
-                            if (StringUtils.isNotEmpty(userEntity.getRiderClientid())) {
+                            if (StrUtil.isNotEmpty(userEntity.getRiderClientid())) {
                                 userService.pushToSingleRider("新订单通知", indentType, userEntity.getRiderClientid());
                             }
                         }
@@ -684,90 +687,69 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
                 lock.unlock();
             }
 
-            //消息推送(以前写的在下面放着)
-            CommonInfo five = commonInfoService.findOne(310);
-            List<String> msgList = new ArrayList<>();
-            msgList.add("接单项目");
-            msgList.add(userEntity1.getNickName());
-            msgList.add(format);
-            msgList.add("接单成功,请及时取货!");
-
             MyGlobalThreadPool.execute(() -> {
                 try {
+                    //消息推送(以前写的在下面放着)
+                    CommonInfo five = commonInfoService.findOne(310);
+                    List<String> msgList = new ArrayList<>();
+                    msgList.add("接单项目");
+                    msgList.add(userEntity1.getNickName());
+                    msgList.add(format);
+                    msgList.add("接单成功,请及时取货!");
                     SenInfoCheckUtil.sendRiderMsg(userEntity1.getRiderOpenId(), five.getValue(), msgList, 4);
-                } catch (Exception e) {
-                    log.error("订单:{},您已接单成功,请及时派送通知发送失败,失败原因:{}", e);
-                }
-            });
-
-            MyGlobalThreadPool.execute(() -> {
-                try {
                     userService.pushToSingleRider("接单成功", "您已接单成功,请及时派送", userEntity1.getRiderClientid());
-                } catch (Exception e) {
-                    log.error("订单:{},您已接单成功,请及时派送通知发送失败,失败原因:{}", e);
-                }
-            });
-
-            //用户推送
-            CommonInfo msg = commonInfoService.findOne(269);
-            UserEntity userEntity = userService.selectUserById(tbIndent.getUserId());
-            MessageInfo messageInfo = new MessageInfo();
-            messageInfo.setContent("骑手已接单");
-            messageInfo.setTitle("订单状态通知");
-            messageInfo.setState(String.valueOf(5));
-            messageInfo.setUserName(userEntity.getUserName());
-            messageInfo.setUserId(String.valueOf(userEntity.getUserId()));
-            messageInfo.setCreateAt(DateUtils.format(new Date()));
-            messageInfo.setIsSee("0");
-            messageService.saveBody(messageInfo);
 
-            List<String> msgListUser = new ArrayList<>();
-            String value = commonInfoService.findOne(12).getValue();
-            msgListUser.add("骑手已接单");
-            msgListUser.add(tbIndent.getIndentNumber());
-            if (tbIndent.getOrderId() != null) {
-                TbOrder order = appOrderService.getById(tbIndent.getOrderId());
-                if (order != null) {
-                    Long shopId = order.getShopId();
-                    GoodsShop goodsShop = goodsShopDao.selectById(shopId);
-                    msgListUser.add(goodsShop.getShopName());
-                } else {
-                    msgListUser.add(value);
-                }
-            } else {
-                msgListUser.add(value);
-            }
-            msgListUser.add(DateUtils.format(new Date()));
+                    //用户推送
+                    CommonInfo msg = commonInfoService.findOne(269);
+                    UserEntity userEntity = userService.selectUserById(tbIndent.getUserId());
+                    MessageInfo messageInfo = new MessageInfo();
+                    messageInfo.setContent("骑手已接单");
+                    messageInfo.setTitle("订单状态通知");
+                    messageInfo.setState(String.valueOf(5));
+                    messageInfo.setUserName(userEntity.getUserName());
+                    messageInfo.setUserId(String.valueOf(userEntity.getUserId()));
+                    messageInfo.setCreateAt(DateUtils.format(new Date()));
+                    messageInfo.setIsSee("0");
+                    messageService.saveBody(messageInfo);
+
+                    List<String> msgListUser = new ArrayList<>();
+                    String value = commonInfoService.findOne(12).getValue();
+                    msgListUser.add("骑手已接单");
+                    msgListUser.add(tbIndent.getIndentNumber());
+                    if (tbIndent.getOrderId() != null) {
+                        TbOrder order = appOrderService.getById(tbIndent.getOrderId());
+                        if (order != null) {
+                            Long shopId = order.getShopId();
+                            GoodsShop goodsShop = goodsShopDao.selectById(shopId);
+                            msgListUser.add(goodsShop.getShopName());
+                        } else {
+                            msgListUser.add(value);
+                        }
+                    } else {
+                        msgListUser.add(value);
+                    }
+                    msgListUser.add(DateUtils.format(new Date()));
 
-            MyGlobalThreadPool.execute(() -> {
-                try {
                     SenInfoCheckUtil.sendMsg(userEntity.getOpenId(), msg.getValue(), msgListUser, 1);
-                } catch (Exception e) {
-                    log.error("订单:{},订单接单成功通知发送失败,失败原因:{}", e);
-                }
-            });
 
-            if (tbIndent.getOrderId() != null) {
-                TbOrder order = appOrderService.getById(tbIndent.getOrderId());
-                String shopTemplate = commonInfoService.findOne(354).getValue();
-                List<String> msgListShop = new ArrayList<>();
-                msgListShop.add(tbIndent.getIndentNumber());
-                log.error("打印:" + tbIndent.getIndentNumber());
-                msgListShop.add("骑手接单");
-                msgListShop.add(DateUtils.format(new Date()));
-                log.error("打印:" + msgListShop.toString());
-                GoodsShop goodsShop = goodsShopDao.selectById(order.getShopId());
-                UserEntity shopUser = userService.selectUserById(goodsShop.getUserId());
+                    if (tbIndent.getOrderId() != null) {
+                        TbOrder order = appOrderService.getById(tbIndent.getOrderId());
+                        String shopTemplate = commonInfoService.findOne(354).getValue();
+                        List<String> msgListShop = new ArrayList<>();
+                        msgListShop.add(tbIndent.getIndentNumber());
+                        log.error("打印:" + tbIndent.getIndentNumber());
+                        msgListShop.add("骑手接单");
+                        msgListShop.add(DateUtils.format(new Date()));
+                        log.error("打印:" + msgListShop.toString());
+                        GoodsShop goodsShop = goodsShopDao.selectById(order.getShopId());
+                        UserEntity shopUser = userService.selectUserById(goodsShop.getUserId());
 
-                MyGlobalThreadPool.execute(() -> {
-                    try {
                         SenInfoCheckUtil.sendShopMsg(shopUser.getShopOpenId(), shopTemplate, msgListShop, 9);
-                    } catch (Exception e) {
-                        log.error("订单:{},订单支付成功通知发送失败,失败原因:{}", e);
                     }
-                });
-
-            }
+                } catch (Exception e) {
+                    log.error("订单编号:{},骑手接单成功信息发送失败,失败原因:{}", indentNumber, e);
+                }
+            });
         } else {
             return Result.error("你的保证金不足,请缴纳保证金后再接单");
         }
@@ -813,89 +795,68 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
                 } finally {
                     lock.unlock();
                 }
-                //消息推送(以前写的在下面放着)
-                CommonInfo five = commonInfoService.findOne(310);
-                List<String> msgList = new ArrayList<>();
-                msgList.add("接单项目");
-                msgList.add(userEntity1.getNickName());
-                msgList.add(format);
-                msgList.add("接单成功,请及时取货!");
-                MyGlobalThreadPool.execute(() -> {
-                    try {
-                        SenInfoCheckUtil.sendRiderMsg(userEntity1.getRiderOpenId(), five.getValue(), msgList, 4);
-                    } catch (Exception e) {
-                        log.error("订单:{},接单成功通知发送失败,失败原因:{}", e);
-                    }
-                });
 
                 MyGlobalThreadPool.execute(() -> {
                     try {
+                        // 消息推送(以前写的在下面放着)
+                        List<String> msgList = new ArrayList<>();
+                        msgList.add("接单项目");
+                        msgList.add(userEntity1.getNickName());
+                        msgList.add(format);
+                        msgList.add("接单成功,请及时取货!");
+                        CommonInfo five = commonInfoService.findOne(310);
                         userService.pushToSingleRider("接单成功", "您已接单成功,请及时派送", userEntity1.getRiderClientid());
-                    } catch (Exception e) {
-                        log.error("订单:{},您已接单成功,请及时派送通知发送失败,失败原因:{}", e);
-                    }
-                });
-                //用户推送
-                CommonInfo msg = commonInfoService.findOne(269);
-                UserEntity userEntity = userService.selectUserById(tbIndent.getUserId());
-                MessageInfo messageInfo = new MessageInfo();
-                messageInfo.setContent("骑手已接单");
-                messageInfo.setTitle("订单状态通知");
-                messageInfo.setState(String.valueOf(5));
-                messageInfo.setUserName(userEntity.getUserName());
-                messageInfo.setUserId(String.valueOf(userEntity.getUserId()));
-                messageInfo.setCreateAt(DateUtils.format(new Date()));
-                messageInfo.setIsSee("0");
-                messageService.saveBody(messageInfo);
+                        SenInfoCheckUtil.sendRiderMsg(userEntity1.getRiderOpenId(), five.getValue(), msgList, 4);
 
+                        MessageInfo messageInfo = new MessageInfo();
+                        messageInfo.setContent("骑手已接单");
+                        messageInfo.setTitle("订单状态通知");
+                        messageInfo.setState(String.valueOf(5));
+                        messageInfo.setCreateAt(DateUtils.format(new Date()));
+                        messageInfo.setIsSee("0");
+                        UserEntity userEntity = userService.selectUserById(tbIndent.getUserId());
+                        messageInfo.setUserName(userEntity.getUserName());
+                        messageInfo.setUserId(String.valueOf(userEntity.getUserId()));
+                        messageService.saveBody(messageInfo);
+
+                        List<String> msgListUser = new ArrayList<>();
+                        String value = commonInfoService.findOne(12).getValue();
+                        if (tbIndent.getOrderId() != null) {
+                            TbOrder order = appOrderService.getById(tbIndent.getOrderId());
+                            if (order != null) {
+                                Long shopId = order.getShopId();
+                                GoodsShop goodsShop = goodsShopDao.selectById(shopId);
+                                msgListUser.add(goodsShop.getShopName());
+                            } else {
+                                msgListUser.add(value);
+                            }
+                        } else {
+                            msgListUser.add(value);
+                        }
+                        msgListUser.add("骑手已接单");
+                        msgListUser.add(tbIndent.getIndentNumber());
+                        msgListUser.add(DateUtils.format(new Date()));
+                        CommonInfo msg = commonInfoService.findOne(269);
+                        SenInfoCheckUtil.sendMsg(userEntity.getOpenId(), msg.getValue(), msgListUser, 1);
 
-                List<String> msgListUser = new ArrayList<>();
-                String value = commonInfoService.findOne(12).getValue();
-                msgListUser.add("骑手已接单");
-                msgListUser.add(tbIndent.getIndentNumber());
-                if (tbIndent.getOrderId() != null) {
-                    TbOrder order = appOrderService.getById(tbIndent.getOrderId());
-                    if (order != null) {
-                        Long shopId = order.getShopId();
-                        GoodsShop goodsShop = goodsShopDao.selectById(shopId);
-                        msgListUser.add(goodsShop.getShopName());
-                    } else {
-                        msgListUser.add(value);
-                    }
-                } else {
-                    msgListUser.add(value);
-                }
-                msgListUser.add(DateUtils.format(new Date()));
+                        if (tbIndent.getOrderId() != null) {
+                            TbOrder order = appOrderService.getById(tbIndent.getOrderId());
+                            String shopTemplate = commonInfoService.findOne(354).getValue();
+                            List<String> msgListShop = new ArrayList<>();
+                            msgListShop.add(tbIndent.getIndentNumber());
+                            log.error("打印:" + tbIndent.getIndentNumber());
+                            msgListShop.add("骑手接单");
+                            msgListShop.add(DateUtils.format(new Date()));
+                            log.error("打印:" + msgListShop.toString());
+                            GoodsShop goodsShop = goodsShopDao.selectById(order.getShopId());
+                            UserEntity shopUser = userService.selectUserById(goodsShop.getUserId());
 
-                MyGlobalThreadPool.execute(() -> {
-                    try {
-                        SenInfoCheckUtil.sendMsg(userEntity.getOpenId(), msg.getValue(), msgListUser, 1);
+                            SenInfoCheckUtil.sendShopMsg(shopUser.getShopOpenId(), shopTemplate, msgListShop, 9);
+                        }
                     } catch (Exception e) {
-                        log.error("订单:{},订单支付成功通知发送失败,失败原因:{}", e);
+                        log.error("订单编号:{},骑手接单成功信息发送失败,失败原因:{}", tbIndent.getIndentNumber(), e);
                     }
                 });
-
-                if (tbIndent.getOrderId() != null) {
-                    TbOrder order = appOrderService.getById(tbIndent.getOrderId());
-                    String shopTemplate = commonInfoService.findOne(354).getValue();
-                    List<String> msgListShop = new ArrayList<>();
-                    msgListShop.add(tbIndent.getIndentNumber());
-                    log.error("打印:" + tbIndent.getIndentNumber());
-                    msgListShop.add("骑手接单");
-                    msgListShop.add(DateUtils.format(new Date()));
-                    log.error("打印:" + msgListShop.toString());
-                    GoodsShop goodsShop = goodsShopDao.selectById(order.getShopId());
-                    UserEntity shopUser = userService.selectUserById(goodsShop.getUserId());
-
-                    MyGlobalThreadPool.execute(() -> {
-                        try {
-                            SenInfoCheckUtil.sendShopMsg(shopUser.getShopOpenId(), shopTemplate, msgListShop, 9);
-                        } catch (Exception e) {
-                            log.error("订单:{},订单支付成功通知发送失败,失败原因:{}", e);
-                        }
-                    });
-
-                }
             } else {
                 return Result.error("你的保证金不足,请缴纳保证金后再接单");
             }
@@ -1389,15 +1350,16 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
         userMoneyDetails.setCreateTime(simpleDateFormat.format(new Date()));
         //tbIndentDao.insertUserMoneyDetails(userMoneyDetails.getUserId(), userMoneyDetails.getTitle(), userMoneyDetails.getType(), userMoneyDetails.getMoney(), userMoneyDetails.getContent(), userMoneyDetails.getCreateTime());
         userMoneyDetailsService.save(userMoneyDetails);
-        String riderTemplate = commonInfoService.findOne(311).getValue();
-        List<String> msgList = new ArrayList<>();
-        msgList.add(indentNumber);
-        msgList.add(tbIndent.getCreateTime());
-        msgList.add("已完成");
-        msgList.add(DateUtils.format(new Date()));
-        UserEntity riderUser = userService.selectUserById(tbIndent.getRiderUserId());
+
         MyGlobalThreadPool.execute(() -> {
             try {
+                String riderTemplate = commonInfoService.findOne(311).getValue();
+                List<String> msgList = new ArrayList<>();
+                msgList.add(indentNumber);
+                msgList.add(tbIndent.getCreateTime());
+                msgList.add("已完成");
+                msgList.add(DateUtils.format(new Date()));
+                UserEntity riderUser = userService.selectUserById(tbIndent.getRiderUserId());
                 SenInfoCheckUtil.sendRiderMsg(riderUser.getRiderOpenId(), riderTemplate, msgList, 2);
             } catch (Exception e) {
                 log.error("订单:{},订单支付成功通知发送失败,失败原因:{}", e);
@@ -1635,7 +1597,7 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
             PayDetails payDetails = payDetailsDao.selectByOrderId(indent1.getIndentNumber());
             if (payDetails.getType().equals(4)) {
                 String code = AliPayController.alipayRefund(payDetails);
-                if (StringUtils.isNotBlank(code)) {
+                if (StrUtil.isNotBlank(code)) {
                     log.error(code);
                     JSONObject jsonObject = JSON.parseObject(code);
                     JSONObject alipay_trade_refund_response = jsonObject.getJSONObject("alipay_trade_refund_response");
@@ -1710,7 +1672,7 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
         }
         msgList.add(2, "骑手已更换,新骑手将尽快为您送达");
         msgList.add(3, DateUtils.format(new Date()));
-        if (org.apache.commons.lang.StringUtils.isNotEmpty(user.getOpenId())) {
+        if (StrUtil.isNotEmpty(user.getOpenId())) {
             MyGlobalThreadPool.execute(() -> {
                 try {
                     SenInfoCheckUtil.sendMsg(user.getOpenId(), one.getValue(), msgList, 5);
@@ -1721,7 +1683,7 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
 
         }
 
-        if (org.apache.commons.lang.StringUtils.isNotEmpty(user.getOpenId())) {
+        if (StrUtil.isNotEmpty(user.getOpenId())) {
             MyGlobalThreadPool.execute(() -> {
                 try {
                     userService.pushToSingle("更换骑手", "骑手已更换,新骑手将尽快为您送达", user.getClientid());
@@ -1770,7 +1732,7 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
         String realName = transferOrderDTO.getRealName();
 
         UserEntity userEntity = null;
-        if (org.apache.commons.lang.StringUtils.isNotBlank(phone)) {
+        if (StrUtil.isNotBlank(phone)) {
             userEntity = userService.queryByPhone(phone);
         } else {
             List<UserEntity> userEntities = userService.queryByRealName(realName);
@@ -1812,7 +1774,7 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
         states.add(4);
         IPage<TbIndent> pages = new Page<>(page, limit);
         QueryWrapper<TbIndent> queryWrapper = new QueryWrapper();
-        queryWrapper.like(org.springframework.util.StringUtils.hasText(acquireCode), "order_id", acquireCode);
+        queryWrapper.like(StrUtil.isNotBlank(acquireCode), "order_id", acquireCode);
         queryWrapper.in("indent_state", states);
         queryWrapper.and(qw -> qw.isNull("rider_user_id").or().eq("rider_user_id", userId));
         queryWrapper.orderByAsc("create_time");

+ 1 - 1
src/main/java/com/sqx/modules/order/service/impl/AppAppOrderServiceImpl.java

@@ -1477,7 +1477,7 @@ public class AppAppOrderServiceImpl extends ServiceImpl<AppOrderDao, TbOrder> im
         }
         List<OrderGoods> orderGoodsList = orderGoodsDao.selectList(new QueryWrapper<OrderGoods>().eq("order_id", tbOrder.getOrderId()));
         tbOrder.setOrderGoodsList(orderGoodsList);
-        GoodsShop goodsShop = goodsShopDao.selectById(tbOrder.getShopId());
+        GoodsShop goodsShop = shopMessageService.getShopInfoById(tbOrder.getShopId());
         if (goodsShop != null) {
             tbOrder.setShopName(goodsShop.getShopName());
         }