From 7ee5b212787eb439e9cce5e50d34fac97cd34357 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期二, 21 五月 2019 15:45:08 +0800
Subject: [PATCH] 动态分类优化 + 取消推荐中推荐语

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java |  456 +++++++++++++++++++++++++++++----------------------------
 1 files changed, 232 insertions(+), 224 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java
index a36a58c..4a9332f 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java
@@ -100,7 +100,216 @@
 		return dynamicInfoDao.getById(id);
 	}
 	
+	
+	@Override
+	public void insertTimeInvite() {
+		InviteMaterial inviteMaterial = inviteMaterialService.getInviteMaterial();
+		if (inviteMaterial == null) {
+			return;
+		}
+		
+		Date date = new Date();
+		String materialId = inviteMaterial.getId();
+		String content = inviteMaterial.getText();
+		
+		if (!StringUtil.isNullOrEmpty(content)) {
+			DynamicInfo dynamicTxt= new DynamicInfo();
+			dynamicTxt.setId(UUID.randomUUID().toString().replace("-", ""));
+			dynamicTxt.setInviteMaterialId(materialId);
+			dynamicTxt.setClassId(4L);
+			dynamicTxt.setSubclassId(0L);
+			dynamicTxt.setShowType(DynamicInfo.SHOW_TYPE_ZERO);
+			dynamicTxt.setShareType(DynamicInfo.SHARE_TYPE_INVITE);
+			dynamicTxt.setUser(activityUserService.listRand(1).get(0));
+			dynamicTxt.setShareCount(1000 + (int) (Math.random() * 8000));
+			dynamicTxt.setCreateTime(date);
+			dynamicTxt.setUpdateTime(date);
+			
+			SimpleDateFormat format = new SimpleDateFormat("MM鏈坉d鏃�");
+			
+			StringBuffer buffer = new StringBuffer();
+			buffer.append("------------------------------------------\n");
+			buffer.append("浠婂ぉ : " + format.format(date));
+			buffer.append("     ");
+			buffer.append(DateLunarUtil.getWeekd(date) + "\n");
+			buffer.append("鍚勪綅浜茬埍鐨勪綘");
+			buffer.append("         ");
+			buffer.append("鏃╁畨锝瀄n");
+			buffer.append("鎴戠殑閭�璇风爜锛氥�愰個璇风爜銆慭n");
+			buffer.append("璐墿鐪侀挶杩斿埄鍒窤pp锛氥�愰個璇烽摼鎺ャ��");
+		
+        
+			ClientTextStyleVO row1 = new ClientTextStyleVO();
+			row1.setColor("#333333");
+			row1.setContent(content + "\n" + buffer.toString());
+			List<ClientTextStyleVO> listtitle = new ArrayList<ClientTextStyleVO>();
+			listtitle.add(row1);
+			dynamicTxt.setTitle(listtitle);
+			
+			// 绌烘暟鎹�
+			List<GoodsPicture> listImg = new ArrayList<GoodsPicture>();
+			dynamicTxt.setImgs(listImg);
+			
+			dynamicInfoDao.insert(dynamicTxt);
+		}
+		
+		String picture = inviteMaterial.getPicture();
+		if (!StringUtil.isNullOrEmpty(picture)) {
+			DynamicInfo dynamicPic = new DynamicInfo();
+			dynamicPic.setId(UUID.randomUUID().toString().replace("-", ""));
+			dynamicPic.setInviteMaterialId(materialId);
+			dynamicPic.setClassId(4L);
+			dynamicPic.setSubclassId(0L);
+			dynamicPic.setShowType(DynamicInfo.SHOW_TYPE_ONE);
+			dynamicPic.setShareType(DynamicInfo.SHARE_TYPE_INVITE);
+			dynamicPic.setUser(activityUserService.listRand(1).get(0));
+			dynamicPic.setShareCount(1000 + (int) (Math.random() * 8000));
+			dynamicPic.setCreateTime(date);
+			dynamicPic.setUpdateTime(date);
+			
+			try {
+				// 鐢诲浘
+				String url = qrCodeService.drawInviteToGreet(picture, null, null, null, content, new Date());
+				
+				List<ClientTextStyleVO> listtitle = new ArrayList<ClientTextStyleVO>();
+				dynamicPic.setTitle(listtitle);
+				
+				GoodsPicture p2 = new GoodsPicture();
+				p2.setW(100);
+				p2.setH(100);
+				p2.setUrl(url);
+				p2.setUrlOriginal(picture);
+				p2.setTitleOriginal(content);
+				List<GoodsPicture> listImg = new ArrayList<GoodsPicture>();
+				listImg.add(p2);
+				dynamicPic.setImgs(listImg);
+				
+				dynamicInfoDao.insert(dynamicPic);
+			} catch (IOException e) {
+				e.printStackTrace();
+			}
+		}
+		// 鏇存柊绱犳潗鐘舵��
+		inviteMaterialService.updateState(1, materialId);
+	}
 
