From e99befcc324d8ad62197322bd7838521cfc17b5d Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期二, 09 六月 2020 18:03:28 +0800
Subject: [PATCH] 订单
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserCouponController.java | 279 +++++--------------------------------------------------
1 files changed, 28 insertions(+), 251 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserCouponController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserCouponController.java
index ab1a5d2..f7fbc91 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserCouponController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserCouponController.java
@@ -2,9 +2,7 @@
import java.io.PrintWriter;
import java.util.ArrayList;
-import java.util.Date;
import java.util.List;
-import java.util.Map;
import javax.annotation.Resource;
@@ -15,13 +13,8 @@
import org.yeshi.utils.JsonUtil;
import com.yeshi.fanli.entity.accept.AcceptData;
-import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture;
-import com.yeshi.fanli.entity.bus.user.DeviceLotteryRecord;
import com.yeshi.fanli.entity.bus.user.UserInfoExtra;
-import com.yeshi.fanli.entity.bus.user.UserLotteryRecord;
-import com.yeshi.fanli.entity.system.SystemCoupon;
-import com.yeshi.fanli.exception.user.UserInfoExtraException;
-import com.yeshi.fanli.exception.user.UserLotteryRecordException;
+import com.yeshi.fanli.entity.system.ConfigKeyEnum;
import com.yeshi.fanli.exception.user.UserSystemCouponException;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.config.SystemCouponService;
@@ -29,9 +22,11 @@
import com.yeshi.fanli.service.inter.order.CommonOrderService;
import com.yeshi.fanli.service.inter.user.DeviceLotteryRecordService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
-import com.yeshi.fanli.service.inter.user.UserLotteryRecordService;
import com.yeshi.fanli.service.inter.user.UserSystemCouponService;
+import com.yeshi.fanli.service.inter.user.invite.UserInviteService;
+import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService;
import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.vo.homemodule.BannerVO;
import com.yeshi.fanli.vo.user.UserSystemCouponRecordVO;
import com.yeshi.fanli.vo.user.UserSystemCouponVO;
@@ -74,11 +69,11 @@
@Resource
private UserInfoExtraService userInfoExtraService;
+ @Resource
+ private UserVIPInfoService userVIPInfoService;
@Resource
- private UserLotteryRecordService userLotteryRecordService;
-
-
+ private UserInviteService userInviteService;
/**
* 鐢ㄦ埛鍒稿垪琛ㄦ煡璇�
@@ -103,7 +98,7 @@
// 绂忓埄涓績鍥剧墖
String topPicture = null;
if (page == 1) {
- List<SwiperPicture> listswiper = swiperPictureService.getByBannerCard("welfare_top");
+ List<BannerVO> listswiper = swiperPictureService.getByBannerCardAndVersion("welfare_top",acceptData.getPlatform(), Integer.parseInt(acceptData.getVersion()));
if (listswiper != null && listswiper.size() > 0) {
topPicture = listswiper.get(0).getSrc();
}
@@ -142,14 +137,11 @@
UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
// 鏈鍒告槸鍚﹀ぇ浜�0
if (userInfoExtra != null && userInfoExtra.getCouponNews() > 0) {
- userInfoExtra.setCouponNews(0);
- try {
- userInfoExtraService.saveUserInfoExtra(userInfoExtra);
- } catch (UserInfoExtraException e) {
- e.printStackTrace();
- }
+ UserInfoExtra extra = new UserInfoExtra();
+ extra.setId(userInfoExtra.getId());
+ extra.setCouponNews(0);
+ userInfoExtraService.updateByPrimaryKeySelective(extra);
}
-
}
});
}
@@ -186,11 +178,11 @@
}
JSONObject dataTip = new JSONObject();
- dataTip.put("content", configService.get("free_coupon_tip"));
+ dataTip.put("content", configService.get(ConfigKeyEnum.freeCouponTip.getKey()));
dataTip.put("fontColor", "#F14242");
JSONObject data = new JSONObject();
- data.put("helpLink", configService.get("free_coupon_help"));
+ data.put("helpLink", configService.get(ConfigKeyEnum.freeCouponHelp.getKey()));
data.put("tip", dataTip);
data.put("count", resultList.size());
data.put("result_list", JsonUtil.getApiCommonGson().toJson(resultList));
@@ -259,7 +251,7 @@
}
JSONObject data = new JSONObject();
- data.put("helpLink", configService.get("reward_coupon_help"));
+ data.put("helpLink", configService.get(ConfigKeyEnum.rewardCouponHelp.getKey()));
data.put("count", resultList.size());
data.put("result_list", JsonUtil.getApiCommonGson().toJson(resultList));
@@ -281,26 +273,30 @@
* @param uid
* @param out
*/
- @RequestMapping(value = "useRewardCoupon", method = RequestMethod.POST)
- public void useRewardCoupon(AcceptData acceptData, Long uid, Long cid, String orderNo, Integer goodsType, PrintWriter out) {
-
+ @RequestMapping(value = "useRewardCoupon")
+ public void useRewardCoupon(String callback, AcceptData acceptData, Long uid, Long cid, String orderNo, Integer goodsType, PrintWriter out) {
if (uid == null) {
- out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
+ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
return;
}
-
+
+ // 褰撳墠鐢ㄦ埛鏄惁VIP
+ boolean vip = userInviteService.verifyVIP(uid);
+ if (vip) {
+ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("浼氬憳涓嶅彲浣跨敤濂栧姳鍒�"));
+ return;
+ }
if (goodsType == null || goodsType > 3 || goodsType < 1) {
goodsType = Constant.SOURCE_TYPE_TAOBAO;
}
-
try {
UserSystemCouponService.useOrderCoupon(uid, cid, orderNo, goodsType, acceptData);
JSONObject data = commonOrderService.getRewardJumpInfo(orderNo, goodsType);
- out.print(JsonUtil.loadTrueResult(data));
+ JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
} catch (UserSystemCouponException e) {
- out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
+ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
} catch (Exception e) {
- out.print(JsonUtil.loadFalseResult(1, "浣跨敤澶辫触"));
+ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "浣跨敤澶辫触"));
e.printStackTrace();
}
}
@@ -356,225 +352,6 @@
e.printStackTrace();
}
}
-
- /**
- * 鑾峰彇鎶藉娆℃暟
- *
- * @param callback
- * @param acceptData
- * @param uid
- * @param out
- */
- // @RequestMapping(value = "getLotteryCount")
- public void getLotteryCount(String callback, AcceptData acceptData, Long uid, PrintWriter out) {
- try {
- // 1銆佸凡鐧诲綍绯荤粺
- if (uid != null) {
- JSONObject data = userLotteryRecordService.getLotteryCountNewbies(uid);
- JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
- return;
- }
-
- // 2銆佹湭鐧诲綍绯荤粺 - 璁板綍璁惧
- int platformType = 0;
- String platform = acceptData.getPlatform();
- if ("android".equals(platform)) {
- platformType = 1;
- } else if ("ios".equals(platform)) {
- platformType = 2;
- } else {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("骞冲彴鏈夎"));
- return;
- }
-
- String device = acceptData.getDevice();
- if (device == null || device.trim().length() == 0) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璁惧涓嶅瓨鍦�"));
- return;
- }
-
- List<DeviceLotteryRecord> list = deviceLotteryRecordService.listByPlatformAndDevice(platformType, device);
- int count = UserLotteryRecord.COUNT_NEWBIES;
- if (list != null && list.size() > 0) {
- count = count - list.size();
- }
- // 鎶藉瑙勫垯
- String lotteryRule = configService.get("lottery_rule_newbies");
-
- JSONObject data = new JSONObject();
- data.put("count", count);
- data.put("rule", lotteryRule);
- JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
- } catch (UserLotteryRecordException e) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
- } catch (Exception e) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔澶辫触"));
- e.printStackTrace();
- }
- }
-
- /**
- * 鑾峰彇鎶藉缁撴灉
- * @param callback
- * @param acceptData
- * @param uid
- * @param out
- */
- // @RequestMapping(value = "getLotteryResult")
- public void getLotteryResult(String callback, AcceptData acceptData, Long uid, PrintWriter out) {
-
- try {
- // 1銆佸凡鐧诲綍鐢ㄦ埛鎶藉
- if (uid != null) {
- Map<String, Object> map = userLotteryRecordService.executeLotteryNewbies(uid);
- JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(map));
- return;
- }
-
- // 2銆佹湭鐧诲綍鐢ㄦ埛鎶藉
- int platformType = 0;
- String platform = acceptData.getPlatform();
- if ("android".equals(platform)) {
- platformType = 1;
- } else if ("ios".equals(platform)) {
- platformType = 2;
- } else {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("骞冲彴鏈夎"));
- return;
- }
-
- String device = acceptData.getDevice();
- if (device == null || device.trim().length() == 0) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璁惧涓嶅瓨鍦�"));
- return;
- }
-
- List<DeviceLotteryRecord> list = deviceLotteryRecordService.listByPlatformAndDevice(platformType, device);
- if (list != null && list.size() >= UserLotteryRecord.COUNT_NEWBIES) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(2, "鎶藉娆℃暟涓嶈冻"));
- return;
- }
- // 璁惧鎶藉
- JSONObject data = getDevicePrize(list, device, platformType);
- JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
- } catch (UserLotteryRecordException e) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
- } catch (Exception e) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎶藉澶辫触"));
- e.printStackTrace();
- }
- }
-
- /**
- * 璁惧淇℃伅鎶藉-鏈櫥褰�
- * @param list
- * @param device
- * @param platformType
- * @return
- */
- public JSONObject getDevicePrize(List<DeviceLotteryRecord> list, String device, int platformType) {
- int count = 0;
- int countPrize = 0;
- Long couponId = null;
-
- if (list == null || list.size() == 0) { // 鎷ユ湁鎶藉鏈轰細
- count = UserLotteryRecord.COUNT_NEWBIES;
- } else {
- for (DeviceLotteryRecord deviceLotteryRecord : list) {
- Long systemCouponId = deviceLotteryRecord.getSystemCouponId();
- if (systemCouponId != null) {
- countPrize++;
- couponId = systemCouponId;
- }
- }
- count = UserLotteryRecord.COUNT_NEWBIES - list.size();
- }
-
-
- String prize = null;
- String couponType = null;
- if (countPrize == 0) {
- prize = userLotteryRecordService.getLotteryPrizeNewbies(count, countPrize, null);
- } else if (countPrize == 1) {
- if (couponId != null) {
- SystemCoupon coupon = systemCouponService.selectByPrimaryKey(couponId);
- couponType = coupon.getType().name();
- }
-
- if(couponType != null && couponType.trim().length() > 0) {
- prize = userLotteryRecordService.getLotteryPrizeNewbies(count, countPrize, couponType);
- }
- }
-
- Long newCouponId = null;
- if (prize == null || prize.trim().length() == 0) {
- prize = "NoPrize";
- } else if (prize.equals(couponType)) {
- // 宸插瓨鍦ㄦ鍒�
- prize = "NoPrize";
- } else {
- SystemCoupon coupon = systemCouponService.getCouponByType(prize);
- if (coupon != null) {
- newCouponId = coupon.getId();
- }
- }
-
- count --;
-
- // 鎻掑叆璁板綍
- DeviceLotteryRecord record = new DeviceLotteryRecord();
- record.setDevice(device);
- record.setPlatform(platformType);
- record.setSystemCouponId(newCouponId);
- record.setCreateTime(new Date());
- deviceLotteryRecordService.insertSelective(record);
-
- JSONObject data = new JSONObject();
- data.put("count", count);
- data.put("result", prize);
-
- return data;
- }
-
-
- /**
- * 鑾峰彇鎶藉娆℃暟- 澶╁ぉ鎶藉鍔卞埜
- *
- * @param callback
- * @param acceptData
- * @param uid
- * @param out
- */
- // @RequestMapping(value = "getDailyCount")
- public void getDailyCount(String callback, AcceptData acceptData, Long uid, PrintWriter out) {
- try {
- JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(userLotteryRecordService.getLotteryCountDaily(uid)));
- } catch (UserLotteryRecordException e) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getCode(),e.getMsg()));
- } catch (Exception e) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("淇℃伅鑾峰彇澶辫触"));
- e.printStackTrace();
- }
- }
-
- /**
- * 鑾峰彇鎶藉缁撴灉 - 澶╁ぉ鎶藉鍔卞埜`
- * @param callback
- * @param acceptData
- * @param uid
- * @param out
- */
- // @RequestMapping(value = "getDailyResult")
- public void getDailyResult(String callback, AcceptData acceptData, Long uid, PrintWriter out) {
- try {
- JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(userLotteryRecordService.executeLotteryDaily(uid)));
- } catch (UserLotteryRecordException e) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getCode(),e.getMsg()));
- } catch (Exception e) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎶藉澶辫触"));
- e.printStackTrace();
- }
- }
}
--
Gitblit v1.8.0