From 2562e13a8db342cc1e23e17b8a26d84ce314f9eb Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 13 Aug 2021 12:04:57 +0800
Subject: [PATCH] 20210813

---
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java |   76 +++++++++++++++++++-------------------
 1 files changed, 38 insertions(+), 38 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 6030d3e..0b3bfc7 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,23 +1,25 @@
 package com.matrix.system.shopXcx.api.service.impl;
 
-import com.matrix.component.wechat.externalInterface.common.WechatConfigure;
-import com.matrix.core.exception.GlobleException;
-import com.matrix.core.tools.DateUtil;
-import com.matrix.core.tools.LogUtil;
-import com.matrix.system.common.constance.AppConstance;
+import com.matrix.component.rabbitmq.RabiitMqTemplate;
 import com.matrix.component.wechat.externalInterface.weixinUtil.WeixinServiceUtil;
-import com.matrix.system.shopXcx.bean.*;
-import com.matrix.system.shopXcx.dao.*;
-import com.matrix.component.tools.WxTempLateMsgUtil;
+import com.matrix.core.exception.GlobleException;
+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 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;
@@ -47,8 +49,19 @@
     @Autowired
     private ShopActivitiesGroupJoinDao shopActivitiesGroupJoinDao;
 
+    @Autowired
+    private BusParameterSettingsDao busParameterSettingsDao;
+
+
     @Value("${wx_pay_debug_onoff}")
     private boolean isDebug;
+    @Value("${evn}")
+    private  String evn;
+
+    @Autowired
+    private RabiitMqTemplate rabiitMqTemplate;
+
+
     @Override
     public Boolean refundToUser(String id, ShopRefundRecord shopRefundRecord) {
         LogUtil.debug("进入退款接口进行退款。。。", id);
@@ -101,7 +114,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);
@@ -134,6 +147,20 @@
                 modifyMap.put("orderStatus", ShopOrder.ORDER_STATUS_MONEYBACK_SUCCESS);
                 modifyMap.put("refundCharge", shopRefundRecord.getRefundMoney());
                 shopOrderDao.updateByMap(modifyMap);
+
+                rabiitMqTemplate.sendMsg(MQTaskRouting.SHOP_ORDER_REFUND+evn,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){
                 LogUtil.debug("退款成功,修改退款表和订单表状态出错。。。", id);
                 e.printStackTrace();
@@ -142,34 +169,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