Procházet zdrojové kódy

fix 增加字段;缓存清除

zoujiajian před 2 roky
rodič
revize
8926fd5a38

+ 25 - 0
netflix-service/src/main/java/com/cyksj/service/mange/RefreshCacheService.java

@@ -0,0 +1,25 @@
+package com.cyksj.service.mange;
+
+/**
+ * 项目名: yhlxj2
+ * 文件名: RefreshCacheService
+ * 创建者: JavaZou
+ * 创建时间:2024/2/22 16:28
+ */
+public interface RefreshCacheService {
+
+	/**
+	 * 清除官网首页商品缓存
+	 */
+	void refreshYhHomePageCache();
+
+	/**
+	 * 清除首页分类缓存
+	 */
+	void refreshYhHomeCategoryPageCache();
+
+	/**
+	 * 清除补贴商品缓存
+	 */
+	void refreshGoodsSkuSubsidyPageCache();
+}

+ 38 - 0
netflix-service/src/main/java/com/cyksj/service/mange/impl/RefreshCacheServiceImpl.java

@@ -0,0 +1,38 @@
+package com.cyksj.service.mange.impl;
+
+import com.cyksj.redis.RedisService;
+import com.cyksj.service.mange.RefreshCacheService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.Set;
+
+/**
+ * 项目名: yhlxj2
+ * 文件名: RefreshCacheServiceImpl
+ * 创建者: JavaZou
+ * 创建时间:2024/2/22 16:28
+ */
+@Service
+@RequiredArgsConstructor
+public class RefreshCacheServiceImpl implements RefreshCacheService {
+	private final RedisService redisService;
+
+	@Override
+	public void refreshYhHomePageCache() {
+		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
+		redisService.del(keys.toArray(String[]::new));
+	}
+
+	@Override
+	public void refreshYhHomeCategoryPageCache() {
+		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "category" + "*");
+		redisService.del(keys.toArray(String[]::new));
+	}
+
+	@Override
+	public void refreshGoodsSkuSubsidyPageCache() {
+		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "subsidy" + "*");
+		redisService.del(keys.toArray(String[]::new));
+	}
+}

+ 7 - 13
netflix-web/src/main/java/com/cyksj/web/controller/manage/goods/CmsGoodsDonCategoryController.java

@@ -13,10 +13,10 @@ import com.cyksj.model.entity.GoodsDonCategory;
 import com.cyksj.model.entity.GoodsDonCategoryRelate;
 import com.cyksj.model.views.GoodsDonCategoryGoodsView;
 import com.cyksj.model.views.GoodsDonCategoryView;
-import com.cyksj.redis.RedisService;
 import com.cyksj.service.mange.CmsGoodsDonService;
 import com.cyksj.service.mange.GoodsDonCategoryRelateService;
 import com.cyksj.service.mange.GoodsDonCategoryService;
+import com.cyksj.service.mange.RefreshCacheService;
 import com.ejlchina.searcher.BeanSearcher;
 import com.ejlchina.searcher.SearchResult;
 import com.ejlchina.searcher.util.MapBuilder;
