From 9db53b847ba90d437d9545485416f23887adf934 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 26 二月 2019 11:38:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5UserController.java |  323 -----------------------------------------------------
 1 files changed, 1 insertions(+), 322 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5UserController.java b/fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5UserController.java
index 39f3dc4..ef7b945 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5UserController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5UserController.java
@@ -1,33 +1,18 @@
 package com.yeshi.fanli.controller.apph5;
 
 import java.io.PrintWriter;
-import java.text.SimpleDateFormat;
 import java.util.ArrayList;
-import java.util.Date;
 import java.util.List;
 
 import javax.annotation.Resource;
 
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.yeshi.utils.DateUtil;
 import org.yeshi.utils.JsonUtil;
 
 import com.alibaba.fastjson.JSONArray;
-import com.yeshi.fanli.entity.accept.AcceptData;
-import com.yeshi.fanli.entity.bus.user.DeviceLotteryRecord;
 import com.yeshi.fanli.entity.bus.user.ShamUser;
-import com.yeshi.fanli.entity.bus.user.UserInfoExtra;
-import com.yeshi.fanli.entity.bus.user.UserSystemCoupon;
-import com.yeshi.fanli.entity.system.SystemCoupon;
-import com.yeshi.fanli.entity.system.SystemCoupon.CouponTypeEnum;
-import com.yeshi.fanli.service.inter.config.ConfigService;
-import com.yeshi.fanli.service.inter.config.SystemCouponService;
-import com.yeshi.fanli.service.inter.order.CommonOrderCountService;
-import com.yeshi.fanli.service.inter.user.DeviceLotteryRecordService;
 import com.yeshi.fanli.service.inter.user.ShamUserService;
-import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
-import com.yeshi.fanli.service.inter.user.UserSystemCouponService;
 
 import net.sf.json.JSONObject;
 
@@ -41,67 +26,13 @@
 @RequestMapping("api/apph5/v1/user")
 public class AppH5UserController {
 
-	@Resource
-	private DeviceLotteryRecordService deviceLotteryRecordService;
-
-	@Resource
-	private UserInfoExtraService userInfoExtraService;
-
-	@Resource
-	private CommonOrderCountService commonOrderCountService;
 
 	@Resource
 	private ShamUserService shamUserService;
 
-	@Resource
-	private ConfigService configService;
-
-	@Resource
-	private SystemCouponService systemCouponService;
 	
-	
-	@Resource
-	private UserSystemCouponService userSystemCouponService;
-	
-	// 鏈�澶ф娊濂栨鏁�
-	private static int MAX_COUNT = 5;
-
 	/**
-	 * 鑾峰彇鎶藉娆℃暟
-	 * 
-	 * @param callback
-	 * @param acceptData
-	 * @param uid
-	 * @param out
-	 */
-	@RequestMapping(value = "getLotteryCount")
-	public void getLotteryCount(String callback, AcceptData acceptData, Long uid, PrintWriter out) {
-		int count = 0;
-		try {
-			count = getSurplusCount(acceptData, uid);
-		} catch (Exception e) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMessage()));
-			e.printStackTrace();
-		}
-
-		try {
-			// 鎶藉瑙勫垯
-			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 (Exception e) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔澶辫触"));
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 * 鑾峰彇鎶藉娆℃暟
+	 * 鑾峰彇鎶藉骞垮憡鍒楄〃
 	 * 
 	 * @param callback
 	 * @param out
@@ -145,258 +76,6 @@
 		}
 	}
 
