From 8bed368f976337b1860812d74681dfbc2c770577 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 31 十二月 2020 19:24:44 +0800
Subject: [PATCH] 常用工具优化
---
fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityServiceImpl.java | 1523 +++++++++++++++++++++++++++++-----------------------------
1 files changed, 759 insertions(+), 764 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityServiceImpl.java
index e9f3917..9a16785 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/activity/ActivityServiceImpl.java
@@ -8,6 +8,8 @@
import javax.annotation.Resource;
+import com.yeshi.fanli.entity.SystemEnum;
+import com.yeshi.fanli.service.inter.user.*;
import org.jsoup.Jsoup;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
@@ -16,7 +18,6 @@
import org.yeshi.utils.entity.FileUploadResult;
import org.yeshi.utils.taobao.TbImgUtil;
-import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
import com.yeshi.fanli.dao.mybatis.activity.ActivityUserMapper;
import com.yeshi.fanli.dao.mybatis.activity.RecommendActivityImgMapper;
import com.yeshi.fanli.dao.mybatis.activity.RecommendActivityInviteInfoMapper;
@@ -30,7 +31,8 @@
import com.yeshi.fanli.entity.bus.activity.RecommendActivityInviteInfo;
import com.yeshi.fanli.entity.bus.activity.RecommendActivityTaoBaoGoods;
import com.yeshi.fanli.entity.goods.CommonGoods;
-import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
+import com.yeshi.fanli.entity.system.ConfigKeyEnum;
+import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.exception.ActivityException;
import com.yeshi.fanli.exception.share.UserShareGoodsRecordException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
@@ -41,13 +43,8 @@
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.dynamic.DynamicInfoService;
import com.yeshi.fanli.service.inter.goods.CommonGoodsService;
-import com.yeshi.fanli.service.inter.goods.ShareGoodsService;
import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
-import com.yeshi.fanli.service.inter.user.SpreadUserImgService;
-import com.yeshi.fanli.service.inter.user.TBPidService;
-import com.yeshi.fanli.service.inter.user.UserAccountService;
-import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService;
import com.yeshi.fanli.util.ImageUtil;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
@@ -62,866 +59,864 @@
@Service
public class ActivityServiceImpl implements ActivityService {
- @Resource
- private RecommendActivityMapper recommendActivityMapper;
+ @Resource
+ private RecommendActivityMapper recommendActivityMapper;
- @Resource
- private ShareGoodsService shareGoodsService;
- @Resource
- private SpreadUserImgService spreadUserImgService;
- @Resource
- private ActivityUserMapper activityUserMapper;
+ @Resource
+ private SpreadUserImgService spreadUserImgService;
- @Resource
- private TaoBaoGoodsBriefService taoBaoGoodsBriefService;
+ @Resource
+ private ActivityUserMapper activityUserMapper;
- @Resource
- private RecommendActivityTaoBaoGoodsMapper recommendActivityTaoBaoGoodsMapper;
+ @Resource
+ private TaoBaoGoodsBriefService taoBaoGoodsBriefService;
- @Resource
- private RecommendActivityImgMapper recommendActivityImgMapper;
+ @Resource
+ private RecommendActivityTaoBaoGoodsMapper recommendActivityTaoBaoGoodsMapper;
- @Resource
- private RecommendActivityInviteInfoMapper recommendActivityInviteInfoMapper;
+ @Resource
+ private RecommendActivityImgMapper recommendActivityImgMapper;
- @Resource
- private RedisManager redisManager;
+ @Resource
+ private RecommendActivityInviteInfoMapper recommendActivityInviteInfoMapper;
- @Resource
- private TBPidService tbPidService;
+ @Resource
+ private RedisManager redisManager;
- @Resource
- private ConfigService configService;
- @Resource
- private UserInfoMapper userInfoMapper;
+ @Resource
+ private ConfigService configService;
- @Resource
- private UserAccountService userAccountService;
+ @Resource
+ private UserInfoService userInfoService;
- @Resource
- private TaoBaoGoodsUpdateService taoBaoGoodsUpdateService;
- @Resource
- private UserShareGoodsRecordService userShareGoodsRecordService;
+ @Resource
+ private TaoBaoGoodsUpdateService taoBaoGoodsUpdateService;
- @Resource
- private CommonGoodsService commonGoodsService;
-
- @Resource
- private DynamicInfoService dynamicInfoService;
-
- @Resource
- private ActivityUserService activityUserService;
-
+ @Resource
+ private UserShareGoodsRecordService userShareGoodsRecordService;
- @Override
- public List<RecommendActivity> getRecommendActivityList(int page, int pageSize) {
- return recommendActivityMapper.getRecommendActivityList((page - 1) * pageSize, pageSize);
- }
+ @Resource
+ private CommonGoodsService commonGoodsService;
- @Override
- public List<RecommendActivity> queryRecommendActivityList(String title, int page, int pageSize) {
- return recommendActivityMapper.queryRecommendActivityList(title, (page - 1) * pageSize, pageSize);
- }
+ @Resource
+ private DynamicInfoService dynamicInfoService;
- @Override
- public long getRecommendActivityCount(String title) {
- return recommendActivityMapper.getRecommendActivityCount(title);
- }
+ @Resource
+ private ActivityUserService activityUserService;
- @Override
- public ActivityShareResult shareActivityGoods(Long uid, Long activityId)
- throws ActivityException, UserShareGoodsRecordException {
- RecommendActivity activity = recommendActivityMapper.selectByPrimaryKey(activityId);
+ @Override
+ public List<RecommendActivity> getRecommendActivityList(int page, int pageSize) {
+ return recommendActivityMapper.getRecommendActivityList((page - 1) * pageSize, pageSize);
+ }
- if (activity == null)
- throw new ActivityException(2, "鍔ㄦ�佷笉瀛樺湪");
+ @Override
+ public List<RecommendActivity> queryRecommendActivityList(String title, int page, int pageSize) {
+ return recommendActivityMapper.queryRecommendActivityList(title, (page - 1) * pageSize, pageSize);
+ }
- if (activity.getType() != RecommendActivity.TYPE_SHARE_GOODS)
- throw new ActivityException(3, "涓嶅睘浜庡垎浜晢鍝佸姩鎬�");
+ @Override
+ public long getRecommendActivityCount(String title) {
+ return recommendActivityMapper.getRecommendActivityCount(title);
+ }
- ActivityShareResult result = new ActivityShareResult();
+ @Override
+ public ActivityShareResult shareActivityGoods(Long uid, Long activityId)
+ throws ActivityException, UserShareGoodsRecordException {
- String title = activity.getTitle().replace("<br>", "/n").replace("<p>", "").replace("</p>", "");
- if (title != null && title.trim().endsWith("/n"))
- title = title.trim().substring(0, title.trim().length() - 2);
- result.setTitle(title);
- List<FileUploadResult> imgList = new ArrayList<>();
+ RecommendActivity activity = recommendActivityMapper.selectByPrimaryKey(activityId);
- List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>();
+ if (activity == null)
+ throw new ActivityException(2, "鍔ㄦ�佷笉瀛樺湪");
- if (activity.getGoodsList() != null) {
+ if (activity.getType() != RecommendActivity.TYPE_SHARE_GOODS)
+ throw new ActivityException(3, "涓嶅睘浜庡垎浜晢鍝佸姩鎬�");
- activity.getGoodsList().stream().parallel().forEach(goodsActivity -> {
+ ActivityShareResult result = new ActivityShareResult();
- try {
- TaoBaoGoodsBrief goodsBrief = redisManager
- .getTaoBaoGoodsBrief(Long.parseLong(goodsActivity.getAuctionId()));
- listGoodsBrief.add(goodsBrief);
- } catch (TaobaoGoodsDownException e) {
+ String title = activity.getTitle().replace("<br>", "/n").replace("<p>", "").replace("</p>", "");
+ if (title != null && title.trim().endsWith("/n"))
+ title = title.trim().substring(0, title.trim().length() - 2);
+ result.setTitle(title);
+ List<FileUploadResult> imgList = new ArrayList<>();
- CommonGoods commonGoods = commonGoodsService.getCommonGoodsByGoodsIdAndGoodsType(
- Long.parseLong(goodsActivity.getAuctionId()), CommonGoods.GOODS_TYPE_TB);
- if (commonGoods != null) {
- TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods);
- goodsBrief.setState(1);
- listGoodsBrief.add(goodsBrief);
- }
+ List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>();
- try {
- LogHelper.errorDetailInfo(e, "鍒嗕韩鍟嗗搧鍑洪敊-鍟嗗搧ID:" + goodsActivity.getAuctionId(), "--");
- } catch (Exception e1) {
- e1.printStackTrace();
- }
- }
- });
- }
+ if (activity.getGoodsList() != null) {
- if (listGoodsBrief.size() < 1) {
- throw new ActivityException(1, "鍟嗗搧涓嬫灦");
- }
+ activity.getGoodsList().stream().parallel().forEach(goodsActivity -> {
- ShareGoodsRecordDTO shareRecord = userShareGoodsRecordService.addRecordActivity(uid, listGoodsBrief);
- FileUploadResult loadResult = new FileUploadResult();
- loadResult.setUrl(shareRecord.getSharePictureUrl());
-
- imgList.add(loadResult);
- result.setImgList(imgList);
+ try {
+ TaoBaoGoodsBrief goodsBrief = redisManager
+ .getTaoBaoGoodsBrief(Long.parseLong(goodsActivity.getAuctionId()));
+ listGoodsBrief.add(goodsBrief);
+ } catch (TaobaoGoodsDownException e) {
- return result;
- }
+ CommonGoods commonGoods = commonGoodsService.getCommonGoodsByGoodsIdAndGoodsType(
+ Long.parseLong(goodsActivity.getAuctionId()), CommonGoods.GOODS_TYPE_TB);
+ if (commonGoods != null) {
+ TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods);
+ goodsBrief.setState(1);
+ listGoodsBrief.add(goodsBrief);
+ }
- @Override
- public JSONObject shareGoodsV2(Long uid, Long activityId) throws ActivityException, UserShareGoodsRecordException {
+ try {
+ LogHelper.errorDetailInfo(e, "鍒嗕韩鍟嗗搧鍑洪敊-鍟嗗搧ID:" + goodsActivity.getAuctionId(), "--");
+ } catch (Exception e1) {
+ e1.printStackTrace();
+ }
+ }
+ });
+ }
- RecommendActivity activity = recommendActivityMapper.selectByPrimaryKey(activityId);
+ if (listGoodsBrief.size() < 1) {
+ throw new ActivityException(1, "鍟嗗搧涓嬫灦");
+ }
- if (activity == null)
- throw new ActivityException(2, "鍔ㄦ�佷笉瀛樺湪");
+ ShareGoodsRecordDTO shareRecord = userShareGoodsRecordService.addRecordActivity(uid, listGoodsBrief);
+ FileUploadResult loadResult = new FileUploadResult();
+ loadResult.setUrl(shareRecord.getSharePictureUrl());
- if (activity.getType() != RecommendActivity.TYPE_SHARE_GOODS)
- throw new ActivityException(3, "涓嶅睘浜庡垎浜晢鍝佸姩鎬�");
+ imgList.add(loadResult);
+ result.setImgList(imgList);
- ActivityShareResult result = new ActivityShareResult();
+ return result;
+ }
- String title = activity.getTitle().replace("<br>", "/n").replace("<p>", "").replace("</p>", "");
- if (title != null && title.trim().endsWith("/n"))
- title = title.trim().substring(0, title.trim().length() - 2);
+ @Override
+ public JSONObject shareGoodsV2(Long uid, Long activityId) throws ActivityException, UserShareGoodsRecordException {
- result.setTitle(title);
+ RecommendActivity activity = recommendActivityMapper.selectByPrimaryKey(activityId);
- List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>();
+ if (activity == null)
+ throw new ActivityException(2, "鍔ㄦ�佷笉瀛樺湪");
- if (activity.getGoodsList() != null) {
- activity.getGoodsList().stream().parallel().forEach(goodsActivity -> {
- try {
- TaoBaoGoodsBrief goodsBrief = redisManager
- .getTaoBaoGoodsBrief(Long.parseLong(goodsActivity.getAuctionId()));
- listGoodsBrief.add(goodsBrief);
+ if (activity.getType() != RecommendActivity.TYPE_SHARE_GOODS)
+ throw new ActivityException(3, "涓嶅睘浜庡垎浜晢鍝佸姩鎬�");
- } catch (TaobaoGoodsDownException e) {
+ ActivityShareResult result = new ActivityShareResult();
- CommonGoods commonGoods = commonGoodsService.getCommonGoodsByGoodsIdAndGoodsType(
- Long.parseLong(goodsActivity.getAuctionId()), CommonGoods.GOODS_TYPE_TB);
- if (commonGoods != null) {
- TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods);
- goodsBrief.setState(1);
- listGoodsBrief.add(goodsBrief);
- }
+ String title = activity.getTitle().replace("<br>", "/n").replace("<p>", "").replace("</p>", "");
+ if (title != null && title.trim().endsWith("/n"))
+ title = title.trim().substring(0, title.trim().length() - 2);
- try {
- LogHelper.errorDetailInfo(e, "鍒嗕韩鍟嗗搧鍑洪敊-鍟嗗搧ID:" + goodsActivity.getAuctionId(), "--");
- } catch (Exception e1) {
- e1.printStackTrace();
- }
- }
- });
- }
+ result.setTitle(title);
- if (listGoodsBrief.size() < 1) {
- throw new ActivityException(1, "鍟嗗搧涓嬫灦");
- }
+ List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>();
- String fontColor1 = "#000000";
- String fontColor2 = "#E5005C";
- JSONArray array = new JSONArray();
+ if (activity.getGoodsList() != null) {
+ activity.getGoodsList().stream().parallel().forEach(goodsActivity -> {
+ try {
+ TaoBaoGoodsBrief goodsBrief = redisManager
+ .getTaoBaoGoodsBrief(Long.parseLong(goodsActivity.getAuctionId()));
+ listGoodsBrief.add(goodsBrief);
- JSONObject contentJson1 = new JSONObject();
- contentJson1.put("color", fontColor1);
- contentJson1.put("content", "棰勪及鍒嗕韩濂栭噾:");
- String shareMoney = "0";
- String revenue = "楼0";
- String totalGetMoney = activity.getTotalGetMoney();
- if (totalGetMoney != null && totalGetMoney.trim().length() > 0) {
- String[] split = totalGetMoney.split("锛�");
- if (split != null) {
- revenue = split[1];
- }
+ } catch (TaobaoGoodsDownException e) {
- String[] splitMoney = totalGetMoney.split("楼");
- if (splitMoney != null) {
- shareMoney = splitMoney[1];
- }
- }
+ CommonGoods commonGoods = commonGoodsService.getCommonGoodsByGoodsIdAndGoodsType(
+ Long.parseLong(goodsActivity.getAuctionId()), CommonGoods.GOODS_TYPE_TB);
+ if (commonGoods != null) {
+ TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods);
+ goodsBrief.setState(1);
+ listGoodsBrief.add(goodsBrief);
+ }
- JSONObject contentJson2 = new JSONObject();
- contentJson2.put("color", fontColor2);
- contentJson2.put("content", revenue);
-
- array.add(contentJson1);
- array.add(contentJson2);
+ try {
+ LogHelper.errorDetailInfo(e, "鍒嗕韩鍟嗗搧鍑洪敊-鍟嗗搧ID:" + goodsActivity.getAuctionId(), "--");
+ } catch (Exception e1) {
+ e1.printStackTrace();
+ }
+ }
+ });
+ }
- ShareGoodsRecordDTO shareRecord = userShareGoodsRecordService.addRecordActivity(uid, listGoodsBrief);
- FileUploadResult loadResult = new FileUploadResult();
- loadResult.setUrl(shareRecord.getSharePictureUrl());
+ if (listGoodsBrief.size() < 1) {
+ throw new ActivityException(1, "鍟嗗搧涓嬫灦");
+ }
- JSONObject data = new JSONObject();
- data.put("title", title);
- data.put("revenue", array);
- data.put("fanMoney", shareMoney);
- data.put("shareId", shareRecord.getRedisKey());
- data.put("shareImg", loadResult);
- data.put("notifyDesc", configService.get("goods_share_multiple_notify"));
+ String fontColor1 = "#000000";
+ String fontColor2 = "#E5005C";
+ JSONArray array = new JSONArray();
- return data;
+ JSONObject contentJson1 = new JSONObject();
+ contentJson1.put("color", fontColor1);
+ contentJson1.put("content", "棰勪及鍒嗕韩濂栭噾:");
+ String shareMoney = "0";
+ String revenue = "楼0";
+ String totalGetMoney = activity.getTotalGetMoney();
+ if (totalGetMoney != null && totalGetMoney.trim().length() > 0) {
+ String[] split = totalGetMoney.split("锛�");
+ if (split != null) {
+ revenue = split[1];
+ }
- }
+ String[] splitMoney = totalGetMoney.split("楼");
+ if (splitMoney != null) {
+ shareMoney = splitMoney[1];
+ }
+ }
- @Override
- public ActivityShareResult shareInviteImg(Long uid, Long activityId) throws ActivityException {
- RecommendActivity activity = recommendActivityMapper.selectByPrimaryKey(activityId);
- if (activity == null)
- throw new ActivityException(2, "鍔ㄦ�佷笉瀛樺湪");
- if (activity.getType() != RecommendActivity.TYPE_INVITE)
- throw new ActivityException(3, "涓嶅睘浜庨個璇峰姩鎬�");
- if (activity.getImageList() == null || activity.getImageList().size() < 1)
- throw new ActivityException(4, "鏃犺儗鏅浘");
+ JSONObject contentJson2 = new JSONObject();
+ contentJson2.put("color", fontColor2);
+ contentJson2.put("content", revenue);
- ActivityShareResult result = new ActivityShareResult();
- result.setTitle(activity.getTitle().replace("<br>", "/n").replace("<p>", "").replace("</p>", ""));
- List<FileUploadResult> imgList = new ArrayList<>();
+ array.add(contentJson1);
+ array.add(contentJson2);
- RecommendActivityInviteInfo inviteInfo = recommendActivityInviteInfoMapper.selectByActivityId(activityId);
+ ShareGoodsRecordDTO shareRecord = userShareGoodsRecordService.addRecordActivity(uid, listGoodsBrief);
+ FileUploadResult loadResult = new FileUploadResult();
+ loadResult.setUrl(shareRecord.getSharePictureUrl());
- String img = spreadUserImgService.getUserSpreadImg(uid, activity.getImageList().get(0), inviteInfo.getPx(),
- inviteInfo.getPy(), inviteInfo.getSize());
- if (!StringUtil.isNullOrEmpty(img))
- imgList.add(new FileUploadResult(img, ""));
- result.setImgList(imgList);
- return result;
- }
+ SystemEnum system = userInfoService.getUserSystem(uid);
- @Override
- public List<ActivityUser> getActivityUserList() {
- return activityUserMapper.selectList();
- }
+ JSONObject data = new JSONObject();
+ data.put("title", title);
+ data.put("revenue", array);
+ data.put("fanMoney", shareMoney);
+ data.put("shareId", shareRecord.getRedisKey());
+ data.put("shareImg", loadResult);
+ data.put("notifyDesc", configService.getValue(ConfigKeyEnum.goodsShareMultipleNotify.getKey(),system));
- @Transactional
- @Override
- public RecommendActivity addShareGoodsRecommendActivity(Long activityUid, List<Long> goodsList,
- RecommendActivity activity) throws ActivityException , Exception{
+ return data;
- if (goodsList == null || goodsList.size() == 0 || goodsList.size() > 9)
- throw new ActivityException(1, "鍟嗗搧鏁伴噺閿欒锛�10>鍟嗗搧鏁伴噺>0");
-
- if (StringUtil.isNullOrEmpty(activity.getTitle())) {
- throw new ActivityException(1, "鏍囬涓嶈兘涓虹┖");
- }
-
- Integer shareCount = activity.getShareCount();
- if (shareCount == null) {
- activity.setShareCount(0);
- }
-
- Boolean top = activity.getTop();
- if (top == null) {
- activity.setTop(false);
- }
-
- // 鏃堕棿杞崲
- conversionTime(activity);
-
- activity.setActivityUser(new ActivityUser(activityUid));
- activity.setCreateTime(new Date());
- activity.setGoodsList(null);
- activity.setOrderBy(0);
- activity.setType(RecommendActivity.TYPE_SHARE_GOODS);
- recommendActivityMapper.insertSelective(activity);
+ }
- List<CommonGoods> listCommonGoods = new ArrayList<CommonGoods>();
+ @Override
+ public ActivityShareResult shareInviteImg(Long uid, Long activityId) throws ActivityException {
+ RecommendActivity activity = recommendActivityMapper.selectByPrimaryKey(activityId);
+ if (activity == null)
+ throw new ActivityException(2, "鍔ㄦ�佷笉瀛樺湪");
+ if (activity.getType() != RecommendActivity.TYPE_INVITE)
+ throw new ActivityException(3, "涓嶅睘浜庨個璇峰姩鎬�");
+ if (activity.getImageList() == null || activity.getImageList().size() < 1)
+ throw new ActivityException(4, "鏃犺儗鏅浘");
- BigDecimal taotaoMoney = new BigDecimal(0);
- for (long auctionId : goodsList) {
- TaoBaoGoodsBrief tb = null;
- try {
- tb = redisManager.getTaoBaoGoodsBrief(auctionId);
- } catch (TaobaoGoodsDownException e) {
- e.printStackTrace();
- }
- if (tb == null)
- continue;
- RecommendActivityTaoBaoGoods goods = new RecommendActivityTaoBaoGoods();
- goods.setAuctionId(tb.getAuctionId() + "");
- goods.setCreateTime(new Date());
- goods.setDesc(ActivityUtil.getGoodsShowPrice(tb));
- goods.setOrderBy(0);
- goods.setPictUrl(TbImgUtil.getTBSize220ImgWebp(tb.getPictUrl()));
- goods.setTaoBaoGoodsBrief(tb);
- goods.setRecommendActivity(activity);
- goods.setCouponAmount(tb.getCouponAmount());
- recommendActivityTaoBaoGoodsMapper.insertSelective(goods);
- BigDecimal money = taoBaoGoodsBriefService.getShareGoodsUserHongBao(tb);
- taotaoMoney = taotaoMoney.add(money);
+ ActivityShareResult result = new ActivityShareResult();
+ result.setTitle(activity.getTitle().replace("<br>", "/n").replace("<p>", "").replace("</p>", ""));
+ List<FileUploadResult> imgList = new ArrayList<>();
- // 杞崲绠�鐗堝晢鍝佷俊鎭�
- CommonGoods commonGoods = CommonGoodsFactory.create(tb);
- listCommonGoods.add(commonGoods);
- }
+ RecommendActivityInviteInfo inviteInfo = recommendActivityInviteInfoMapper.selectByActivityId(activityId);
+
+ String img = spreadUserImgService.getUserSpreadImg(uid, activity.getImageList().get(0), inviteInfo.getPx(),
+ inviteInfo.getPy(), inviteInfo.getSize());
+ if (!StringUtil.isNullOrEmpty(img))
+ imgList.add(new FileUploadResult(img, ""));
+ result.setImgList(imgList);
+ return result;
+ }
+
+ @Override
+ public List<ActivityUser> getActivityUserList() {
+ return activityUserMapper.selectList();
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public RecommendActivity addShareGoodsRecommendActivity(Long activityUid, List<Long> goodsList,
+ RecommendActivity activity) throws ActivityException, Exception {
+
+ if (goodsList == null || goodsList.size() == 0 || goodsList.size() > 9)
+ throw new ActivityException(1, "鍟嗗搧鏁伴噺閿欒锛�10>鍟嗗搧鏁伴噺>0");
+
+ if (StringUtil.isNullOrEmpty(activity.getTitle())) {
+ throw new ActivityException(1, "鏍囬涓嶈兘涓虹┖");
+ }
+
+ Integer shareCount = activity.getShareCount();
+ if (shareCount == null) {
+ activity.setShareCount(0);
+ }
+
+ Boolean top = activity.getTop();
+ if (top == null) {
+ activity.setTop(false);
+ }
+
+ // 鏃堕棿杞崲
+ conversionTime(activity);
+
+ activity.setActivityUser(new ActivityUser(activityUid));
+ activity.setCreateTime(new Date());
+ activity.setGoodsList(null);
+ activity.setOrderBy(0);
+ activity.setType(RecommendActivity.TYPE_SHARE_GOODS);
+ recommendActivityMapper.insertSelective(activity);
+
+ List<CommonGoods> listCommonGoods = new ArrayList<CommonGoods>();
+
+ BigDecimal taotaoMoney = new BigDecimal(0);
+ for (long auctionId : goodsList) {
+ TaoBaoGoodsBrief tb = null;
+ try {
+ tb = redisManager.getTaoBaoGoodsBrief(auctionId);
+ } catch (TaobaoGoodsDownException e) {
+ e.printStackTrace();
+ }
+ if (tb == null)
+ continue;
+ RecommendActivityTaoBaoGoods goods = new RecommendActivityTaoBaoGoods();
+ goods.setAuctionId(tb.getAuctionId() + "");
+ goods.setCreateTime(new Date());
+ goods.setDesc(ActivityUtil.getGoodsShowPrice(tb));
+ goods.setOrderBy(0);
+ goods.setPictUrl(TbImgUtil.getTBSize220ImgWebp(tb.getPictUrl()));
+ goods.setTaoBaoGoodsBrief(tb);
+ goods.setRecommendActivity(activity);
+ goods.setCouponAmount(tb.getCouponAmount());
+ recommendActivityTaoBaoGoodsMapper.insertSelective(goods);
+ BigDecimal money = taoBaoGoodsBriefService.getShareGoodsUserHongBao(tb,SystemEnum.blks);
+ taotaoMoney = taotaoMoney.add(money);
+
+ // 杞崲绠�鐗堝晢鍝佷俊鎭�
+ CommonGoods commonGoods = CommonGoodsFactory.create(tb);
+ listCommonGoods.add(commonGoods);
+ }
+
+ try {
+ // 鏇存柊绠�鐗堜俊鎭�
+ commonGoodsService.addBatchCommonGoods(listCommonGoods);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ RecommendActivity updateActivity = new RecommendActivity();
+ updateActivity.setId(activity.getId());
+ updateActivity.setTotalGetMoney("棰勪及鍒嗕韩濂栭噾锛毬�" + taotaoMoney.toString());
+ recommendActivityMapper.updateByPrimaryKeySelective(updateActivity);
+
+ return activity;
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public RecommendActivity addInviteImgRecommendActivity(Long activityUid, RecommendActivity activity, String url,
+ int px, int py, int erCodeSize) throws ActivityException, Exception {
+ if (StringUtil.isNullOrEmpty(url))
+ throw new ActivityException(1, "鍥剧墖涓虹┖");
+
+ Integer shareCount = activity.getShareCount();
+ if (shareCount == null) {
+ activity.setShareCount(0);
+ }
+
+ Boolean top = activity.getTop();
+ if (top == null) {
+ activity.setTop(false);
+ }
+
+ // 鏃堕棿杞崲
+ conversionTime(activity);
+
+ activity.setActivityUser(new ActivityUser(activityUid));
+ activity.setCreateTime(new Date());
+ activity.setGoodsList(null);
+ activity.setOrderBy(0);
+ activity.setType(RecommendActivity.TYPE_INVITE);
+ recommendActivityMapper.insertSelective(activity);
+ RecommendActivityImg img = new RecommendActivityImg();
+ img.setImg(url);
+ img.setOrderBy(0);
+ img.setRecommendActivity(activity);
+ try {
+ int[] hw = ImageUtil.getImgWidthAndHeight(url);
+ img.setImgHeight(hw[1]);
+ img.setImgWidth(hw[0]);
+ } catch (Exception e) {
+ throw new ActivityException(2, "鍥剧墖灏哄鑾峰彇澶辫触");
+ }
+
+ // 鎻掑叆浜岀淮鐮佷綅缃俊鎭�
+ RecommendActivityInviteInfo recommendActivityInviteInfo = new RecommendActivityInviteInfo();
+ recommendActivityInviteInfo.setPx(px);
+ recommendActivityInviteInfo.setPy(py);
+ recommendActivityInviteInfo.setRecommendActivity(activity);
+ recommendActivityInviteInfo.setSize(erCodeSize);
+ recommendActivityInviteInfoMapper.insertSelective(recommendActivityInviteInfo);
+ recommendActivityImgMapper.insertSelective(img);
+ return activity;
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public RecommendActivity addTextAndImgRecommendActivity(Long activityUid, List<String> imgList,
+ RecommendActivity activity) throws ActivityException, Exception {
+
+ Integer shareCount = activity.getShareCount();
+ if (shareCount == null) {
+ activity.setShareCount(0);
+ }
+
+ Boolean top = activity.getTop();
+ if (top == null) {
+ activity.setTop(false);
+ }
+
+ // 鏃堕棿杞崲
+ conversionTime(activity);
+
+ activity.setActivityUser(new ActivityUser(activityUid));
+ activity.setCreateTime(new Date());
+ activity.setGoodsList(null);
+ activity.setOrderBy(0);
+ activity.setType(RecommendActivity.TYPE_TEXTIMG);
+ recommendActivityMapper.insertSelective(activity);
+ for (String imgUrl : imgList) {
+ RecommendActivityImg img = new RecommendActivityImg();
+ img.setImg(imgUrl);
+ img.setOrderBy(0);
+ img.setRecommendActivity(activity);
+ try {
+ int[] hw = ImageUtil.getImgWidthAndHeight(imgUrl);
+ img.setImgHeight(hw[1]);
+ img.setImgWidth(hw[0]);
+ } catch (Exception e) {
+ throw new ActivityException(2, "鍥剧墖灏哄鑾峰彇澶辫触");
+ }
+ recommendActivityImgMapper.insertSelective(img);
+ }
+ return activity;
+ }
+
+ @Transactional
+ @Override
+ public void deleteRecommendActivity(long[] ids) {
+ recommendActivityMapper.batchDeleteByPrimaryKey(ids);
+ recommendActivityImgMapper.batchDeleteByActivityid(ids);
+ recommendActivityTaoBaoGoodsMapper.batchDeleteByActivityid(ids);
+
+ try {
+ for (Long id : ids) {
+ dynamicInfoService.deleteActivity(id);
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ }
+
+ @Override
+ public RecommendActivity getRecommendActivityById(Long id) {
+ return recommendActivityMapper.selectByPrimaryKey(id);
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public RecommendActivity updateShareGoodsRecommendActivity(Long activityUid,
+ List<Long> goodsList, RecommendActivity activity) throws ActivityException, Exception {
+
+ if (goodsList == null || goodsList.size() == 0 || goodsList.size() > 9)
+ throw new ActivityException(1, "鍟嗗搧鏁伴噺閿欒锛�10>鍟嗗搧鏁伴噺>0");
+
+ // 鍒犻櫎涔嬪墠鐨勫晢鍝�
+ recommendActivityTaoBaoGoodsMapper.batchDeleteByActivityid(new long[]{activity.getId()});
+
+
+ activity.setActivityUser(new ActivityUser(activityUid));
+ activity.setGoodsList(null);
+ activity.setOrderBy(0);
+
+ Integer shareCount = activity.getShareCount();
+ if (shareCount == null) {
+ activity.setShareCount(0);
+ }
+
+ Boolean top = activity.getTop();
+ if (top == null) {
+ activity.setTop(false);
+ }
+
+ // 鏃堕棿杞崲
+ conversionTime(activity);
+
+ activity.setType(RecommendActivity.TYPE_SHARE_GOODS);
+ recommendActivityMapper.updateByPrimaryKeySelective(activity);
+
+ List<RecommendActivityTaoBaoGoods> listgoods = new ArrayList<RecommendActivityTaoBaoGoods>();
+ BigDecimal taotaoMoney = new BigDecimal(0);
+ for (long auctionId : goodsList) {
+ TaoBaoGoodsBrief tb = null;
+
+ try {
+ tb = redisManager.getTaoBaoGoodsBrief(auctionId);
+ } catch (TaobaoGoodsDownException e) {
+ e.printStackTrace();
+ }
+
+ if (tb == null)
+ continue;
+ RecommendActivityTaoBaoGoods goods = new RecommendActivityTaoBaoGoods();
+ goods.setAuctionId(tb.getAuctionId() + "");
+ goods.setCreateTime(new Date());
+ goods.setDesc(ActivityUtil.getGoodsShowPrice(tb));
+ goods.setOrderBy(0);
+ goods.setPictUrl(TbImgUtil.getTBSize220ImgWebp(tb.getPictUrl()));
+ goods.setTaoBaoGoodsBrief(tb);
+ goods.setRecommendActivity(activity);
+ goods.setTitle(tb.getTitle());
+ goods.setCouponAmount(tb.getCouponAmount());
+ recommendActivityTaoBaoGoodsMapper.insertSelective(goods);
+ BigDecimal money = taoBaoGoodsBriefService.getShareGoodsUserHongBao(tb,SystemEnum.blks);
+ taotaoMoney = taotaoMoney.add(money);
+
+ listgoods.add(goods);
+ }
+
+ RecommendActivity updateActivity = new RecommendActivity();
+ updateActivity.setId(activity.getId());
+ updateActivity.setTotalGetMoney("棰勪及鍒嗕韩濂栭噾锛毬�" + taotaoMoney.toString());
+ recommendActivityMapper.updateByPrimaryKeySelective(updateActivity);
+
+ // 1.5.4 鍔ㄦ�佷俊鎭洿鏂�
+ RecommendActivity exist = recommendActivityMapper.selectByPrimaryKey(activity.getId());
+ if (exist.getState() != null && exist.getState() == 1) {
+ try {
+ ActivityUser activityUser = activityUserService.selectByPrimaryKey(activityUid);
+ exist.setActivityUser(activityUser);
+ exist.setGoodsList(listgoods);
+ dynamicInfoService.insertActivityRecommend(exist);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ return activity;
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public RecommendActivity updateInviteImgRecommendActivity(Long activityUid, RecommendActivity activity, String url,
+ int px, int py, int erCodeSize) throws ActivityException, Exception {
+ recommendActivityImgMapper.batchDeleteByActivityid(new long[]{activity.getId()});
+
+ Integer shareCount = activity.getShareCount();
+ if (shareCount == null) {
+ activity.setShareCount(0);
+ }
+
+ Boolean top = activity.getTop();
+ if (top == null) {
+ activity.setTop(false);
+ }
+
+ // 鏃堕棿杞崲
+ conversionTime(activity);
+
+ activity.setActivityUser(new ActivityUser(activityUid));
+ activity.setGoodsList(null);
+ activity.setOrderBy(0);
+ activity.setType(RecommendActivity.TYPE_INVITE);
+ recommendActivityMapper.updateByPrimaryKeySelective(activity);
+ RecommendActivityImg img = new RecommendActivityImg();
+ img.setImg(url);
+ img.setOrderBy(0);
+ img.setRecommendActivity(activity);
+ try {
+ int[] hw = ImageUtil.getImgWidthAndHeight(url);
+ img.setImgHeight(hw[1]);
+ img.setImgWidth(hw[0]);
+ } catch (Exception e) {
+ throw new ActivityException(2, "鍥剧墖灏哄鑾峰彇澶辫触");
+ }
+ recommendActivityImgMapper.insertSelective(img);
+
+ RecommendActivityInviteInfo inviteInfo = recommendActivityInviteInfoMapper.selectByActivityId(activity.getId());
+ if (inviteInfo != null)
+ recommendActivityInviteInfoMapper.deleteByPrimaryKey(inviteInfo.getId());
- try {
- // 鏇存柊绠�鐗堜俊鎭�
- commonGoodsService.addBatchCommonGoods(listCommonGoods);
- } catch (Exception e) {
- e.printStackTrace();
- }
+ // 鎻掑叆浜岀淮鐮佷綅缃俊鎭�
+ RecommendActivityInviteInfo recommendActivityInviteInfo = new RecommendActivityInviteInfo();
+ recommendActivityInviteInfo.setPx(px);
+ recommendActivityInviteInfo.setPy(py);
+ recommendActivityInviteInfo.setRecommendActivity(activity);
+ recommendActivityInviteInfo.setSize(erCodeSize);
+ recommendActivityInviteInfoMapper.insertSelective(recommendActivityInviteInfo);
- RecommendActivity updateActivity = new RecommendActivity();
- updateActivity.setId(activity.getId());
- updateActivity.setTotalGetMoney("棰勪及鍒嗕韩濂栭噾锛毬�" + taotaoMoney.toString());
- recommendActivityMapper.updateByPrimaryKeySelective(updateActivity);
- return activity;
- }
+ RecommendActivity exist = recommendActivityMapper.selectByPrimaryKey(activity.getId());
+ if (exist.getState() != null && exist.getState() == 1) {
+ try {
+ ActivityUser activityUser = activityUserService.selectByPrimaryKey(activityUid);
+ activity.setActivityUser(activityUser);
+ activity.setInviteInfo(recommendActivityInviteInfo);
+ List<String> imageList = new ArrayList<String>();
+ imageList.add(url);
+ activity.setImageList(imageList);
+ dynamicInfoService.insertInviteActivity(activity);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ return activity;
+ }
- @Transactional
- @Override
- public RecommendActivity addInviteImgRecommendActivity(Long activityUid, RecommendActivity activity, String url,
- int px, int py, int erCodeSize) throws ActivityException, Exception {
- if (StringUtil.isNullOrEmpty(url))
- throw new ActivityException(1, "鍥剧墖涓虹┖");
-
- Integer shareCount = activity.getShareCount();
- if (shareCount == null) {
- activity.setShareCount(0);
- }
-
- Boolean top = activity.getTop();
- if (top == null) {
- activity.setTop(false);
- }
-
- // 鏃堕棿杞崲
- conversionTime(activity);
-
- activity.setActivityUser(new ActivityUser(activityUid));
- activity.setCreateTime(new Date());
- activity.setGoodsList(null);
- activity.setOrderBy(0);
- activity.setType(RecommendActivity.TYPE_INVITE);
- recommendActivityMapper.insertSelective(activity);
- RecommendActivityImg img = new RecommendActivityImg();
- img.setImg(url);
- img.setOrderBy(0);
- img.setRecommendActivity(activity);
- try {
- int[] hw = ImageUtil.getImgWidthAndHeight(url);
- img.setImgHeight(hw[1]);
- img.setImgWidth(hw[0]);
- } catch (Exception e) {
- throw new ActivityException(2, "鍥剧墖灏哄鑾峰彇澶辫触");
- }
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public RecommendActivity updateTextAndImgRecommendActivity(Long activityUid, List<String> imgList,
+ RecommendActivity activity) throws ActivityException, Exception {
+ recommendActivityImgMapper.batchDeleteByActivityid(new long[]{activity.getId()});
- // 鎻掑叆浜岀淮鐮佷綅缃俊鎭�
- RecommendActivityInviteInfo recommendActivityInviteInfo = new RecommendActivityInviteInfo();
- recommendActivityInviteInfo.setPx(px);
- recommendActivityInviteInfo.setPy(py);
- recommendActivityInviteInfo.setRecommendActivity(activity);
- recommendActivityInviteInfo.setSize(erCodeSize);
- recommendActivityInviteInfoMapper.insertSelective(recommendActivityInviteInfo);
- recommendActivityImgMapper.insertSelective(img);
- return activity;
- }
+ Integer shareCount = activity.getShareCount();
+ if (shareCount == null) {
+ activity.setShareCount(0);
+ }
- @Transactional
- @Override
- public RecommendActivity addTextAndImgRecommendActivity(Long activityUid, List<String> imgList,
- RecommendActivity activity) throws ActivityException, Exception {
-
- Integer shareCount = activity.getShareCount();
- if (shareCount == null) {
- activity.setShareCount(0);
- }
-
- Boolean top = activity.getTop();
- if (top == null) {
- activity.setTop(false);
- }
-
- // 鏃堕棿杞崲
- conversionTime(activity);
-
- activity.setActivityUser(new ActivityUser(activityUid));
- activity.setCreateTime(new Date());
- activity.setGoodsList(null);
- activity.setOrderBy(0);
- activity.setType(RecommendActivity.TYPE_TEXTIMG);
- recommendActivityMapper.insertSelective(activity);
- for (String imgUrl : imgList) {
- RecommendActivityImg img = new RecommendActivityImg();
- img.setImg(imgUrl);
- img.setOrderBy(0);
- img.setRecommendActivity(activity);
- try {
- int[] hw = ImageUtil.getImgWidthAndHeight(imgUrl);
- img.setImgHeight(hw[1]);
- img.setImgWidth(hw[0]);
- } catch (Exception e) {
- throw new ActivityException(2, "鍥剧墖灏哄鑾峰彇澶辫触");
- }
- recommendActivityImgMapper.insertSelective(img);
- }
- return activity;
- }
+ Boolean top = activity.getTop();
+ if (top == null) {
+ activity.setTop(false);
+ }
+ // 鏃堕棿杞崲
+ conversionTime(activity);
- @Transactional
- @Override
- public void deleteRecommendActivity(long[] ids) {
- recommendActivityMapper.batchDeleteByPrimaryKey(ids);
- recommendActivityImgMapper.batchDeleteByActivityid(ids);
- recommendActivityTaoBaoGoodsMapper.batchDeleteByActivityid(ids);
-
- try {
- for (Long id: ids) {
- dynamicInfoService.deleteActivity(id);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
+ activity.setActivityUser(new ActivityUser(activityUid));
+ activity.setGoodsList(null);
+ activity.setOrderBy(0);
+ activity.setType(RecommendActivity.TYPE_TEXTIMG);
+ recommendActivityMapper.updateByPrimaryKeySelective(activity);
+ for (String imgUrl : imgList) {
+ RecommendActivityImg img = new RecommendActivityImg();
+ img.setImg(imgUrl);
+ img.setOrderBy(0);
+ img.setRecommendActivity(activity);
+ try {
+ int[] hw = ImageUtil.getImgWidthAndHeight(imgUrl);
+ img.setImgHeight(hw[1]);
+ img.setImgWidth(hw[0]);
+ } catch (Exception e) {
+ throw new ActivityException(2, "鍥剧墖灏哄鑾峰彇澶辫触");
+ }
+ recommendActivityImgMapper.insertSelective(img);
+ }
+ return activity;
+ }
- }
+ @Override
+ public void addShareCount(Long activityId, int count) {
+ recommendActivityMapper.addShareCount(activityId, count);
+ }
- @Override
- public RecommendActivity getRecommendActivityById(Long id) {
- return recommendActivityMapper.selectByPrimaryKey(id);
- }
+ @Cacheable(value = "activityCache", key = "'getRecommendActivityList-'+#page+'-'+#pageSize")
+ @Override
+ public List<RecommendActivity> getRecommendActivityListCache(int page, int pageSize) {
+ List<RecommendActivity> activityList = getRecommendActivityList(page, pageSize);
+ if (activityList != null) {
+ for (int i = 0; i < activityList.size(); i++) {
- @Transactional
- @Override
- public RecommendActivity updateShareGoodsRecommendActivity(Long activityUid,
- List<Long> goodsList, RecommendActivity activity) throws ActivityException , Exception{
-
- if (goodsList == null || goodsList.size() == 0 || goodsList.size() > 9)
- throw new ActivityException(1, "鍟嗗搧鏁伴噺閿欒锛�10>鍟嗗搧鏁伴噺>0");
-
- // 鍒犻櫎涔嬪墠鐨勫晢鍝�
- recommendActivityTaoBaoGoodsMapper.batchDeleteByActivityid(new long[] { activity.getId() });
-
-
- activity.setActivityUser(new ActivityUser(activityUid));
- activity.setGoodsList(null);
- activity.setOrderBy(0);
-
- Integer shareCount = activity.getShareCount();
- if (shareCount == null) {
- activity.setShareCount(0);
- }
-
- Boolean top = activity.getTop();
- if (top == null) {
- activity.setTop(false);
- }
-
- // 鏃堕棿杞崲
- conversionTime(activity);
+ RecommendActivity activity = activityList.get(i);
- activity.setType(RecommendActivity.TYPE_SHARE_GOODS);
- recommendActivityMapper.updateByPrimaryKeySelective(activity);
+ // 绛涢�夊嚭涓嶈冻9涓殑鍟嗗搧
+ if (RecommendActivity.TYPE_SHARE_GOODS == activity.getType()
+ && (activity.getGoodsList() == null || activity.getGoodsList().size() < 9)) {
+ activityList.remove(activity);
+ i--;
+ continue;
+ }
- List<RecommendActivityTaoBaoGoods> listgoods = new ArrayList<RecommendActivityTaoBaoGoods>();
- BigDecimal taotaoMoney = new BigDecimal(0);
- for (long auctionId : goodsList) {
- TaoBaoGoodsBrief tb = null;
- try {
- tb = redisManager.getTaoBaoGoodsBrief(auctionId);
- } catch (TaobaoGoodsDownException e) {
- e.printStackTrace();
- }
+ if (activity != null && activity.getGoodsList() != null) {
+ for (RecommendActivityTaoBaoGoods goods : activity.getGoodsList()) {
+ goods.setQuanPrice(goods.getDesc().replace("鍒稿悗浠凤細楼", ""));
+ }
+ }
- if (tb == null)
- continue;
- RecommendActivityTaoBaoGoods goods = new RecommendActivityTaoBaoGoods();
- goods.setAuctionId(tb.getAuctionId() + "");
- goods.setCreateTime(new Date());
- goods.setDesc(ActivityUtil.getGoodsShowPrice(tb));
- goods.setOrderBy(0);
- goods.setPictUrl(TbImgUtil.getTBSize220ImgWebp(tb.getPictUrl()));
- goods.setTaoBaoGoodsBrief(tb);
- goods.setRecommendActivity(activity);
- goods.setTitle(tb.getTitle());
- goods.setCouponAmount(tb.getCouponAmount());
- recommendActivityTaoBaoGoodsMapper.insertSelective(goods);
- BigDecimal money = taoBaoGoodsBriefService.getShareGoodsUserHongBao(tb);
- taotaoMoney = taotaoMoney.add(money);
-
- listgoods.add(goods);
- }
+ // 杩囨护涓�閬�
+ if (!StringUtil.isNullOrEmpty(activity.getTitle())) {
+ activity.setTitle(Jsoup.parse(activity.getTitle()).text());
+ if (activity.getShareCount() >= 10000) {
+ activity.setShareCountShow(NumberUtil.get1PointNumber(activity.getShareCount() / 10000.0) + "涓�");
+ } else {
+ activity.setShareCountShow(activity.getShareCount() + "");
+ }
+ }
- RecommendActivity updateActivity = new RecommendActivity();
- updateActivity.setId(activity.getId());
- updateActivity.setTotalGetMoney("棰勪及鍒嗕韩濂栭噾锛毬�" + taotaoMoney.toString());
- recommendActivityMapper.updateByPrimaryKeySelective(updateActivity);
-
- // 1.5.4 鍔ㄦ�佷俊鎭洿鏂�
- RecommendActivity exist = recommendActivityMapper.selectByPrimaryKey(activity.getId());
- if (exist.getState() != null && exist.getState() == 1) {
- try {
- ActivityUser activityUser = activityUserService.selectByPrimaryKey(activityUid);
- exist.setActivityUser(activityUser);
- exist.setGoodsList(listgoods);
- dynamicInfoService.insertActivityRecommend(exist);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
- return activity;
- }
+ Date startTime = activity.getStartTime();
+ if (startTime != null) {
+ activity.setCreateTime(startTime);
+ }
- @Transactional
- @Override
- public RecommendActivity updateInviteImgRecommendActivity(Long activityUid, RecommendActivity activity, String url,
- int px, int py, int erCodeSize) throws ActivityException , Exception{
- recommendActivityImgMapper.batchDeleteByActivityid(new long[] { activity.getId() });
-
- Integer shareCount = activity.getShareCount();
- if (shareCount == null) {
- activity.setShareCount(0);
- }
-
- Boolean top = activity.getTop();
- if (top == null) {
- activity.setTop(false);
- }
-
- // 鏃堕棿杞崲
- conversionTime(activity);
-
- activity.setActivityUser(new ActivityUser(activityUid));
- activity.setGoodsList(null);
- activity.setOrderBy(0);
- activity.setType(RecommendActivity.TYPE_INVITE);
- recommendActivityMapper.updateByPrimaryKeySelective(activity);
- RecommendActivityImg img = new RecommendActivityImg();
- img.setImg(url);
- img.setOrderBy(0);
- img.setRecommendActivity(activity);
- try {
- int[] hw = ImageUtil.getImgWidthAndHeight(url);
- img.setImgHeight(hw[1]);
- img.setImgWidth(hw[0]);
- } catch (Exception e) {
- throw new ActivityException(2, "鍥剧墖灏哄鑾峰彇澶辫触");
- }
- recommendActivityImgMapper.insertSelective(img);
+ }
- RecommendActivityInviteInfo inviteInfo = recommendActivityInviteInfoMapper.selectByActivityId(activity.getId());
- if (inviteInfo != null)
- recommendActivityInviteInfoMapper.deleteByPrimaryKey(inviteInfo.getId());
+ }
+ return activityList;
+ }
- // 鎻掑叆浜岀淮鐮佷綅缃俊鎭�
- RecommendActivityInviteInfo recommendActivityInviteInfo = new RecommendActivityInviteInfo();
- recommendActivityInviteInfo.setPx(px);
- recommendActivityInviteInfo.setPy(py);
- recommendActivityInviteInfo.setRecommendActivity(activity);
- recommendActivityInviteInfo.setSize(erCodeSize);
- recommendActivityInviteInfoMapper.insertSelective(recommendActivityInviteInfo);
+ @Cacheable(value = "activityCache", key = "'getRecommendActivityCount'")
+ @Override
+ public long getRecommendActivityCountCache() {
+ return recommendActivityMapper.getRecommendActivityEffectiveCount();
+ }
-
- RecommendActivity exist = recommendActivityMapper.selectByPrimaryKey(activity.getId());
- if (exist.getState() != null && exist.getState() == 1) {
- try {
- ActivityUser activityUser = activityUserService.selectByPrimaryKey(activityUid);
- activity.setActivityUser(activityUser);
- activity.setInviteInfo(recommendActivityInviteInfo);
- List<String> imageList = new ArrayList<String>();
- imageList.add(url);
- activity.setImageList(imageList);
- dynamicInfoService.insertInviteActivity(activity);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- return activity;
- }
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public void upgradeShareGoodsRecommendActivity(Long id) throws ActivityException {
+ // 鑾峰彇鍟嗗搧
+ List<RecommendActivityTaoBaoGoods> list = recommendActivityTaoBaoGoodsMapper.selectByActivityId(id);
+ if (list != null)
+ for (RecommendActivityTaoBaoGoods goods : list) {
+ // 涓嬫灦鍟嗗搧涓嶅繀鏇存柊
+ if (goods.getState() == RecommendActivityTaoBaoGoods.STATE_UNSHELVE)
+ continue;
+ try {
+ TaoBaoGoodsBrief tbGoods = TaoKeApiUtil.searchGoodsDetail(Long.parseLong(goods.getAuctionId()));
+ if (tbGoods != null) {
+ RecommendActivityTaoBaoGoods update = new RecommendActivityTaoBaoGoods();
+ update.setPictUrl(TbImgUtil.getTBSize220ImgWebp(tbGoods.getPictUrl()));
+ update.setId(goods.getId());
+ update.setDesc(ActivityUtil.getGoodsShowPrice(tbGoods));
+ update.setCouponAmount(tbGoods.getCouponAmount());
+ // 褰撴病鏈夊埜鐨勬椂鍊欏晢鍝佹棤鏁�
+ if (StringUtil.isNullOrEmpty(tbGoods.getCouponActivityId())
+ || tbGoods.getCouponLeftCount() == null || tbGoods.getCouponLeftCount() == 0)
+ update.setState(RecommendActivityTaoBaoGoods.STATE_UNSHELVE);
+ else
+ update.setState(RecommendActivityTaoBaoGoods.STATE_NORMAL);
+ recommendActivityTaoBaoGoodsMapper.updateByPrimaryKeySelective(update);
+ try {
+ taoBaoGoodsUpdateService.updateTaoBaoGoods(tbGoods);
+ } catch (TaobaoGoodsUpdateException e) {
+ e.printStackTrace();
+ }
+ }
+ } catch (TaobaoGoodsDownException e) {
+ RecommendActivityTaoBaoGoods update = new RecommendActivityTaoBaoGoods();
+ update.setId(goods.getId());
+ update.setState(RecommendActivityTaoBaoGoods.STATE_UNSHELVE);
+ recommendActivityTaoBaoGoodsMapper.updateByPrimaryKeySelective(update);
+ taoBaoGoodsUpdateService.offlineTaoBaoGoods(Long.parseLong(goods.getAuctionId()));
+ }
+ }
+ }
- @Transactional
- @Override
- public RecommendActivity updateTextAndImgRecommendActivity(Long activityUid, List<String> imgList,
- RecommendActivity activity) throws ActivityException , Exception{
- recommendActivityImgMapper.batchDeleteByActivityid(new long[] { activity.getId() });
-
- Integer shareCount = activity.getShareCount();
- if (shareCount == null) {
- activity.setShareCount(0);
- }
-
- Boolean top = activity.getTop();
- if (top == null) {
- activity.setTop(false);
- }
- // 鏃堕棿杞崲
- conversionTime(activity);
-
- activity.setActivityUser(new ActivityUser(activityUid));
- activity.setGoodsList(null);
- activity.setOrderBy(0);
- activity.setType(RecommendActivity.TYPE_TEXTIMG);
- recommendActivityMapper.updateByPrimaryKeySelective(activity);
- for (String imgUrl : imgList) {
- RecommendActivityImg img = new RecommendActivityImg();
- img.setImg(imgUrl);
- img.setOrderBy(0);
- img.setRecommendActivity(activity);
- try {
- int[] hw = ImageUtil.getImgWidthAndHeight(imgUrl);
- img.setImgHeight(hw[1]);
- img.setImgWidth(hw[0]);
- } catch (Exception e) {
- throw new ActivityException(2, "鍥剧墖灏哄鑾峰彇澶辫触");
- }
- recommendActivityImgMapper.insertSelective(img);
- }
- return activity;
- }
+ @Override
+ public List<RecommendActivity> getRecommendActivityList(int type, int page, int pageSize) {
+ return recommendActivityMapper.getRecommendActivityListByType(type, (page - 1) * pageSize, pageSize);
+ }
- @Override
- public void addShareCount(Long activityId, int count) {
- recommendActivityMapper.addShareCount(activityId, count);
- }
+ @Override
+ public long getRecommendActivityCount(int type) {
+ return recommendActivityMapper.getRecommendActivityCountByType(type);
+ }
- @Cacheable(value = "activityCache", key = "'getRecommendActivityList-'+#page+'-'+#pageSize")
- @Override
- public List<RecommendActivity> getRecommendActivityListCache(int page, int pageSize) {
- List<RecommendActivity> activityList = getRecommendActivityList(page, pageSize);
- if (activityList != null) {
- for (int i = 0; i < activityList.size(); i++) {
-
- RecommendActivity activity = activityList.get(i);
-
- // 绛涢�夊嚭涓嶈冻9涓殑鍟嗗搧
- if (RecommendActivity.TYPE_SHARE_GOODS == activity.getType()
- && (activity.getGoodsList() == null || activity.getGoodsList().size() < 9)) {
- activityList.remove(activity);
- i--;
- continue;
- }
-
-
- if (activity != null && activity.getGoodsList() != null) {
- for (RecommendActivityTaoBaoGoods goods : activity.getGoodsList()) {
- goods.setQuanPrice(goods.getDesc().replace("鍒稿悗浠凤細楼", ""));
- }
- }
-
- // 杩囨护涓�閬�
- if (!StringUtil.isNullOrEmpty(activity.getTitle())) {
- activity.setTitle(Jsoup.parse(activity.getTitle()).text());
- if (activity.getShareCount() >= 10000) {
- activity.setShareCountShow(NumberUtil.get1PointNumber(activity.getShareCount() / 10000.0) + "涓�");
- } else {
- activity.setShareCountShow(activity.getShareCount() + "");
- }
- }
-
- Date startTime = activity.getStartTime();
- if (startTime != null) {
- activity.setCreateTime(startTime);
- }
-
- }
-
- }
- return activityList;
- }
+ @Override
+ public RecommendActivityInviteInfo getRecommendActivityInviteInfoByActivityId(Long activityId) {
+ return recommendActivityInviteInfoMapper.selectByActivityId(activityId);
+ }
- @Cacheable(value = "activityCache", key = "'getRecommendActivityCount'")
- @Override
- public long getRecommendActivityCountCache() {
- return recommendActivityMapper.getRecommendActivityEffectiveCount();
- }
+ @Override
+ public void downTaoBaoGoods(Long auctionId) {
+ recommendActivityTaoBaoGoodsMapper.updateStateByAuctionId(auctionId,
+ RecommendActivityTaoBaoGoods.STATE_UNSHELVE);
+ }
- @Transactional
- @Override
- public void upgradeShareGoodsRecommendActivity(Long id) throws ActivityException {
- // 鑾峰彇鍟嗗搧
- List<RecommendActivityTaoBaoGoods> list = recommendActivityTaoBaoGoodsMapper.selectByActivityId(id);
- if (list != null)
- for (RecommendActivityTaoBaoGoods goods : list) {
- // 涓嬫灦鍟嗗搧涓嶅繀鏇存柊
- if (goods.getState() == RecommendActivityTaoBaoGoods.STATE_UNSHELVE)
- continue;
- try {
- TaoBaoGoodsBrief tbGoods = TaoKeApiUtil.searchGoodsDetail(Long.parseLong(goods.getAuctionId()));
- if (tbGoods != null) {
- RecommendActivityTaoBaoGoods update = new RecommendActivityTaoBaoGoods();
- update.setPictUrl(TbImgUtil.getTBSize220ImgWebp(tbGoods.getPictUrl()));
- update.setId(goods.getId());
- update.setDesc(ActivityUtil.getGoodsShowPrice(tbGoods));
- update.setCouponAmount(tbGoods.getCouponAmount());
- // 褰撴病鏈夊埜鐨勬椂鍊欏晢鍝佹棤鏁�
- if (StringUtil.isNullOrEmpty(tbGoods.getCouponActivityId())
- || tbGoods.getCouponLeftCount() == null || tbGoods.getCouponLeftCount() == 0)
- update.setState(RecommendActivityTaoBaoGoods.STATE_UNSHELVE);
- else
- update.setState(RecommendActivityTaoBaoGoods.STATE_NORMAL);
- recommendActivityTaoBaoGoodsMapper.updateByPrimaryKeySelective(update);
- try {
- taoBaoGoodsUpdateService.updateTaoBaoGoods(tbGoods);
- } catch (TaobaoGoodsUpdateException e) {
- e.printStackTrace();
- }
- }
- } catch (TaobaoGoodsDownException e) {
- RecommendActivityTaoBaoGoods update = new RecommendActivityTaoBaoGoods();
- update.setId(goods.getId());
- update.setState(RecommendActivityTaoBaoGoods.STATE_UNSHELVE);
- recommendActivityTaoBaoGoodsMapper.updateByPrimaryKeySelective(update);
- taoBaoGoodsUpdateService.offlineTaoBaoGoods(Long.parseLong(goods.getAuctionId()));
- }
- }
- }
+ @Override
+ public RecommendActivity getRecommendActivityDetail(Long activityId) {
- @Override
- public List<RecommendActivity> getRecommendActivityList(int type, int page, int pageSize) {
- return recommendActivityMapper.getRecommendActivityListByType(type, (page - 1) * pageSize, pageSize);
- }
+ RecommendActivity activity = recommendActivityMapper.selectByPrimaryKey(activityId);
+ if (activity != null && activity.getGoodsList() != null) {
+ for (RecommendActivityTaoBaoGoods goods : activity.getGoodsList()) {
+ goods.setQuanPrice(goods.getDesc().replace("鍒稿悗浠凤細楼", ""));
+ goods.setPictUrl(goods.getPictUrl().replace("_.webp", ""));
+ }
+ }
- @Override
- public long getRecommendActivityCount(int type) {
- return recommendActivityMapper.getRecommendActivityCountByType(type);
- }
+ return activity;
+ }
- @Override
- public RecommendActivityInviteInfo getRecommendActivityInviteInfoByActivityId(Long activityId) {
- return recommendActivityInviteInfoMapper.selectByActivityId(activityId);
- }
+ @Override
+ public int insert(RecommendActivity record) {
+ return recommendActivityMapper.insert(record);
+ }
- @Override
- public void downTaoBaoGoods(Long auctionId) {
- recommendActivityTaoBaoGoodsMapper.updateStateByAuctionId(auctionId,
- RecommendActivityTaoBaoGoods.STATE_UNSHELVE);
- }
+ @Override
+ public int insertSelective(RecommendActivity record) {
+ return recommendActivityMapper.insertSelective(record);
+ }
- @Override
- public RecommendActivity getRecommendActivityDetail(Long activityId) {
+ @Override
+ public RecommendActivity selectByPrimaryKey(Long id) {
+ return recommendActivityMapper.selectByPrimaryKey(id);
+ }
- RecommendActivity activity = recommendActivityMapper.selectByPrimaryKey(activityId);
- if (activity != null && activity.getGoodsList() != null) {
- for (RecommendActivityTaoBaoGoods goods : activity.getGoodsList()) {
- goods.setQuanPrice(goods.getDesc().replace("鍒稿悗浠凤細楼", ""));
- goods.setPictUrl(goods.getPictUrl().replace("_.webp", ""));
- }
- }
+ @Override
+ public int updateByPrimaryKeySelective(RecommendActivity record) {
+ return recommendActivityMapper.updateByPrimaryKeySelective(record);
+ }
- return activity;
- }
+ @Override
+ public int updateByPrimaryKey(RecommendActivity record) {
+ return recommendActivityMapper.updateByPrimaryKey(record);
+ }
- @Override
- public int insert(RecommendActivity record) {
- return recommendActivityMapper.insert(record);
- }
+ @Override
+ public ActivityUser selectActivityUserByPrimaryKey(Long id) {
+ return activityUserMapper.selectByPrimaryKey(id);
+ }
- @Override
- public int insertSelective(RecommendActivity record) {
- return recommendActivityMapper.insertSelective(record);
- }
+ @Transactional
+ @Override
+ public void updateRecommendActivityGoods(TaoBaoGoodsBrief goods) {
+ List<RecommendActivityTaoBaoGoods> list = recommendActivityTaoBaoGoodsMapper
+ .selectByAuctionId(goods.getAuctionId());
- @Override
- public RecommendActivity selectByPrimaryKey(Long id) {
- return recommendActivityMapper.selectByPrimaryKey(id);
- }
+ BigDecimal d = TaoBaoUtil.getAfterUseCouplePrice(goods);
- @Override
- public int updateByPrimaryKeySelective(RecommendActivity record) {
- return recommendActivityMapper.updateByPrimaryKeySelective(record);
- }
+ RecommendActivityTaoBaoGoods updateGoods = new RecommendActivityTaoBaoGoods();
+ if (!StringUtil.isNullOrEmpty(goods.getCouponInfo()) && !"鏃�".equalsIgnoreCase(goods.getCouponInfo())) {
+ updateGoods.setDesc("鍒稿悗浠凤細楼" + d);
+ updateGoods.setState(RecommendActivityTaoBaoGoods.STATE_NORMAL);
+ } else {
+ updateGoods.setState(RecommendActivityTaoBaoGoods.STATE_UNSHELVE);
+ }
- @Override
- public int updateByPrimaryKey(RecommendActivity record) {
- return recommendActivityMapper.updateByPrimaryKey(record);
- }
+ if (list != null)
+ for (RecommendActivityTaoBaoGoods tbGoods : list) {
+ updateGoods.setId(tbGoods.getId());
+ recommendActivityTaoBaoGoodsMapper.updateByPrimaryKeySelective(updateGoods);
+ }
+ }
- @Override
- public ActivityUser selectActivityUserByPrimaryKey(Long id) {
- return activityUserMapper.selectByPrimaryKey(id);
- }
+ /**
+ * web娈垫椂闂磋浆鎹�
+ *
+ * @param record
+ */
+ public void conversionTime(RecommendActivity record) throws ActivityException, Exception {
+ // 鏄惁鏃堕棿鎺у埗
+ if (!record.isTimeTask()) {
+ record.setStartTime(null);
+ record.setEndTime(null);
+ } else {
+ String startTime_str = record.getStartTime_str();
+ String endTime_str = record.getEndTime_str();
- @Transactional
- @Override
- public void updateRecommendActivityGoods(TaoBaoGoodsBrief goods) {
- List<RecommendActivityTaoBaoGoods> list = recommendActivityTaoBaoGoodsMapper
- .selectByAuctionId(goods.getAuctionId());
+ if ((startTime_str == null || startTime_str.trim().length() == 0)
+ && (endTime_str == null || endTime_str.trim().length() == 0)) {
+ throw new ActivityException(1, "璇疯緭鍏ユ帶鍒舵椂闂�");
+ } else {
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+ if (startTime_str != null && startTime_str.trim().length() > 0) {
+ startTime_str = startTime_str.replaceAll("T", " ");
+ record.setStartTime(format.parse(startTime_str));
+ }
- BigDecimal d = TaoBaoUtil.getAfterUseCouplePrice(goods);
+ if (endTime_str != null && endTime_str.trim().length() > 0) {
+ endTime_str = endTime_str.replaceAll("T", " ");
+ record.setEndTime(format.parse(endTime_str));
+ }
+ }
+ }
+ }
- RecommendActivityTaoBaoGoods updateGoods = new RecommendActivityTaoBaoGoods();
- if (!StringUtil.isNullOrEmpty(goods.getCouponInfo()) && !"鏃�".equalsIgnoreCase(goods.getCouponInfo())) {
- updateGoods.setDesc("鍒稿悗浠凤細楼" + d);
- updateGoods.setState(RecommendActivityTaoBaoGoods.STATE_NORMAL);
- } else {
- updateGoods.setState(RecommendActivityTaoBaoGoods.STATE_UNSHELVE);
- }
+ @Override
+ public List<String> getImgByActivityId(Long activityId) {
+ return recommendActivityImgMapper.getImgByActivityId(activityId);
+ }
- if (list != null)
- for (RecommendActivityTaoBaoGoods tbGoods : list) {
- updateGoods.setId(tbGoods.getId());
- recommendActivityTaoBaoGoodsMapper.updateByPrimaryKeySelective(updateGoods);
- }
- }
-
- /**
- * web娈垫椂闂磋浆鎹�
- * @param record
- */
- public void conversionTime(RecommendActivity record) throws ActivityException, Exception {
- // 鏄惁鏃堕棿鎺у埗
- if(!record.isTimeTask()) {
- record.setStartTime(null);
- record.setEndTime(null);
- } else {
- String startTime_str = record.getStartTime_str();
- String endTime_str = record.getEndTime_str();
-
- if ((startTime_str == null|| startTime_str.trim().length() == 0)
- && (endTime_str == null || endTime_str.trim().length() == 0)) {
- throw new ActivityException(1, "璇疯緭鍏ユ帶鍒舵椂闂�");
- } else {
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");
- if (startTime_str != null && startTime_str.trim().length() > 0) {
- startTime_str = startTime_str.replaceAll("T", " ");
- record.setStartTime(format.parse(startTime_str));
- }
-
- if (endTime_str != null && endTime_str.trim().length() > 0) {
- endTime_str = endTime_str.replaceAll("T", " ");
- record.setEndTime(format.parse(endTime_str));
- }
- }
- }
- }
-
- @Override
- public List<String> getImgByActivityId(Long activityId){
- return recommendActivityImgMapper.getImgByActivityId(activityId);
- }
-
- @Override
- public List<RecommendActivity> getNeedPublish() {
- return recommendActivityMapper.getNeedPublish();
- }
+ @Override
+ public List<RecommendActivity> getNeedPublish() {
+ return recommendActivityMapper.getNeedPublish();
+ }
}
--
Gitblit v1.8.0