refactor: 页面+规则存七牛云本地缓存+版本历史接口

This commit is contained in:
mediabot-pt
2026-07-05 19:09:57 +08:00
parent 41d730c249
commit 4ac61a1868
4 changed files with 95 additions and 5 deletions

View File

@@ -17,6 +17,7 @@ import java.util.*;
public class RiskRuleServiceImpl implements RiskRuleService {
private final RiskRuleMapper mapper;
private final com.par.core.storage.CachedStorageService storageService;
private static final ObjectMapper om = new ObjectMapper();
@Override
@@ -50,14 +51,18 @@ public class RiskRuleServiceImpl implements RiskRuleService {
@Override
public void saveRules(String siteType, List<Map<String, Object>> rules) {
try {
String json = om.writeValueAsString(rules);
String json = om.writerWithDefaultPrettyPrinter().writeValueAsString(rules);
int nextVer = getVersion(siteType) + 1;
// 存 DB
RiskRule rr = new RiskRule();
rr.setSiteType(siteType);
rr.setVersion(nextVer);
rr.setRulesJson(json);
mapper.insert(rr);
log.info("风险规则已保存: siteType={}, version={}", siteType, nextVer);
// 存七牛云 + 本地缓存
String storagePath = String.format("rules/%s/v%d.json", siteType, nextVer);
storageService.store(storagePath, json);
log.info("风险规则已保存: siteType={}, version={}, path={}", siteType, nextVer, storagePath);
} catch (Exception e) {
log.error("保存风险规则失败 siteType={}", siteType, e);
throw new RuntimeException("保存失败: " + e.getMessage());

View File

@@ -17,6 +17,7 @@ import java.util.*;
public class SitePagesServiceImpl implements SitePagesService {
private final SitePagesMapper mapper;
private final com.par.core.storage.CachedStorageService storageService;
private static final ObjectMapper om = new ObjectMapper();
@Override
@@ -51,19 +52,24 @@ public class SitePagesServiceImpl implements SitePagesService {
@Override
public void savePages(String siteId, List<Map<String, Object>> entries) {
try {
String json = om.writeValueAsString(entries);
String json = om.writerWithDefaultPrettyPrinter().writeValueAsString(entries);
// 版本号递增
String currentVer = getVersion(siteId);
int nextVer = 1;
if (currentVer != null) {
try { nextVer = Integer.parseInt(currentVer) + 1; } catch (NumberFormatException e) { /* keep 1 */ }
}
String version = String.valueOf(nextVer);
// 存 DB
SitePages sp = new SitePages();
sp.setSiteId(siteId);
sp.setVersion(String.valueOf(nextVer));
sp.setVersion(version);
sp.setEntriesJson(json);
mapper.insert(sp);
log.info("页面配置已保存: siteId={}, version={}", siteId, nextVer);
// 存七牛云 + 本地缓存
String storagePath = String.format("pages/%s/v%s.json", siteId, version);
storageService.store(storagePath, json);
log.info("页面配置已保存: siteId={}, version={}, path={}", siteId, version, storagePath);
} catch (Exception e) {
log.error("保存页面配置失败 siteId={}", siteId, e);
throw new RuntimeException("保存页面配置失败: " + e.getMessage());