package model import ( "time" "git.rosy.net.cn/baseapi/utils" ) const ( UserStatusNormal = 1 UserStatusDisabled = 2 ) const ( UserTypeConsumer = 1 UserTypeStoreBoss = 2 UserTypeOperator = 4 UserTypeBoss = 8 UserTypeNonConsumer = ^1 MemberTypeNormal = 1 //普通会员 ) var ( UserTypeName = map[int]string{ UserTypeConsumer: "消费者", UserTypeStoreBoss: "门店老板", UserTypeOperator: "运营", UserTypeBoss: "老板", } ) type MemberCard struct { ID int `orm:"column(id)" json:"id"` Price int `json:"price"` ActPrice int `json:"actPrice"` } type User struct { ModelIDCULD UserID string `orm:"size(48);column(user_id)" json:"userID" compact:"userID"` // 内部唯一标识 Name string `orm:"size(48);index" json:"name" compact:"name"` // 外部显示标识(当前可以重复) Password string `orm:"size(48)" json:"password" compact:"password"` // 外部显示标识(当前可以重复) Mobile *string `orm:"size(32)" json:"mobile" compact:"mobile"` Email *string `orm:"size(32)" json:"email" compact:"email"` Avatar string `orm:"size(255)" json:"avatar" compact:"avatar"` // 头像 Status int8 `json:"status" compact:"status"` Type int8 `json:"type" compact:"type"` // 用户类型 Company string `json:"company"` //公司名称 CityCode int `orm:"default(0)" json:"cityCode"` DistrictCode int `orm:"default(0);index" json:"districtCode"` Address string `orm:"size(255)" json:"address"` IDCardNo string `orm:"size(18);column(id_card_no)" json:"idCardNo" compact:"idCardNo"` // 身份证号 Remark string `orm:"size(255)" json:"remark"` LastLoginAt *time.Time `orm:"null" json:"lastLoginAt"` LastLoginIP string `orm:"size(64);column(last_login_ip)" json:"lastLoginIP"` LastLoginType string `orm:"size(16)" json:"lastLoginType"` OpenId string `orm:"size(255);column(open_id)" json:"open_id" db:"open_id"` // 微信用户openId UnionId string `orm:"size(255);column(union_id)" json:"union_id" db:"union_id"` // 微信用户Id } func (user *User) TableUnique() [][]string { return [][]string{ []string{"Mobile"}, []string{"OpenId"}, } } func (user *User) TableIndex() [][]string { return [][]string{ []string{"Mobile"}, []string{"OpenId"}, []string{"UserID"}, } } func (user *User) GetID() string { return user.UserID } func (user *User) GetMobile() string { return utils.Pointer2String(user.Mobile) } func (user *User) GetEmail() string { return utils.Pointer2String(user.Email) } func (user *User) GetName() string { return user.Name } func (user *User) GetAvatar() string { return user.Avatar } type Menu struct { ModelIDCULD Name string `json:"name"` //功能名 URL string `orm:"column(url)" json:"url"` //路径 ImgURL string `orm:"column(img_url)" json:"imgURL"` //图标 Level int `json:"level"` //级别 ParentID int `orm:"column(parent_id)" json:"parentID"` //父功能ID Color string `json:"color"` //颜色 MenuType string `json:"menuType"` //如果值为api,则是api接口菜单 } func (*Menu) TableUnique() [][]string { return [][]string{ []string{"Name", "DeletedAt"}, } } type MenuDetail struct { ModelIDCULD MenuID int `orm:"column(menu_id)" json:"menuID"` //菜单ID Name string `json:"name"` //接口名 Content string `orm:"type(text)" json:"content"` //接口描述 URL string `orm:"column(url)" json:"url"` //请求路径 Method string `json:"method"` //请求方式:get post PublicParam string `json:"publicParam"` //公共参数 PrivateParam string `json:"privateParam"` //私有参数 CallParam string `json:"callParam"` //调用示例 ReturnParam string `json:"returnParam"` //返回参数 ReturnEx string `json:"returnEX"` //返回实例 } func (*MenuDetail) TableUnique() [][]string { return [][]string{ []string{"MenuID"}, } }