From 554d3857358b0ea53c4f65d8d9baad113ef1deb4 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 16 五月 2020 13:53:55 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/DynamicControllerV2.java | 172 +++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 130 insertions(+), 42 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/DynamicControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/DynamicControllerV2.java
index a831870..d3c7228 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/DynamicControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/DynamicControllerV2.java
@@ -12,6 +12,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;
@@ -29,13 +30,13 @@
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.clazz.GoodsClass;
import com.yeshi.fanli.entity.bus.homemodule.Special;
+import com.yeshi.fanli.entity.bus.homemodule.SpecialExtra;
import com.yeshi.fanli.entity.bus.homemodule.SpecialLabel;
import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.common.JumpDetailV2;
import com.yeshi.fanli.entity.dynamic.CommentInfo;
-import com.yeshi.fanli.entity.dynamic.CommentInfo.CommentInfoEnum;
import com.yeshi.fanli.entity.dynamic.DynamicInfo;
import com.yeshi.fanli.entity.dynamic.GoodsEvaluate;
import com.yeshi.fanli.entity.dynamic.GoodsEvaluate.EvaluateEnum;
@@ -55,6 +56,7 @@
import com.yeshi.fanli.service.inter.dynamic.GoodsEvaluateService;
import com.yeshi.fanli.service.inter.goods.ShareGoodsService;
import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
+import com.yeshi.fanli.service.inter.homemodule.SpecialExtraService;
import com.yeshi.fanli.service.inter.homemodule.SpecialService;
import com.yeshi.fanli.service.inter.homemodule.SwiperPictureService;
import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
@@ -75,6 +77,7 @@
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.vo.dynamic.ArticleVO;
import com.yeshi.fanli.vo.goods.GoodsDetailVO;
+import com.yeshi.fanli.vo.homemodule.SpecialVO;
import com.yeshi.fanli.vo.msg.ClientTextStyleVO;
import net.sf.json.JSONArray;
@@ -136,13 +139,17 @@
@Resource
private ShareGoodsService shareGoodsService;
-
+
@Resource
private DailyCountMomentsService dailyCountMomentsService;
+ @Resource
+ private SpecialExtraService specialExtraService;
+
+
+
@Resource(name = "taskExecutor")
private TaskExecutor executor;
-
private final static long TYPE_REXIAO = 1;// 鐑攢
private final static long TYPE_TUIJIAN = 2;// 鎺ㄨ崘
@@ -258,7 +265,7 @@
list.add(map.get(TYPE_FAQUAN));
list.add(map.get(TYPE_HUODONG));
// list.add(map.get(TYPE_XUEYUAN));
- // list.add(map.get(TYPE_SUCAI));
+ list.add(map.get(TYPE_SUCAI));
} else if (VersionUtil.greaterThan_2_0_6(acceptData.getPlatform(), acceptData.getVersion())) {
// 2.0.6杩斿洖鐑攢+娲诲姩+鎺ㄨ崘+瀛﹂櫌+閭�璇�
list.add(map.get(TYPE_REXIAO));
@@ -368,34 +375,49 @@
long time = System.currentTimeMillis();
// 鍒犻櫎灏氭湭鍚敤鐨勮繃鏈熺殑
+ List<SpecialVO> listVo = new ArrayList<SpecialVO>();
for (int i = 0; i < list.size(); i++) {
Special special = list.get(i);
if (special.getState() == 1L) {
- list.remove(i--);
- } else {
- if (special.getStartTime() != null && special.getEndTime() != null)
+ continue;
+ }
+
+ // 鏄惁娲诲姩宸茶繃鏈�
+ if (special.getStartTime() != null && special.getEndTime() != null) {
+ if (time < special.getStartTime().getTime() || time > special.getEndTime().getTime()) {
+ continue;
+ } else {
special.setTimeTask(true);
- else
- special.setTimeTask(false);
-
- if (special.isTimeTask()) {
- if (time < special.getStartTime().getTime() || time > special.getEndTime().getTime()) {
- list.remove(i--);
- } else// 璁剧疆鍊掕鏃�
- {
- special.setCountDownTime((special.getEndTime().getTime() - time) / 1000);
- }
- }
-
- List<SpecialLabel> listLabels = special.getListLabels();
- if (listLabels != null && !listLabels.isEmpty()) {
- List<ClientTextStyleVO> labels = new ArrayList<>();
- for (SpecialLabel specialLabel : listLabels) {
- labels.add(new ClientTextStyleVO(specialLabel.getName(), specialLabel.getBgColor()));
- }
- special.setLabels(labels);
+ special.setCountDownTime((special.getEndTime().getTime() - time) / 1000);
}
}
+
+ SpecialVO specialVO = new SpecialVO();
+ try {
+ PropertyUtils.copyProperties(specialVO, special);
+ } catch (Exception e) {
+ e.printStackTrace();
+ continue;
+ }
+
+ // 璁剧疆鏍囩
+ List<SpecialLabel> listLabels = specialVO.getListLabels();
+ if (listLabels != null && !listLabels.isEmpty()) {
+ List<ClientTextStyleVO> labels = new ArrayList<>();
+ for (SpecialLabel specialLabel : listLabels) {
+ labels.add(new ClientTextStyleVO(specialLabel.getName(), specialLabel.getBgColor()));
+ }
+ specialVO.setLabels(labels);
+ }
+
+ // 璇勮淇℃伅
+ if (VersionUtil.greaterThan_2_1_1(acceptData.getPlatform(), acceptData.getVersion())) {
+ SpecialExtra extra = specialExtraService.selectByPrimaryKey(specialVO.getId());
+ if (extra != null && !StringUtil.isNullOrEmpty(extra.getComment())) {
+ specialVO.setComment(extra.getComment());
+ }
+ }
+ listVo.add(specialVO);
}
long count = specialService.countByPlaceKeyList(listKey, platformCode,
@@ -405,7 +427,7 @@
Gson gson = gsonBuilder.create();
JSONObject data = new JSONObject();
data.put("count", count);
- data.put("list", gson.toJson(list));
+ data.put("list", gson.toJson(listVo));
out.print(JsonUtil.loadTrueResult(data));
}
@@ -638,7 +660,7 @@
return new JsonPrimitive("");
} else {
// 淇濈暀2浣嶅皬鏁�
- return new JsonPrimitive(MoneyBigDecimalUtil.getWithNoZera(value)+"");
+ return new JsonPrimitive(MoneyBigDecimalUtil.getWithNoZera(value) + "");
}
}
}).registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
@@ -842,7 +864,8 @@
if (imgInfo.getGoodsVO() != null)
if (imgInfo.getGoodsVO().getGoodsId().longValue() == goodsId.longValue()
&& imgInfo.getGoodsVO().getGoodsType() == goodsType.intValue()) {
- String jumpLink = getJumpLink(imgInfo.getGoodsVO(), user, relationId, inviteCode, imgInfo.getUrl());
+ String jumpLink = getJumpLink(imgInfo.getGoodsVO(), user, relationId, inviteCode,
+ imgInfo.getUrl());
if (!StringUtil.isNullOrEmpty(jumpLink)) {
list.add(jumpLink);
}
@@ -852,7 +875,8 @@
} else if (type == 2 || type == 3) {
for (ImgInfo imgInfo : imgs) {
if (imgInfo.getGoodsVO() != null) {
- String jumpLink = getJumpLink(imgInfo.getGoodsVO(), user, relationId, inviteCode, imgInfo.getUrl() );
+ String jumpLink = getJumpLink(imgInfo.getGoodsVO(), user, relationId, inviteCode,
+ imgInfo.getUrl());
if (!StringUtil.isNullOrEmpty(jumpLink)) {
list.add(jumpLink);
}
@@ -870,7 +894,7 @@
else if (imgInfo.getType() == ImgEnum.activity)
if (!StringUtil.isNullOrEmpty(imgInfo.getActivityPic())) {
list.add(imgInfo.getActivityPic());
- }else if(!StringUtil.isNullOrEmpty(imgInfo.getUrl())){
+ } else if (!StringUtil.isNullOrEmpty(imgInfo.getUrl())) {
list.add(imgInfo.getUrl());
}
}
@@ -885,7 +909,7 @@
if (type == 3) {
shareCount++;
goodsEvaluateService.addShareNum(id);
-
+
executor.execute(new Runnable() {
@Override
public void run() { // 娣诲姞姣忔棩缁熻
@@ -909,7 +933,8 @@
}
}
- private String getJumpLink(GoodsDetailVO goodsVO, UserInfo user, String relationId, String inviteCode, String mainPic) {
+ private String getJumpLink(GoodsDetailVO goodsVO, UserInfo user, String relationId, String inviteCode,
+ String mainPic) {
String jumpLink = null;
if (goodsVO.getGoodsType() == Constant.SOURCE_TYPE_TAOBAO) {
TaoBaoLink taoBaoLink = null;
@@ -919,7 +944,7 @@
e.printStackTrace();
}
jumpLink = ShareControllerV2.getERCodeContentNew(
- configService.get(ConfigKeyEnum.quickShareTBCommentText.getKey()), taoBaoLink.getGoods(),
+ configService.get(ConfigKeyEnum.taobaoShareQrcodeText.getKey()), taoBaoLink.getGoods(),
TaoBaoUtil.filterTaoToken(taoBaoLink.getTaoToken()));
} else if (goodsVO.getGoodsType() == Constant.SOURCE_TYPE_JD) {
JDGoods jdGoods = jdGoodsCacheUtil.getGoodsInfo(goodsVO.getGoodsId());
@@ -1006,7 +1031,7 @@
}
String newText = text; // 闈為�氱敤鍒搁渶瑕侀獙璇�
- if (comment != null && comment.getTypeEnum() != CommentInfoEnum.currencyCoupon) {
+ if (comment != null && (comment.getNeedSpin() == null || comment.getNeedSpin())) {
try {
newText = convertLinkManager.convertLinkFromText(text, uid, true);
} catch (ConvertLinkExceptionException e) {
@@ -1020,26 +1045,24 @@
return;
}
}
-
-
+
// 鏇挎崲浠锋牸
if (goodsEvaluate.getType() == EvaluateEnum.single) {
GoodsDetailVO goods = goodsEvaluate.getGoods();
- newText = newText.replace("[鍘熶环]", MoneyBigDecimalUtil.getWithNoZera(goods.getZkPrice()) +"");
+ newText = newText.replace("[鍘熶环]", MoneyBigDecimalUtil.getWithNoZera(goods.getZkPrice()) + "");
if (!goods.isHasCoupon()) {
newText = newText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
newText = newText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", "");
} else {
- newText = newText.replace("[鍒稿悗浠穄", MoneyBigDecimalUtil.getWithNoZera(goods.getCouponPrice())+"");
+ newText = newText.replace("[鍒稿悗浠穄", MoneyBigDecimalUtil.getWithNoZera(goods.getCouponPrice()) + "");
}
newText.replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n");
}
-
-
+
JSONObject data = new JSONObject();
data.put("text", newText);
out.print(JsonUtil.loadTrueResult(data));
-
+
executor.execute(new Runnable() {
@Override
public void run() { // 娣诲姞姣忔棩缁熻
@@ -1047,5 +1070,70 @@
}
});
}
+
+ /**
+ * 璇勮澶嶅埗-涓撻
+ *
+ * @param acceptData
+ * @param id
+ * @param out
+ */
+ @RequestMapping(value = "copySpecialComment", method = RequestMethod.POST)
+ public void copySpecialComment(AcceptData acceptData, Long uid, Long id, PrintWriter out) {
+ if (uid == null || id == null) {
+ out.print(JsonUtil.loadFalseResult("鍙傛暟涓嶈兘涓虹┖"));
+ return;
+ }
+
+ SpecialExtra extra = specialExtraService.selectByPrimaryKey(id);
+ if (extra == null || StringUtil.isNullOrEmpty(extra.getComment())) {
+ out.print(JsonUtil.loadFalseResult("璇ュ唴瀹瑰凡涓嶅瓨鍦�"));
+ return;
+ }
+
+ UserInfo user = userInfoService.getUserByIdWithMybatis(uid);
+ if (user == null) {
+ out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
+ return;
+ }
+
+ if (user != null && user.getState() != UserInfo.STATE_NORMAL) {
+ out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC));
+ return;
+ }
+
+ UserExtraTaoBaoInfo taoBaoInfo = userExtraTaoBaoInfoService.getByUid(uid);
+ String relationId = null;
+ if (taoBaoInfo != null && taoBaoInfo.getRelationId() != null && taoBaoInfo.getRelationValid() != null
+ && taoBaoInfo.getRelationValid() == true)
+ relationId = taoBaoInfo.getRelationId();
+
+ if (StringUtil.isNullOrEmpty(relationId)) {
+ out.print(JsonUtil.loadFalseResult(2, "娣樺疂鏈巿鏉冿紝璇峰墠寰�\"鎴戠殑\"缁戝畾娣樺疂璐﹀彿"));
+ return;
+ }
+
+ String text = extra.getComment();
+ String newText = text;
+ if (extra.getNeedSpin() != null && extra.getNeedSpin()) {
+ try {
+ newText = convertLinkManager.convertLinkFromText(text, uid, true);
+ } catch (ConvertLinkExceptionException e) {
+ if (e.getCode() != ConvertLinkExceptionException.CODE_NONE) {
+ out.print(JsonUtil.loadFalseResult("璇勮鐢熸垚澶辫触"));
+ return;
+ }
+ } catch (Exception e) {
+ LogHelper.errorDetailInfo(e);
+ out.print(JsonUtil.loadFalseResult("璇勮鐢熸垚澶辫触"));
+ return;
+ }
+ }
+
+ JSONObject data = new JSONObject();
+ data.put("text", newText);
+ out.print(JsonUtil.loadTrueResult(data));
+ }
+
}
--
Gitblit v1.8.0