[MODIFY] 외부 Edge 패키지 등록 API 수정, EdgeSWVO 필드 추가 및 개선, Bearer 인증 설정 수정, application.properties의 외부 인증 URL 변경
parent
ab0281eae8
commit
d4f3620933
@ -1,72 +1,67 @@
|
||||
package kr.re.etri.autoflow.payload.request;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Schema(description = "Edge SW 등록용 데이터")
|
||||
public class EdgeSWVO implements Serializable {
|
||||
|
||||
private int sw_serial = -1;
|
||||
private int ed_pkg_serial = -1;
|
||||
private int sw_group = -1;
|
||||
private String sw_group_name;
|
||||
private int sw_type = -1;
|
||||
private String sw_type_name;
|
||||
private String sw_manufacturer;
|
||||
private String package_id;
|
||||
private String sw_id;
|
||||
private String sw_version;
|
||||
private String sw_name;
|
||||
private String file_type;
|
||||
private String file_name;
|
||||
@Schema(description = "생성 일시 (ISO-8601 형식, UTC)", example = "2025-10-20T11:46:49.848Z", required = true)
|
||||
private String creation_datetime;
|
||||
private long file_size = -1;
|
||||
private String file_location;
|
||||
private int install_os = -1;
|
||||
private String install_os_name;
|
||||
|
||||
private List<MultipartFile> files = new ArrayList<>();
|
||||
@Schema(description = "다운로드 위치", example = "/opt/edge/download")
|
||||
private String download_location;
|
||||
|
||||
@Schema(description = "Edge 패키지 일련번호", nullable = true, example = "null")
|
||||
private Integer ed_pkg_serial = null;
|
||||
|
||||
private boolean newest_version = false;
|
||||
private String sw_serial_list;
|
||||
private int archive_type = -1;
|
||||
private boolean hmac = false;
|
||||
@Schema(description = "SW ID", example = "SW001", required = true)
|
||||
private String sw_id;
|
||||
|
||||
@Schema(description = "SW 버전 (정수형)", example = "1", required = true)
|
||||
private int sw_version;
|
||||
|
||||
@Schema(description = "SW 이름", example = "Edge Manager", required = true)
|
||||
private String sw_name;
|
||||
|
||||
@Schema(description = "사용자 ID", example = "admin", required = true)
|
||||
private String user_id;
|
||||
private String window_root_location;
|
||||
private String window_exe_name;
|
||||
private String linux_root_location;
|
||||
private String linux_exe_name;
|
||||
private String edge_id;
|
||||
private String location_number;
|
||||
|
||||
private String exec_yn;
|
||||
private String download_location;
|
||||
|
||||
@Schema(description = "인증 토큰", example = "eyJhbGciOiJIUzI1NiJ9...", required = true)
|
||||
private String auth_id;
|
||||
|
||||
@Schema(description = "설치 OS (1=Windows, 2=Linux 등)", example = "1", defaultValue = "1")
|
||||
private int install_os = 1;
|
||||
|
||||
@Schema(description = "아카이브 여부", example = "0", defaultValue = "0")
|
||||
private int archive_type = 0;
|
||||
|
||||
@Schema(description = "실행 여부", example = "0", defaultValue = "0")
|
||||
private String exec_yn = "0";
|
||||
|
||||
@Schema(description = "비밀글 여부", example = "false")
|
||||
private String secret_at;
|
||||
private boolean admin_at;
|
||||
|
||||
private String user_input_install_location;
|
||||
|
||||
// 파일 리스트 getter/setter (복사본 반환)
|
||||
public List<MultipartFile> getFiles() {
|
||||
if (this.files != null) {
|
||||
return new ArrayList<>(this.files);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public void setFiles(List<MultipartFile> files) {
|
||||
if (files != null) {
|
||||
this.files = new ArrayList<>(files);
|
||||
} else {
|
||||
this.files = null;
|
||||
}
|
||||
}
|
||||
|
||||
@Schema(description = "파일 위치", example = "/opt/edge/files/edge-manager.jar")
|
||||
private String file_location;
|
||||
|
||||
@Schema(description = "파일 이름", example = "edge-manager.jar")
|
||||
private String file_name;
|
||||
|
||||
@Schema(description = "파일 종류", example = "jar")
|
||||
private String file_type;
|
||||
|
||||
@Schema(description = "파일 크기 (byte 단위)", example = "123456")
|
||||
private long file_size;
|
||||
|
||||
@Schema(description = "파일 업로드용 리스트 (JSON 전송 시 무시)", hidden = true)
|
||||
@JsonIgnore
|
||||
private List<?> files;
|
||||
}
|
||||
|
||||
Loading…
Reference in new issue