XuqmGroup-Server/update-service/src/main/java/com/xuqm/update/entity/RnBundleEntity.java
XuqmGroup dc1ada94ea docs(deploy): 添加部署文档和安全设计规范
- 新增 XuqmGroup 部署文档,包含部署方案、架构建议和部署步骤
- 添加安全设计规范,涵盖密码安全、AppSecret验证和服务端API认证
- 补充平台REST API规范,定义Server-to-Server调用接口和错误码
- 创建Java IM服务端SDK计划文档,规划Maven包发布和接口实现
2026-05-08 18:32:00 +08:00

127 行
4.1 KiB
Java

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; }
}