-
Notifications
You must be signed in to change notification settings - Fork 9
/
MemberInfoDo.go
46 lines (41 loc) · 1.63 KB
/
MemberInfoDo.go
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
package wdk
import (
"sync"
)
// MemberInfoDo 结构体
type MemberInfoDo struct {
// 会员卡号
CardNum string `json:"card_num,omitempty" xml:"card_num,omitempty"`
// 会员卡状态 '使用中' or '已挂失' or '已作废' or '已补发卡' or '已退卡' or '已冻结' or '未激活' or '已坏卡登记' or '已销毁' or '已制卡' or '已发卡' or '已核对' or '已回收' or '空卡' or '异常' or '已损卡'
State string `json:"state,omitempty" xml:"state,omitempty"`
// 卡有效期截止日期,格式:yyyy-MM-dd HH:mm:ss
EndTime string `json:"end_time,omitempty" xml:"end_time,omitempty"`
// 扩展属性map
MemberAttributes string `json:"member_attributes,omitempty" xml:"member_attributes,omitempty"`
// 会员卡类型
CardType string `json:"card_type,omitempty" xml:"card_type,omitempty"`
// 会员卡等级
CardLevel int64 `json:"card_level,omitempty" xml:"card_level,omitempty"`
// 如果卡长期有效,值为true,为true时,默认不校验endTime
Forever bool `json:"forever,omitempty" xml:"forever,omitempty"`
}
var poolMemberInfoDo = sync.Pool{
New: func() any {
return new(MemberInfoDo)
},
}
// GetMemberInfoDo() 从对象池中获取MemberInfoDo
func GetMemberInfoDo() *MemberInfoDo {
return poolMemberInfoDo.Get().(*MemberInfoDo)
}
// ReleaseMemberInfoDo 释放MemberInfoDo
func ReleaseMemberInfoDo(v *MemberInfoDo) {
v.CardNum = ""
v.State = ""
v.EndTime = ""
v.MemberAttributes = ""
v.CardType = ""
v.CardLevel = 0
v.Forever = false
poolMemberInfoDo.Put(v)
}