Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions internal/controller/system/orgCtrl.go
Original file line number Diff line number Diff line change
Expand Up @@ -280,6 +280,8 @@ func readModelToOrgItem(org *readmodel.OrgWithMemberCount) *resp.OrgItem {
Avatar: org.Avatar,
AvatarID: org.AvatarID,
OwnerID: org.OwnerID,
IsBuiltin: org.IsBuiltin,
BuiltinKey: org.BuiltinKey,
MemberCount: org.MemberCount,
CreatedAt: org.CreatedAt.Format(time.DateTime),
UpdatedAt: org.UpdatedAt.Format(time.DateTime),
Expand Down
1 change: 1 addition & 0 deletions internal/controller/system/userCtrl.go
Original file line number Diff line number Diff line change
Expand Up @@ -386,6 +386,7 @@ func entityToUserDetail(user *entity.User) *resp.UserDetailItem {
Register: int(user.Register),
Freeze: user.Freeze,
Status: int(user.Status),
IsSuperAdmin: user.IsSuperAdmin,
CreatedAt: user.CreatedAt.Format(time.DateTime),
UpdatedAt: user.UpdatedAt.Format(time.DateTime),
CurrentOrgID: user.CurrentOrgID,
Expand Down
1 change: 1 addition & 0 deletions internal/model/dto/response/ojRankingResp.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ type OJRankingListItem struct {
RealName string `json:"real_name"`
Avatar string `json:"avatar"`
TotalPassed int `json:"total_passed"`
CurrentOrg *OrgSimpleItem `json:"current_org,omitempty"`
PlatformDetails *OJRankingPlatformDetails `json:"platform_details,omitempty"`
}

Expand Down
22 changes: 12 additions & 10 deletions internal/model/dto/response/orgResp.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,18 @@ package response

// OrgItem 组织信息项(用于列表/详情响应)
type OrgItem struct {
ID uint `json:"id"` // 组织ID
Name string `json:"name"` // 组织名称
Description string `json:"description"` // 组织描述
Code string `json:"code"` // 加入邀请码
Avatar string `json:"avatar"` // 组织头像URL
AvatarID *uint `json:"avatar_id"` // 组织头像图片ID(可空)
OwnerID uint `json:"owner_id"` // 创建者/负责人ID
MemberCount int64 `json:"member_count"` // 组织活跃成员数
CreatedAt string `json:"created_at"` // 创建时间
UpdatedAt string `json:"updated_at"` // 更新时间
ID uint `json:"id"` // 组织ID
Name string `json:"name"` // 组织名称
Description string `json:"description"` // 组织描述
Code string `json:"code"` // 加入邀请码
Avatar string `json:"avatar"` // 组织头像URL
AvatarID *uint `json:"avatar_id"` // 组织头像图片ID(可空)
OwnerID uint `json:"owner_id"` // 创建者/负责人ID
IsBuiltin bool `json:"is_builtin"` // 是否系统内置组织
BuiltinKey *string `json:"builtin_key,omitempty"` // 内置组织标识
MemberCount int64 `json:"member_count"` // 组织活跃成员数
CreatedAt string `json:"created_at"` // 创建时间
UpdatedAt string `json:"updated_at"` // 更新时间
}

// OrgListResp 组织列表响应
Expand Down
1 change: 1 addition & 0 deletions internal/model/dto/response/userResp.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ type UserDetailItem struct {
Register int `json:"register"`
Freeze bool `json:"freeze"`
Status int `json:"status"`
IsSuperAdmin bool `json:"is_super_admin"`
DisabledAt string `json:"disabled_at,omitempty"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
Expand Down
2 changes: 2 additions & 0 deletions internal/model/entity/user.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,4 +36,6 @@ type User struct {

CurrentOrgID *uint `json:"current_org_id" gorm:"index;comment:'当前组织ID(可空)'"`
CurrentOrg *Org `json:"current_org,omitempty" gorm:"foreignKey:CurrentOrgID;references:ID;constraint:OnUpdate:CASCADE,OnDelete:SET NULL;"`
// IsSuperAdmin 仅用于响应序列化,不持久化到数据库。
IsSuperAdmin bool `json:"is_super_admin" gorm:"-"`
}
2 changes: 2 additions & 0 deletions internal/model/readmodel/org.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ type OrgWithMemberCount struct {
Avatar string
AvatarID *uint
OwnerID uint
IsBuiltin bool
BuiltinKey *string
MemberCount int64
CreatedAt time.Time
UpdatedAt time.Time
Expand Down
Loading
Loading