package member import ( "haixun-backend/internal/library/storage" "haixun-backend/internal/model/member/domain/entity" "haixun-backend/internal/types" ) func normalizeAvatarRef(bucket, ref string) string { return storage.NormalizeObjectKey(bucket, ref) } func optionalNormalizedAvatar(bucket, value string) *string { if value == "" { return nil } normalized := normalizeAvatarRef(bucket, value) return &normalized } func optionalNormalizedAvatarPtr(bucket string, value *string) *string { if value == nil { return nil } return optionalNormalizedAvatar(bucket, *value) } func toMemberMeDataWithAvatar(member *entity.Member, bucket string) *types.MemberMeData { data := toMemberMeData(member) if data == nil || bucket == "" { return data } data.Avatar = normalizeAvatarRef(bucket, data.Avatar) return data } func toMemberMeDataListWithAvatar(members []*entity.Member, bucket string) []types.MemberMeData { list := make([]types.MemberMeData, 0, len(members)) for _, item := range members { data := toMemberMeDataWithAvatar(item, bucket) if data == nil { continue } list = append(list, *data) } return list }