@@ -28,7 +28,6 @@ import org.springframework.web.bind.annotation.*;
 import javax.servlet.http.HttpServletRequest;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.Set;
 
 /*
  *项目名: netflix
@@ -52,7 +51,7 @@ public class CmsGoodsDonCategoryController {
 
 	private final GoodsDonCategoryRelateService goodsDonCategoryRelateService;
 
-	private final RedisService redisService;
+	private final RefreshCacheService refreshCacheService;
 
 	/**
 	 * 新增分类
@@ -69,8 +68,7 @@ public class CmsGoodsDonCategoryController {
 	@PutMapping("/put")
 	public Result<String> updateGoodsDonCategory(@RequestBody List<GoodsDonCategory> categorys) {
 		categorys.forEach(category -> goodsDonCategoryService.saveOrUpdateGoods(category));
-		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "category" + "*");
-		redisService.del(keys.toArray(String[]::new));
+		refreshCacheService.refreshYhHomeCategoryPageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -83,8 +81,7 @@ public class CmsGoodsDonCategoryController {
 		Assert.notNull(byId, "分类不存在");
 		byId.setStatus(!byId.getStatus());
 		goodsDonCategoryService.updateById(byId);
-		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "category" + "*");
-		redisService.del(keys.toArray(String[]::new));
+		refreshCacheService.refreshYhHomeCategoryPageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -99,8 +96,7 @@ public class CmsGoodsDonCategoryController {
 			throw BusinessRuntimeException.getInstance("存在该分类下平台");
 		}
 		goodsDonCategoryService.delById(id);
-		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "category" + "*");
-		redisService.del(keys.toArray(String[]::new));
+		refreshCacheService.refreshYhHomeCategoryPageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -115,8 +111,7 @@ public class CmsGoodsDonCategoryController {
 		if (category.getSorted() != null) {
 			byId.setSorted(category.getSorted());
 			goodsDonCategoryService.updateById(byId);
-			Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "category" + "*");
-			redisService.del(keys.toArray(String[]::new));
+			refreshCacheService.refreshYhHomeCategoryPageCache();
 		}
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
@@ -169,8 +164,7 @@ public class CmsGoodsDonCategoryController {
 		});
 		if (CollUtil.isNotEmpty(updateList)) {
 			goodsDonCategoryRelateService.updateBatchById(updateList);
-			Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-			redisService.del(keys.toArray(String[]::new));
+			refreshCacheService.refreshYhHomeCategoryPageCache();
 		}
 
 		return GatewayResponse.SUCCESS.newBuilder().toResult();

+ 6 - 10
netflix-web/src/main/java/com/cyksj/web/controller/manage/goods/CmsGoodsDonController.java

@@ -16,9 +16,9 @@ import com.cyksj.model.entity.GoodsDonSku;
 import com.cyksj.model.manage.request.ReqGoodsSpuInsert;
 import com.cyksj.model.manage.views.GoodsDonViewer;
 import com.cyksj.model.views.GoodsDonCategoryDetailView;
-import com.cyksj.redis.RedisService;
 import com.cyksj.service.mange.CmsGoodsDonService;
 import com.cyksj.service.mange.GoodsDonCategoryService;
+import com.cyksj.service.mange.RefreshCacheService;
 import com.ejlchina.searcher.BeanSearcher;
 import com.ejlchina.searcher.SearchResult;
 import com.ejlchina.searcher.param.Operator;
@@ -52,7 +52,7 @@ public class CmsGoodsDonController {
 
     private final CmsGoodsDonService goodsDonService;
 
-    private final RedisService redisService;
+    private final RefreshCacheService refreshCacheService;
 
     private final GoodsDonCategoryService goodsDonCategoryService;
 
@@ -114,8 +114,7 @@ public class CmsGoodsDonController {
         if (CollUtil.isNotEmpty(categoryList)) {
             goodsDonCategoryService.saveBatchRelate(goods.getId(), categoryList);
         }
-        Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-        redisService.del(keys.toArray(String[]::new));
+        refreshCacheService.refreshYhHomePageCache();
         return GatewayResponse.SUCCESS.newBuilder().toResult(goods.getId());
     }
 
@@ -157,8 +156,7 @@ public class CmsGoodsDonController {
         //平台 分类关系
         goodsDonCategoryService.handleGoodsRelate(goods.getId(), spu.getCategoryList());
         goodsDonService.updateById(goods);
-        Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-        redisService.del(keys.toArray(String[]::new));
+        refreshCacheService.refreshYhHomePageCache();
         return GatewayResponse.SUCCESS.newBuilder().toResult();
     }
 
@@ -173,8 +171,7 @@ public class CmsGoodsDonController {
         }
         goods.setStatus(!goods.getStatus());
         goodsDonService.updateById(goods);
-        Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-        redisService.del(keys.toArray(String[]::new));
+        refreshCacheService.refreshYhHomePageCache();
         return GatewayResponse.SUCCESS.newBuilder().toResult(goods.getStatus());
     }
 
@@ -188,8 +185,7 @@ public class CmsGoodsDonController {
         }
         goods.setDeleted(false);
         goodsDonService.updateById(goods);
-        Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-        redisService.del(keys.toArray(String[]::new));
+        refreshCacheService.refreshYhHomePageCache();
         return GatewayResponse.SUCCESS.newBuilder().toResult(id);
     }
 

+ 8 - 14
netflix-web/src/main/java/com/cyksj/web/controller/manage/goods/CmsGoodsDonSkuController.java

@@ -16,10 +16,10 @@ import com.cyksj.model.entity.GoodsDonSku;
 import com.cyksj.model.manage.request.ReqGoodsSkuInsert;
 import com.cyksj.model.request.CombinationSkuReq;
 import com.cyksj.model.views.DistributeSearchView;
-import com.cyksj.redis.RedisService;
 import com.cyksj.service.mange.CmsGoodsDonService;
 import com.cyksj.service.mange.CmsGoodsDonSkuService;
 import com.cyksj.service.mange.CmsGoodsDonSpecService;
+import com.cyksj.service.mange.RefreshCacheService;
 import com.ejlchina.searcher.BeanSearcher;
 import com.ejlchina.searcher.SearchResult;
 import com.ejlchina.searcher.param.Operator;
@@ -57,7 +57,7 @@ public class CmsGoodsDonSkuController {
 
     private final HttpServletRequest request;
 
-    private final RedisService redisService;
+    private final RefreshCacheService refreshCacheService;
 
 
     /**
@@ -67,8 +67,7 @@ public class CmsGoodsDonSkuController {
     @Log(module = "平台管理/新增商品sku&spec", businessType = BusinessType.POST, isSaveRequestData = true)
     public Result<String> skuInsert(@Validated @RequestBody ReqGoodsSkuInsert insert) throws Exception{
         goodsDonSpecService.insertOrUpdateSkuSpec(insert, false);
-        Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-        redisService.del(keys.toArray(String[]::new));
+        refreshCacheService.refreshYhHomePageCache();
         return GatewayResponse.SUCCESS.newBuilder().toResult();
     }
 
@@ -78,8 +77,7 @@ public class CmsGoodsDonSkuController {
     @PutMapping("/update/spec")
     public Result<String> updateGoodsSpec(@Validated @RequestBody ReqGoodsSkuInsert insert) throws Exception {
         goodsDonSpecService.insertOrUpdateSkuSpec(insert, true);
-        Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-        redisService.del(keys.toArray(String[]::new));
+        refreshCacheService.refreshYhHomePageCache();
         return GatewayResponse.SUCCESS.newBuilder().toResult();
     }
 
@@ -98,8 +96,7 @@ public class CmsGoodsDonSkuController {
         goodsDonSpecService.skuAppend(insert, goods);
         //给平台更新额外属性
         goodsDonService.updateGoodsSkuPrice(goods.getId(), goods);
-        Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-        redisService.del(keys.toArray(String[]::new));
+        refreshCacheService.refreshYhHomePageCache();
        return GatewayResponse.SUCCESS.newBuilder().toResult();
     }
 
@@ -164,8 +161,7 @@ public class CmsGoodsDonSkuController {
         goodsDonSkuService.saveOrUpdate(sku);
         //给平台更新额外属性
         goodsDonService.updateGoodsSkuPrice(sku.getGoodsId(), null);
-        Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-        redisService.del(keys.toArray(String[]::new));
+        refreshCacheService.refreshYhHomePageCache();
         return GatewayResponse.SUCCESS.newBuilder().toResult();
     }
 
@@ -182,8 +178,7 @@ public class CmsGoodsDonSkuController {
         goodsDonSkuService.handleDiscountPurchaseGoods(sku, null);
         goodsDonSkuService.removeById(skuId);
         goodsDonService.updateGoodsSkuPrice(sku.getGoodsId(), null);
-        Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-        redisService.del(keys.toArray(String[]::new));
+        refreshCacheService.refreshYhHomePageCache();
         return GatewayResponse.SUCCESS.newBuilder().toResult();
     }
 
@@ -241,8 +236,7 @@ public class CmsGoodsDonSkuController {
                 .eq(GoodsDonSku::getStatus, false));
         if (update) {
             goodsDonService.updateGoodsSkuPrice(goodsId, null);
-            Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-            redisService.del(keys.toArray(String[]::new));
+            refreshCacheService.refreshYhHomePageCache();
         }
         return GatewayResponse.SUCCESS.newBuilder().toResult();
     }

+ 7 - 0
netflix-web/src/main/java/com/cyksj/web/controller/manage/goods/GoodsDonSkuSubsidyController.java

@@ -5,6 +5,7 @@ import com.cyksj.enums.GatewayResponse;
 import com.cyksj.model.entity.GoodsDonSkuSubsidy;
 import com.cyksj.model.views.GoodsDonSkuSubsidyView;
 import com.cyksj.service.mange.GoodsDonSkuSubsidyService;
+import com.cyksj.service.mange.RefreshCacheService;
 import com.ejlchina.searcher.BeanSearcher;
 import com.ejlchina.searcher.SearchResult;
 import com.ejlchina.searcher.util.MapUtils;
@@ -32,12 +33,15 @@ public class GoodsDonSkuSubsidyController {
 
 	private final HttpServletRequest request;
 
+	private final RefreshCacheService refreshCacheService;
+
 	/**
 	 * 新增补贴规格
 	 */
 	@PostMapping("/insert")
 	public Result<String> insertGoodsDonSkuSubsidy(@RequestBody @Validated GoodsDonSkuSubsidy goodsDonSkuSubsidy) {
 		goodsDonSkuSubsidyService.saveOrUpdateSubsidy(goodsDonSkuSubsidy);
+		refreshCacheService.refreshGoodsSkuSubsidyPageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -47,6 +51,7 @@ public class GoodsDonSkuSubsidyController {
 	@PutMapping("/update")
 	public Result<String> updateGoodsDonSkuSubsidy(@RequestBody @Validated GoodsDonSkuSubsidy goodsDonSkuSubsidy) {
 		goodsDonSkuSubsidyService.saveOrUpdateSubsidy(goodsDonSkuSubsidy);
+		refreshCacheService.refreshGoodsSkuSubsidyPageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -59,6 +64,7 @@ public class GoodsDonSkuSubsidyController {
 		if (byId != null && byId.getDeleted()) {
 			byId.setDeleted(false);
 			goodsDonSkuSubsidyService.updateById(byId);
+			refreshCacheService.refreshGoodsSkuSubsidyPageCache();
 		}
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
@@ -72,6 +78,7 @@ public class GoodsDonSkuSubsidyController {
 		if (byId != null) {
 			byId.setStatus(!byId.getStatus());
 			goodsDonSkuSubsidyService.updateById(byId);
+			refreshCacheService.refreshGoodsSkuSubsidyPageCache();
 		}
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}

+ 8 - 15
netflix-web/src/main/java/com/cyksj/web/controller/manage/home/HomeManageConfigController.java

@@ -11,9 +11,9 @@ import com.cyksj.model.request.HomeConfigTimingReq;
 import com.cyksj.model.request.HomeManageConfigReq;
 import com.cyksj.model.views.HomeManagementAvailableGoodsView;
 import com.cyksj.model.views.HomeManagementConfigView;
-import com.cyksj.redis.RedisService;
 import com.cyksj.service.home.HomeManagementConfigService;
 import com.cyksj.service.mange.GoodsDonCategoryService;
+import com.cyksj.service.mange.RefreshCacheService;
 import com.ejlchina.searcher.BeanSearcher;
 import com.ejlchina.searcher.SearchResult;
 import com.ejlchina.searcher.util.MapUtils;
@@ -22,7 +22,6 @@ import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
 import java.util.List;
-import java.util.Set;
 
 /** admin/首页管理/首页配置管理
  *项目名: netflix
@@ -40,7 +39,7 @@ public class HomeManageConfigController {
 
 	private final HttpServletRequest request;
 
-	private final RedisService redisService;
+	private final RefreshCacheService refreshCacheService;
 
 	private final GoodsDonCategoryService goodsDonCategoryService;
 
@@ -59,8 +58,7 @@ public class HomeManageConfigController {
 	@PutMapping("/put")
 	public Result<String> updateConfig(@RequestBody HomeManageConfigReq config) {
 		homeManagementConfigService.saveOrUpdateConfig(config);
-		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-		redisService.del(keys.toArray(String[]::new));
+		refreshCacheService.refreshYhHomePageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -76,8 +74,7 @@ public class HomeManageConfigController {
 		byId.setTime(null);
 		byId.setPreStatus(null);
 		homeManagementConfigService.updateById(byId);
-		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-		redisService.del(keys.toArray(String[]::new));
+		refreshCacheService.refreshYhHomePageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -93,8 +90,7 @@ public class HomeManageConfigController {
 				.in(HomeManagementConfig::getId, ids));
 		//批量取消定时上下架状态
 		homeManagementConfigService.batchCancelTimingStatus(ids);
-		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-		redisService.del(keys.toArray(String[]::new));
+		refreshCacheService.refreshYhHomePageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -106,8 +102,7 @@ public class HomeManageConfigController {
 		goodsDonCategoryService.update(null, Wrappers.lambdaUpdate(GoodsDonCategory.class)
 				.set(GoodsDonCategory::getStatus, status)
 				.in(GoodsDonCategory::getId, ids));
-		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-		redisService.del(keys.toArray(String[]::new));
+		refreshCacheService.refreshYhHomePageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -122,8 +117,7 @@ public class HomeManageConfigController {
 		Integer sorted = config.getSorted();
 		byId.setSorted(sorted);
 		homeManagementConfigService.updateById(byId);
-		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-		redisService.del(keys.toArray(String[]::new));
+		refreshCacheService.refreshYhHomePageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}
 
@@ -136,8 +130,7 @@ public class HomeManageConfigController {
 						.set(HomeManagementConfig::getDeleted, false)
 						.eq(HomeManagementConfig::getId, id)
 						.eq(HomeManagementConfig::getDeleted, true));
-		Set<String> keys = redisService.keys(RedisService.key.YH_HOME_PAGHE_CACHE.getEnvName() + "*");
-		redisService.del(keys.toArray(String[]::new));
+		refreshCacheService.refreshYhHomePageCache();
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}