package com.xuqm.update.entity; import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.EnumType; import jakarta.persistence.Enumerated; import jakarta.persistence.Id; import jakarta.persistence.Table; import java.time.LocalDateTime; @Entity @Table(name = "update_rn_bundle") public class RnBundleEntity { public enum Platform { ANDROID, IOS, HARMONY } public enum PublishStatus { DRAFT, PUBLISHED, DEPRECATED } @Id private String id; @Column(nullable = false, length = 64) private String appKey; @Column(nullable = false, length = 64) private String moduleId; @Enumerated(EnumType.STRING) @Column(nullable = false, length = 16) private Platform platform; @Column(nullable = false, length = 32) private String version; @Column(nullable = false, length = 512) private String bundleUrl; @Column(nullable = false, length = 64) private String md5; @Column(length = 32) private String minCommonVersion; @Column(length = 256) private String packageName; @Column(length = 512) private String note; @Enumerated(EnumType.STRING) @Column(nullable = false, length = 16) private PublishStatus publishStatus; @Column(length = 16) private String publishMode = "MANUAL"; private LocalDateTime scheduledPublishAt; @Column(nullable = false) private boolean grayEnabled = false; @Column(nullable = false) private int grayPercent = 0; @Column(length = 16) private String grayMode = "PERCENT"; @Column(columnDefinition = "TEXT") private String grayMemberIds; @Column(nullable = false) private LocalDateTime createdAt; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getAppKey() { return appKey; } public void setAppKey(String appKey) { this.appKey = appKey; } public String getModuleId() { return moduleId; } public void setModuleId(String moduleId) { this.moduleId = moduleId; } public Platform getPlatform() { return platform; } public void setPlatform(Platform platform) { this.platform = platform; } public String getVersion() { return version; } public void setVersion(String version) { this.version = version; } public String getBundleUrl() { return bundleUrl; } public void setBundleUrl(String bundleUrl) { this.bundleUrl = bundleUrl; } public String getMd5() { return md5; } public void setMd5(String md5) { this.md5 = md5; } public String getMinCommonVersion() { return minCommonVersion; } public void setMinCommonVersion(String minCommonVersion) { this.minCommonVersion = minCommonVersion; } public String getPackageName() { return packageName; } public void setPackageName(String packageName) { this.packageName = packageName; } public String getNote() { return note; } public void setNote(String note) { this.note = note; } public PublishStatus getPublishStatus() { return publishStatus; } public void setPublishStatus(PublishStatus publishStatus) { this.publishStatus = publishStatus; } public String getPublishMode() { return publishMode; } public void setPublishMode(String publishMode) { this.publishMode = publishMode; } public LocalDateTime getScheduledPublishAt() { return scheduledPublishAt; } public void setScheduledPublishAt(LocalDateTime scheduledPublishAt) { this.scheduledPublishAt = scheduledPublishAt; } public boolean isGrayEnabled() { return grayEnabled; } public void setGrayEnabled(boolean grayEnabled) { this.grayEnabled = grayEnabled; } public int getGrayPercent() { return grayPercent; } public void setGrayPercent(int grayPercent) { this.grayPercent = grayPercent; } public String getGrayMode() { return grayMode; } public void setGrayMode(String grayMode) { this.grayMode = grayMode; } public String getGrayMemberIds() { return grayMemberIds; } public void setGrayMemberIds(String grayMemberIds) { this.grayMemberIds = grayMemberIds; } public LocalDateTime getCreatedAt() { return createdAt; } public void setCreatedAt(LocalDateTime createdAt) { this.createdAt = createdAt; } }