yujian
2019-08-22 11c098089f8c4714188e91032e5a19e8fe94bf96
fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserOtherMsgNotificationServiceImpl.java
@@ -7,7 +7,11 @@
import org.springframework.stereotype.Service;
import com.google.gson.Gson;
import com.yeshi.fanli.dto.msg.MsgOtherCouponContentDTO;
import com.yeshi.fanli.dto.msg.MsgOtherExchangeContentDTO;
import com.yeshi.fanli.dto.msg.MsgOtherGiveContentDTO;
import com.yeshi.fanli.dto.msg.MsgOtherTaoLiJinContentDTO;
import com.yeshi.fanli.entity.bus.msg.MsgOtherDetail;
import com.yeshi.fanli.entity.bus.msg.MsgOtherDetail.MsgTypeOtherTypeEnum;
import com.yeshi.fanli.entity.bus.user.UserInfo;
@@ -282,18 +286,85 @@
      }
   }
//   @Override
//   public void taoLiJinGet(UserSystemCoupon coupon, int percent) {
//      if (coupon == null || coupon.getUid() == null)
//         return;
//      MsgOtherCouponContentDTO dto = MsgOtherCouponContentDTOFactory.createRewardCouponGet(getLeftDay(coupon),
//            coupon.getSource(), coupon.getStartTime(), coupon.getEndTime());
//      try {
//         msgOtherDetailService.addMsgOtherDetail(MsgOtherDetailFactory.createCouponMsg(coupon.getUid(),
//               coupon.getId(), dto, MsgTypeOtherTypeEnum.couponReward, "返利已到账后再奖励返利的" + percent + "%"));
//      } catch (MsgOtherDetailException e) {
//         e.printStackTrace();
//      }
//   }
   @Override
   public void couponDrawBack(UserSystemCoupon coupon, String orderId, MsgTypeOtherTypeEnum type) {
      if (coupon == null || coupon.getUid() == null)
         return;
      MsgOtherCouponContentDTO dto = MsgOtherCouponContentDTOFactory.createWelfareCouponDrawBack(getLeftDay(coupon),
            orderId, coupon.getStartTime(), coupon.getEndTime());
      try {
         msgOtherDetailService.addMsgOtherDetail(MsgOtherDetailFactory.createCouponMsg(coupon.getUid(),
               coupon.getId(), dto, type, "退回后依然可在有效期内使用"));
      } catch (MsgOtherDetailException e) {
         e.printStackTrace();
      }
   }
   @Override
   public void outOfDate(UserSystemCoupon coupon, MsgTypeOtherTypeEnum type) {
      if (coupon == null || coupon.getUid() == null)
         return;
      MsgOtherCouponContentDTO dto = MsgOtherCouponContentDTOFactory
            .createRewardCouponAlreadyOutOfDate(coupon.getSource(), coupon.getStartTime(), coupon.getEndTime());
      try {
         MsgOtherDetail detail = MsgOtherDetailFactory.createCouponMsg(coupon.getUid(), coupon.getId(), dto,
               type, "参与活动可获取更多奖励券");
         detail.setCreateTime(coupon.getEndTime());
         msgOtherDetailService.addMsgOtherDetail(detail);
      } catch (MsgOtherDetailException e) {
         e.printStackTrace();
      }
   }
   @Override
   public void taoLiJinMsg(Long uid, String beiZhu, MsgOtherTaoLiJinContentDTO content) {
      try {
         MsgOtherDetail detail = new MsgOtherDetail();
         detail.setBeiZhu(beiZhu);
         detail.setCreateTime(new Date());
         detail.setRead(false);
         detail.setUser(new UserInfo(uid));
         detail.setContent(new Gson().toJson(content));
         detail.setType(MsgTypeOtherTypeEnum.taoLiJin);
         msgOtherDetailService.addMsgOtherDetail(detail);
      } catch (MsgOtherDetailException e) {
         e.printStackTrace();
      }
   }
   @Override
   public void tokenGiveMsg(Long uid, String beiZhu,  MsgOtherGiveContentDTO content) {
      try {
         MsgOtherDetail detail = new MsgOtherDetail();
         detail.setBeiZhu(beiZhu);
         detail.setCreateTime(new Date());
         detail.setRead(false);
         detail.setUser(new UserInfo(uid));
         detail.setContent(new Gson().toJson(content));
         detail.setType(MsgTypeOtherTypeEnum.give);
         msgOtherDetailService.addMsgOtherDetail(detail);
      } catch (MsgOtherDetailException e) {
         e.printStackTrace();
      }
   }
   @Override
   public void exchangeMsg(Long uid, String beiZhu,  MsgOtherExchangeContentDTO content) {
      try {
         MsgOtherDetail detail = new MsgOtherDetail();
         detail.setBeiZhu(beiZhu);
         detail.setCreateTime(new Date());
         detail.setRead(false);
         detail.setUser(new UserInfo(uid));
         detail.setContent(new Gson().toJson(content));
         detail.setType(MsgTypeOtherTypeEnum.exchange);
         msgOtherDetailService.addMsgOtherDetail(detail);
      } catch (MsgOtherDetailException e) {
         e.printStackTrace();
      }
   }
}