+	
+	@Override
+	public void insertShopInfo() {
+		List<String> brandIdList = DaTaoKeApiUtil.getBrandIdList();
+		if (brandIdList == null || brandIdList.size() == 0) {
+			LogHelper.test("澶ф窐瀹㈠搧鐗宨d鑾峰彇澶辫触锛圖ynamicInfoService-insertShopInfo锛�");
+			return;
+		}
+		
+		
+		Long classId = 3L;
+		Long subclassId = 0L;
+		List<DynamicInfo> listInfo = dynamicInfoDao.query(classId, subclassId);
+
+		// 娓呯悊宸插瓨鍦ㄥ搧鐗�
+		if (listInfo != null && listInfo.size() > 0) {
+			for (int i = 0; i < brandIdList.size(); i++) {
+				String brandId = brandIdList.get(i);
+				
+				for (int j = 0; j < listInfo.size(); j++) {
+					String id = listInfo.get(j).getId();
+					if (brandId.equals(id)) {
+						brandIdList.remove(brandId);
+						i--;
+						
+						listInfo.remove(listInfo.get(j));
+						j--;
+					}
+				}
+			}
+		}
+		
+		if (brandIdList == null || brandIdList.size() == 0) {
+			LogHelper.test("澶ф窐瀹㈠搧鐗屽凡鍏ㄩ儴鐖彇锛圖ynamicInfoService-insertShopInfo锛�");
+			return;
+		}
+		
+		int index = (int) (Math.random() * brandIdList.size());
+		String brandId = brandIdList.get(index);
+		
+		TaoBaoShopDTO dynamicShopInfo = DaTaoKeApiUtil.getDynamicShopInfo(brandId);
+		if (dynamicShopInfo == null) {
+			LogHelper.test("澶ф窐瀹㈠搧鐗屼俊鎭埇鍙栧け璐ワ紙DynamicInfoService-insertShopInfo锛�");
+			return;
+		}
+		
+		
+		List<TaoBaoGoodsBrief> listGoods = dynamicShopInfo.getListGoods();
+		if (listGoods == null || listGoods.size() == 0) {
+			LogHelper.test("澶ф窐瀹㈠搧鐗屽晢鍝佷俊鎭埇鍙栧け璐ワ紙DynamicInfoService-insertShopInfo锛�");
+			return;
+		}
+		
+		Long sellerId = dynamicShopInfo.getSellerId();
+		TaoBaoGoodsBrief taoBaoGoodsBrief = listGoods.get(0);
+		TaoBaoShop taoBaoShop = taoBaoShopService.getTaoBaoShop(taoBaoGoodsBrief.getAuctionId(), sellerId);
+		if (taoBaoShop == null) {
+			LogHelper.test("搴楅摵璇︽儏淇℃伅鑾峰彇澶辫触锛圖ynamicInfoService-insertShopInfo锛�");
+			return;
+		}
+		String shopLink = taoBaoShop.getShopLink();
+		if (StringUtil.isNullOrEmpty(shopLink)) {
+			taoBaoShop.setShopLink(TaoBaoUtil.getShopLink(taoBaoShop.getId()));
+		}
+		
+		DynamicInfo dynamicVO = new DynamicInfo();
+		dynamicVO.setId(brandId);
+		dynamicVO.setClassId(classId);
+		dynamicVO.setSubclassId(subclassId);
+		dynamicVO.setShowType(DynamicInfo.SHOW_TYPE_TWO);
+		dynamicVO.setShop(taoBaoShop);
+		dynamicVO.setUser(activityUserService.listRand(1).get(0));
+		dynamicVO.setCreateTime(DateUtil.reduceRandomMinute(new Date(), 8));	
+		dynamicVO.setUpdateTime(new Date());
+		
+		// 浠嬬粛鍐呭
+		ClientTextStyleVO row1 = new ClientTextStyleVO();
+		row1.setColor("#333333");
+		row1.setContent(dynamicShopInfo.getBrandDes());
+		List<ClientTextStyleVO> listTitle = new ArrayList<ClientTextStyleVO>();
+		listTitle.add(row1);
+		dynamicVO.setTitle(listTitle);
+				
+		// 鍟嗗搧淇℃伅
+		List<GoodsPicture> listPicture = new ArrayList<GoodsPicture>();
+		for (TaoBaoGoodsBrief goodsBrief : listGoods) {
+			BigDecimal proportion = hongBaoManageService.getFanLiRate();
+			TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief, proportion.toString(), null);
+			taoBaoGoodsBriefExtra.setCouponInfo(null);
+			taoBaoGoodsBriefExtra.setUpdatetime(new Date());
+			
+			if (!taoBaoGoodsBriefExtra.isCoupon()) {
+				taoBaoGoodsBriefExtra.setState(1);
+			}
+			
+			String goodsId = goodsBrief.getAuctionId().toString();
+			JSONObject item = new JSONObject();
+			item.put("id", goodsId);
+			item.put("from", "dynamics");
+			
+			GoodsPicture goodsPicture = new GoodsPicture();
+			goodsPicture.setH(100);
+			goodsPicture.setW(100);
+			goodsPicture.setUrl(TbImgUtil.getTBSize320Img(goodsBrief.getPictUrl()));
+			goodsPicture.setJumpDetail(jumpDetailV2Service.getByTypeCache("goodsdetail"));
+			goodsPicture.setParams(item.toString());
+			goodsPicture.setGoods(taoBaoGoodsBriefExtra);
+			
+			listPicture.add(goodsPicture);
+		}
+		dynamicVO.setImgs(listPicture);
+		
+		dynamicInfoDao.insert(dynamicVO);
+	}
+	
+	
+	
 	@Override
 	public void insertTimeRecommend() {
 		try {
@@ -152,6 +361,8 @@
 
 			// 缁勭粐鍔ㄦ�佷俊鎭�
 			DynamicInfo dynamicInfo = getDynamicInfo(daTaoKeDetail, classId, subclassId);
+			// 鏃犲唴瀹�
+			dynamicInfo.setTitle(new ArrayList<ClientTextStyleVO>());
 			// 鍙戝竷鐢ㄦ埛
 			dynamicInfo.setUser(activityUserService.getRandomByDaTaoKeCid(cid));
 			dynamicInfo.setImgs(listPicture);
@@ -273,6 +484,7 @@
 
 		// 缁勭粐鍔ㄦ�佷俊鎭�
 		DynamicInfo dynamicInfo = getDynamicInfo(daTaoKe, classId, subclassId);
+		dynamicInfo.setTitle(convertIntroduce(DaTaoKeUtil.getDesc(daTaoKe)));
 		// 鍙戝竷鐢ㄦ埛
 		dynamicInfo.setUser(activityUserService.getRandomByDaTaoKeCid(daTaoKe.getCid()));
 		dynamicInfo.setImgs(listPicture);
@@ -302,8 +514,6 @@
 		dynamicInfo.setUpdateTime(new Date());
 		// 闅忔満鍒嗕韩娆℃暟
 		dynamicInfo.setShareCount(1000 + (int) (Math.random() * 8000));
-		// 鍐呭
-		dynamicInfo.setTitle(convertIntroduce(DaTaoKeUtil.getDesc(daTaoKe)));
 
 		return dynamicInfo;
 	}
@@ -342,28 +552,6 @@
 		item.put("from", "dynamics");
 		goodsPicture.setParams(item.toString());
 		return goodsPicture;
-	}
-
-	@Override
-	@Cacheable(value = "dynamicCache", key = "'count-'+#cid+'-'+#subId")
-	public long count(Long cid, Long subId) {
-		return dynamicInfoDao.count(cid, subId);
-	}
-
-	@Override
-	@Cacheable(value = "dynamicCache", key = "'query-'+#start+'-'+#count+'-'+#cid+'-'+#subId")
-	public List<DynamicInfo> query(int start, int count, Long cid, Long subId) {
-		List<DynamicInfo> list = dynamicInfoDao.query(start, count, cid, subId);
-		
-		// 鏇存柊鍟嗗搧淇℃伅
-		executor.execute(new Runnable() {
-			@Override
-			public void run() {
-				updateGoodInfo(list);
-			}
-		});
-		
-		return list;
 	}
 
 	@Override
