From 531d93708df8017e59830f15b41f3cc42d6126e6 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 09 七月 2019 17:53:01 +0800
Subject: [PATCH] 1.5.7版本需求

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java |  231 ++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 155 insertions(+), 76 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java
index 867e0e9..a6a8faa 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java
@@ -27,6 +27,7 @@
 import com.google.gson.stream.JsonReader;
 import com.google.gson.stream.JsonWriter;
 import com.yeshi.fanli.entity.accept.AcceptData;
+import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture;
 import com.yeshi.fanli.entity.bus.tlj.DeviceTaoLiJinRecord;
 import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinDetail.TaoLiJinDetailTypeEnum;
 import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinOrigin;
@@ -34,18 +35,22 @@
 import com.yeshi.fanli.entity.bus.user.UserMoneyExtra;
 import com.yeshi.fanli.entity.bus.user.UserRank;
 import com.yeshi.fanli.entity.taobao.ShareHotGoods;
+import com.yeshi.fanli.entity.taobao.TLJBuyGoods;
 import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
 import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra;
+import com.yeshi.fanli.exception.banner.SwiperPictureException;
 import com.yeshi.fanli.exception.tlj.UserTaoLiJinOriginException;
 import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
 import com.yeshi.fanli.service.inter.config.ConfigService;
 import com.yeshi.fanli.service.inter.goods.ShareGoodsService;
 import com.yeshi.fanli.service.inter.goods.ShareGoodsTextTemplateService;
+import com.yeshi.fanli.service.inter.homemodule.SwiperPictureService;
 import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
 import com.yeshi.fanli.service.inter.lable.QualityGoodsService;
 import com.yeshi.fanli.service.inter.monitor.BusinessEmergent110Service;
 import com.yeshi.fanli.service.inter.monitor.MonitorService;
 import com.yeshi.fanli.service.inter.taobao.ShareHotGoodsService;
+import com.yeshi.fanli.service.inter.taobao.TLJBuyGoodsService;
 import com.yeshi.fanli.service.inter.tlj.ConfigTaoLiJinService;
 import com.yeshi.fanli.service.inter.tlj.DeviceTaoLiJinRecordService;
 import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinDetailService;
@@ -58,9 +63,11 @@
 import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.TaoBaoConstant;
 import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.taobao.TaoBaoUtil;
 import com.yeshi.fanli.util.taobao.TaoLiJinUtil;
+import com.yeshi.fanli.vo.goods.taobao.TLJBuyHongBaoVO;
 import com.yeshi.fanli.vo.msg.ClientTextStyleVO;
 import com.yeshi.fanli.vo.tlj.TaoLiJinDetailVO;
 import com.yeshi.fanli.vo.user.UserTaoLiJinRecordVO;
@@ -104,35 +111,40 @@
 
 	@Resource
 	private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
-	
+
 	@Resource
 	private UserTaoLiJinOriginService userTaoLiJinOriginService;
-	
+
 	@Resource
 	private UserTaoLiJinDetailService userTaoLiJinDetailService;
-	
+
 	@Resource
 	private UserMoneyExtraService userMoneyExtraService;
-	
+
 	@Resource
 	private ConfigTaoLiJinService configTaoLiJinService;
-	
+
 	@Resource
 	private QualityGoodsService qualityGoodsService;
-	
+
 	@Resource
 	private DeviceTaoLiJinRecordService deviceTaoLiJinRecordService;
 
 	@Resource
 	private JumpDetailV2Service jumpDetailV2Service;
-	
+
 	@Resource(name = "taskExecutor")
 	private TaskExecutor executor;
-	
+
 	@Resource
 	private ShareHotGoodsService shareHotGoodsService;
