From c253b555c7905c5136d47cd615ef545fa50cc6ad Mon Sep 17 00:00:00 2001 From: 935090232@qq.com <ak473600000> Date: Sun, 20 Feb 2022 21:24:16 +0800 Subject: [PATCH] Merge branch 'api_score_meger' --- zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/OrderDingDingNoticeTask.java | 93 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 93 insertions(+), 0 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/OrderDingDingNoticeTask.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/OrderDingDingNoticeTask.java new file mode 100644 index 0000000..daf35f5 --- /dev/null +++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/OrderDingDingNoticeTask.java @@ -0,0 +1,93 @@ +package com.matrix.system.shopXcx.mqTask; + + +import com.matrix.component.asyncmessage.MessageHandler; +import com.matrix.core.tools.DingDingRobotUtil; +import com.matrix.core.tools.LogUtil; +import com.matrix.core.tools.StringUtils; +import com.matrix.system.common.bean.BusParameterSettings; +import com.matrix.system.common.constance.AppConstance; +import com.matrix.system.common.dao.BusParameterSettingsDao; +import com.matrix.system.hive.dao.SysVipInfoDao; +import com.matrix.system.shopXcx.bean.ShopDeliveryInfo; +import com.matrix.system.shopXcx.bean.ShopOrder; +import com.matrix.system.shopXcx.bean.ShopOrderDetails; +import com.matrix.system.shopXcx.dao.ShopDeliveryInfoDao; +import com.matrix.system.shopXcx.dao.ShopOrderDao; +import com.matrix.system.shopXcx.dao.ShopOrderDetailsDao; +import com.rabbitmq.client.DeliverCallback; +import com.rabbitmq.client.Delivery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.util.List; +import java.util.Map; + +/** + * 微商城订单同步到erp系统 + */ +@Component +public class OrderDingDingNoticeTask implements MessageHandler { + + + @Autowired + ShopOrderDao shopOrderDao; + + @Autowired + ShopOrderDetailsDao shopOrderDetailsDao; + + + @Autowired + BusParameterSettingsDao parameterSettingsDao; + + @Autowired + SysVipInfoDao sysVipInfoDao; + + @Autowired + ShopDeliveryInfoDao shopDeliveryInfoDao; + + @Override + public String getName() { + return "创建订单通知任务"; + } + + @Override + public String getRouteKey() { + return AsyncMessageRouting.CREATE_ORDER; + } + + + @Override + public void handle(Map<String,Object> param){ + String orderIdStr = (String) param.get("orderId"); + Integer orderId=Integer.valueOf(orderIdStr); + //获取订单信息 + ShopOrder order = shopOrderDao.selectById(orderId); + LogUtil.debug("收到创建订单通知任务orderId={}", orderId); + BusParameterSettings wxOrderNoticeDingdingToken = parameterSettingsDao.selectCompanyParamByCode(AppConstance.WX_ORDER_NOTICE_DINGDING_TOKEN, order.getCompanyId()); + if (wxOrderNoticeDingdingToken != null && StringUtils.isNotBlank(wxOrderNoticeDingdingToken.getParamValue())) { + //获取订单详情 + List<ShopOrderDetails> orderDetails = shopOrderDetailsDao.selectByOrderId(Integer.valueOf(orderId)); + StringBuilder content = new StringBuilder(); + orderDetails.stream().forEach(i -> content.append(i.getsTitle()).append("*").append( + i.getCount()).append(";")); + ShopDeliveryInfo addInfo = shopDeliveryInfoDao.selectByOrderId(orderId); + + String shippingMethod="物流配送"; + if(AppConstance.SHIPPING_METHOD_SELF .equals(order.getShippingMethod())){ + shippingMethod="门店自提"; + } + DingDingRobotUtil.sendText(wxOrderNoticeDingdingToken.getParamValue(), + "新订单,微商城订单编号 "+order.getOrderNo() + +"; 订单金额:¥"+order.getOrderMoney() + +";订单内容:"+ content.toString() + +";收货电话:"+ order.getUserTel()+",收货人:"+ order.getUserName()+",收货地址:"+ addInfo.getReceiveAddress() + +"配送方式:"+shippingMethod + ,""); + }else{ + LogUtil.debug("未配置订单钉钉提醒"); + } + } + +} -- Gitblit v1.9.1