【发布时间】:2021-11-24 02:39:25
【问题描述】:
我目前正在做一个托管项目,所以这就是我设计用于存储托管信息的实体的方式。
// entity design for storing hosting instance
data class HostingInstance(
val hostingId: String,
val customerId: String,
val active: Boolean,
val status: HostingStatus,
...
)
// enum class for status
enum class HostingStatus {
CREATION_PENDING,
CREATION_SUCCESS,
CREATION_FAILED,
RENEW_PENDING,
RENEW_SUCCESS,
RENEW_FAILED,
SUSPEND_PENDING,
SUSPEND_SUCCESS,
SUSPEND_FAILED,
UPGRADE_PENDING,
UPGRADE_SUCCESS,
UPGRADE_FAILED,
...
}
如您所见,我必须存储很多状态。在前端,它们还有一个固定的状态图标,例如 active、suspend、fail(upgrade_failed 和 renew_failed 也处于活动状态),我为它们感到难过,因为它们必须映射我所有的枚举状态对他们的偶像来说,这是一项非常艰巨的工作。所以我的问题是我应该如何设计我的状态字段以便前端团队可以轻松使用?
【问题讨论】:
标签: spring-boot kotlin design-patterns database-design