-	
-	
+
+	@Resource
+	private TLJBuyGoodsService tljBuyGoodsService;
+
+	@Resource
+	private SwiperPictureService swiperPictureService;
+
 	/**
 	 * 鑾峰彇娣樼ぜ閲戝垎浜褰�
 	 * 
@@ -152,15 +164,15 @@
 			page = 1;
 		}
 
-		
 		int pageSize = Constant.PAGE_SIZE;
-		List<UserTaoLiJinRecordVO> list = userTaoLiJinRecordService.getRecordByUid((page - 1) * pageSize, pageSize,	uid);
+		List<UserTaoLiJinRecordVO> list = userTaoLiJinRecordService.getRecordByUid((page - 1) * pageSize, pageSize,
+				uid);
 		if (list == null) {
 			list = new ArrayList<UserTaoLiJinRecordVO>();
-		} 
-		
+		}
+
 		long count = userTaoLiJinRecordService.countShareRecordByUid(uid);
-		
+
 		GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation();
 		gsonBuilder.registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
 			@Override
@@ -172,18 +184,18 @@
 				}
 			}
 		});
-		
+
 		Gson gson = gsonBuilder.create();
-		
+
 		JSONObject data = new JSONObject();
 		data.put("count", count);
 		data.put("list", gson.toJson(list));
 		out.print(JsonUtil.loadTrueResult(data));
 	}
-	
-	
+
 	/**
 	 * 缁熻娣樼ぜ閲�
+	 * 
 	 * @param acceptData
 	 * @param uid
 	 * @param out
@@ -194,10 +206,10 @@
 			out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
-		
+
 		// 杩囨湡
 		userTaoLiJinOriginService.overdueHongBao(uid);
-		
+
 		// 鎴戠殑娣樼ぜ閲�
 		BigDecimal tlj = null;
 		UserMoneyExtra userMoneyExtra = userMoneyExtraService.selectByPrimaryKey(uid);
@@ -206,11 +218,10 @@
 		} else {
 			tlj = new BigDecimal(0);
 		}
-		
-		
+
 		// 浠婃棩鍒嗕韩涓暟
 		long countShare = userTaoLiJinRecordService.countTodayNum(uid);
-		
+
 		// 鑾峰緱
 		BigDecimal todayWin = userTaoLiJinOriginService.countMoneyByDate(uid, 1);
 		BigDecimal yesterdayWin = userTaoLiJinOriginService.countMoneyByDate(uid, 2);
@@ -225,9 +236,9 @@
 
 		// 闂彿閾炬帴
 		String helpLink = configTaoLiJinService.getValueByKey("hongbao_help_link");
-		
+
 		JSONObject data = new JSONObject();
-		data.put("tlj",  tlj.setScale(2).toString());
+		data.put("tlj", tlj.setScale(2).toString());
 		data.put("helpLink", helpLink);
 		data.put("countShare", countShare);
 		data.put("todayWin", todayWin.setScale(2).toString());
@@ -238,8 +249,7 @@
 		data.put("yesterdayUse", yesterdayUse.setScale(2).toString().replaceAll("-", ""));
 		data.put("thisMonthUse", thisMonthUse.setScale(2).toString().replaceAll("-", ""));
 		data.put("lastMonthUse", lastMonthUse.setScale(2).toString().replaceAll("-", ""));
-		
-		
+
 		// IOS 鍒嗕韩涓暟
 		ClientTextStyleVO textVo1 = new ClientTextStyleVO();
 		textVo1.setContent("浠婃棩鍒涘缓鍒嗕韩");
@@ -250,17 +260,16 @@
 		ClientTextStyleVO textVo3 = new ClientTextStyleVO();
 		textVo3.setContent("涓�");
 		textVo3.setColor("#888888");
-		
+
 		List<ClientTextStyleVO> listCountShare = new ArrayList<ClientTextStyleVO>();
 		listCountShare.add(textVo1);
 		listCountShare.add(textVo2);
 		listCountShare.add(textVo3);
 		data.put("listShare", listCountShare);
-		
+
 		out.print(JsonUtil.loadTrueResult(data));
 	}
-	
-	
+
 	/**
 	 * 鑾峰彇娣樼ぜ閲戞槑缁嗚鎯�
 	 * 
@@ -296,12 +305,12 @@
 			ca.add(Calendar.MONTH, 1);
 			date = new Date(ca.getTimeInMillis() - 1);
 		}
-		
+
 		// 鏌ヨ鍒楄〃
 		List<TaoLiJinDetailVO> list = userTaoLiJinDetailService.listUserMoneyDetailForClient(uid, index, date);
 		// 缁熻鎬绘潯鏁�
 		long count = userTaoLiJinDetailService.countUserMoneyDetailForClient(uid, index, date);
-		
+
 		GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation();
 		gsonBuilder.registerTypeAdapter(TaoLiJinDetailTypeEnum.class, new TypeAdapter<TaoLiJinDetailTypeEnum>() {
 			@Override
@@ -336,9 +345,7 @@
 				}
 			}
 		});
-		
-		
-		
+
 		Gson gson = gsonBuilder.create();
 
 		JSONObject data = new JSONObject();
@@ -346,11 +353,10 @@
 		data.put("data", gson.toJson(list));
 		out.print(JsonUtil.loadTrueResult(data));
 	}
-	
-	
-	
+
 	/**
-	 *   绾㈠寘棰嗗彇璇︽儏
+	 * 绾㈠寘棰嗗彇璇︽儏
+	 * 
 	 * @param acceptData
 	 * @param uid
 	 * @param type
@@ -358,13 +364,13 @@
 	 */
 	@RequestMapping(value = "getHongbaoDetails", method = RequestMethod.POST)
 	public void getHongbaoDetails(AcceptData acceptData, Long uid, String type, PrintWriter out) {
-		
+
 		if (StringUtil.isNullOrEmpty(type)) {
 			out.print(JsonUtil.loadFalseResult(1, "绫诲瀷涓嶈兘涓虹┖"));
 			return;
 		}
-		
-		// 鐢ㄦ埛鏈櫥褰曟椂  璁惧棰嗗彇鏂扮孩鍖�
+
+		// 鐢ㄦ埛鏈櫥褰曟椂 璁惧棰嗗彇鏂扮孩鍖�
 		if (uid == null || uid <= 0) {
 			BigDecimal money = null;
 			DeviceTaoLiJinRecord deviceRecord = deviceTaoLiJinRecordService.getByDevice(acceptData.getDevice());
@@ -380,7 +386,7 @@
 				money = new BigDecimal(value);
 				deviceTaoLiJinRecordService.save(acceptData.getDevice(), money);
 			}
-		
+
 			JSONObject data = new JSONObject();
 			data.put("icon", configTaoLiJinService.getValueByKey("taolijin_system_icon"));
 			data.put("title", "鏂颁汉绾㈠寘");
@@ -392,16 +398,15 @@
 			data.put("jumpDetail", jumpDetailV2Service.getByTypeCache("share_goods_hot"));
 			data.put("tip", configTaoLiJinService.getValueByKey("hongbao_newbies_tip"));
 			data.put("rules", configTaoLiJinService.getValueByKey("newbies_rules_link"));
-			
+
 			out.print(JsonUtil.loadTrueResult(data));
 			return;
-		} 	
-		
-		
+		}
+
 		// 鐧诲綍鐢ㄦ埛
 		JSONObject data = new JSONObject();
 		data.put("icon", configTaoLiJinService.getValueByKey("taolijin_system_icon"));
-		
+
 		if (type.equals(TaoLiJinOriginEnum.newbiesWin.name())) {
 			BigDecimal hasMoney = null;
 			UserTaoLiJinOrigin userTaoLiJin = userTaoLiJinOriginService.getByUidAndOrigin(uid, type);
@@ -416,7 +421,7 @@
 					return;
 				}
 			}
-			
+
 			data.put("title", "鏂颁汉绾㈠寘");
 			data.put("content", "鑷喘鐩存帴鎶电幇锛屼紭鎯犵湡瀹炲彲瑙侊紒");
 			data.put("type", 1);
@@ -426,8 +431,8 @@
 			data.put("jumpDetail", jumpDetailV2Service.getByTypeCache("share_goods_hot"));
 			data.put("tip", configTaoLiJinService.getValueByKey("hongbao_newbies_tip"));
 			data.put("rules", configTaoLiJinService.getValueByKey("newbies_rules_link"));
-			
-		} else if(type.equals(TaoLiJinOriginEnum.rankWin.name())) {
+
+		} else if (type.equals(TaoLiJinOriginEnum.rankWin.name())) {
 			boolean isRank = false;
 			BigDecimal hasMoney = null;
 			UserTaoLiJinOrigin userTaoLiJin = userTaoLiJinOriginService.getRankByThisMonth(uid, type);
@@ -451,7 +456,7 @@
 					}
 				}
 			}