@@ -451,119 +639,6 @@
 	}
 	
 	
-	@Override
-	public void insertShopInfo() {
-		List<String> brandIdList = DaTaoKeApiUtil.getBrandIdList();
-		if (brandIdList == null || brandIdList.size() == 0) {
-			LogHelper.test("澶ф窐瀹㈠搧鐗宨d鑾峰彇澶辫触锛圖ynamicInfoService-insertShopInfo锛�");
-			return;
-		}
-		
-		
-		Long classId = 3L;
-		Long subclassId = 0L;
-		List<DynamicInfo> listInfo = dynamicInfoDao.query(classId, subclassId);
-
-		// 娓呯悊宸插瓨鍦ㄥ搧鐗�
-		if (listInfo != null && listInfo.size() > 0) {
-			for (int i = 0; i < brandIdList.size(); i++) {
-				String brandId = brandIdList.get(i);
-				
-				for (int j = 0; j < listInfo.size(); j++) {
-					String id = listInfo.get(j).getId();
-					if (brandId.equals(id)) {
-						brandIdList.remove(brandId);
-						i--;
-						
-						listInfo.remove(listInfo.get(j));
-						j--;
-					}
-				}
-			}
-		}
-		
-		if (brandIdList == null || brandIdList.size() == 0) {
-			LogHelper.test("澶ф窐瀹㈠搧鐗屽凡鍏ㄩ儴鐖彇锛圖ynamicInfoService-insertShopInfo锛�");
-			return;
-		}
-		
-		int index = (int) (Math.random() * brandIdList.size());
-		String brandId = brandIdList.get(index);
-		
-		TaoBaoShopDTO dynamicShopInfo = DaTaoKeApiUtil.getDynamicShopInfo(brandId);
-		if (dynamicShopInfo == null) {
-			LogHelper.test("澶ф窐瀹㈠搧鐗屼俊鎭埇鍙栧け璐ワ紙DynamicInfoService-insertShopInfo锛�");
-			return;
-		}
-		
-		
-		List<TaoBaoGoodsBrief> listGoods = dynamicShopInfo.getListGoods();
-		if (listGoods == null || listGoods.size() == 0) {
-			LogHelper.test("澶ф窐瀹㈠搧鐗屽晢鍝佷俊鎭埇鍙栧け璐ワ紙DynamicInfoService-insertShopInfo锛�");
-			return;
-		}
-		
-		Long sellerId = dynamicShopInfo.getSellerId();
-		TaoBaoGoodsBrief taoBaoGoodsBrief = listGoods.get(0);
-		TaoBaoShop taoBaoShop = taoBaoShopService.getTaoBaoShop(taoBaoGoodsBrief.getAuctionId(), sellerId);
-		if (taoBaoShop == null) {
-			LogHelper.test("搴楅摵璇︽儏淇℃伅鑾峰彇澶辫触锛圖ynamicInfoService-insertShopInfo锛�");
-			return;
-		}
-		String shopLink = taoBaoShop.getShopLink();
-		if (StringUtil.isNullOrEmpty(shopLink)) {
-			taoBaoShop.setShopLink(TaoBaoUtil.getShopLink(taoBaoShop.getId()));
-		}
-		
-		DynamicInfo dynamicVO = new DynamicInfo();
-		dynamicVO.setId(brandId);
-		dynamicVO.setClassId(classId);
-		dynamicVO.setSubclassId(subclassId);
-		dynamicVO.setShowType(DynamicInfo.SHOW_TYPE_TWO);
-		dynamicVO.setShop(taoBaoShop);
-		dynamicVO.setUser(activityUserService.listRand(1).get(0));
-		dynamicVO.setCreateTime(DateUtil.reduceRandomMinute(new Date(), 8));	
-		dynamicVO.setUpdateTime(new Date());
-		
-		// 浠嬬粛鍐呭
-		ClientTextStyleVO row1 = new ClientTextStyleVO();
-		row1.setColor("#333333");
-		row1.setContent(dynamicShopInfo.getBrandDes());
-		List<ClientTextStyleVO> listTitle = new ArrayList<ClientTextStyleVO>();
-		listTitle.add(row1);
-		dynamicVO.setTitle(listTitle);
-				
-		// 鍟嗗搧淇℃伅
-		List<GoodsPicture> listPicture = new ArrayList<GoodsPicture>();
-		for (TaoBaoGoodsBrief goodsBrief : listGoods) {
-			BigDecimal proportion = hongBaoManageService.getFanLiRate();
-			TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief, proportion.toString(), null);
-			taoBaoGoodsBriefExtra.setCouponInfo(null);
-			taoBaoGoodsBriefExtra.setUpdatetime(new Date());
-			
-			if (!taoBaoGoodsBriefExtra.isCoupon()) {
-				taoBaoGoodsBriefExtra.setState(1);
-			}
-			
-			String goodsId = goodsBrief.getAuctionId().toString();
-			JSONObject item = new JSONObject();
-			item.put("id", goodsId);
-			item.put("from", "dynamics");
-			
-			GoodsPicture goodsPicture = new GoodsPicture();
-			goodsPicture.setH(100);
-			goodsPicture.setW(100);
-			goodsPicture.setUrl(TbImgUtil.getTBSize320Img(goodsBrief.getPictUrl()));
-			goodsPicture.setJumpDetail(jumpDetailV2Service.getByTypeCache("goodsdetail"));
-			goodsPicture.setParams(item.toString());
-			goodsPicture.setGoods(taoBaoGoodsBriefExtra);
-			
-			listPicture.add(goodsPicture);
-		}
-		dynamicVO.setImgs(listPicture);
-		
-		dynamicInfoDao.insert(dynamicVO);
-	}
 	
 	@Override
 	public void removeByDate(Date createTime) {
@@ -781,95 +856,28 @@
 	}
 	
 	
