From 6acf6357094588946b5528f1ef1ed84a0f1037fd Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期五, 13 六月 2025 19:45:27 +0800 Subject: [PATCH] 小程序收付款 --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java | 102 ++++++++++++++++++++++++++++----------------------- 1 files changed, 56 insertions(+), 46 deletions(-) diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java index 5035619..d8b5290 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java @@ -20,11 +20,13 @@ import com.ruoyi.other.api.domain.*; import com.ruoyi.other.dto.AddGoodsDTO; import com.ruoyi.other.enums.GoodsStatus; +import com.ruoyi.other.mapper.GoodsEvaluateMapper; import com.ruoyi.other.mapper.GoodsMapper; import com.ruoyi.other.mapper.GoodsShopMapper; import com.ruoyi.other.mapper.ShopMapper; import com.ruoyi.other.service.*; import com.ruoyi.other.util.GeodesyUtil; +import com.ruoyi.other.vo.GoodsEvaluateVO; import com.ruoyi.other.vo.GoodsVO; import com.ruoyi.other.vo.NearbyShopVO; import com.ruoyi.system.api.domain.SysConfig; @@ -77,6 +79,8 @@ @Resource private ShopService shopService; + @Resource + private GoodsEvaluateMapper goodsEvaluateMapper; /** * 热门商品列表 @@ -88,9 +92,11 @@ public PageInfo<GoodsVO> goodsList(Goods search) { List<Long> shopIds=null; if (null!=search.getLongitude()&&null!=search.getLatitude()){ + //获取最近十家店的id List<NearbyShopVO> nearbyShopVOS = shopService.nearbyShopList(search.getLongitude(), search.getLatitude(), new Shop()); - shopIds = nearbyShopVOS.subList(0, 10).stream().map(NearbyShopVO::getId).collect(Collectors.toList()); + int endIndex = Math.min(10, nearbyShopVOS.size()); + shopIds = nearbyShopVOS.subList(0, endIndex).stream().map(NearbyShopVO::getId).collect(Collectors.toList()); } //查找满足条件的商品 分类、名称、附近十家店 List<GoodsVO> list = this.baseMapper.goodsList(search.getGoodsCategoryId(), search.getName(),shopIds); @@ -112,9 +118,6 @@ goods.setEndTime(price.getEndTime()); goods.setPurchaseLimit(price.getPurchaseLimit()); } - //已售数量 - Integer data = orderClient.getGoodsSaleNum(goods.getGoodsId(), 1).getData(); - goods.setSaleNum(data); } //手动排序 if(StringUtils.isNotEmpty(search.getOrderByColumn())){ @@ -234,6 +237,14 @@ Integer integer = orderClient.getGoodsSaleNum(goods.getId(), 1).getData(); goodsVO.setSaleNum(integer); + //商品评价 + GoodsEvaluate goodsEvaluate=goodsEvaluateMapper.getGoodsEvaluateOne(goods.getId()); + if (null != goodsEvaluate){ + AppUser appUserById = appUserClient.getAppUserById(goodsEvaluate.getAppUserId()); + goodsEvaluate.setAvatar(appUserById.getAvatar()); + goodsEvaluate.setUserName(appUserById.getName()); + goodsVO.setGoodsEvaluate(goodsEvaluate); + } return goodsVO; } @@ -264,42 +275,43 @@ } @Override - public IPage<Goods> getManageGoodsList(Page<Goods> page, Goods goods) { - IPage<Goods> goodsIPage = goodsMapper.selectManageGoodsList(page, goods); - goodsIPage.getRecords().forEach(goods1 -> { - Integer data = orderClient.getGoodsSaleNum(goods1.getId(), 1).getData(); - goods1.setSaleNum(data); - }); - return goodsIPage; + public R getManageGoodsList(Integer pageNum,Integer pageSize, Goods goods) { + PageInfo<Goods> pageInfo = new PageInfo<>(pageNum,pageSize); + List<Goods> list = goodsMapper.selectManageGoodsList(pageInfo, goods); + pageInfo.setRecords(list); + return R.ok(pageInfo); } @Override @Transactional(rollbackFor = Exception.class) public void addGoods(Goods goods) { - /* goods.setSaleNum(0); - goods.setStatus(GoodsStatus.DOWN.getCode()); + goodsMapper.insert(goods); - // 指定门店 - Integer appointStore = goods.getAppointStore(); - if (null != appointStore && appointStore == 1){ - List<GoodsShop> goodsShopList = goods.getGoodsShopList(); - if (CollectionUtils.isEmpty(goodsShopList)){ - throw new NullPointerException("请选择指定门店"); - } - saveGoodsShopList(goodsShopList, goods.getId()); - }*/ + //保存商品门店关系 + GoodsShop goodsShop = new GoodsShop(); + goodsShop.setGoodsId(goods.getId()); + goodsShop.setShopId(goods.getShopId()); + Shop shop = shopMapper.selectById(goods.getShopId()); + goodsShop.setShopName(shop.getName()); + goodsShop.setOwnerName(shop.getShopManager()); + goodsShop.setPhone(shop.getPhone()); + goodsShop.setAddress(shop.getAddress()); + goodsShopService.save(goodsShop); + + //判断是否参加秒杀活动 + + } @Override public void updateManageGoods(Goods goods) { - /* this.updateById(goods); + this.updateById(goods); //修改个别字段 this.update(new LambdaUpdateWrapper<Goods>().eq(Goods::getId, goods.getId()).set(Goods::getSellingPrice, goods.getSellingPrice()) .set(Goods::getIntegral, goods.getIntegral())); - // 指定门店 - List<GoodsShop> goodsShopList = goods.getGoodsShopList(); - saveGoodsShopList(goodsShopList, goods.getId());*/ + // 保存门店 + saveGoodsShop(goods.getShopId(),goods.getId()); } @@ -309,16 +321,16 @@ - private void saveGoodsShopList(List<GoodsShop> goodsShopList, Integer goodsId) { + private void saveGoodsShop(Integer shopId, Integer goodsId) { goodsShopService.remove(new LambdaQueryWrapper<GoodsShop>() .eq(GoodsShop::getGoodsId, goodsId)); - if (!CollectionUtils.isEmpty(goodsShopList)){ - for (GoodsShop goodsShop : goodsShopList) { - goodsShop.setGoodsId(goodsId); - goodsShop.setId(null); - } - } - goodsShopService.saveBatch(goodsShopList); + + GoodsShop goodsShop = new GoodsShop(); + goodsShop.setGoodsId(goodsId); + goodsShop.setShopId(shopId); + goodsShop.setId(null); + + goodsShopService.save(goodsShop); } @Override @@ -327,20 +339,18 @@ if (goods == null){ return null; } - // 指定门店 - List<GoodsShop> goodsShops = goodsShopService.list(new LambdaQueryWrapper<GoodsShop>() + // 获取指定门店 + GoodsShop goodsShop = goodsShopService.getOne(new LambdaQueryWrapper<GoodsShop>() .eq(GoodsShop::getGoodsId, goodsId)); - - for (GoodsShop goodsShop : goodsShops) { - Shop shop = shopMapper.selectById(goodsShop.getShopId()); - if(null != shop){ - goodsShop.setShopName(shop.getName()); - goodsShop.setOwnerName(shop.getShopManager()); - goodsShop.setPhone(shop.getPhone()); - goodsShop.setAddress(shop.getAddress()); - } + goods.setShopId(goodsShop.getShopId()); + Shop shop = shopService.getById(goodsShop.getShopId()); + if(null != shop){ + goodsShop.setShopName(shop.getName()); + goodsShop.setPhone(shop.getPhone()); + goodsShop.setAddress(shop.getAddress()); + goodsShop.setOwnerName(shop.getShopManager()); } -// goods.setGoodsShopList(goodsShops); + goods.setGoodsShop(goodsShop); return goods; } -- Gitblit v1.7.1