-			
+
 			// 绛夌骇涓嶈冻
 			if (!isRank) {
 				data.put("title", "璐︽埛绛夌骇绂忓埄");
@@ -475,19 +480,18 @@
 				data.put("tip", configTaoLiJinService.getValueByKey("hongbao_rank_tip"));
 				data.put("rules", configTaoLiJinService.getValueByKey("rank_rules_link"));
 			}
-			
+
 		} else {
 			out.print(JsonUtil.loadFalseResult(1, "绫诲瀷涓嶅尮閰�"));
 			return;
 		}
-		
+
 		out.print(JsonUtil.loadTrueResult(data));
 	}
-	
-	
-	
+
 	/**
 	 * 鍒嗕韩鐖嗘鍟嗗搧-闄愪簬娣樼ぜ閲�
+	 * 
 	 * @param acceptData
 	 * @param uid
 	 * @param out
@@ -498,18 +502,17 @@
 			out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
-		
+
 		String day = TimeUtil.getGernalTime(java.lang.System.currentTimeMillis());
 		List<ShareHotGoods> listHot = shareHotGoodsService.listByDay(day);
 		if (listHot == null) {
-			listHot = new ArrayList<ShareHotGoods>(); 
+			listHot = new ArrayList<ShareHotGoods>();
 		}
-		
-		
+
 		JSONArray array = new JSONArray();
 		Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
 				.excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
-		
+
 		boolean isNewUser = userInfoExtraService.isNewUser(uid);
 		if (isNewUser) {
 			// 鍒ゅ畾涓鸿�佺敤鎴凤細 鏂颁汉鍙浣跨敤浜嗘柊浜虹孩鍖咃紝涔熷氨鏄偅1鍧楅挶锛岄偅涔堬紝浠栫湅鍒扮殑鍒嗕韩鐖嗘涓殑鍟嗗搧-灏卞彧鑳藉垎浜��
@@ -518,39 +521,39 @@
 				isNewUser = false;
 			}
 		}
-		
-		
+
 		BigDecimal proportion = hongBaoManageService.getFanLiRate();
 		for (ShareHotGoods hotGoods : listHot) {
 			TaoBaoGoodsBrief taoBaoGoodsBrief = hotGoods.getGoods();
 			if (taoBaoGoodsBrief == null) {
 				continue;
 			}
-			
+
 			// 璁$畻鎺ㄥ箍绾㈠寘
 			String warningRate = configTaoLiJinService.getValueByKey("warning_value");
 			BigDecimal spreadMoney = TaoLiJinUtil.getSpreadMoney(warningRate, taoBaoGoodsBrief);
-			
+
 			// 鎺ㄥ箍绾㈠寘 涓嶈兘灏忎簬1
 			if (spreadMoney.compareTo(new BigDecimal(1.1)) < 0) {
 				continue;
 			}
-			
-			TaoBaoGoodsBriefExtra extra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), null);
+
+			TaoBaoGoodsBriefExtra extra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(),
+					null);
 			// 鍘绘帀鏍囩
 			extra.setLabels(null);
-						
+
 			// 鏄剧ず绫诲瀷
 			if (isNewUser) {
 				extra.setMoneyType(1);
-				extra.setSpreadMoney("鎺ㄥ箍绾㈠寘 楼"+ 1);
+				extra.setSpreadMoney("鎺ㄥ箍绾㈠寘 楼" + 1);
 			} else {
 				extra.setMoneyType(2);
-				extra.setSpreadMoney("鎺ㄥ箍绾㈠寘 楼"+ spreadMoney);
+				extra.setSpreadMoney("鎺ㄥ箍绾㈠寘 楼" + spreadMoney);
 			}
 			array.add(gson.toJson(extra));
 		}
-		
+
 		executor.execute(new Runnable() {
 			@Override
 			public void run() {
@@ -558,11 +561,87 @@
 				userTaoLiJinOriginService.overdueHongBao(uid);
 			}
 		});
-		
+
 		JSONObject data = new JSONObject();
 		data.put("count", array.size());
 		data.put("list", array);
 		out.print(JsonUtil.loadTrueResult(data));
 	}
-	
+
+	/**
+	 * 鍒嗕韩鐖嗘鍟嗗搧-闄愪簬娣樼ぜ閲�
+	 * 
+	 * @param acceptData
+	 * @param uid
+	 * @param out
+	 */
+	@RequestMapping(value = "getBuyGoods", method = RequestMethod.POST)
+	public void getBuyGoods(AcceptData acceptData, int page, PrintWriter out) {
+
+		String day = TimeUtil.getGernalTime(java.lang.System.currentTimeMillis());
+		List<TLJBuyGoods> listHot = tljBuyGoodsService.listByDay(day);
+		if (listHot == null) {
+			listHot = new ArrayList<TLJBuyGoods>();
+		}
+
+		JSONArray array = new JSONArray();
+		Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
+				.excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
+
+		BigDecimal proportion = TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE;
+		for (TLJBuyGoods hotGoods : listHot) {
+			TaoBaoGoodsBrief taoBaoGoodsBrief = hotGoods.getGoods();
+			if (taoBaoGoodsBrief == null) {
+				continue;
+			}
+
+			// 璁$畻鎺ㄥ箍绾㈠寘
+			BigDecimal spreadMoney = TaoBaoUtil.getGoodsHongBaoMoney(taoBaoGoodsBrief, proportion);
+
+			// 鎺ㄥ箍绾㈠寘 涓嶈兘灏忎簬1
+			if (spreadMoney.compareTo(new BigDecimal(1.0)) < 0) {
+				continue;
+			}
+
+			TaoBaoGoodsBriefExtra extra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(),
+					null);
+			// 鍘绘帀鏍囩
+			extra.setLabels(null);
+
+			String hongBao = spreadMoney.toString();
+			TLJBuyHongBaoVO vo = new TLJBuyHongBaoVO();
+			vo.setLeft(hotGoods.getLeftHongBaoCount());
+			vo.setMoney(hongBao);
+			vo.setTagName("浠樻绔嬪噺  楼" + hongBao);
+			vo.setTip("");
+			vo.setTotal(hotGoods.getTotalHongBaoCount());
+			extra.setTljBuyHongBao(vo);
+			// 鏄剧ず绫诲瀷
+			extra.setMoneyType(2);
+			extra.setSpreadMoney("浠樻绔嬪噺 楼" + spreadMoney);
+
+			array.add(gson.toJson(extra));
+		}
+
+		if (page > 1)
+			array.clear();
+
+		JSONObject data = new JSONObject();
+		data.put("count", array.size());
+		data.put("list", array);
+		if (page == 1) {
+			try {
+				List<SwiperPicture> bannerList = swiperPictureService.getByBannerCard("zigoulijian_banner");
+				if (bannerList != null && bannerList.size() > 0)
+					data.put("topPicture", bannerList.get(0).getSrc());
+				else
+					data.put("topPicture", "");
+			} catch (SwiperPictureException e) {
+				e.printStackTrace();
+			}
+			data.put("ruleUrl", configService.get("zigoulijian_rule"));
+		}
+		out.print(JsonUtil.loadTrueResult(data));
+	}
+
 }

--
Gitblit v1.8.0