| | |
| | | package com.yeshi.fanli.service.impl.goods;
|
| | |
|
| | | import java.util.Date;
|
| | |
|
| | | import javax.annotation.Resource;
|
| | |
|
| | | import org.springframework.stereotype.Service;
|
| | |
|
| | | import com.yeshi.fanli.dao.mybatis.goods.CommonGoodsMapper;
|
| | | import com.yeshi.fanli.exception.goods.CommonGoodsException;
|
| | | import com.yeshi.fanli.goods.CommonGoods;
|
| | | import com.yeshi.fanli.service.inter.goods.CommonGoodsService;
|
| | | import com.yeshi.fanli.util.StringUtil;
|
| | |
|
| | | @Service
|
| | | public class CommonGoodsServiceImpl implements CommonGoodsService {
|
| | |
|
| | | @Resource
|
| | | private CommonGoodsMapper commonGoodsMapper;
|
| | |
|
| | | /**
|
| | | * 验证数据正确性
|
| | | * |
| | | * @param commonGoods
|
| | | * @throws CommonGoodsException
|
| | | */
|
| | | private void filterCommonGoods(CommonGoods commonGoods) throws CommonGoodsException {
|
| | | // 判断信息是否完成
|
| | | if (commonGoods == null)
|
| | | throw new CommonGoodsException(1, "商品信息为空");
|
| | | if (commonGoods.getGoodsId() == null)
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | if (commonGoods.getGoodsType() == null)
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | if (StringUtil.isNullOrEmpty(commonGoods.getPicture()))
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | if (commonGoods.getPrice() == null)
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | if (commonGoods.getRate() == null)
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | if (commonGoods.getSales() == null)
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | if (commonGoods.getSellerId() == null)
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | if (commonGoods.getSellerName() == null)
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | if (commonGoods.getShopType() == null)
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | if (StringUtil.isNullOrEmpty(commonGoods.getTitle()))
|
| | | throw new CommonGoodsException(1, "商品信息不完整");
|
| | | }
|
| | |
|
| | | @Override
|
| | | public CommonGoods addOrUpdateCommonGoods(CommonGoods commonGoods) throws CommonGoodsException {
|
| | | filterCommonGoods(commonGoods);
|
| | | CommonGoods goods = commonGoodsMapper.selectByGoodsIdAndGoodsType(commonGoods.getGoodsId(),
|
| | | commonGoods.getGoodsType());
|
| | | if (goods != null) {
|
| | | updateCommonGoods(commonGoods);
|
| | | commonGoods.setId(goods.getId());
|
| | | return commonGoods;
|
| | | }
|
| | | commonGoods.setCreateTime(new Date());
|
| | | commonGoods.setUpdateTime(new Date());
|
| | | commonGoodsMapper.insertSelective(commonGoods);
|
| | | return commonGoods;
|
| | | }
|
| | |
|
| | | @Override
|
| | | public void updateCommonGoods(CommonGoods commonGoods) throws CommonGoodsException {
|
| | | // 判断信息是否完整
|
| | | filterCommonGoods(commonGoods);
|
| | | CommonGoods goods = commonGoodsMapper.selectByGoodsIdAndGoodsType(commonGoods.getGoodsId(),
|
| | | commonGoods.getGoodsType());
|
| | | if (goods == null) {
|
| | | throw new CommonGoodsException(3, "商品不存在");
|
| | | }
|
| | | // 更新商品信息
|
| | | commonGoods.setId(goods.getId());
|
| | | commonGoods.setCreateTime(null);
|
| | | commonGoods.setUpdateTime(new Date());
|
| | | commonGoodsMapper.updateByPrimaryKeySelective(commonGoods);
|
| | | }
|
| | |
|
| | | @Override
|
| | | public void offlineCommonGoods(Long goodsId, int goodsType) {
|
| | | CommonGoods goods = commonGoodsMapper.selectByGoodsIdAndGoodsType(goodsId, goodsType);
|
| | | if (goods == null)
|
| | | return;
|
| | | CommonGoods update = new CommonGoods();
|
| | | update.setId(goods.getId());
|
| | | update.setUpdateTime(new Date());
|
| | | update.setState(CommonGoods.STATE_OFFLINE);
|
| | | commonGoodsMapper.updateByPrimaryKeySelective(update);
|
| | | }
|
| | |
|
| | | @Override
|
| | | public CommonGoods getCommonGoodsByGoodsIdAndGoodsType(Long goodsId, int goodsType) {
|
| | | return commonGoodsMapper.selectByGoodsIdAndGoodsType(goodsId, goodsType);
|
| | | }
|
| | |
|
| | | }
|
| | | package com.yeshi.fanli.service.impl.goods; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | import com.yeshi.fanli.util.CommonGoodsUtil; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.yeshi.utils.StringUtil; |
| | | |
| | | import com.yeshi.fanli.dao.mybatis.goods.CommonGoodsMapper; |
| | | import com.yeshi.fanli.entity.goods.CommonGoods; |
| | | import com.yeshi.fanli.exception.goods.CommonGoodsException; |
| | | import com.yeshi.fanli.service.inter.goods.CommonGoodsService; |
| | | |
| | | @Service |
| | | public class CommonGoodsServiceImpl implements CommonGoodsService { |
| | | |
| | | @Resource |
| | | private CommonGoodsMapper commonGoodsMapper; |
| | | |
| | | |
| | | @Override |
| | | public CommonGoods selectByPrimaryKey(Long id) { |
| | | return commonGoodsMapper.selectByPrimaryKey(id); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 验证数据正确性 |
| | | * |
| | | * @param commonGoods |
| | | * @throws CommonGoodsException |
| | | */ |
| | | private void filterCommonGoods(CommonGoods commonGoods) throws CommonGoodsException { |
| | | // 判断信息是否完成 |
| | | if (commonGoods == null) |
| | | throw new CommonGoodsException(1, "商品信息为空"); |
| | | if (commonGoods.getGoodsId() == null) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | if (commonGoods.getGoodsType() == null) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | if (StringUtil.isNullOrEmpty(commonGoods.getPicture())) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | if (commonGoods.getPrice() == null) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | if (commonGoods.getRate() == null) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | if (commonGoods.getSales() == null) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | if (commonGoods.getSellerId() == null) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | if (commonGoods.getSellerName() == null) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | if (commonGoods.getShopType() == null) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | if (StringUtil.isNullOrEmpty(commonGoods.getTitle())) |
| | | throw new CommonGoodsException(1, "商品信息不完整"); |
| | | } |
| | | |
| | | @Override |
| | | public CommonGoods addOrUpdateCommonGoods(CommonGoods commonGoods) throws CommonGoodsException { |
| | | // 验证数据完整性 |
| | | filterCommonGoods(commonGoods); |
| | | |
| | | CommonGoods goods = commonGoodsMapper.selectByGoodsIdAndGoodsType(commonGoods.getGoodsId(), |
| | | commonGoods.getGoodsType()); |
| | | if (goods != null) { |
| | | updateCommonGoods(commonGoods); |
| | | commonGoods.setId(goods.getId()); |
| | | return commonGoods; |
| | | } |
| | | commonGoods.setCreateTime(new Date()); |
| | | commonGoods.setUpdateTime(new Date()); |
| | | commonGoodsMapper.insertSelective(commonGoods); |
| | | return commonGoods; |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public CommonGoods addCommonGoods(CommonGoods commonGoods) throws CommonGoodsException { |
| | | // 验证数据完整性 |
| | | filterCommonGoods(commonGoods); |
| | | |
| | | CommonGoods goods = commonGoodsMapper.selectByGoodsIdAndGoodsType(commonGoods.getGoodsId(), |
| | | commonGoods.getGoodsType()); |
| | | if (goods != null) { |
| | | commonGoods.setId(goods.getId()); |
| | | return commonGoods; |
| | | } |
| | | commonGoods.setCreateTime(new Date()); |
| | | commonGoods.setUpdateTime(new Date()); |
| | | commonGoodsMapper.insertSelective(commonGoods); |
| | | return commonGoods; |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public void updateCommonGoods(CommonGoods commonGoods) throws CommonGoodsException { |
| | | // 判断信息是否完整 |
| | | filterCommonGoods(commonGoods); |
| | | |
| | | CommonGoods goods = commonGoodsMapper.selectByGoodsIdAndGoodsType(commonGoods.getGoodsId(), |
| | | commonGoods.getGoodsType()); |
| | | if (goods == null) { |
| | | throw new CommonGoodsException(3, "商品不存在"); |
| | | } |
| | | // 更新商品信息 |
| | | commonGoods.setId(goods.getId()); |
| | | commonGoods.setCreateTime(null); |
| | | commonGoods.setUpdateTime(new Date()); |
| | | commonGoodsMapper.updateByPrimaryKeySelective(commonGoods); |
| | | } |
| | | |
| | | @Override |
| | | public void offlineCommonGoods(String goodsId, Integer goodsType) { |
| | | CommonGoods goods = commonGoodsMapper.selectByGoodsIdAndGoodsType(CommonGoodsUtil.getGoodsId(goodsId, goodsType), goodsType); |
| | | if (goods == null) |
| | | return; |
| | | CommonGoods update = new CommonGoods(); |
| | | update.setId(goods.getId()); |
| | | update.setUpdateTime(new Date()); |
| | | update.setState(CommonGoods.STATE_OFFLINE); |
| | | commonGoodsMapper.updateByPrimaryKeySelective(update); |
| | | } |
| | | |
| | | @Override |
| | | public CommonGoods getCommonGoodsByGoodsIdAndGoodsType(String goodsId, Integer goodsType) { |
| | | return commonGoodsMapper.selectByGoodsIdAndGoodsType(CommonGoodsUtil.getGoodsId(goodsId, goodsType), goodsType); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public void updateBatchCommonGoods(List<CommonGoods> listCommonGoods) { |
| | | |
| | | if (listCommonGoods == null || listCommonGoods.size() == 0) { |
| | | return; |
| | | } |
| | | |
| | | for (CommonGoods commonGoods : listCommonGoods) { |
| | | try { |
| | | updateCommonGoods(commonGoods); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public void addBatchCommonGoods(List<CommonGoods> listCommonGoods) { |
| | | |
| | | if (listCommonGoods == null || listCommonGoods.size() == 0) { |
| | | return; |
| | | } |
| | | |
| | | for (CommonGoods commonGoods : listCommonGoods) { |
| | | try { |
| | | addCommonGoods(commonGoods); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public List<CommonGoods> listBySellerId(Long sellerId, Integer goodsType) { |
| | | return commonGoodsMapper.listBySellerId(sellerId, goodsType); |
| | | } |
| | | |
| | | @Override |
| | | public long countBySellerIdAndHasCoupon(Long sellerId, Integer goodsType) { |
| | | return commonGoodsMapper.countBySellerIdAndHasCoupon(sellerId, goodsType); |
| | | } |
| | | |
| | | @Override |
| | | public List<CommonGoods> getByListGoodsId(List<String> list, Integer goodsType) { |
| | | List<String> goodsIdList = new ArrayList<>(); |
| | | for (String st : list) { |
| | | goodsIdList.add(CommonGoodsUtil.getGoodsId(st, goodsType)); |
| | | } |
| | | return commonGoodsMapper.getByListGoodsId(goodsIdList, goodsType); |
| | | } |
| | | |
| | | } |