-	/**
-	 * 鑾峰彇鎶藉缁撴灉
-	 * 
-	 * @param callback
-	 * @param acceptData
-	 * @param uid
-	 * @param out
-	 */
-	@RequestMapping(value = "getLotteryResult")
-	public void getLotteryResult(String callback, AcceptData acceptData, Long uid, PrintWriter out) {
-
-		try {
-			// 濂栧搧
-			int count = 0;
-			String prize = "";
-			Long couponId = null;
-			
-			if (uid == null) { // 鏈櫥褰�
-				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;
-				}
-				int hasPrize = 0;
-				
-				List<DeviceLotteryRecord> list = deviceLotteryRecordService.listByPlatformAndDevice(platformType,
-						device);
-				if (list != null && list.size() == MAX_COUNT) { // 鏃犳娊濂栨満浼�
-					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(2, "鎶藉娆℃暟涓嶈冻"));
-					return;
-				} else if (list != null && list.size() < MAX_COUNT) { // 鎷ユ湁鎶藉鏈轰細
-					for (DeviceLotteryRecord deviceLotteryRecord : list) {
-						Long systemCouponId = deviceLotteryRecord.getSystemCouponId();
-						if (systemCouponId != null) {
-							hasPrize++;
-							couponId = systemCouponId;
-						}
-					}
-					count = MAX_COUNT - 1 - list.size();
-				} else {
-					count = MAX_COUNT - 1;
-				}
-
-				// 濂栧搧
-				prize = getLotteryPrize(MAX_COUNT, hasPrize, list.size(), couponId);
-				// 鎶戒腑
-				Long newCouponId = null;
-				if (prize != null && prize.trim().length() > 0) {
-					SystemCoupon coupon= systemCouponService.getCouponByType(prize);
-					newCouponId =coupon.getId();
-				}
-				
-				// 鎻掑叆璁板綍
-				DeviceLotteryRecord record = new DeviceLotteryRecord();
-				record.setDevice(device);
-				record.setPlatform(platformType);
-				record.setSystemCouponId(newCouponId);
-				record.setCreateTime(new Date());
-				deviceLotteryRecordService.insertSelective(record);
-				
-			} else { // 宸茬櫥褰�
-				UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
-				if (userInfoExtra == null) {
-					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("淇℃伅涓嶆纭�"));
-					return;
-				}
-				
-				Integer lotteryNewbies = userInfoExtra.getLotteryNewbies();
-				if (lotteryNewbies == null || lotteryNewbies < 1 ) { // 娆℃暟宸茬敤鍏�
-					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(2, "鎶藉娆℃暟涓嶈冻"));
-					return;
-				} else {
-					count = lotteryNewbies - 1; // 鍓╀綑娆℃暟
-				}
-				
-				List<UserSystemCoupon> list = userSystemCouponService.getUserCouponBySource(uid, UserSystemCoupon.SOURCE_CHOUJIANG);
-				if (list != null && list.size() == 1) {
-					couponId = list.get(0).getSystemCoupon().getId();
-				}
-				
-				// 濂栧搧
-				prize = getLotteryPrize(MAX_COUNT, list.size(), MAX_COUNT- lotteryNewbies, couponId);
-				// 鎶戒腑
-				if (prize != null && prize.trim().length() > 0) {
-					SystemCoupon coupon= systemCouponService.getCouponByType(prize);
-					
-					String endDay = DateUtil.plusDay(coupon.getExpiryDay(), new Date());
-					SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
-					Date endTime = format.parse(endDay);
-					
-					int stateActivated = 1;
-					if (coupon.getType() == CouponTypeEnum.welfareFreeCoupon) {
-						stateActivated = 0;
-					}
-					
-					UserSystemCoupon userCoupon = new UserSystemCoupon();
-					userCoupon.setUid(uid);
-					userCoupon.setSource(UserSystemCoupon.SOURCE_CHOUJIANG);
-					userCoupon.setSystemCoupon(coupon);
-					userCoupon.setState(UserSystemCoupon.STATE_CAN_USE);
-					userCoupon.setStateActivated(stateActivated);
-					userCoupon.setStartTime(new Date());
-					userCoupon.setEndTime(endTime);
-					userCoupon.setCreateTime(new Date());
-					userCoupon.setUpdateTime(new Date());
-					userSystemCouponService.insertSelective(userCoupon);
-				}
-				
-				// 鍓╀綑娆℃暟
-				userInfoExtra.setLotteryNewbies(count);
-				userInfoExtraService.saveUserInfoExtra(userInfoExtra);
-			}
-		
-			if (prize == null || prize.trim().length() == 0) {
-				prize = "NoPrize";
-			}
-
-			JSONObject data = new JSONObject();
-			data.put("count", count);
-			data.put("result", prize);
-
-			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
-
-		} catch (Exception e) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎶藉澶辫触"));
-			e.printStackTrace();
-		}
-	}
-	
-	/**
-	 * 濂栧搧鎶藉彇
-	 * @param maxCount  鏈�澶ф鏁�
-	 * @param hasPrize 鎷ユ湁濂栧搧鏁伴噺
-	 * @param record  宸叉娊娆℃暟
-	 * @param couponId 鍒竔d
-	 * @return
-	 */
-	public String getLotteryPrize(int maxCount, int hasPrize, int record, Long couponId) {
-		
-		String prize = null; 
-		String freeCoupon = CouponTypeEnum.welfareFreeCoupon.name(); // 绂忓埄鍏嶈垂鍒�
-		String rebateCoupon =  CouponTypeEnum.rebatePercentCoupon.name(); // 濂栧姳鍒�
-		
-		if (hasPrize == 1 && record == maxCount - 1) {
-			// 鏈�鍚庝竴娆★細 鍙敹鍒颁竴涓鍝�
-			SystemCoupon systemCoupon = systemCouponService.selectByPrimaryKey(couponId);
-			if (systemCoupon != null) {
-				CouponTypeEnum type = systemCoupon.getType();
-				if (type.name() == freeCoupon) {
-					prize = rebateCoupon; // 濂栧姳鍒�
-				} else {
-					prize = freeCoupon; // 绂忓埄鍏嶈垂鍒�
-				}
-			} else {
-				prize = rebateCoupon; // 濂栧姳鍒�
-			}
-			
-		} else if (hasPrize == 0 && record == maxCount - 2) {
-			// 鍓�3娆℃病鏈夊鍔辨椂銆佸悗闈袱娆″繀涓�
-			long result = (1 + Math.round(Math.random() * (9)));
-			if (result <= 5) {
-				prize = freeCoupon; // 绂忓埄鍏嶈垂鍒�
-			} else {
-				prize = rebateCoupon; // 濂栧姳鍒�
-			}
-			
-		} else { // 澶т簬3娆℃満浼�
-
-			if (hasPrize < 2) { // 涓嶈冻涓や釜濂栧搧
-				long result = (1 + Math.round(Math.random() * (9)));
-				if (result <= 3) {
-					prize = freeCoupon; // 绂忓埄鍏嶈垂鍒�
-				} else if (result <= 6) {
-					prize = rebateCoupon; // 濂栧姳鍒�
-				} 
-			}
-		}
-		
-		return prize;
-	}
-	
-	
-	
-
-	/**
-	 * 鑾峰彇鎶藉缁撴灉
-	 * 
-	 * @param callback
-	 * @param acceptData
-	 * @param uid
-	 * @param out
-	 */
-	public int getSurplusCount(AcceptData acceptData, Long uid) throws Exception {
-
-		// 榛樿鏈�澶ф娊濂栨鏁�
-		int count = 5;
-
-		if (uid == null) { // 鏈櫥褰�
-			int platformType = 0;
-			String platform = acceptData.getPlatform();
-			if ("android".equals(platform)) {
-				platformType = 1;
-			} else if ("ios".equals(platform)) {
-				platformType = 2;
-			} else {
-				throw new Exception("骞冲彴鏈夎");
-			}
-
-			String device = acceptData.getDevice();
-			if (device == null || device.trim().length() == 0) {
-				throw new Exception("璁惧涓嶅瓨鍦�");
-			}
-
-			List<DeviceLotteryRecord> list = deviceLotteryRecordService.listByPlatformAndDevice(platformType, device);
-			if (list != null && list.size() > 0) {
-				count = count - list.size();
-			}
-
-		} else { // 宸茬櫥褰�
-			UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
-			if (userInfoExtra == null) {
-				throw new Exception("淇℃伅涓嶆纭�");
-			}
-
-			Integer lotteryNewbies = userInfoExtra.getLotteryNewbies();
-			if (lotteryNewbies == null) { // 鏈娊杩�
-				// 鏄惁鏈夎繃璁㈠崟锛氳繑鍒┿�佸垎浜鍗�
-				boolean hasOrder = commonOrderCountService.hasRebateAndShareOrder(uid);
-				if (hasOrder) {
-					count = 0; // 涓嶇畻鏂扮敤鎴�
-				}
-				userInfoExtra.setLotteryNewbies(count);
-				userInfoExtraService.saveUserInfoExtra(userInfoExtra);
-				
-			} else {
-				count = lotteryNewbies; // 鍓╀綑娆℃暟
-			} 
-		}
-
-		return count;
-	}
 
 	/**
 	 * 鐢熸垚濂栭」

--
Gitblit v1.8.0