From 968286773936ef6cc552b9a101fab14f2b9dc1cd Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 15 一月 2025 14:20:57 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java |   42 ++++++++++++++++++++++++++++++------------
 1 files changed, 30 insertions(+), 12 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 f0caa11..72fea21 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
@@ -291,9 +291,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,9 +406,10 @@
                     area.setProvinceCode(goodsArea.getProvinceCode());
                     area.setCityCode(goodsArea.getCityCode());
                     area.setDistrictsCode(goodsArea.getDistrictsCode());
-                    if(null != area.getSellingPrice() || null != area.getIntegral()){
-                        goodsAreaList2.add(area);
-                    }
+//                    if(null != area.getSellingPrice() || null != area.getIntegral()){
+//                        goodsAreaList2.add(area);
+//                    }
+                    goodsAreaList2.add(area);
                 }
                 goodsAreaService.saveBatch(goodsAreaList2);
             }
@@ -584,20 +585,37 @@
             if(null == bargainPriceDetail){
                 //没有门店特价,判断地区价格配置
                 LambdaQueryWrapper<GoodsArea> queryWrapper = new LambdaQueryWrapper<GoodsArea>().eq(GoodsArea::getGoodsId, goodsId).eq(GoodsArea::getVip, vip);
-                if(StringUtils.isNotEmpty(districtCode)){
-                    queryWrapper.eq(GoodsArea::getDistrictsCode, districtCode);
+                if(StringUtils.isNotEmpty(provinceCode)){
+                    queryWrapper.eq(GoodsArea::getProvinceCode, provinceCode);
                 }
                 if(StringUtils.isNotEmpty(cityCode)){
                     queryWrapper.eq(GoodsArea::getCityCode, cityCode);
                 }
-                if(StringUtils.isNotEmpty(provinceCode)){
-                    queryWrapper.eq(GoodsArea::getProvinceCode, provinceCode);
+                if(StringUtils.isNotEmpty(districtCode)){
+                    queryWrapper.eq(GoodsArea::getDistrictsCode, districtCode);
                 }
                 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{

--
Gitblit v1.7.1