| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import static java.util.Objects.isNull; |
| | | import static java.util.Objects.nonNull; |
| | | |
| | | /** |
| | |
| | | private ComShopFlowerOrderGoodsDAO comShopFlowerOrderGoodsDAO; |
| | | @Resource |
| | | private ComShopFlowerEvaluateDAO comShopFlowerEvaluateDAO; |
| | | @Resource |
| | | private ComShopFlowerGoodsViewStatisticsDAO comShopFlowerGoodsViewStatisticsDAO; |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R saveShopFlowerGoods(AddShopFlowerGoodsVO addShopFlowerGoodsVO) { |
| | | if (addShopFlowerGoodsVO == null) { |
| | | return R.ok("500", "数据为空!"); |
| | |
| | | goodsVo.setGoodsAttrList(goodsAttrList); |
| | | goodsVo.setGoodsPic(comShopFlowerGoodsAttrVO.getAttrPic()); |
| | | goodsVo.setOriginalPrice(comShopFlowerGoodsAttrVO.getPrice()); |
| | | goodsVo.setPrice(comShopFlowerGoodsAttrVO.getCollatePrice()); |
| | | goodsVo.setCollatePrice(comShopFlowerGoodsAttrVO.getCollatePrice()); |
| | | goodsVo.setFreeShippingPrice(comShopFlowerGoodsAttrVO.getFreeShippingPrice()); |
| | | } |
| | | |
| | | //设置商品总浏览量 |
| | | goodsVo.setViewNum(comShopFlowerGoodsViewStatisticsDAO.selectTotalViewNum(goodsId)); |
| | | }); |
| | | } |
| | | return R.ok(goodsVOIPage); |
| | |
| | | List<ComShopFlowerGoodsAttrDO> goodsAttrDOS = |
| | | shopFlowerGoodsAttrDAO.selectList(new QueryWrapper<ComShopFlowerGoodsAttrDO>().eq("goods_id", goodsId)); |
| | | List<String> images = new ArrayList<>(); |
| | | goodsAttrDOS.forEach(attrDO -> { |
| | | int stock = 0; |
| | | for (ComShopFlowerGoodsAttrDO attrDO : goodsAttrDOS) { |
| | | ComShopFlowerGoodsAttrVO goodsAttrVO = new ComShopFlowerGoodsAttrVO(); |
| | | BeanUtils.copyProperties(attrDO, goodsAttrVO); |
| | | String attrPic = attrDO.getAttrPic(); |
| | | images.add(attrPic); |
| | | goodsAttrList.add(goodsAttrVO); |
| | | }); |
| | | |
| | | |
| | | stock = stock +attrDO.getStock(); |
| | | } |
| | | // 查询商品店铺信息 |
| | | ConvenientMerchantDO convenientMerchantDO = convenientMerchantDAO.selectById(goodsDO.getStoreId()); |
| | | ConvenientMerchantVO convenientMerchantVO = new ConvenientMerchantVO(); |
| | |
| | | shopGoods.setOrderNum(orderNum); |
| | | List<ComShopFlowerEvaluateVO> comShopFlowerEvaluateVOList = comShopFlowerEvaluateDAO.selectListLimit(goodsId); |
| | | shopGoods.setShopFlowerEvaluateVOList(comShopFlowerEvaluateVOList); |
| | | |
| | | List<Long> categoryIds = convenientGoodsCategoryDAO.selectCategoryIdsForGoods(goodsId); |
| | | shopGoods.setCategoryIds(categoryIds); |
| | | ComShopFlowerGoodsAttrVO comShopFlowerGoodsAttrVO = goodsAttrList.get(0); |
| | | shopGoods.setOriginalPrice(comShopFlowerGoodsAttrVO.getPrice()); |
| | | shopGoods.setCollatePrice(comShopFlowerGoodsAttrVO.getCollatePrice()); |
| | | shopGoods.setFreeShippingPrice(comShopFlowerGoodsAttrVO.getFreeShippingPrice()); |
| | | shopGoods.setStock(stock); |
| | | |
| | | |
| | | return R.ok(shopGoods); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R editFlowerShopGoods(Long id, AddShopFlowerGoodsVO addShopFlowerGoodsVO) { |
| | | if (addShopFlowerGoodsVO == null) { |
| | | return R.ok("500", "数据为空!"); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R deleteShopFlowerGoods(Long id) { |
| | | ComShopFlowerGoodsDO comShopFlowerGoodsDO = this.baseMapper.selectById(id); |
| | | comShopFlowerGoodsDO.setDeleteStatus(ComShopFlowerGoodsDO.deleteStatus.yes); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R changeStatus(Long id, Integer status) { |
| | | ComShopFlowerGoodsDO shopGoodsDO = this.baseMapper.selectById(id); |
| | | if (shopGoodsDO == null) { |
| | |
| | | this.baseMapper.updateById(shopGoodsDO); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Override |
| | | public R incrGoodsView(Long goodsId) { |
| | | ComShopFlowerGoodsDO comShopFlowerGoodsDO = this.baseMapper.selectById(goodsId); |
| | | if (isNull(comShopFlowerGoodsDO)) { |
| | | return R.fail("商品不存在"); |
| | | } |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | String nowDate = simpleDateFormat.format(new Date()); |
| | | ComShopFlowerGoodsViewStatisticsDO statisticsDO = comShopFlowerGoodsViewStatisticsDAO.selectOne(new LambdaQueryWrapper<ComShopFlowerGoodsViewStatisticsDO>() |
| | | .eq(ComShopFlowerGoodsViewStatisticsDO::getGoodsId, goodsId).eq(ComShopFlowerGoodsViewStatisticsDO::getStatisticDate, nowDate)); |
| | | if (isNull(statisticsDO)) { |
| | | comShopFlowerGoodsViewStatisticsDAO.createTodayStatistic(goodsId); |
| | | } else { |
| | | comShopFlowerGoodsViewStatisticsDAO.incrViewNum(goodsId, nowDate); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | } |