refactor: 合并上传到保存按钮,去掉上传按钮

1. 后端 saveRules/saveDefaultRules 接口直接包含 CDN 上传逻辑
2. 移除独立的 /upload 端点(风险规则 + 默认规则)
3. 前端去掉上传按钮和 uploadRules 函数
4. 现在只需保存→发布正式版两步即可完成
This commit is contained in:
mediabot-pt
2026-07-07 17:57:20 +08:00
parent 40eea42710
commit ec37369bc2
2 changed files with 4 additions and 34 deletions

View File

@@ -44,6 +44,7 @@ public class RiskRuleController {
return ResponseEntity.status(304).build();
}
/** 保存风险规则(写DB + 生成快照 + 上传CDN) */
@PostMapping("/api/v1/risk-rules/{siteType}")
public ApiResponse<Void> saveRules(@PathVariable String siteType,
@RequestBody Map<String, Object> payload) {
@@ -51,17 +52,6 @@ public class RiskRuleController {
var rules = (List<Map<String, Object>>) payload.get("rules");
if (rules == null || rules.isEmpty()) return ApiResponse.error(400, "rules is required");
riskRuleService.saveRules(siteType, rules);
return ApiResponse.success();
}
/** 发布风险规则到云存储 */
@PostMapping("/api/v1/risk-rules/{siteType}/upload")
public ApiResponse<Void> uploadRules(@PathVariable String siteType,
@RequestBody Map<String, Object> payload) {
@SuppressWarnings("unchecked")
var rules = (List<Map<String, Object>>) payload.get("rules");
if (rules == null || rules.isEmpty()) return ApiResponse.error(400, "rules is required");
riskRuleService.saveRules(siteType, rules);
try { storageService.store("rules/" + siteType + ".json",
new com.fasterxml.jackson.databind.ObjectMapper().writeValueAsString(rules)); } catch (Exception ignored) {}
return ApiResponse.success();
@@ -118,18 +108,8 @@ public class RiskRuleController {
checkAdmin(request);
@SuppressWarnings("unchecked")
var rules = (List<Map<String, Object>>) payload.get("rules");
riskRuleService.saveRules("default:" + type, rules != null ? rules : List.of());
return ApiResponse.success();
}
/** 发布默认风险规则到云存储 */
@PostMapping("/api/v1/admin/default-rules/{type}/upload")
public ApiResponse<Void> uploadDefaultRules(
@PathVariable String type, @RequestBody Map<String, Object> payload, HttpServletRequest request) {
checkAdmin(request);
@SuppressWarnings("unchecked")
var rules = (List<Map<String, Object>>) payload.get("rules");
riskRuleService.saveRules("default:" + type, rules != null ? rules : List.of());
if (rules == null) rules = List.of();
riskRuleService.saveRules("default:" + type, rules);
try { storageService.store("rules/default/" + type + ".json",
new com.fasterxml.jackson.databind.ObjectMapper().writeValueAsString(rules)); } catch (Exception ignored) {}
return ApiResponse.success();