From eccfb59bb0347731afdaf71b3422848649e44b26 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 15 四月 2019 10:44:26 +0800
Subject: [PATCH] 阿里云短信发送添加
---
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java | 136 +++++++++++++++++++++++++++++++++------------
1 files changed, 99 insertions(+), 37 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java
index aa8ede9..0df0c57 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java
@@ -166,7 +166,12 @@
public List<UserSystemCoupon> getUserCouponBySource(Long uid, String source) {
return userSystemCouponMapper.getUserCouponBySource(uid, source);
}
-
+
+ @Override
+ public int countTodatyUserCouponBySource(Long uid, String source) {
+ return userSystemCouponMapper.countTodatyUserCouponBySource(uid, source);
+ }
+
@Override
public long countUserCouponList(Long uid) {
return userSystemCouponMapper.countUserCouponList(uid);
@@ -266,7 +271,7 @@
@Transactional
@Override
- public List<UserSystemCouponVO> getUserCouponVOList(long start, int count, Long uid)
+ public List<UserSystemCouponVO> getUserCouponVOList(long start, int count, Long uid, boolean changeJump)
throws UserSystemCouponException, Exception {
if (uid == null) {
@@ -284,7 +289,7 @@
}
// 鏁版嵁缁勭粐
- listDataFactory(listVO, uid);
+ listDataFactory(listVO, uid, changeJump);
return listVO;
}
@@ -294,8 +299,14 @@
*
* @param listVO
*/
- public void listDataFactory(List<UserSystemCouponVO> listVO, Long uid) throws Exception {
+ public void listDataFactory(List<UserSystemCouponVO> listVO, Long uid, boolean changeJump) throws Exception {
+ String inviteCode = null;
+ UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
+ if (userInfoExtra != null) {
+ inviteCode = userInfoExtra.getInviteCode();
+ }
+
for (UserSystemCouponVO userCouponVO : listVO) {
SystemCoupon systemCoupon = userCouponVO.getSystemCoupon();
@@ -331,30 +342,26 @@
// 鏄剧ず瑙勫垯
userCouponVO.setCouponRule(systemCoupon.getRemark());
userCouponVO.setCouponEffect("寰呮縺娲�");
-
// 鐘舵�佹湭婵�娲� -涓旀湭琚娇鐢�
if (UserSystemCoupon.STATE_CAN_USE == state) {
userCouponVO.setState(0);
}
jumpBtn = new HashMap<String, Object>();
-
- // 閭�璇烽槦鍛樼晫闈�
- /*
- * Map<String, Object> jumpLink = new HashMap<String, Object>();
- * UserInfoExtra userInfoExtra =
- * userInfoExtraService.getUserInfoExtra(uid); if (userInfoExtra
- * != null && userInfoExtra.getInviteCode() != null &&
- * userInfoExtra.getInviteCode().trim().length() > 0) { //
- * 閭�璇锋縺娲绘垚鍔熺晫闈� jumpLink.put("url",
- * configService.get("invite_activation_success_url") +
- * "?alert=true"); } else { // 婵�娲婚個璇风爜鐣岄潰 jumpLink.put("url",
- * configService.get("invite_activation_url")); }
- * jumpBtn.put("params", jumpLink);
- */
-
- jumpBtn.put("jumpDetail", jumpDetailV2Service.getByTypeCache("invite"));
-
+
+ // 绂忓埄鍒搁渶瑕佹縺娲荤晫闈�
+ if (!changeJump) {
+ jumpBtn.put("jumpDetail", jumpDetailV2Service.getByTypeCache("invite"));
+ } else {
+ if (inviteCode != null && inviteCode.trim().length() > 0) {
+ // 閭�璇峰ソ鍙嬬晫闈�
+ jumpBtn.put("jumpDetail", jumpDetailV2Service.getByTypeCache("invite_friends"));
+ } else {
+ // 閭�璇锋縺娲荤晫闈�
+ jumpBtn.put("jumpDetail", jumpDetailV2Service.getByTypeCache("invite_activate"));
+ }
+ }
+
} else if (stateActivated == 1) {
// 鏄剧ず瑙勫垯
userCouponVO.setCouponRule(systemCoupon.getRule());
@@ -569,7 +576,7 @@
sendBackTimeOutCoupon(uid);
// 娲诲姩棰嗗彇鍒�
-// receivedCoupon(uid);
+ receivedCoupon(uid);
// 鍟嗗搧鐩稿叧鐨勫埜
List<SystemCoupon> couponList = systemCouponService.getGoodsCouponList();
@@ -1416,9 +1423,9 @@
return;
}
- // 鏄惁鏈夎繃璁㈠崟锛氳繑鍒┿�佸垎浜鍗�
- boolean hasOrder = commonOrderCountService.hasRebateAndShareOrder(uid);
- if (hasOrder) {
+ // 鏄惁鏄柊鐢ㄦ埛
+ boolean isNewUser = userInfoExtraService.isNewUser(uid);
+ if (!isNewUser) {
return;
}
@@ -1562,14 +1569,13 @@
pushCouponRecordService.insertSelective(pushCouponRecord);
// 鎻掑叆鍒�
- randomRewardCoupon(pushCoupon, uid);
+ randomRewardCouponForPush(pushCoupon, uid);
}
}
}
- @Override
@Transactional
- public void randomRewardCoupon(PushCoupon pushCoupon, Long uid) throws Exception {
+ public void randomRewardCouponForPush(PushCoupon pushCoupon, Long uid) throws Exception {
int coupon = 0;
Integer amount = pushCoupon.getAmount();
@@ -1607,14 +1613,7 @@
// 娑堟伅鎺ㄩ��
try {
- if (systemCoupon.getType() == CouponTypeEnum.welfareFreeCoupon) {
- userOtherMsgNotificationService.welfareCouponGet(userCoupon);
- } else if (systemCoupon.getType() == CouponTypeEnum.freeCoupon) {
- userOtherMsgNotificationService.freeSheetCouponGet(userCoupon);
- } else if (systemCoupon.getType() == CouponTypeEnum.rebatePercentCoupon) {
- userOtherMsgNotificationService.rewardCouponGet(userCoupon,systemCoupon.getPercent().intValue());
- }
-
+ userOtherMsgNotificationService.rewardCouponGet(userCoupon,systemCoupon.getPercent().intValue());
} catch(Exception e) {
try {
LogHelper.errorDetailInfo(e);
@@ -1638,7 +1637,70 @@
}
userInfoExtraService.saveUserInfoExtra(userInfoExtra);
}
+
+
+ @Override
+ @Transactional
+ public void randomRewardCoupon(int num, Long uid, String source) throws Exception {
+ if (num < 1) {
+ return;
+ }
+ for (int i = 0; i < num; i++) {
+
+ // 杩斿埄姣�-闅忔満
+ BigDecimal percent = new BigDecimal(randomNum());
+ // 鏌ヨ濂栧姳鍒�
+ SystemCoupon systemCoupon = systemCouponService.getCouponByTypeAndPercent(
+ CouponTypeEnum.rebatePercentCoupon.name(),percent);
+ if (systemCoupon == null) {
+ return;
+ }
+
+ // 缁撴潫鏃ユ湡 浠婂ぉ鍦ㄥ唴 鍑忓幓涓�澶�
+ String endDay = DateUtil.plusDay(systemCoupon.getExpiryDay() - 1, new Date());
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+ Date endTime = format.parse(endDay);
+
+ UserSystemCoupon userCoupon = new UserSystemCoupon();
+ userCoupon.setUid(uid);
+ userCoupon.setSource(source);
+ userCoupon.setSystemCoupon(systemCoupon);
+ userCoupon.setState(UserSystemCoupon.STATE_CAN_USE);
+ userCoupon.setStateActivated(1);
+ userCoupon.setStartTime(new Date());
+ userCoupon.setEndTime(endTime);
+ userCoupon.setCreateTime(new Date());
+ userCoupon.setUpdateTime(new Date());
+ // 鎻掑叆鏁版嵁搴�
+ insertSelective(userCoupon);
+
+ // 娑堟伅鎺ㄩ��
+ try {
+ userOtherMsgNotificationService.rewardCouponGet(userCoupon,systemCoupon.getPercent().intValue());
+ } catch(Exception e) {
+ try {
+ LogHelper.errorDetailInfo(e);
+ } catch (Exception e1) {
+ e1.printStackTrace();
+ }
+ }
+ }
+
+ // 绂忓埄涓績绾㈢偣
+ UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
+ if (userInfoExtra == null) {
+ return;
+ }
+ Integer couponNews = userInfoExtra.getCouponNews();
+ if (couponNews == null) {
+ userInfoExtra.setCouponNews(num);
+ } else {
+ userInfoExtra.setCouponNews(couponNews + num);
+ }
+ userInfoExtraService.saveUserInfoExtra(userInfoExtra);
+ }
+
/**
* 闅忔満鍒告瘮渚�
* @return
--
Gitblit v1.8.0