From bbe0a2fd03063316e50cf141986bda984599bbda Mon Sep 17 00:00:00 2001
From: 935090232@qq.com <ak473600000>
Date: Tue, 22 Feb 2022 23:41:42 +0800
Subject: [PATCH] Merge branch 'developer'

---
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java |   67 +++++++++++++--------------------
 1 files changed, 27 insertions(+), 40 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java
index 694e650..6365343 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java
@@ -1,24 +1,25 @@
 package com.matrix.system.shopXcx.api.service.impl;
 
-import com.matrix.component.rabbitmq.RabiitMqTemplate;
-import com.matrix.component.tools.WxTempLateMsgUtil;
+import com.matrix.component.asyncmessage.AsyncMessageManager;
 import com.matrix.component.wechat.externalInterface.weixinUtil.WeixinServiceUtil;
 import com.matrix.core.exception.GlobleException;
-import com.matrix.core.tools.DateUtil;
+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.shopXcx.api.service.WXShopOrderService;
 import com.matrix.system.shopXcx.api.service.WxShopRefundRecordService;
 import com.matrix.system.shopXcx.bean.*;
 import com.matrix.system.shopXcx.dao.*;
-import com.matrix.system.shopXcx.mqTask.MQTaskRouting;
+import com.matrix.system.shopXcx.mqTask.AsyncMessageRouting;
 import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
-import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -48,13 +49,15 @@
     @Autowired
     private ShopActivitiesGroupJoinDao shopActivitiesGroupJoinDao;
 
-    @Value("${wx_pay_debug_onoff}")
-    private boolean isDebug;
-    @Value("${evn}")
-    private  String evn;
+    @Autowired
+    private BusParameterSettingsDao busParameterSettingsDao;
 
     @Autowired
-    private RabiitMqTemplate rabiitMqTemplate;
+    private AsyncMessageManager asyncMessageManager;
+
+    @Value("${wx_pay_debug_onoff}")
+    private boolean isDebug;
+
 
 
     @Override
@@ -109,7 +112,7 @@
                 //退款成功后同时把优惠券退回到用户的账号中
                 if (shopOrder.getDiscountAmount() != null && shopOrder.getDiscountAmount().compareTo(BigDecimal.ZERO) >0) {
                     ShopCouponRecord shopCouponRecord = new ShopCouponRecord();
-                    String userIds = shopRefundRecord.getUserId();
+                    Long userIds = shopRefundRecord.getUserId();
                     shopCouponRecord.setUserId(userIds);
                     shopCouponRecord.setOrderId(shopOrder.getId());
                     List<ShopCouponRecord> recordList = shopCouponRecordDao.selectByModel(shopCouponRecord);
@@ -143,7 +146,18 @@
                 modifyMap.put("refundCharge", shopRefundRecord.getRefundMoney());
                 shopOrderDao.updateByMap(modifyMap);
 
-                rabiitMqTemplate.sendMsg(MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG+evn,shopOrder.getId()+"");
+                asyncMessageManager.sendMsg(AsyncMessageRouting.SHOP_ORDER_REFUND ,"orderId=%s" , shopRefundRecord.getOrderId());
+
+
+                //发送退款通知
+                BusParameterSettings wxOrderNoticeDingdingToken = busParameterSettingsDao.selectCompanyParamByCode(AppConstance.WX_ORDER_NOTICE_DINGDING_TOKEN, shopOrder.getCompanyId());
+                if (wxOrderNoticeDingdingToken != null && StringUtils.isNotBlank(wxOrderNoticeDingdingToken.getParamValue())) {
+                    DingDingRobotUtil.sendText(wxOrderNoticeDingdingToken.getParamValue(),
+                            "订单退款,微商城订单编号 "+shopOrder.getOrderNo()
+                                    +"; 订单金额:¥"+shopOrder.getOrderMoney()
+                                    +";收货电话:"+ shopOrder.getUserTel()+",收货人:"+ shopOrder.getUserName()
+                            ,"");
+                }
 
 
             }catch (Exception e){
@@ -154,34 +168,7 @@
         return flag;
     }
 
-    /**
-     * 退款成功后发送微信提醒
-     * @param shopRefundRecord
-     * @return
-     */
-    @Override
-    public int sendRefundInfoToUser(ShopRefundRecord shopRefundRecord) {
-        ShopOrder order = shopOrderDao.selectById(shopRefundRecord.getOrderId());
-        if (order == null) {
-            throw new GlobleException("没有找到需要退款的订单信息");
-        }
-        List<String> msg = new ArrayList<>();
-        //退款说明
-        String refundExplain = "退款已经原路返回,具体到账时间可能会有1-3天延迟";
-        msg.add(order.getOrderNo());
-        msg.add(DateUtil.dateToString(shopRefundRecord.getRefundTime(),DateUtil.DATE_FORMAT_SS));
-        msg.add(refundExplain);
-        String formId = null;
-        if(AppConstance.REFUND_GOODS.equals(shopRefundRecord.getRefundType()) && null != shopRefundRecord.getRefundTransactionNo()){
-            formId = shopRefundRecord.getRefundTransactionNo();
-        }else {
-            formId = order.getWxOrderNo().split("=")[1];
-        }
-        String page = "pages/refunDetail/refunDetail?id=" + shopRefundRecord.getId() + "&&status=1" + "&&inform=1";
-        int res = WxTempLateMsgUtil.sendWxTemplateMsg(msg, order.getUserId(),
-                page, WxTempLateMsgUtil.REFUND_SUCCESS, formId);
-        return res;
-    }
+
 
     @Override
     public void updateGroupBuyStatus(Long orderId) {

--
Gitblit v1.9.1