From 4f7ce4b7d2ad52f118c13e0f9f6fb2efd5b296ff Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期四, 31 十月 2019 16:10:45 +0800
Subject: [PATCH] Merge branch 'div' of ssh://193.112.35.168:29418/fanli-server into div
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java | 724 +++++++++++++++++++++++++++++++++++++------------------
1 files changed, 483 insertions(+), 241 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java
index e159152..3c6bcc9 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java
@@ -41,6 +41,7 @@
import com.yeshi.fanli.entity.bus.user.Order;
import com.yeshi.fanli.entity.bus.user.ShamUser;
import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.entity.bus.user.UserMoneyExtra;
import com.yeshi.fanli.entity.common.ImageInfo;
import com.yeshi.fanli.entity.common.JumpDetail;
import com.yeshi.fanli.entity.common.JumpDetailV2;
@@ -52,6 +53,7 @@
import com.yeshi.fanli.entity.taobao.ClientTBPid;
import com.yeshi.fanli.entity.taobao.PidUser;
import com.yeshi.fanli.entity.taobao.SearchFilter;
+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.entity.taobao.TaoBaoSearchResult;
@@ -80,18 +82,27 @@
import com.yeshi.fanli.service.inter.goods.SuperRecommendSpecialService;
import com.yeshi.fanli.service.inter.goods.TaoBaoCouponService;
import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
+import com.yeshi.fanli.service.inter.goods.recommend.HomeRecommendGoodsService;
+import com.yeshi.fanli.service.inter.goods.recommend.RecommendGoodsDeleteHistoryService;
+import com.yeshi.fanli.service.inter.homemodule.DeviceSexService;
import com.yeshi.fanli.service.inter.homemodule.SpecialService;
import com.yeshi.fanli.service.inter.homemodule.SuperSpecialService;
import com.yeshi.fanli.service.inter.homemodule.SwiperPictureService;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
import com.yeshi.fanli.service.inter.lable.QualityFlashSaleService;
import com.yeshi.fanli.service.inter.lable.QualityGoodsService;
+import com.yeshi.fanli.service.inter.money.UserMoneyExtraService;
import com.yeshi.fanli.service.inter.monitor.MonitorService;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.order.ShareGoodsActivityOrderService;
+import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
+import com.yeshi.fanli.service.inter.taobao.TLJBuyGoodsService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
+import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
+import com.yeshi.fanli.service.inter.tlj.ConfigTaoLiJinService;
+import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService;
+import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinRecordService;
import com.yeshi.fanli.service.inter.user.ShamUserService;
import com.yeshi.fanli.service.inter.user.TBPidService;
import com.yeshi.fanli.service.inter.user.UserCustomSettingsService;
@@ -99,17 +110,22 @@
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TaoBaoConstant;
import com.yeshi.fanli.util.ThreadUtil;
import com.yeshi.fanli.util.TimeUtil;
+import com.yeshi.fanli.util.VersionUtil;
import com.yeshi.fanli.util.cache.TaoBaoGoodsCacheUtil;
import com.yeshi.fanli.util.factory.MonitorFactory;
import com.yeshi.fanli.util.taobao.TaoBaoCouponUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
+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.SpreadHongBao;
import com.yeshi.fanli.vo.user.UserSettingsVO;
import net.sf.json.JSONArray;
@@ -223,6 +239,33 @@
@Resource
private TaoBaoShopService taoBaoShopService;
+
+ @Resource
+ private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService;
+
+ @Resource
+ private UserMoneyExtraService userMoneyExtraService;
+
+ @Resource
+ private UserTaoLiJinOriginService userTaoLiJinOriginService;
+
+ @Resource
+ private ConfigTaoLiJinService configTaoLiJinService;
+
+ @Resource
+ private DeviceSexService deviceSexService;
+
+ @Resource
+ private UserTaoLiJinRecordService userTaoLiJinRecordService;
+
+ @Resource
+ private RecommendGoodsDeleteHistoryService recommendGoodsDeleteHistoryService;
+
+ @Resource
+ private HomeRecommendGoodsService homeRecommendGoodsService;
+
+ @Resource
+ private TLJBuyGoodsService tljBuyGoodsService;
@RequestMapping(value = "getHonestList")
public void getHonestList(AcceptData acceptData, PrintWriter out) {
@@ -571,7 +614,7 @@
// 鑾峰彇娣樺鍙傛暟
ClientTBPid clientTBPid = null;
- if (simpleGoods.getMaterialLibType() != null && simpleGoods.getMaterialLibType() == 1) {
+ if (TaoBaoUtil.isSpecialGoods(simpleGoods.getMaterialLibType())) {
String pid = TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT;
clientTBPid = new ClientTBPid(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET,
pid.split("_")[2], pid.split("_")[3]);
@@ -618,7 +661,7 @@
taoBaoGoodsBriefExtra.setAuctionUrl(tb.getAuctionUrl());
if (uid != null && !"".equals(uid.trim())) {
CollectionGoodsV2 collectionGoods = collectionGoodsV2Service.findByUidAndAuctionId(Long.parseLong(uid),
- Long.parseLong(id));
+ Long.parseLong(id), Constant.SOURCE_TYPE_TAOBAO);
data.put("collection", collectionGoods != null ? true : false);
}
@@ -878,7 +921,7 @@
// 鍒ゆ柇鏀惰棌
if (!StringUtil.isNullOrEmpty(uid)) {
CollectionGoodsV2 collectionGoods = collectionGoodsV2Service.findByUidAndAuctionId(Long.parseLong(uid),
- Long.parseLong(id));
+ Long.parseLong(id), Constant.SOURCE_TYPE_TAOBAO);
data.put("collected", collectionGoods != null ? true : false);
} else
data.put("collected", false);
@@ -1145,6 +1188,7 @@
// 鑾峰彇娴忚璁板綍
@RequestMapping(value = "getscanhistory", method = RequestMethod.POST)
public void getScanHistory(AcceptData acceptData, String uid, int page, PrintWriter out) {
+
if (page < 0) {
out.print(JsonUtil.loadFalseResult(1, "page涓嶅皬浜�0"));
return;
@@ -1156,49 +1200,61 @@
out.print(JsonUtil.loadFalseResult(1, "涓嶅瓨鍦ㄨ绯荤粺"));
return;
}
- List<ScanHistoryV2> list = scanHistoryV2Service.getScanHistoryByDeviceOrUid(
- StringUtil.isNullOrEmpty(uid) ? null : Long.parseLong(uid), acceptData.getDevice(), page, 20);
- long count = scanHistoryV2Service.getCountByDeviceOrUid(
- StringUtil.isNullOrEmpty(uid) ? null : Long.parseLong(uid), acceptData.getDevice());
- JSONObject data = new JSONObject();
- data.put("count", count);
- JSONArray array = new JSONArray();
+ try {
- GsonBuilder gsonBuilder = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder());
- gsonBuilder.excludeFieldsWithoutExposeAnnotation();
- gsonBuilder.registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
- @Override
- public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) {
- if (value == null) {
- return new JsonPrimitive("");
- } else {
- return new JsonPrimitive(value.getTime() + "");
+ List<ScanHistoryV2> list = scanHistoryV2Service.getScanHistoryByDeviceOrUid(
+ StringUtil.isNullOrEmpty(uid) ? null : Long.parseLong(uid), acceptData.getDevice(), page, 20,
+ Constant.SOURCE_TYPE_TAOBAO);
+ long count = scanHistoryV2Service.getCountByDeviceOrUid(
+ StringUtil.isNullOrEmpty(uid) ? null : Long.parseLong(uid), acceptData.getDevice(),
+ Constant.SOURCE_TYPE_TAOBAO);
+
+ JSONObject data = new JSONObject();
+ data.put("count", count);
+ JSONArray array = new JSONArray();
+
+ GsonBuilder gsonBuilder = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder());
+ gsonBuilder.excludeFieldsWithoutExposeAnnotation();
+ gsonBuilder.registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
+ @Override
+ public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) {
+ if (value == null) {
+ return new JsonPrimitive("");
+ } else {
+ return new JsonPrimitive(value.getTime() + "");
+ }
+ }
+ });
+
+ Gson gson = gsonBuilder.create();
+
+ if (list != null) {
+ BigDecimal proportion = manageService.getFanLiRate();
+ for (ScanHistoryV2 sh : list) {
+ TaoBaoGoodsBrief goods = TaoBaoUtil.convert(sh.getCommonGoods());
+ goods.setId(sh.getId());
+ TaoBaoGoodsBriefExtra extra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods, proportion.toString(), "");
+ extra.setCreatetime(sh.getCreateTime());
+ array.add(gson.toJson(extra));
}
}
- });
-
- Gson gson = gsonBuilder.create();
-
- if (list != null) {
- BigDecimal proportion = manageService.getFanLiRate();
- for (ScanHistoryV2 sh : list) {
- TaoBaoGoodsBrief goods = TaoBaoUtil.convert(sh.getCommonGoods());
- goods.setId(sh.getId());
- TaoBaoGoodsBriefExtra extra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods, proportion.toString(), "");
- extra.setCreatetime(sh.getCreateTime());
- array.add(gson.toJson(extra));
- }
+ data.put("data", array);
+ out.print(JsonUtil.loadTrueResult(data));
+ return;
+ } catch (Exception e) {
+ LogHelper.errorDetailInfo(e);
+ JSONObject data = new JSONObject();
+ data.put("data", new JSONArray());
+ data.put("count", 0);
+ out.print(JsonUtil.loadTrueResult(data));
}
- data.put("data", array);
- out.print(JsonUtil.loadTrueResult(data));
- return;
+
}
@RequestMapping(value = "deletescanhistory", method = RequestMethod.POST)
public void deleteScanHistory(AcceptData acceptData, String type, String uid, String ids, PrintWriter out) {
BusinessSystem sys = businessSystemService.getBusinessSystem(acceptData.getPlatform(),
acceptData.getPackages());
-
if (sys == null) {
out.print(JsonUtil.loadFalseResult(1, "绯荤粺涓嶅瓨鍦�"));
return;
@@ -1248,16 +1304,16 @@
* 闃叉璇锋眰棰戠巼杩囬珮
*
*/
- if (Constant.IS_OUTNET) {
- String key = "linkParse-" + acceptData.getDevice() + "-" + id;
+ // if (Constant.IS_OUTNET) {
+ String key = "linkParse-" + acceptData.getDevice() + "-" + id;
- String value = redisManager.getCommonString(key);
- if (!StringUtil.isNullOrEmpty(value)) {
- out.print(JsonUtil.loadFalseResult(11, "璇锋眰棰戠巼闄愬埗"));
- return;
- }
- redisManager.cacheCommonString(key, "1", 5);// 5s闂撮殧
+ String value = redisManager.getCommonString(key);
+ if (!StringUtil.isNullOrEmpty(value)) {
+ out.print(JsonUtil.loadFalseResult(11, "璇锋眰棰戠巼闄愬埗"));
+ return;
}
+ redisManager.cacheCommonString(key, "1", 5);// 5s闂撮殧
+ // }
TaoBaoGoodsBrief goods = null;
try {
goods = redisManager.getTaoBaoGoodsBrief(Long.parseLong(id));
@@ -1291,7 +1347,67 @@
HttpServletRequest request, PrintWriter out) {
int pageSize = Constant.PAGE_SIZE;
JSONArray array = new JSONArray();
+
Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()).create();
+ if (VersionUtil.greaterThan_1_5_70(acceptData.getPlatform(), acceptData.getVersion())) {
+ List<TaoBaoGoodsBrief> goodsList = homeRecommendGoodsService.listGoodsByPage(null, acceptData.getDevice(),
+ imei, idfa, page);
+
+ if (page < 4) {// 鍓嶄笁椤靛姞鍏ユ洿鏂�
+ try {
+ taoBaoGoodsUpdateService.addUpdateQueueAsync(goodsList);
+ } catch (Exception e) {
+ }
+ }
+
+ BigDecimal rate = hongBaoManageService.getFanLiRate();
+ for (TaoBaoGoodsBrief goods : goodsList) {
+ TaoBaoGoodsBriefExtra extra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods, rate + "", null);
+ if (page < 3)
+ extra.setRecommend(true);
+
+ try {
+ array.add(gson.toJson(extra));
+ } catch (Exception e) {
+ e.printStackTrace();
+ System.out.println(new Gson().toJson(goods));
+ }
+ }
+
+ if (page == 1) {
+ List<TLJBuyGoods> list = null;
+ try {
+ list = homeRecommendGoodsService.getZiGouLiJianHotGoods(acceptData.getDevice());
+ } catch (Exception e) {
+ }
+ if (list != null && list.size() > 0)
+ for (int i = list.size() - 1; i >= 0; i--) {
+ TLJBuyGoods goods = list.get(i);
+ TaoBaoGoodsBriefExtra extra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods.getGoods(),
+ TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE + "", null);
+ String hongBao = TaoBaoUtil.getGoodsHongBaoInfo(goods.getGoods(),
+ TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE);
+ TLJBuyHongBaoVO vo = new TLJBuyHongBaoVO();
+ vo.setLeft(goods.getLeftHongBaoCount());
+ vo.setMoney(hongBao);
+ vo.setTagName("浠樻绔嬪噺 " + hongBao);
+ vo.setTip("");
+ vo.setTotal(goods.getTotalHongBaoCount());
+ extra.setTljBuyHongBao(vo);
+ extra.setPictureTag(new ClientTextStyleVO("绔嬪噺TOP" + (i + 1), "#E5005C", "#FCE431", null));
+ extra.setRecommend(true);
+ extra.setSpreadMoney(vo.getTagName());
+ array.add(0, gson.toJson(extra));
+ }
+ }
+
+ JSONObject data = new JSONObject();
+ data.put("data", array);
+ data.put("count", 1000);
+ out.print(JsonUtil.loadTrueResult(data));
+ return;
+ }
+
// 浠庢帹鑽愭潵
if (page <= 1) {
array.clear();
@@ -1303,14 +1419,33 @@
if (result != null && result.getTaoBaoGoodsBriefs() != null) {
// 绛涢��
- List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
+ List<TaoBaoGoodsBriefExtra> goodsList = new ArrayList<>();
- for (TaoBaoGoodsBrief goods : result.getTaoBaoGoodsBriefs()) {
- if (!StringUtil.isNullOrEmpty(goods.getCouponInfo()) && goods.getCouponAmount() != null
- && goods.getCouponAmount().compareTo(new BigDecimal("5")) >= 0
- && goods.getBiz30day() > 1000 && !StringUtil.isNullOrEmpty(goods.getPictUrlWhite()))
- goodsList.add(goods);
+ List<TaoBaoGoodsBrief> gList = recommendGoodsDeleteHistoryService
+ .filterGoods(acceptData.getDevice(), result.getTaoBaoGoodsBriefs());
+
+ // filter
+ try {
+
+ gList = daTaoKeGoodsDetailService.filterTaoBaoGoods(gList);
+ } catch (Exception e) {
}
+
+ // 璁惧鎺ㄨ崘
+ if (gList != null)
+ for (TaoBaoGoodsBrief goods : gList) {
+ if (!StringUtil.isNullOrEmpty(goods.getCouponInfo()) && goods.getCouponAmount() != null
+ && goods.getCouponAmount().compareTo(new BigDecimal("5")) >= 0
+ && goods.getBiz30day() > 1000
+ && !StringUtil.isNullOrEmpty(goods.getPictUrlWhite())) {
+
+ TaoBaoGoodsBriefExtra extra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods,
+ proportion.toString(), "");
+
+ extra.setRecommend(true);
+ goodsList.add(extra);
+ }
+ }
try {
monitorService.addClientAPIMonitor(MonitorFactory.createClientAPI(request, 0,
(int) (java.lang.System.currentTimeMillis() - startTime), "鎺ㄨ崘鏁伴噺:" + goodsList.size()));
@@ -1320,8 +1455,8 @@
Collections.shuffle(goodsList);
goodsList = goodsList.size() > 20 ? goodsList.subList(0, 20) : goodsList;
- for (TaoBaoGoodsBrief goods : goodsList) {
- array.add(gson.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods, proportion.toString(), "")));
+ for (TaoBaoGoodsBriefExtra goods : goodsList) {
+ array.add(gson.toJson(goods));
}
} else {
try {
@@ -1573,8 +1708,11 @@
@RequestMapping(value = "getRecommendIndex")
public void getRecommendIndex(AcceptData acceptData, Long uid, PrintWriter out) {
try {
+ // 鑾峰彇璁惧瀹氫箟鎬у埆
+ int deviceSex = deviceSexService.getDeviceSex(acceptData.getDevice());
+
// 1銆佷笓棰樻ā鍧�
- JSONObject root = specialService.listCacheSpecialToIndex(acceptData);
+ JSONObject root = specialService.listCacheSpecialToIndex(acceptData, deviceSex);
// 2銆侀《閮ㄨ疆鎾浘
List<SwiperPicture> topPicList = getSwiperByCard("index_top");
@@ -1602,8 +1740,8 @@
if ("ios".equalsIgnoreCase(platform)) {
root.put("htmlLink", configService.get("index_html_link_ios"));
}
-
- root.put("spikeGoods", getSpikeGoodsContent(acceptData));
+
+ root.put("spikeGoods", getSpikeGoodsContent(acceptData));
out.print(JsonUtil.loadTrueResult(root));
} catch (Exception e) {
@@ -1687,8 +1825,8 @@
nextTime.set(Calendar.MILLISECOND, 0);
JSONArray array = null;
- String timekey = "spikeGoods_hour";
- String cachekey = "spikeGoodsList";
+ String timekey = String.format("spikeGoods_hour-%s-%s", acceptData.getPlatform(), acceptData.getVersion());
+ String cachekey = String.format("spikeGoodsList-%s-%s", acceptData.getPlatform(), acceptData.getVersion());
String timeValue = redisManager.getCommonString(timekey);
if (timeValue == null || !timeValue.equals(hour + "")) {
@@ -1699,7 +1837,7 @@
array = JSONArray.fromObject(cacheValue);
}
}
-
+ JumpDetailV2 jumpDetail = jumpDetailV2Service.getByTypeCache("web");
if (array == null) {
array = new JSONArray();
@@ -1714,25 +1852,43 @@
}
/* 閬嶅巻鍒楄〃鏁版嵁 */
- for (QualityFactory qualityFactory : listGoods) {
+ for (QualityFactory qualityFactory : listGoods) {
TaoBaoGoodsBrief taoBaoGoodsBrief = qualityFactory.getTaoBaoGoodsBrief();
if (taoBaoGoodsBrief == null) {
continue;
}
- array.add(gson
+ JSONObject goods = new JSONObject();
+ goods.put("goods", gson
.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), null)));
+ goods.put("jumpDetail", jumpDetail);
+ JSONObject params = new JSONObject();
+ params.put("url", configService.get("spike_goods_link") + "?id=" + taoBaoGoodsBrief.getAuctionId());
+ goods.put("params", params);
+
+ // 1.5.4鍙婁互鍚庤繑鍥�
+ if (VersionUtil.greaterThan_1_5_40(acceptData.getPlatform(), acceptData.getVersion())) {
+ array.add(goods);
+ } else {
+ array.add(goods.optJSONObject("goods"));
+ }
}
// 缂撳瓨鍗婁釜灏忔椂
redisManager.cacheCommonString(cachekey, array.toString(), 60 * 30);
}
Long endTime = nextTime.getTimeInMillis() - java.lang.System.currentTimeMillis();
-
+
JSONObject root = new JSONObject();
root.put("time", nextTime.getTimeInMillis());
- root.put("endTime", endTime > 0? endTime : 0);
+ root.put("endTime", endTime > 0 ? endTime : 0);
root.put("listgoods", array);
+
+ JSONObject params = new JSONObject();
+ params.put("url", configService.get("spike_goods_link"));
+
+ root.put("params", params);
+ root.put("jumpDetail", jumpDetail);
return root;
}
@@ -1745,13 +1901,7 @@
*/
@RequestMapping(value = "getSpikeGoods")
public void getSpikeGoods(AcceptData acceptData, PrintWriter out) {
- JSONObject params = new JSONObject();
- params.put("url", configService.get("spike_goods_link"));
- JumpDetailV2 jumpDetail = jumpDetailV2Service.getByTypeCache("web");
-
JSONObject root = getSpikeGoodsContent(acceptData);
- root.put("params", params);
- root.put("jumpDetail", jumpDetail);
out.print(JsonUtil.loadTrueResult(root));
}
@@ -1766,13 +1916,9 @@
* @param out
*/
@RequestMapping(value = "getgoodsinfo", method = RequestMethod.POST)
- public void getGoodsInfo(AcceptData acceptData, String id, String uid, String from, PrintWriter out) {
+ public void getGoodsInfo(AcceptData acceptData, Long id, Long uid, String from, PrintWriter out) {
- if ("0".equalsIgnoreCase(uid)) {
- uid = "";
- }
-
- if (StringUtil.isNullOrEmpty(id)) {
+ if (id == null) {
out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼爄d"));
return;
}
@@ -1816,14 +1962,14 @@
if (!convertInServer) {
try {
- goods = taoBaoGoodsCacheUtil.getCommonTaoBaoGoodsInfo(Long.parseLong(id));
+ goods = taoBaoGoodsCacheUtil.getCommonTaoBaoGoodsInfo(id);
if (goods == null) {
TaoKeAppInfo app = new TaoKeAppInfo();
app.setAppKey(TaoBaoConstant.TAOBAO_COMMON_APPKEY);
app.setAppSecret(TaoBaoConstant.TAOBAO_COMMON_APPSECRET);
app.setPid(TaoBaoConstant.TAOBAO_COMMON_PID);
app.setAdzoneId(TaoBaoConstant.TAOBAO_COMMON_PID.split("_")[3]);
- goods = TaoKeApiUtil.searchGoodsDetail(Long.parseLong(id), app);
+ goods = TaoKeApiUtil.searchGoodsDetail(id, app);
final TaoBaoGoodsBrief finalGoods = goods;
if (goods != null) {
ThreadUtil.run(new Runnable() {
@@ -1838,7 +1984,7 @@
// 鍟嗗搧涓嬫灦
ThreadUtil.run(new Runnable() {
public void run() {
- taoBaoGoodsUpdateService.offlineTaoBaoGoods(Long.parseLong(id));
+ taoBaoGoodsUpdateService.offlineTaoBaoGoods(id);
}
});
@@ -1855,7 +2001,7 @@
app.setPid(clientPid);
try {
- goods = TaoKeApiUtil.searchGoodsDetail(Long.parseLong(id), app);
+ goods = TaoKeApiUtil.searchGoodsDetail(id, app);
if (goods != null) {
ticket.put("clickUrl", goods.getAuctionUrl());
// 娴嬭瘯浣跨敤
@@ -1877,7 +2023,7 @@
} catch (TaobaoGoodsDownException e) {
ThreadUtil.run(new Runnable() {
public void run() {
- taoBaoGoodsUpdateService.offlineTaoBaoGoods(Long.parseLong(id));
+ taoBaoGoodsUpdateService.offlineTaoBaoGoods(id);
}
});
}
@@ -1923,19 +2069,24 @@
if (!StringUtil.isNullOrEmpty(tb.getPictUrlWhite()))
finalImgList.add(0, tb.getPictUrlWhite());
+ // 澶ф窐瀹㈠晢鍝佽繃婊�
+ try {
+ goods = daTaoKeGoodsDetailService.filterTaoBaoGoods(goods);
+ } catch (Exception e) {
+ LogHelper.errorDetailInfo(e);
+ }
JSONObject goodsJson = new JSONObject();
goodsJson.put("auctionId", tb.getAuctionId());
goodsJson.put("imgList", finalImgList);
goodsJson.put("title", tb.getTitle());
goodsJson.put("userType", tb.getUserType() == 1 ? 2 : 1);
goodsJson.put("price", tb.getReservePrice().toString());
- goodsJson.put("zkPrice", tb.getZkPrice().toString());
+ goodsJson.put("zkPrice", MoneyBigDecimalUtil.getWithNoZera(tb.getZkPrice()).toString());
-
// 30澶╅攢閲�
goodsJson.put("saleCount", TaoBaoUtil.getSaleCount(tb.getBiz30day()));
goodsJson.put("salesCount", TaoBaoUtil.getSaleCount(tb.getBiz30day()));
-
+
// 鍒嗕韩璧�
BigDecimal shareMoney = taoBaoGoodsBriefService.getShareGoodsUserHongBao(tb);
data.put("shareMoney", "楼" + shareMoney);
@@ -1946,11 +2097,11 @@
}
// 鍒ゆ柇鏀惰棌
- if (StringUtil.isNullOrEmpty(uid)) {
+ if (uid == null) {
data.put("collected", false);
} else {
- CollectionGoodsV2 collectionGoods = collectionGoodsV2Service.findByUidAndAuctionId(Long.parseLong(uid),
- Long.parseLong(id));
+ CollectionGoodsV2 collectionGoods = collectionGoodsV2Service.findByUidAndAuctionId(uid, id,
+ Constant.SOURCE_TYPE_TAOBAO);
data.put("collected", collectionGoods != null ? true : false);
}
@@ -1976,10 +2127,12 @@
String hongBao = null;
// 鑾峰彇鍒镐俊鎭�
- if (!StringUtil.isNullOrEmpty(tb.getCouponInfo())) {
+ if (!StringUtil.isNullOrEmpty(tb.getCouponInfo()) && tb.getCouponAmount() != null
+ && tb.getCouponAmount().compareTo(new BigDecimal(0)) > 0 && tb.getCouponEffectiveStartTime() != null
+ && tb.getCouponEffectiveEndTime() != null) {
BigDecimal quanPrice = TaoBaoUtil.getAfterUseCouplePrice(tb);
JSONObject couponInfo = new JSONObject();
- couponInfo.put("couponPrice", quanPrice.toString());
+ couponInfo.put("couponPrice", MoneyBigDecimalUtil.getWithNoZera(quanPrice).toString());
if (from != null && from.equals("miandan")) {
// 鍏嶅崟鍟嗗搧
@@ -1987,14 +2140,16 @@
}
String token = "";
- if (!StringUtil.isNullOrEmpty(tb.getCouponLink())) {
+ if (!StringUtil.isNullOrEmpty(tb.getCouponLink())
+ && VersionUtil.greaterThan_1_5_60(acceptData.getPlatform(), acceptData.getVersion())) {
token = redisManager.getCommonTaoToken(tb.getAuctionId());
if (StringUtil.isNullOrEmpty(token)) {
token = TaoKeApiUtil.getTKToken(tb.getPictUrl(), tb.getTitle(), tb.getCouponLink());
redisManager.saveCommonTaoToken(tb.getAuctionId(), token);
}
}
- tb.setCouponLinkTaoToken(token);
+ if (!VersionUtil.greaterThan_1_5_60(acceptData.getPlatform(), acceptData.getVersion()))
+ tb.setCouponLinkTaoToken(token);
// 鏈嶅姟绔浆閾�
// if (convertInServer &&
@@ -2006,11 +2161,15 @@
// tb.getAuctionId() + ""));
// }
- couponInfo.put("couponAmount", NumberUtil.subZeroAndDot(tb.getCouponAmount().toString()));
+ couponInfo.put("couponAmount", MoneyBigDecimalUtil.getWithNoZera(tb.getCouponAmount()).toString());
couponInfo.put("couponTime", "浣跨敤鏈熼檺锛�" + tb.getCouponEffectiveStartTime().replace("-", ".") + "-"
+ tb.getCouponEffectiveEndTime().replace("-", "."));
// 鍒哥殑鍙d护
- couponInfo.put("couponToken", token);
+
+ if (VersionUtil.greaterThan_1_5_60(acceptData.getPlatform(), acceptData.getVersion()))
+ couponInfo.put("couponToken", "");
+ else
+ couponInfo.put("couponToken", token);
goodsJson.put("couponInfo", couponInfo);
if (tb.getBiz30day() >= 1000) {
@@ -2022,6 +2181,8 @@
// 绾㈠寘
if (hongBao == null) {
BigDecimal proportion = manageService.getFanLiRate();
+ if ("taolijin".equalsIgnoreCase(from))
+ proportion = manageService.getTLJShareRate(System.currentTimeMillis());
hongBao = TaoBaoUtil.getGoodsHongBaoInfo(tb, proportion);
}
goodsJson.put("hongBao", hongBao);
@@ -2055,39 +2216,44 @@
} else {
tbShopInfo.setUserType("0");
}
+
+ String shopLink = tbShopInfo.getShopUrl();
+ if (StringUtil.isNullOrEmpty(shopLink)) {
+ tbShopInfo.setShopUrl(TaoBaoUtil.getShopLink(tbShopInfo.getUserId()));
+ }
}
- // 搴楅摵
- if (("android".equalsIgnoreCase(acceptData.getPlatform()) && Integer.parseInt(acceptData.getVersion()) >= 40)
- || ("ios".equalsIgnoreCase(acceptData.getPlatform())
- && Integer.parseInt(acceptData.getVersion()) >= 49)) {
+
+ // 搴楅摵1.5.4鍙婁互鍚庣増鏈�
+ if (VersionUtil.greaterThan_1_5_40(acceptData.getPlatform(), acceptData.getVersion())) {
TaoBaoShop shop = taoBaoShopService.getTaoBaoShop(goods.getAuctionId(), goods.getSellerId());
- if (shop != null)
+ if (shop != null) {
+ String shopLink = shop.getShopLink();
+ if (StringUtil.isNullOrEmpty(shopLink)) {
+ shop.setShopLink(TaoBaoUtil.getShopLink(shop.getId()));
+ }
goodsJson.put("shopInfo", shop);
+ }
} else {
goodsJson.put("shopInfo", tbShopInfo);
}
-
- goodsJson.put("fanliValid",true);// 鏄惁鏈夎繑鍒�
// 鍒嗕韩璺緞
String shareUrl = String.format("%s?id=" + tb.getAuctionId(), Constant.systemCommonConfig.getAppShareInfoUrl());
// 鏄惁鍔犲叆閫夊搧搴擄細 0鏈姞鍏� 1 宸插姞鍏�
boolean storageState = false;
- if (uid != null && uid.trim().length() > 0) {
- storageState = userGoodsStorageService.isExistStorage(Long.parseLong(uid), Long.parseLong(id));
+ if (uid != null) {
+ storageState = userGoodsStorageService.isExistStorage(uid, id, Constant.SOURCE_TYPE_TAOBAO);
}
data.put("storageState", storageState);
data.put("shareUrl", shareUrl);
-
- data.put("goods", goodsJson);
data.put("shareUsers", listShareUser);
data.put("couponUsers", listCouponUser);
data.put("detailWebUrl", "http://apph5.yeshitv.com/apppage/goods_img.html?id=" + id);
-
- data.put("noRebateHelpLink", configService.get("no_rebate_help_link"));
-
+
+ String noRebateHelpLink = null;
+
// 鍟嗗搧閾炬帴
String h5Url = String.format("http://%s%s?id=%s&appType=flq", configService.getH5Host(),
Constant.systemCommonConfig.getShareGoodsPagePath(), tb.getAuctionId() + "");
@@ -2095,6 +2261,117 @@
data.put("h5Url", HttpUtil.getShortLink(h5Url));
} catch (Exception e) {
data.put("h5Url", h5Url);
+ }
+
+ // 鏄惁鏈夎繑鍒�
+ boolean fanliValid = true;
+ // 璧勯噾绫诲瀷 1-杩� 2-濂�
+ int moneyType = 1;
+
+ // 鎺ㄥ箍绾㈠寘
+ if (from != null && from.equals("taolijin")) {
+ // 璁$畻鎺ㄥ箍绾㈠寘
+ String warningRate = configTaoLiJinService.getValueByKey("warning_value", null);
+ BigDecimal spreadMoney = TaoLiJinUtil.getSpreadMoney(warningRate, goods);
+
+ // 鎺ㄥ箍绾㈠寘 涓嶈兘灏忎簬1
+ if (spreadMoney.compareTo(new BigDecimal(1.1)) < 0) {
+ out.print(JsonUtil.loadFalseResult(2, "鍟嗗搧涓嶅瓨鍦�"));
+ return;
+ }
+
+ // 鏄惁涓烘柊鐢ㄦ埛
+ boolean isNewUser = userInfoExtraService.isNewUser(uid);
+ if (isNewUser) {
+ // 鍒ゅ畾涓鸿�佺敤鎴凤細 鏂颁汉鍙浣跨敤浜嗘柊浜虹孩鍖咃紝涔熷氨鏄偅1鍧楅挶锛岄偅涔堬紝浠栫湅鍒扮殑鍒嗕韩鐖嗘涓殑鍟嗗搧-灏卞彧鑳藉垎浜��
+ long countRecord = userTaoLiJinRecordService.countRecordByUid(uid);
+ if (countRecord > 0) {
+ isNewUser = false;
+ }
+ }
+
+ SpreadHongBao spreadHongBao = new SpreadHongBao();
+ if (isNewUser) {
+ spreadHongBao.setMoney("1");
+ } else {
+ spreadHongBao.setMoney(spreadMoney.toString());
+
+ moneyType = 2;
+ fanliValid = false;
+ ClientTextStyleVO textStyleVO1 = new ClientTextStyleVO();
+ textStyleVO1.setContent("鍒嗕韩");
+ textStyleVO1.setColor("#666666");
+ ClientTextStyleVO textStyleVO2 = new ClientTextStyleVO();
+ textStyleVO2.setContent("璧氬閲�");
+ textStyleVO2.setColor("#F14242");
+ ClientTextStyleVO textStyleVO3 = new ClientTextStyleVO();
+ textStyleVO3.setContent("锛屽ソ鍙�");
+ textStyleVO3.setColor("#666666");
+ ClientTextStyleVO textStyleVO4 = new ClientTextStyleVO();
+ textStyleVO4.setContent("棰嗙孩鍖咃紒");
+ textStyleVO4.setColor("#F14242");
+
+ List<ClientTextStyleVO> listText = new ArrayList<ClientTextStyleVO>();
+ listText.add(textStyleVO1);
+ listText.add(textStyleVO2);
+ listText.add(textStyleVO3);
+ listText.add(textStyleVO4);
+
+ data.put("listTip", listText);
+ }
+ spreadHongBao.setTip("褰撴棩棰嗗彇锛屽綋鏃ュ唴浣跨敤锛岃繃鏈熷け鏁�");
+ goodsJson.put("spreadHongBao", spreadHongBao);
+
+ // 鐢ㄦ埛鍓╀綑鍙互娣樼ぜ閲戦獙璇�
+ UserMoneyExtra userMoneyExtra = userMoneyExtraService.selectByPrimaryKey(uid);
+ if (userMoneyExtra == null || userMoneyExtra.getTlj() == null) {
+ data.put("userHongbao", new BigDecimal(0).setScale(2).toString());
+ } else {
+ data.put("userHongbao", userMoneyExtra.getTlj().setScale(2).toString());
+ }
+
+ noRebateHelpLink = configTaoLiJinService.getValueByKey("share_goods_help_link", null);
+
+ if (Constant.IS_TEST) {
+ fanliValid = true;
+ goodsJson.put("shareValid", false);
+ JSONObject tljNum = new JSONObject();
+ tljNum.put("percent", "80");
+ tljNum.put("num", "8825");
+ goodsJson.put("tljNum", tljNum);
+ }
+
+ } else if (from != null && from.equals("taolijin_buy")) {
+ noRebateHelpLink = configService.get("zigoulijian_nofanli_help");
+ // 鏌ヨ鍒嗕韩搴�
+ TLJBuyGoods buyGoods = tljBuyGoodsService.selectByAuctionIdAndDay(goods.getAuctionId(),
+ TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd"));
+ if (buyGoods == null) {
+ out.print(JsonUtil.loadFalseResult(2, "鑷喘绔嬪噺绾㈠寘杩囨湡"));
+ return;
+ }
+
+ fanliValid = true;
+ goodsJson.put("shareValid", false);
+ String tljHongBao = TaoBaoUtil.getGoodsHongBaoMoney(goods, new BigDecimal(70)).toString();
+ TLJBuyHongBaoVO vo = new TLJBuyHongBaoVO();
+ vo.setLeft(buyGoods.getLeftHongBaoCount());
+ vo.setMoney(tljHongBao);
+ vo.setTagName("浠樻绔嬪噺 楼" + tljHongBao);
+ vo.setTip("褰撴棩棰嗗彇锛屽綋鏃ュ唴浣跨敤锛岃繃鏈熷け鏁�");
+ vo.setTotal(buyGoods.getTotalHongBaoCount());
+ goodsJson.put("tljBuyHongBao", vo);
+ moneyType = 2;
+ }
+
+ goodsJson.put("moneyType", moneyType);
+ goodsJson.put("fanliValid", fanliValid);
+ data.put("goods", goodsJson);
+
+ if (!StringUtil.isNullOrEmpty(noRebateHelpLink)) {
+ data.put("noRebateHelpLink", noRebateHelpLink);
+ } else {
+ data.put("noRebateHelpLink", configService.get("no_rebate_help_link"));
}
// 鍙栨秷鍒嗕韩娲诲姩
@@ -2117,15 +2394,12 @@
out.print(JsonUtil.loadTrueResult(data));
- final String tempUid = uid;
final TaoBaoGoodsBrief goodsInfo = tb;
ThreadUtil.run(new Runnable() {
public void run() {
// 娣诲姞娴忚璁板綍
try {
- scanHistoryV2Service.addScanHistory(
- StringUtil.isNullOrEmpty(tempUid) ? null : Long.parseLong(tempUid), acceptData.getDevice(),
- goodsInfo);
+ scanHistoryV2Service.addScanHistory(uid, acceptData.getDevice(), goodsInfo);
} catch (Exception e) {
e.printStackTrace();
}
@@ -2191,119 +2465,83 @@
@RequestMapping(value = "getgoodsderivation", method = RequestMethod.POST)
public void getRecommendGoods(AcceptData acceptData, long id, PrintWriter out) {
- BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
- acceptData.getPackages());
- if (system == null) {
- out.print(JsonUtil.loadFalseResult(1, "绯荤粺涓嶅瓨鍦�"));
- return;
- }
-
- List<TaoBaoGoodsBrief> goodsList = TaoKeApiUtil.getRelationGoodsRecommend(id, 10);
- // 鍒濆鍖�
- if (goodsList == null) {
- goodsList = new ArrayList<TaoBaoGoodsBrief>();
- }
-
- BigDecimal proportion = manageService.getFanLiRate();
-
- List<TaoBaoGoodsBriefExtra> listExtra = new ArrayList<TaoBaoGoodsBriefExtra>();
-
- TaoKeAppInfo app = new TaoKeAppInfo();
- app.setAppKey(TaoBaoConstant.TAOBAO_AUTH_APPKEY);
- app.setAppSecret(TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
- app.setAdzoneId(TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT.split("_")[3]);
- app.setPid(TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT);
-
- List<Long> ids = new ArrayList<>();
- for (TaoBaoGoodsBrief goods : goodsList)
- ids.add(goods.getAuctionId());
-
try {
- goodsList = TaoKeApiUtil.getBatchGoodsInfo(ids);
- } catch (TaoKeApiException e1) {
- e1.printStackTrace();
- } catch (TaobaoGoodsDownException e1) {
- e1.printStackTrace();
+
+ List<TaoBaoGoodsBrief> goodsList = TaoKeApiUtil.getRelationGoodsRecommend(id, 10);
+ // 鍒濆鍖�
+ if (goodsList == null) {
+ goodsList = new ArrayList<TaoBaoGoodsBrief>();
+ }
+
+ BigDecimal proportion = manageService.getFanLiRate();
+
+ List<TaoBaoGoodsBriefExtra> listExtra = new ArrayList<TaoBaoGoodsBriefExtra>();
+
+ TaoKeAppInfo app = new TaoKeAppInfo();
+ app.setAppKey(TaoBaoConstant.TAOBAO_AUTH_APPKEY);
+ app.setAppSecret(TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
+ app.setAdzoneId(TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT.split("_")[3]);
+ app.setPid(TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT);
+
+ List<Long> ids = new ArrayList<>();
+ for (TaoBaoGoodsBrief goods : goodsList)
+ ids.add(goods.getAuctionId());
+
+ try {
+ goodsList = TaoKeApiUtil.getBatchGoodsInfo(ids);
+ } catch (TaoKeApiException e1) {
+ e1.printStackTrace();
+ } catch (TaobaoGoodsDownException e1) {
+ e1.printStackTrace();
+ }
+
+ if (goodsList != null && goodsList.size() > 0)
+ goodsList.parallelStream().forEach(goods -> {
+ if (goods != null) {
+ // 鑾峰彇璇︽儏
+ TaoBaoGoodsBrief taoBaoGoodsBrief = null;
+ try {
+ taoBaoGoodsBrief = taoBaoGoodsCacheUtil.getCommonTaoBaoGoodsInfo(goods.getAuctionId());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ if (taoBaoGoodsBrief == null) {
+ TaoBaoGoodsBrief newGoods = TaoKeApiUtil.specialConvertCoupon(goods.getAuctionId(), app);
+ goods.setCouponInfo(newGoods.getCouponInfo());
+ goods.setCouponLink(newGoods.getCouponLink());
+ goods.setTkRate(newGoods.getTkRate());
+ taoBaoGoodsBrief = goods;
+ }
+
+ if (taoBaoGoodsBrief != null) {
+ listExtra.add(
+ TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), ""));
+ }
+ }
+ });
+
+ List<TaoBaoGoodsBrief> listQuality = new ArrayList<TaoBaoGoodsBrief>();
+
+ // 鍙栧伓鏁颁釜鏁版嵁
+ if (listExtra.size() % 2 != 0) {
+ listExtra.remove(listExtra.size() - 1);
+ }
+
+ if (listQuality.size() % 2 != 0) {
+ listQuality.remove(listQuality.size() - 1);
+ }
+
+ JSONObject data = new JSONObject();
+ data.put("listQuality", JsonUtil.getApiCommonGson().toJson(listExtra));
+ data.put("listGuess", JsonUtil.getApiCommonGson().toJson(listQuality));
+ out.print(JsonUtil.loadTrueResult(data));
+ } catch (Exception e) {
+ JSONObject data = new JSONObject();
+ data.put("listQuality", new JSONArray());
+ data.put("listGuess", new JSONArray());
+ out.print(JsonUtil.loadTrueResult(data));
}
-
- if (goodsList != null)
- goodsList.parallelStream().forEach(goods -> {
-
- // 鑾峰彇璇︽儏
- TaoBaoGoodsBrief taoBaoGoodsBrief = null;
- try {
- taoBaoGoodsBrief = taoBaoGoodsCacheUtil.getCommonTaoBaoGoodsInfo(goods.getAuctionId());
- } catch (Exception e) {
- e.printStackTrace();
- }
-
- if (taoBaoGoodsBrief == null) {
- TaoBaoGoodsBrief newGoods = TaoKeApiUtil.specialConvertCoupon(goods.getAuctionId(), app);
- goods.setCouponInfo(newGoods.getCouponInfo());
- goods.setCouponLink(newGoods.getCouponLink());
- goods.setTkRate(newGoods.getTkRate());
- taoBaoGoodsBrief = goods;
- }
-
- if (taoBaoGoodsBrief != null) {
- listExtra.add(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), ""));
- }
-
- });
-
- List<TaoBaoGoodsBrief> listQuality = new ArrayList<TaoBaoGoodsBrief>();
- // 鍒犻櫎鎺ㄨ崘
- //
- // try {
- // List<QualityFactory> listRecommend =
- // qualityGoodsService.recommendByAuctionId(id);
- //
- // if (listRecommend != null && listRecommend.size() > 1) {
- // for (QualityFactory quality : listRecommend) {
- //
- // TaoBaoGoodsBrief taoBaoGoodsBrief = quality.getTaoBaoGoodsBrief();
- // if (taoBaoGoodsBrief == null) {
- // continue;
- // }
- //
- // int biz30day = taoBaoGoodsBrief.getBiz30day();
- // if (biz30day >= 10000) {
- // double sales = biz30day;
- // String salesCountMidea = String.format("%.1f", sales / 10000);
- // taoBaoGoodsBrief.setSalesCount(salesCountMidea + "涓�");
- // } else {
- // taoBaoGoodsBrief.setSalesCount(biz30day + "");
- // }
- //
- // // 鏀瑰彉鍥剧墖灏哄
- // String pictUrl = taoBaoGoodsBrief.getPictUrl();
- // if (!StringUtil.isNullOrEmpty(pictUrl) &&
- // !pictUrl.contains("320x320")) {
- // taoBaoGoodsBrief.setPictUrl(TbImgUtil.getTBSize320Img(pictUrl));
- // }
- //
- // listQuality.add(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief,
- // proportion.toString(), null));
- // }
- // }
- // } catch (Exception e2) {
- // e2.printStackTrace();
- // }
-
- // 鍙栧伓鏁颁釜鏁版嵁
- if (listExtra.size() % 2 != 0) {
- listExtra.remove(listExtra.size() - 1);
- }
-
- if (listQuality.size() % 2 != 0) {
- listQuality.remove(listQuality.size() - 1);
- }
-
- JSONObject data = new JSONObject();
- data.put("listQuality", JsonUtil.getApiCommonGson().toJson(listExtra));
- data.put("listGuess", JsonUtil.getApiCommonGson().toJson(listQuality));
-
- out.print(JsonUtil.loadTrueResult(data));
}
/**
@@ -2313,32 +2551,36 @@
* @param out
*/
@RequestMapping(value = "getSpecialActivities")
- public void getSpecialActivities(AcceptData acceptData, Long uid, PrintWriter out) {
+ public void getSpecialActivities(AcceptData acceptData, Long uid, PrintWriter out, String callback) {
+ int platformCode = Constant.getPlatformCode(acceptData.getPlatform());
+ List<Special> listSpecial = specialService.listByVersion(0, Integer.MAX_VALUE, "special_activities",
+ platformCode, Integer.parseInt(acceptData.getVersion()));
- BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
- acceptData.getPackages());
- if (system == null) {
- out.print(JsonUtil.loadFalseResult(1, "绯荤粺涓嶅瓨鍦�"));
- return;
+ List<Special> list = new ArrayList<Special>();
+ if (listSpecial != null) {
+ list.addAll(listSpecial);
}
- try {
- // 涓撻娲诲姩
- String specialCard = "special_activities";
+ for (int i = 0; i < list.size(); i++) {
+ Special special = list.get(i);
- List<Special> listSpecial = specialService.listPageBySystemAndCard(0, Integer.MAX_VALUE, specialCard,
- system.getId());
-
- if (listSpecial == null) {
- listSpecial = new ArrayList<Special>();
+ JumpDetailV2 jumpDetail = special.getJumpDetail();
+ if (jumpDetail != null) {
+ jumpDetail.setNeedLogin(special.isJumpLogin());
+ special.setJumpDetail(jumpDetail);
}
- JSONObject root = new JSONObject();
- root.put("special", JsonUtil.getApiCommonGson().toJson(listSpecial));
- out.print(JsonUtil.loadTrueResult(root));
-
- } catch (Exception e) {
- e.printStackTrace();
+ String name = special.getName();
+ if (StringUtil.isNullOrEmpty(name)) {
+ continue;
+ }
}
+
+ JSONObject root = new JSONObject();
+ root.put("special", JsonUtil.getApiCommonGson().toJson(list));
+ if (StringUtil.isNullOrEmpty(callback))
+ out.print(JsonUtil.loadTrueResult(root));
+ else
+ JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(root));
}
}
--
Gitblit v1.8.0