From 06cfdb225233a2e8c67f21e130ee0bda67e2cc34 Mon Sep 17 00:00:00 2001 From: yanghui <2536613402@qq.com> Date: 星期二, 29 十一月 2022 10:12:35 +0800 Subject: [PATCH] #feat 发送订阅消息 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderDeliveryServiceImpl.java | 47 ++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 46 insertions(+), 1 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderDeliveryServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderDeliveryServiceImpl.java index 6580e80..0102286 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderDeliveryServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopFlowerOrderDeliveryServiceImpl.java @@ -1,10 +1,12 @@ package com.panzhihua.service_community.service.impl; +import cn.binarywang.wx.miniapp.api.WxMaService; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.common.constants.Constants; import com.panzhihua.common.model.dtos.shop.ComShopFlowerOrderDeliveryDTO; import com.panzhihua.common.model.dtos.shop.PageComFlowerOrderDeliveryDTO; import com.panzhihua.common.model.dtos.shop.PageComFlowerOrderListDTO; @@ -13,15 +15,21 @@ import com.panzhihua.common.model.vos.community.convenient.ConvenientElevatingPointVO; import com.panzhihua.common.model.vos.shop.ComShopFlowerOrderDeliveryVO; import com.panzhihua.common.model.vos.shop.ComShopFlowerOrderPageVO; +import com.panzhihua.common.model.vos.user.SysUserVO; +import com.panzhihua.common.service.user.UserService; import com.panzhihua.common.utlis.OrderNoUtils; +import com.panzhihua.common.utlis.WxUtil; import com.panzhihua.service_community.dao.ComShopFlowerOrderDAO; import com.panzhihua.service_community.dao.ComShopFlowerOrderDeliveryDAO; import com.panzhihua.service_community.dao.ConvenientElevatingPointDAO; +import com.panzhihua.service_community.entity.SysUser; import com.panzhihua.service_community.model.dos.ComShopFlowerOrderDO; import com.panzhihua.service_community.model.dos.ComShopFlowerOrderDeliveryDO; import com.panzhihua.service_community.model.dos.ConvenientElevatingPointDO; import com.panzhihua.service_community.service.ComShopFlowerOrderDeliveryService; +import com.panzhihua.service_community.util.WxMaConfiguration; import lombok.extern.slf4j.Slf4j; +import me.chanjar.weixin.common.error.WxErrorException; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -30,6 +38,7 @@ import java.util.Date; import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; import static java.util.Objects.nonNull; @@ -47,7 +56,10 @@ private ComShopFlowerOrderDAO comShopFlowerOrderDAO; @Resource private ConvenientElevatingPointDAO convenientElevatingPointDAO; - + @Resource + private WxMaConfiguration wxMaConfiguration; + @Resource + private UserService userService; @Override @Transactional(rollbackFor = Exception.class) @@ -66,6 +78,24 @@ List<Long> orderIds = comShopFlowerOrderDeliveryDTO.getOrderIds(); if (CollUtil.isNotEmpty(orderIds)){ comShopFlowerOrderDAO.updateOrder(orderIds,deliveryId,comShopFlowerOrderDeliveryDO.getDeliveryNo(), ComShopFlowerOrderDO.status.psz,comShopFlowerOrderDeliveryDO.getDeliveryTime()); + + //订单配送通知 + WxMaService maService = wxMaConfiguration.getMaService(Constants.HC_APP_ID); + List<ComShopFlowerOrderDO> comShopFlowerOrderDOS = comShopFlowerOrderDAO.selectList(new LambdaQueryWrapper<ComShopFlowerOrderDO>().in(ComShopFlowerOrderDO::getId, orderIds)); + for (ComShopFlowerOrderDO comShopFlowerOrderDO : comShopFlowerOrderDOS) { + Long userId = comShopFlowerOrderDO.getUserId(); + R userOpenId = userService.getUserOpenId(userId); + if (R.isOk(userOpenId)) { + String openid = userOpenId.getData().toString(); + try { + WxUtil.sendStartShipping(openid,maService.getAccessToken(),comShopFlowerOrderDO.getOrderNo()); + } catch (WxErrorException e) { + e.printStackTrace(); + } + } + + + } } } return R.ok(); @@ -87,6 +117,21 @@ int update = this.baseMapper.updateById(comShopFlowerOrderDeliveryDO); if (update > 0){ comShopFlowerOrderDAO.updateOrderStatus(comShopFlowerOrderDeliveryDO.getId(),comShopFlowerOrderDeliveryDO.getServiceTime(),ComShopFlowerOrderDO.status.dsh); + WxMaService maService = wxMaConfiguration.getMaService(Constants.HC_APP_ID); + List<ComShopFlowerOrderDO> comShopFlowerOrderDOS = comShopFlowerOrderDAO.selectList(new LambdaQueryWrapper<ComShopFlowerOrderDO>().eq(ComShopFlowerOrderDO::getDeliveryId, id)); + for (ComShopFlowerOrderDO comShopFlowerOrderDO : comShopFlowerOrderDOS) { + Long userId = comShopFlowerOrderDO.getUserId(); + R userOpenId = userService.getUserOpenId(userId); + if (R.isOk(userOpenId)) { + String openid = userOpenId.getData().toString(); + try { + WxUtil.sendService(openid,maService.getAccessToken(),comShopFlowerOrderDeliveryDO.getPointName()); + } catch (WxErrorException e) { + e.printStackTrace(); + } + } + } + } return R.ok(); } -- Gitblit v1.7.1