新增项目、排期与邀请模块,并接入首页路由
将项目管理、排期管理与摄影师邀请流程从占位页迁移为完整实现,包含项目图片 OSS 上传与共享业务模型。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@ -125,6 +125,29 @@ struct WalletEarningDetailItem: Decodable, Equatable, Identifiable {
|
||||
case source
|
||||
}
|
||||
|
||||
/// 创建收益明细实体,主要用于测试替身和本地空状态。
|
||||
init(
|
||||
id: Int64 = 0,
|
||||
amount: String = "",
|
||||
points: Int = 0,
|
||||
type: Int = 0,
|
||||
typeLabel: String = "",
|
||||
orderNumberSuffix: String = "",
|
||||
createdAt: String = "",
|
||||
withdrawLabel: String? = nil,
|
||||
source: String? = nil
|
||||
) {
|
||||
self.id = id
|
||||
self.amount = amount
|
||||
self.points = points
|
||||
self.type = type
|
||||
self.typeLabel = typeLabel
|
||||
self.orderNumberSuffix = orderNumberSuffix
|
||||
self.createdAt = createdAt
|
||||
self.withdrawLabel = withdrawLabel
|
||||
self.source = source
|
||||
}
|
||||
|
||||
/// 自定义解码,兼容字段类型不稳定。
|
||||
init(from decoder: Decoder) throws {
|
||||
let container = try decoder.container(keyedBy: CodingKeys.self)
|
||||
|
||||
Reference in New Issue
Block a user