user_base_dto.go
1.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package dto
import (
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-user/pkg/domain"
"time"
)
type UserBaseDto struct {
// 用户基础数据id
UserBaseId int64 `json:"userBaseId,omitempty"`
// 手机号码
//Account string `json:"phone,omitempty"`
// 最后登录时间
LastLogIn string `json:"lastLogIn"`
// 用户信息 (冗余,数据存在userBase里面)
UserInfo *domain.UserInfo `json:"userInfo,omitempty"`
// 账号状态 1:正常 2.禁用 3:注销
Status int `json:"status,omitempty"`
// 推荐人
Referer string `json:"referer"`
// 关联的用户 (冗余)
// RelatedUsers []int64 `json:"relatedUsers,omitempty"`
// 用户关联的组织
UserOrg []interface{} `json:"userOrg"`
// 创建时间
RegistrationDate string `json:"registrationDate,omitempty"`
}
func (dto *UserBaseDto) LoadDto(userBase *domain.UserBase, relateUsers []*domain.User) error {
dto.UserBaseId = userBase.UserBaseId
//dto.Account = userBase.Account
dto.LastLogIn = ""
dto.UserInfo = userBase.UserInfo
if userBase.Favorite != nil {
if userBase.Favorite.LastLogInAt > 0 {
t := time.Unix(userBase.Favorite.LastLogInAt, 0)
dto.LastLogIn = t.Format("2006-01-02 15:04:05")
}
dto.Referer = userBase.Favorite.Referer
}
dto.Status = userBase.Status
for i := range relateUsers {
dto.UserOrg = append(dto.UserOrg, map[string]interface{}{
"orgId": relateUsers[i].OrganizationId,
"orgName": relateUsers[i].Ext.OrgName,
})
}
dto.RegistrationDate = userBase.CreatedAt.Format("2006-01-02")
return nil
}