+	
+	
+	
 	@Override
-	public void insertTimeInvite() {
-		InviteMaterial inviteMaterial = inviteMaterialService.getInviteMaterial();
-		if (inviteMaterial == null) {
-			return;
-		}
+	@Cacheable(value = "dynamicCache", key = "'count-'+#cid+'-'+#subId")
+	public long count(Long cid, Long subId) {
+		return dynamicInfoDao.count(cid, subId);
+	}
+
+	@Override
+	@Cacheable(value = "dynamicCache", key = "'query-'+#start+'-'+#count+'-'+#cid+'-'+#subId")
+	public List<DynamicInfo> query(int start, int count, Long cid, Long subId) {
+		List<DynamicInfo> list = dynamicInfoDao.query(start, count, cid, subId);
 		
-		Date date = new Date();
-		String materialId = inviteMaterial.getId();
-		String content = inviteMaterial.getText();
-		
-		if (!StringUtil.isNullOrEmpty(content)) {
-			DynamicInfo dynamicTxt= new DynamicInfo();
-			dynamicTxt.setId(UUID.randomUUID().toString().replace("-", ""));
-			dynamicTxt.setInviteMaterialId(materialId);
-			dynamicTxt.setClassId(4L);
-			dynamicTxt.setSubclassId(0L);
-			dynamicTxt.setShowType(DynamicInfo.SHOW_TYPE_ZERO);
-			dynamicTxt.setShareType(DynamicInfo.SHARE_TYPE_INVITE);
-			dynamicTxt.setUser(activityUserService.listRand(1).get(0));
-			dynamicTxt.setShareCount(1000 + (int) (Math.random() * 8000));
-			dynamicTxt.setCreateTime(date);
-			dynamicTxt.setUpdateTime(date);
-			
-			SimpleDateFormat format = new SimpleDateFormat("MM鏈坉d鏃�");
-			
-			StringBuffer buffer = new StringBuffer();
-			buffer.append("------------------------------------------\n");
-			buffer.append("浠婂ぉ : " + format.format(date));
-			buffer.append("     ");
-			buffer.append(DateLunarUtil.getWeekd(date) + "\n");
-			buffer.append("鍚勪綅浜茬埍鐨勪綘");
-			buffer.append("         ");
-			buffer.append("鏃╁畨锝瀄n");
-			buffer.append("鎴戠殑閭�璇风爜锛氥�愰個璇风爜銆慭n");
-			buffer.append("璐墿鐪侀挶杩斿埄鍒窤pp锛氥�愰個璇烽摼鎺ャ��");
-		
-        
-			ClientTextStyleVO row1 = new ClientTextStyleVO();
-			row1.setColor("#333333");
-			row1.setContent(content + "\n" + buffer.toString());
-			List<ClientTextStyleVO> listtitle = new ArrayList<ClientTextStyleVO>();
-			listtitle.add(row1);
-			dynamicTxt.setTitle(listtitle);
-			
-			// 绌烘暟鎹�
-			List<GoodsPicture> listImg = new ArrayList<GoodsPicture>();
-			dynamicTxt.setImgs(listImg);
-			
-			dynamicInfoDao.insert(dynamicTxt);
-		}
-		
-		String picture = inviteMaterial.getPicture();
-		if (!StringUtil.isNullOrEmpty(picture)) {
-			DynamicInfo dynamicPic = new DynamicInfo();
-			dynamicPic.setId(UUID.randomUUID().toString().replace("-", ""));
-			dynamicPic.setInviteMaterialId(materialId);
-			dynamicPic.setClassId(4L);
-			dynamicPic.setSubclassId(0L);
-			dynamicPic.setShowType(DynamicInfo.SHOW_TYPE_ONE);
-			dynamicPic.setShareType(DynamicInfo.SHARE_TYPE_INVITE);
-			dynamicPic.setUser(activityUserService.listRand(1).get(0));
-			dynamicPic.setShareCount(1000 + (int) (Math.random() * 8000));
-			dynamicPic.setCreateTime(date);
-			dynamicPic.setUpdateTime(date);
-			
-			try {
-				// 鐢诲浘
-				String url = qrCodeService.drawInviteToGreet(picture, null, null, null, content, new Date());
-				
-				List<ClientTextStyleVO> listtitle = new ArrayList<ClientTextStyleVO>();
-				dynamicPic.setTitle(listtitle);
-				
-				GoodsPicture p2 = new GoodsPicture();
-				p2.setW(100);
-				p2.setH(100);
-				p2.setUrl(url);
-				p2.setUrlOriginal(picture);
-				p2.setTitleOriginal(content);
-				List<GoodsPicture> listImg = new ArrayList<GoodsPicture>();
-				listImg.add(p2);
-				dynamicPic.setImgs(listImg);
-				
-				dynamicInfoDao.insert(dynamicPic);
-			} catch (IOException e) {
-				e.printStackTrace();
+		// 鏇存柊鍟嗗搧淇℃伅
+		executor.execute(new Runnable() {
+			@Override
+			public void run() {
+				updateGoodInfo(list);
 			}
-		}
-		// 鏇存柊绱犳潗鐘舵��
-		inviteMaterialService.updateState(1, materialId);
+		});
+		
+		return list;
 	}
 }

--
Gitblit v1.8.0