refactor: 适配校验改为站点汇总+适配器页面批量校验模式

This commit is contained in:
mediabot-pt
2026-06-30 23:01:49 +08:00
parent 0568923ce9
commit bf9ad010a1
10 changed files with 499 additions and 203 deletions

View File

@@ -2,6 +2,7 @@ package com.par.api.controller;
import com.par.core.dto.AccessResultDTO;
import com.par.core.dto.ApiResponse;
import com.par.core.dto.SiteAccessSummaryDTO;
import com.par.core.entity.AccessResult;
import com.par.core.service.AccessResultService;
import jakarta.servlet.http.HttpServletRequest;
@@ -57,6 +58,14 @@ public class AccessResultController {
// ==================== 管理员查看接口(JWT 鉴权) ====================
/**
* 获取所有站点访问结果汇总(按URL分组,用于适配校验列表页)
*/
@GetMapping("/api/v1/admin/access-results/summary")
public ApiResponse<List<SiteAccessSummaryDTO>> listSiteSummaries() {
return ApiResponse.success(accessResultService.listSiteSummaries());
}
/**
* 获取所有访问结果列表
*/
@@ -86,7 +95,7 @@ public class AccessResultController {
}
/**
* 管理员验证适配结果
* 管理员验证适配结果(单个)
*/
@PostMapping("/api/v1/admin/access-results/{id}/validate")
public ApiResponse<AccessResultDTO> validate(
@@ -107,4 +116,21 @@ public class AccessResultController {
return ApiResponse.error(404, e.getMessage());
}
}
/**
* 批量验证:标记站点某个URL的所有未验证结果
*/
@PostMapping("/api/v1/admin/access-results/batch-validate")
public ApiResponse<Map<String, Object>> batchValidateUrl(@RequestBody Map<String, Object> payload) {
String siteId = (String) payload.get("siteId");
String url = (String) payload.get("url");
Boolean isValid = payload.get("isValid") instanceof Boolean b ? b : null;
if (siteId == null || url == null || isValid == null) {
return ApiResponse.error(400, "siteId, url, isValid are required");
}
int affected = accessResultService.batchValidateUrl(siteId, url, isValid);
return ApiResponse.success(Map.of("affected", affected));
}
}