From 1f09f6daaf73bc83cceb4ae22b862b7b365635cf Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期四, 03 四月 2025 19:59:17 +0800 Subject: [PATCH] 修改反馈文档bug --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java | 62 +++++++++++++++++++++--------- 1 files changed, 43 insertions(+), 19 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 45d27ed..a9dae28 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 @@ -92,6 +92,8 @@ + + @Override public PageInfo<GoodsVO> goodsList(Goods search) { Integer vipId = 0; @@ -122,18 +124,18 @@ //手动排序 if(StringUtils.isNotEmpty(search.getOrderByColumn())){ - if("selling_price".equals(search.getOrderByColumn())){ + if("tgs.selling_price".equals(search.getOrderByColumn())){ list.sort(new Comparator<GoodsVO>() { @Override public int compare(GoodsVO o1, GoodsVO o2) { if(null != o1.getSellingPrice() && null != o2.getSellingPrice()){ - return o1.getSellingPrice().compareTo(o2.getSellingPrice()) * (StringUtils.isNotEmpty(search.getIsAsc()) ? -1 : 1); + return o1.getSellingPrice().compareTo(o2.getSellingPrice()) * ("desc".equals(search.getIsAsc()) ? -1 : 1); } if(null == o1.getSellingPrice() && null != o2.getSellingPrice()){ - return BigDecimal.ZERO.compareTo(o2.getSellingPrice()) * (StringUtils.isNotEmpty(search.getIsAsc()) ? -1 : 1); + return BigDecimal.ZERO.compareTo(o2.getSellingPrice()) * ("desc".equals(search.getIsAsc()) ? -1 : 1); } if(null != o1.getSellingPrice() && null == o2.getSellingPrice()){ - return o1.getSellingPrice().compareTo(BigDecimal.ZERO) * (StringUtils.isNotEmpty(search.getIsAsc()) ? -1 : 1); + return o1.getSellingPrice().compareTo(BigDecimal.ZERO) * ("desc".equals(search.getIsAsc()) ? -1 : 1); } return 0; } @@ -144,13 +146,13 @@ @Override public int compare(GoodsVO o1, GoodsVO o2) { if(null != o1.getIntegral() && null != o2.getIntegral()){ - return o1.getIntegral().compareTo(o2.getIntegral()) * (StringUtils.isNotEmpty(search.getIsAsc()) ? -1 : 1); + return o1.getIntegral().compareTo(o2.getIntegral()) * ("desc".equals(search.getIsAsc()) ? -1 : 1); } if(null == o1.getIntegral() && null != o2.getIntegral()){ - return Integer.valueOf(0).compareTo(o2.getIntegral()) * (StringUtils.isNotEmpty(search.getIsAsc()) ? -1 : 1); + return Integer.valueOf(0).compareTo(o2.getIntegral()) * ("desc".equals(search.getIsAsc()) ? -1 : 1); } if(null != o1.getIntegral() && null == o2.getIntegral()){ - return o1.getIntegral().compareTo(Integer.valueOf(0)) * (StringUtils.isNotEmpty(search.getIsAsc()) ? -1 : 1); + return o1.getIntegral().compareTo(Integer.valueOf(0)) * ("desc".equals(search.getIsAsc()) ? -1 : 1); } return 0; } @@ -160,7 +162,7 @@ list.sort(new Comparator<GoodsVO>() { @Override public int compare(GoodsVO o1, GoodsVO o2) { - return o1.getSaleNum().compareTo(o2.getSaleNum()) * (StringUtils.isNotEmpty(search.getIsAsc()) ? -1 : 1); + return o1.getSaleNum().compareTo(o2.getSaleNum()) * ("desc".equals(search.getIsAsc()) ? -1 : 1); } }); } @@ -291,9 +293,9 @@ @Override public List<Goods> getGoodsListByShopId(PageInfo<Goods> pageInfo, Integer shopId) { Integer vipId = 0; - String provinceCode = null; - String cityCode = null; - String districtCode = null; + String provinceCode = "0"; + String cityCode = "0"; + String districtCode = "0"; String token = SecurityUtils.getToken(ServletUtils.getRequest()); if(StringUtils.isNotEmpty(token)){ Long userid = tokenService.getLoginUserApplet().getUserid(); @@ -406,6 +408,8 @@ area.setProvinceCode(goodsArea.getProvinceCode()); area.setCityCode(goodsArea.getCityCode()); area.setDistrictsCode(goodsArea.getDistrictsCode()); + area.setSuperiorType("2"); + area.setSuperiorPriceType("2"); // if(null != area.getSellingPrice() || null != area.getIntegral()){ // goodsAreaList2.add(area); // } @@ -422,6 +426,8 @@ goodsVipList.forEach(item -> { item.setId(null); item.setGoodsId(id); + item.setSuperiorType("2"); + item.setSuperiorPriceType("2"); }); goodsVipService.saveBatch(goodsVipList); } @@ -585,20 +591,37 @@ if(null == bargainPriceDetail){ //没有门店特价,判断地区价格配置 LambdaQueryWrapper<GoodsArea> queryWrapper = new LambdaQueryWrapper<GoodsArea>().eq(GoodsArea::getGoodsId, goodsId).eq(GoodsArea::getVip, vip); + if(StringUtils.isNotEmpty(provinceCode)){ + queryWrapper.eq(GoodsArea::getProvinceCode, provinceCode); + } + if(StringUtils.isNotEmpty(cityCode)){ + queryWrapper.eq(GoodsArea::getCityCode, cityCode); + } if(StringUtils.isNotEmpty(districtCode)){ queryWrapper.eq(GoodsArea::getDistrictsCode, districtCode); } - if(StringUtils.isNotEmpty(cityCode)){ - queryWrapper.and(i -> i.eq(GoodsArea::getCityCode, cityCode).or().isNull(GoodsArea::getCityCode)); - } - if(StringUtils.isNotEmpty(provinceCode)){ - queryWrapper.and(i -> i.eq(GoodsArea::getProvinceCode, provinceCode).or().isNull(GoodsArea::getProvinceCode)); - } GoodsArea goodsArea = goodsAreaService.getOne(queryWrapper); - if(null == goodsArea){ + if(goodsArea == null){ + queryWrapper = new LambdaQueryWrapper<GoodsArea>().eq(GoodsArea::getGoodsId, goodsId).eq(GoodsArea::getVip, vip); + if(StringUtils.isNotEmpty(provinceCode)){ + queryWrapper.eq(GoodsArea::getProvinceCode, provinceCode); + } + if(StringUtils.isNotEmpty(cityCode)){ + queryWrapper.eq(GoodsArea::getCityCode, cityCode); + } + goodsArea = goodsAreaService.getOne(queryWrapper); + } + if(goodsArea == null){ + queryWrapper = new LambdaQueryWrapper<GoodsArea>().eq(GoodsArea::getGoodsId, goodsId).eq(GoodsArea::getVip, vip); + if(StringUtils.isNotEmpty(provinceCode)){ + queryWrapper.eq(GoodsArea::getProvinceCode, provinceCode); + } + goodsArea = goodsAreaService.getOne(queryWrapper); + } + if(null == goodsArea || (null == goodsArea.getCashPayment() && null == goodsArea.getPointPayment())){ //没有地区价格,则使用会员价格 GoodsVip goodsVip = goodsVipService.getOne(new LambdaQueryWrapper<GoodsVip>().eq(GoodsVip::getGoodsId, goodsId).eq(GoodsVip::getVip, vip)); - if(null == goodsVip){ + if(null == goodsVip || (null == goodsVip.getCashPayment() && null == goodsVip.getPointPayment())){ //没有配置价格,直接使用原始基础价格 return null; }else{ @@ -654,4 +677,5 @@ } return price; } + } -- Gitblit v1.7.1