From 207dc8655711cddac2653e18b51e58a88dba2084 Mon Sep 17 00:00:00 2001 From: yj <Administrator@192> Date: 星期五, 06 三月 2020 18:14:36 +0800 Subject: [PATCH] 发圈处理 --- fanli/src/main/java/com/yeshi/fanli/service/impl/goods/CollectionGoodsV2ServiceImpl.java | 131 +++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 123 insertions(+), 8 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/CollectionGoodsV2ServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/CollectionGoodsV2ServiceImpl.java index ddf93c9..e49bf3f 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/CollectionGoodsV2ServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/goods/CollectionGoodsV2ServiceImpl.java @@ -5,17 +5,20 @@ import javax.annotation.Resource; +import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.yeshi.fanli.dao.mybatis.goods.CollectionGoodsV2Mapper; import com.yeshi.fanli.dao.mybatis.goods.CommonGoodsMapper; +import com.yeshi.fanli.dto.pdd.PDDGoodsDetail; import com.yeshi.fanli.entity.bus.user.UserInfo; +import com.yeshi.fanli.entity.goods.CollectionGoodsV2; +import com.yeshi.fanli.entity.goods.CommonGoods; +import com.yeshi.fanli.entity.jd.JDGoods; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.exception.goods.CollectionGoodsException; import com.yeshi.fanli.exception.goods.CommonGoodsException; -import com.yeshi.fanli.goods.CollectionGoodsV2; -import com.yeshi.fanli.goods.CommonGoods; import com.yeshi.fanli.service.inter.goods.CollectionGoodsV2Service; import com.yeshi.fanli.service.inter.goods.CommonGoodsService; import com.yeshi.fanli.util.factory.CommonGoodsFactory; @@ -32,7 +35,7 @@ @Resource private CommonGoodsService commonGoodsService; - @Transactional + @Transactional(rollbackFor=Exception.class) @Override public void addCollection(Long uid, TaoBaoGoodsBrief goods) throws CollectionGoodsException { if (uid == null || uid == 0) @@ -63,7 +66,90 @@ } - @Transactional + @Transactional(rollbackFor=Exception.class) + @Override + public void addJDCollection(Long uid, JDGoods jdGoods) throws CollectionGoodsException { + if (uid == null || uid == 0) + throw new CollectionGoodsException(1, "鏃犵敤鎴稩D"); + CommonGoods commonGoods = CommonGoodsFactory.create(jdGoods); + if (commonGoods == null) + throw new CollectionGoodsException(2, "鍟嗗搧淇℃伅鑾峰彇澶辫触"); + // 鍒ゆ柇鍟嗗搧鏄惁瀛樺湪 + try { + commonGoods = commonGoodsService.addOrUpdateCommonGoods(commonGoods); + } catch (CommonGoodsException e) { + commonGoods = null; + } + if (commonGoods == null || commonGoods.getId() == null) + throw new CollectionGoodsException(3, "鍟嗗搧淇℃伅娣诲姞澶辫触"); + + CollectionGoodsV2 collectionGoodsV2 = collectionGoodsV2Mapper.selectByUidAndCommonGoodsId(uid, + commonGoods.getId()); + if (collectionGoodsV2 != null) + throw new CollectionGoodsException(4, "鍟嗗搧宸茶鏀惰棌"); + + collectionGoodsV2 = new CollectionGoodsV2(); + collectionGoodsV2.setCommonGoods(commonGoods); + collectionGoodsV2.setCreateTime(new Date()); + collectionGoodsV2.setUpdateTime(new Date()); + collectionGoodsV2.setUserInfo(new UserInfo(uid)); + collectionGoodsV2Mapper.insertSelective(collectionGoodsV2); + } + + + @Transactional(rollbackFor=Exception.class) + @Override + public void addPDDCollection(Long uid, PDDGoodsDetail goods) throws CollectionGoodsException { + if (uid == null || uid == 0) + throw new CollectionGoodsException(1, "鏃犵敤鎴稩D"); + CommonGoods commonGoods = CommonGoodsFactory.create(goods); + if (commonGoods == null) + throw new CollectionGoodsException(2, "鍟嗗搧淇℃伅鑾峰彇澶辫触"); + // 鍒ゆ柇鍟嗗搧鏄惁瀛樺湪 + try { + commonGoods = commonGoodsService.addOrUpdateCommonGoods(commonGoods); + } catch (CommonGoodsException e) { + commonGoods = null; + } + if (commonGoods == null || commonGoods.getId() == null) + throw new CollectionGoodsException(3, "鍟嗗搧淇℃伅娣诲姞澶辫触"); + + CollectionGoodsV2 collectionGoodsV2 = collectionGoodsV2Mapper.selectByUidAndCommonGoodsId(uid, + commonGoods.getId()); + if (collectionGoodsV2 != null) + throw new CollectionGoodsException(4, "鍟嗗搧宸茶鏀惰棌"); + + collectionGoodsV2 = new CollectionGoodsV2(); + collectionGoodsV2.setCommonGoods(commonGoods); + collectionGoodsV2.setCreateTime(new Date()); + collectionGoodsV2.setUpdateTime(new Date()); + collectionGoodsV2.setUserInfo(new UserInfo(uid)); + collectionGoodsV2Mapper.insertSelective(collectionGoodsV2); + } + + + @Override + public void addCollection(CollectionGoodsV2 goods) throws CollectionGoodsException { + if (goods.getUserInfo() == null || goods.getCommonGoods() == null) + throw new CollectionGoodsException(1, "鏁版嵁涓嶅畬鏁�"); + try { + CommonGoods commonGoods = commonGoodsService.addOrUpdateCommonGoods(goods.getCommonGoods()); + goods.setCommonGoods(commonGoods); + } catch (CommonGoodsException e) { + goods.setCommonGoods(null); + } + + if (goods.getCommonGoods() == null) + throw new CollectionGoodsException(3, "鍟嗗搧淇℃伅娣诲姞澶辫触"); + + CollectionGoodsV2 collectionGoodsV2 = collectionGoodsV2Mapper + .selectByUidAndCommonGoodsId(goods.getUserInfo().getId(), goods.getCommonGoods().getId()); + if (collectionGoodsV2 != null) + throw new CollectionGoodsException(4, "鍟嗗搧宸茶鏀惰棌"); + collectionGoodsV2Mapper.insertSelective(goods); + } + + @Transactional(rollbackFor=Exception.class) @Override public void cancelCollection(Long uid, Long id) throws CollectionGoodsException { if (uid == null || uid == 0) @@ -81,13 +167,42 @@ } @Override - public List<CollectionGoodsV2> getCollectionGoodsList(Long uid, int page, int pageSize) { - return null; + public List<CollectionGoodsV2> getCollectionGoodsList(Long uid, int page, int pageSize, Integer source) { + return collectionGoodsV2Mapper.selectByUidOrderByCreateTimeDesc(uid, (page - 1) * pageSize, pageSize, source); } @Override - public long getCollectionGoodsCount(Long uid) { - return 0; + public long getCollectionGoodsCount(Long uid, Integer source) { + return collectionGoodsV2Mapper.selectCountByUid(uid, source); + } + + @Override + public void cancelCollectionByAuctionId(Long uid, Long auctionId, Integer goodsType) throws CollectionGoodsException { + CollectionGoodsV2 goodsV2 = collectionGoodsV2Mapper.selectByUidAndGoodsType(uid, auctionId, goodsType); + if (goodsV2 == null) + throw new CollectionGoodsException(1, "鏃犳敹钘�"); + collectionGoodsV2Mapper.deleteByPrimaryKey(goodsV2.getId()); + } + + @Override + public void cancelCollectionByUid(Long uid) throws CollectionGoodsException { + collectionGoodsV2Mapper.deleteByUid(uid); + } + + @Override + public CollectionGoodsV2 findByUidAndAuctionId(Long uid, Long actionId, Integer goodsType) { + CollectionGoodsV2 v2 = collectionGoodsV2Mapper.selectByUidAndGoodsType(uid, actionId, goodsType); + return v2; + } + + @Override + public void deteleBYByUidAndCommonId(Long uid, Long commonId) { + List<CollectionGoodsV2> list = collectionGoodsV2Mapper.getByUidAndCommonId(uid, commonId); + if (list != null && list.size() > 0) { + for (CollectionGoodsV2 v2: list) { + collectionGoodsV2Mapper.deleteByPrimaryKey(v2.getId()); + } + } } } -- Gitblit v1.8.0