admin
2019-07-30 573c491b4a1ba60e12a5678a01c1546c0077c1ee
fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserOrderMsgNotificationServiceImpl.java
@@ -1,15 +1,19 @@
package com.yeshi.fanli.service.impl.msg;
import java.math.BigDecimal;
import java.util.Date;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.entity.bus.msg.MsgOrderDetail;
import com.yeshi.fanli.exception.PushException;
import com.yeshi.fanli.exception.msg.MsgOrderDetailException;
import com.yeshi.fanli.service.inter.msg.MsgOrderDetailService;
import com.yeshi.fanli.service.inter.msg.UserOrderMsgNotificationService;
import com.yeshi.fanli.service.inter.push.PushService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.factory.msg.MsgOrderDetailFactory;
@Service
@@ -18,14 +22,26 @@
   @Resource
   private MsgOrderDetailService msgOrderDetailService;
   @Resource
   private PushService pushService;
   @Override
   public void orderFanLiStatistic(Long uid, String orderId, BigDecimal payMoney, BigDecimal money, int goodsCount,
         int orderState) {
      MsgOrderDetail detail = MsgOrderDetailFactory.createFanLiOrder(uid, orderId, goodsCount, orderState, payMoney,
            money, null);
      try {
         msgOrderDetailService.addMsgOrderDetail(detail);
         msgOrderDetailService.addMsgOrderDetail(detail,
               (payMoney == null || payMoney.compareTo(new BigDecimal(0)) <= 0) ? false : true);
      } catch (MsgOrderDetailException e) {
         e.printStackTrace();
      }
      try {
         if (payMoney != null && payMoney.compareTo(new BigDecimal(0)) > 0)
            pushService.pushZNX(uid, Constant.znxConfig.getFanliOrderStatisticedTitle(),
                  Constant.znxConfig.getFanliOrderStatisticedMsg().replace("[订单号]", orderId), null, null);
      } catch (PushException e) {
         e.printStackTrace();
      }
   }
@@ -35,12 +51,12 @@
         int orderState) {
      MsgOrderDetail detail = MsgOrderDetailFactory.createFanLiOrder(uid, orderId, 0, orderState, payMoney, money,
            null);
//暂时不推送
//      try {
//         msgOrderDetailService.updateMsgOrderDetail(detail);
//      } catch (MsgOrderDetailException e) {
//         e.printStackTrace();
//      }
      // 暂时不推送
      try {
         msgOrderDetailService.updateMsgOrderDetail(detail, false);
      } catch (MsgOrderDetailException e) {
         e.printStackTrace();
      }
   }
@@ -50,7 +66,8 @@
      MsgOrderDetail detail = MsgOrderDetailFactory.createShareOrder(uid, orderId, goodsCount, orderState, payMoney,
            money, null);
      try {
         msgOrderDetailService.addMsgOrderDetail(detail);
         msgOrderDetailService.addMsgOrderDetail(detail,
               (payMoney == null || payMoney.compareTo(new BigDecimal(0)) <= 0) ? false : true);
      } catch (MsgOrderDetailException e) {
         e.printStackTrace();
      }
@@ -62,9 +79,9 @@
         int orderState) {
      MsgOrderDetail detail = MsgOrderDetailFactory.createShareOrder(uid, orderId, 0, orderState, payMoney, money,
            null);
//暂时不推送
      // 暂时不推送
//      try {
//         msgOrderDetailService.updateMsgOrderDetail(detail);
//         msgOrderDetailService.updateMsgOrderDetail(detail, false);
//      } catch (MsgOrderDetailException e) {
//         e.printStackTrace();
//      }
@@ -77,7 +94,8 @@
      MsgOrderDetail detail = MsgOrderDetailFactory.createInviteOrder(uid, orderId, goodsCount, orderState, payMoney,
            money, null);
      try {
         msgOrderDetailService.addMsgOrderDetail(detail);
         msgOrderDetailService.addMsgOrderDetail(detail,
               (money == null || money.compareTo(new BigDecimal(0)) <= 0) ? false : true);
      } catch (MsgOrderDetailException e) {
         e.printStackTrace();
      }
@@ -88,13 +106,68 @@
         int orderState) {
      MsgOrderDetail detail = MsgOrderDetailFactory.createInviteOrder(uid, orderId, 0, orderState, payMoney, money,
            null);
//暂时不推送
      // 暂时不推送
//      try {
//         msgOrderDetailService.updateMsgOrderDetail(detail);
//         msgOrderDetailService.updateMsgOrderDetail(detail, false);
//      } catch (MsgOrderDetailException e) {
//         e.printStackTrace();
//      }
   }
   private String getShortName(String name) {
      if (name != null && name.length() > 2) {
         return name.charAt(0) + "**" + name.charAt(name.length() - 1);
      }
      return name;
   }
   @Override
   public void orderShareFirstLevelStatistic(Long uid, String orderId, BigDecimal payMoney, BigDecimal money,
         int goodsCount, int orderState, String sourceUserName) {
      MsgOrderDetail detail = MsgOrderDetailFactory.createInviteOrder(uid, orderId, goodsCount, orderState, payMoney,
            money, String.format("由一级队员【%s】分享", getShortName(sourceUserName)));
      try {
         msgOrderDetailService.addMsgOrderDetail(detail,
               (money == null || money.compareTo(new BigDecimal(0)) <= 0) ? false : true);
      } catch (MsgOrderDetailException e) {
         e.printStackTrace();
      }
   }
   @Override
   public void orderShareFirstLevelStateChanged(Long uid, String orderId, BigDecimal payMoney, BigDecimal money,
         int orderState) {
      MsgOrderDetail detail = MsgOrderDetailFactory.createInviteOrder(uid, orderId, 0, orderState, payMoney, money,
            null);
      // 暂时不推送
//      try {
//         msgOrderDetailService.updateMsgOrderDetail(detail, false);
//      } catch (MsgOrderDetailException e) {
//         e.printStackTrace();
//      }
   }
   @Override
   public void orderFoundSuccess(Long uid, String orderId, BigDecimal payMoney, int orderType, Date happendDate) {
      MsgOrderDetail detail = MsgOrderDetailFactory.createFoundOrder(uid, orderId, true, payMoney, orderType,
            happendDate, "如有疑问请联系人工客服");
      try {
         msgOrderDetailService.addMsgOrderDetail(detail, true);
      } catch (MsgOrderDetailException e) {
         e.printStackTrace();
      }
   }
   @Override
   public void orderFoundFail(Long uid, String orderId, BigDecimal payMoney, int orderType, Date happendDate) {
      MsgOrderDetail detail = MsgOrderDetailFactory.createFoundOrder(uid, orderId, false, payMoney, orderType,
            happendDate, "如有疑问请联系人工客服");
      try {
         msgOrderDetailService.addMsgOrderDetail(detail, true);
      } catch (MsgOrderDetailException e) {
         e.printStackTrace();
      }
   }
}