users.go
1.7 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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package domain
import "time"
// 用户信息
type Users struct {
// 唯一标识
Id int64 `json:"id"`
// 公司id
CompanyId int64 `json:"companyId"`
// 统一用户中心 uid
OpenId int64 `json:"openId"`
// 名称
Name string `json:"name"`
// 性别:0保密 1男 2女
Sex int8 `json:"sex"`
// 员工工号
JobNum string `json:"jobNum"`
// 手机号码
Phone string `json:"phone"`
// 私人手机号码
PrivatePhone string `json:"privatePhone"`
// 邮箱
Email string `json:"email"`
// 分机号
ExtensionNum string `json:"extensionNum"`
// 入职时间
EntryTime time.Time `json:"entryTime"`
// 工作地点
Workspace string `json:"workspace"`
// 状态 1正常 2禁用
Status int8 `json:"status"`
// 手机号
Avatar string `json:"avatar"`
// 备注
Remarks string `json:"remarks"`
// 是否为当前公司主管 1 是2 否
ChargeStatus int8 `json:"chargeStatus"`
// 创建时间
CreateAt time.Time `json:"createAt"`
// 更新时间
UpdateAt time.Time `json:"updateAt"`
// 删除时间
DeleteAt time.Time `json:"deleteAt"`
// 可查看的合伙人信息
AccessPartners []*PartnerInfo
// 1普通用户 2主管理员
AdminType int8 `json:"adminType"`
}
func (Users *Users) AccessPartnerIds() []int64 {
var partnerIds []int64
if Users == nil {
return partnerIds
}
for i := range Users.AccessPartners {
partnerIds = append(partnerIds, Users.AccessPartners[i].Id)
}
return partnerIds
}
type UsersRepository interface {
Save(dm *Users) (*Users, error)
Remove(dm *Users) (*Users, error)
FindOne(queryOptions map[string]interface{}) (*Users, error)
Find(queryOptions map[string]interface{}) (int64, []*Users, error)
}
func (m *Users) Identify() interface{} {
if m.Id == 0 {
return nil
}
return m.Id
}