From facf0c3bcbbb6cc993d87caa12ac34bede690f38 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期日, 17 五月 2020 14:48:14 +0800
Subject: [PATCH] 推送记录

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v1/PushController.java |  106 ++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 100 insertions(+), 6 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/PushController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/PushController.java
index b327acf..e6ef213 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/PushController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/PushController.java
@@ -7,6 +7,7 @@
 
 import javax.annotation.Resource;
 
+import org.apache.commons.beanutils.PropertyUtils;
 import org.springframework.core.task.TaskExecutor;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -14,10 +15,13 @@
 import org.yeshi.utils.JsonUtil;
 import org.yeshi.utils.taobao.TbImgUtil;
 
+import com.google.gson.GsonBuilder;
 import com.yeshi.fanli.entity.accept.AcceptData;
 import com.yeshi.fanli.entity.bus.activity.ActivityUser;
 import com.yeshi.fanli.entity.common.JumpDetailV2;
 import com.yeshi.fanli.entity.dynamic.GoodsEvaluate;
+import com.yeshi.fanli.entity.dynamic.ImgInfo;
+import com.yeshi.fanli.entity.dynamic.ImgInfo.ImgEnum;
 import com.yeshi.fanli.entity.goods.CommonGoods;
 import com.yeshi.fanli.entity.push.DeviceActive;
 import com.yeshi.fanli.entity.push.DeviceTokenOPPO;
@@ -46,6 +50,7 @@
 import com.yeshi.fanli.service.inter.push.PushService;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.annotation.RequestSerializableByKey;
 import com.yeshi.fanli.util.factory.JumpDetailParamsFactory;
 import com.yeshi.fanli.vo.msg.ClientTextStyleVO;
@@ -299,18 +304,28 @@
 				totalwords.add(new ClientTextStyleVO("涓晢鍝�", "#666666"));
 			} else if (type == PushGoods.TYPE_ACTIVITY) {
 				GoodsEvaluate goodsEvaluate = goodsEvaluateService.getById(pushGoods.getOtherId());
-				if (goodsEvaluate != null) {
-					ActivityUser user = goodsEvaluate.getUser();
-					if (user != null) {
-						nickName = user.getNickName();
+				if (goodsEvaluate == null) {
+					continue;
+				}
+				ActivityUser user = goodsEvaluate.getUser();
+				if (user != null) {
+					nickName = user.getNickName();
+				}
+				
+				if (StringUtil.isNullOrEmpty(vo.getPicture()) && goodsEvaluate.getImgList() != null &&
+						goodsEvaluate.getImgList().size() > 0) {
+					for (ImgInfo tmgInfo: goodsEvaluate.getImgList()) {
+						if (tmgInfo.getType() == ImgEnum.img || tmgInfo.getType() == ImgEnum.activity) {
+							vo.setPicture(tmgInfo.getUrl());
+						}
 					}
 				}
-
+				
 				String url = configService.get(ConfigKeyEnum.pushActivityLink.getKey());
 				if (url == null) {
 					url = "";
 				}
-				url = url + "?id=" + id + "&otherId=" + pushGoods.getOtherId();
+				url = url + "?id=" + id;
 				params = JumpDetailParamsFactory.createWEBParams(url);
 				jumpDetail = jumpDetailV2Service.getByTypeCache("web",
 						Constant.getPlatformCode(acceptData.getPlatform()), Integer.parseInt(acceptData.getVersion()));
@@ -399,4 +414,83 @@
 		out.print(JsonUtil.loadTrueResult(""));
 	}
 
+	/**
+	 * 鑾峰彇鎺ㄩ�佹椿鍔ㄨ鎯�
+	 * @param callback
+	 * @param acceptData
+	 * @param uid
+	 * @param id
+	 * @param out
+	 */
+	@RequestMapping("getPushDetail")
+	public void getPushDetail(String callback, AcceptData acceptData, Long uid, Long id, PrintWriter out) {
+		if (uid == null || id == null) {
+			JsonUtil.printMode(out, callback,JsonUtil.loadFalseResult("鍙傛暟涓嶅畬鏁�"));
+			return;
+		}
+		
+		PushGoods pushGoods = pushGoodsService.selectByPrimaryKey(id);
+		if (pushGoods == null || StringUtil.isNullOrEmpty(pushGoods.getOtherId())) {
+			JsonUtil.printMode(out, callback,JsonUtil.loadFalseResult("璇ユ椿鍔ㄥ凡涓嬫灦"));
+			return;
+		}
+		
+		GoodsEvaluate goodsEvaluate = goodsEvaluateService.getById(pushGoods.getOtherId());
+		if (goodsEvaluate == null) {
+			JsonUtil.printMode(out, callback,JsonUtil.loadFalseResult("璇ユ椿鍔ㄥ凡涓嬫灦"));
+			return;
+		}
+		
+		String scanResult = null;
+		Integer scanNum = pushGoods.getScanNum();
+		if (scanNum == null) {
+		} else if (scanNum >= 10000) {
+			double num = scanNum;
+			String numMidea = String.format("%.1f", num / 10000);
+			scanResult = numMidea + "涓�";
+		} else {
+			scanResult = scanNum +"";
+		}
+		
+		String jumpLink = configService.get(ConfigKeyEnum.activityDetailLink.getKey()) + "?type=%s&id=%s";
+		jumpLink = String.format(jumpLink, "circle", goodsEvaluate.getId());
+		if (!StringUtil.isNullOrEmpty(goodsEvaluate.getJumpLink())) {
+			goodsEvaluate.setJumpLink(jumpLink);
+		}
+		
+		List<ImgInfo> imgListNew = new ArrayList<>();
+		List<ImgInfo> imgList = goodsEvaluate.getImgList();
+		if (imgList != null && imgList.size() > 0) {
+			for (ImgInfo imgInfo: imgList) {
+				if (imgInfo.getType() != ImgEnum.img || imgInfo.getType() == ImgEnum.activity) {
+					ImgInfo imgInfoNew = new ImgInfo();
+					try {
+						PropertyUtils.copyProperties(imgInfoNew, imgInfo);
+					} catch (Exception e) {
+						e.printStackTrace();
+						continue;
+					}
+					
+					if (!StringUtil.isNullOrEmpty(imgInfoNew.getActivityUrl())) {
+						imgInfoNew.setActivityUrl(jumpLink);
+					}
+					
+					imgListNew.add(imgInfoNew);
+					continue;
+				} 
+				imgListNew.add(imgInfo);
+			}
+		}
+		goodsEvaluate.setImgList(imgListNew);
+		
+		GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation();
+		
+		JSONObject json = new JSONObject();
+		json.put("title", pushGoods.getTitle());
+		json.put("content", pushGoods.getContent());
+		json.put("pushTime", TimeUtil.formatDate(pushGoods.getPushTime()));
+		json.put("scanNum", scanResult);
+		json.put("detailInfo", gsonBuilder.create().toJson(goodsEvaluate));
+		JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(json));
+	}
 }

--
Gitblit v1.8.0