初始化字段修改

This commit is contained in:
waner
2026-04-15 11:19:02 +08:00
parent 1d8869fad8
commit 8c38c0bfbe
4 changed files with 87 additions and 64 deletions
@@ -15,6 +15,8 @@ import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import java.util.List;
import lombok.RequiredArgsConstructor;
import org.springframework.core.io.FileSystemResource;
import org.springframework.core.io.Resource;
import org.springframework.http.ContentDisposition;
@@ -30,14 +32,12 @@ import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/api/v1/resource-backups")
@RequiredArgsConstructor
@Tag(name = "资源备份", description = "资源备份创建、状态查询和步骤日志接口")
public class ResourceBackupController {
private final ResourceBackupService resourceBackupService;
public ResourceBackupController(ResourceBackupService resourceBackupService) {
this.resourceBackupService = resourceBackupService;
}
@GetMapping("/keyset/status")
@Operation(summary = "查询资源备份密钥状态", description = "返回资源备份恢复前置密钥状态和公钥指纹。")
@@ -25,12 +25,8 @@ public class CurrentInitConfigResponse {
private String node01Ip;
@Schema(description = "节点二 IP", example = "10.0.0.2")
private String node02Ip;
@Schema(description = "签名服务地址", example = "172.30.1.101")
private String signHost;
@Schema(description = "签名服务端口", example = "50006")
private Integer signPort;
@Schema(description = "签名服务类型", example = "INFSEC")
private String signType;
@Schema(description = "CIPS 中心网关地址", example = "192.168.10.20")
private String cipsGatewayHost;
public String getOrgCodeType() {
return orgCodeType;
@@ -112,27 +108,11 @@ public class CurrentInitConfigResponse {
this.node02Ip = node02Ip;
}
public String getSignHost() {
return signHost;
public String getCipsGatewayHost() {
return cipsGatewayHost;
}
public void setSignHost(String signHost) {
this.signHost = signHost;
}
public Integer getSignPort() {
return signPort;
}
public void setSignPort(Integer signPort) {
this.signPort = signPort;
}
public String getSignType() {
return signType;
}
public void setSignType(String signType) {
this.signType = signType;
public void setCipsGatewayHost(String cipsGatewayHost) {
this.cipsGatewayHost = cipsGatewayHost;
}
}
@@ -720,7 +720,7 @@ public class InitServiceImpl implements InitService {
JsonNode request = root.path("request");
JsonNode mq = request.path("mq");
JsonNode nodes = request.path("nodes");
JsonNode signServer = request.path("signServer");
JsonNode directTlq = request.path("directTlq");
CurrentInitConfigResponse response = new CurrentInitConfigResponse();
response.setOrgCodeType(firstNonBlank(normalizeUpper(text(request, "orgCodeType")), normalizeUpper(text(root, "orgCodeType"))));
@@ -733,10 +733,7 @@ public class InitServiceImpl implements InitService {
response.setChannelUsername(firstNonBlank(text(mq, "channelUsername"), text(request, "channelUsername")));
response.setNode01Ip(firstNonBlank(text(nodes, "node01Ip"), text(request, "node01Ip")));
response.setNode02Ip(firstNonBlank(text(nodes, "node02Ip"), text(request, "node02Ip")));
// 保留初始化快照中的签名服务配置,便于设备画像和联调页面直接复用。
response.setSignHost(firstNonBlank(text(signServer, "signHost"), text(request, "signHost")));
response.setSignPort(integerValue(firstNonBlank(text(signServer, "signPort"), text(request, "signPort"))));
response.setSignType(firstNonBlank(text(signServer, "signType"), text(request, "signType")));
response.setCipsGatewayHost(firstNonBlank(text(mq, "cipsGatewayHost"), text(request, "cipsGatewayHost")));
return response;
} catch (JsonProcessingException ex) {
throw new BizException(ErrorCode.BIZ_ERROR.getCode(), "failed to parse successful init task snapshot");
@@ -795,19 +792,6 @@ public class InitServiceImpl implements InitService {
requireNotBlank("licenses.cfgZipFileId", request.getLicenses().getCfgZipFileId());
requireFileId("licenses.cfgZipFileId", request.getLicenses().getCfgZipFileId());
InitPreviewRequest.SignServer signServer = request.getSignServer();
if (signServer == null) {
throw new IllegalArgumentException("signServer is required for DIRECT");
}
requireNotBlank("signServer.signHost", signServer.getSignHost());
if (signServer.getSignPort() == null || signServer.getSignPort() <= 0 || signServer.getSignPort() > 65535) {
throw new IllegalArgumentException("signServer.signPort must be in [1,65535]");
}
requireNotBlank("signServer.signType", signServer.getSignType());
requireNotBlank("signServer.signCertDn", signServer.getSignCertDn());
requireNotBlank("signServer.signCertSn", signServer.getSignCertSn());
requireNotBlank("signServer.signPassword", signServer.getSignPassword());
if ("RABBITMQ_TLQ".equals(mqType)) {
requireNotBlank("mq.tlqLicenseFileId", request.getMq().getTlqLicenseFileId());
requireFileId("mq.tlqLicenseFileId", request.getMq().getTlqLicenseFileId());
@@ -817,6 +801,7 @@ public class InitServiceImpl implements InitService {
}
requireNotBlank("directTlq.localNodeSeq", directTlq.getLocalNodeSeq());
requireNotBlank("directTlq.upstreamInstitutions", directTlq.getUpstreamInstitutions());
requireNotBlank("mq.cipsGatewayHost", request.getMq().getCipsGatewayHost());
if (directTlq.getUpstreamCocCount() == null
|| directTlq.getUpstreamCocCount() < 1
|| directTlq.getUpstreamCocCount() > 2) {