73 lines
1.4 KiB
Go
73 lines
1.4 KiB
Go
package session
|
|
|
|
import (
|
|
"enterprise/common/config"
|
|
"enterprise/common/model"
|
|
"reflect"
|
|
)
|
|
|
|
var (
|
|
ContextSession = "session"
|
|
ContextRequest = "request"
|
|
ContextResponse = "response"
|
|
ContextHeader = "header"
|
|
ContextWriteEvent = "write_event"
|
|
ContextRefreshToken = "refresh_token"
|
|
)
|
|
|
|
type AdminHeader struct {
|
|
Token string `header:"x-token" json:"-"`
|
|
Host string `header:"x-host" json:"-"`
|
|
RemoteIp string `header:"x-remote-ip" json:"public_ip"`
|
|
}
|
|
|
|
type AdminSession struct {
|
|
adminHeader *AdminHeader
|
|
adminUser *model.StaffUser
|
|
}
|
|
|
|
func NewAdminSession(header *AdminHeader, user *model.StaffUser) *AdminSession {
|
|
return &AdminSession{
|
|
adminHeader: header,
|
|
adminUser: user,
|
|
}
|
|
}
|
|
|
|
func (s *AdminSession) GetHeader() *AdminHeader {
|
|
return s.adminHeader
|
|
}
|
|
|
|
func (s *AdminSession) GetAdmin() *model.StaffUser {
|
|
return s.adminUser
|
|
}
|
|
|
|
func (s *AdminSession) GetCorpId() int64 {
|
|
return s.adminUser.CorpId
|
|
}
|
|
|
|
func (s *AdminSession) GetUsername() string {
|
|
if s.adminUser != nil {
|
|
return s.adminUser.Username
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func CheckDBError(err error) {
|
|
if err != nil {
|
|
panic(config.ErrDb.New().Append(err))
|
|
}
|
|
}
|
|
|
|
func CheckParamError(err error) {
|
|
if err != nil {
|
|
panic(config.ErrParam.New().Append(err))
|
|
}
|
|
}
|
|
|
|
func CheckNilError(data interface{}, args ...string) {
|
|
val := reflect.ValueOf(data)
|
|
if val.IsNil() {
|
|
panic(config.ErrNoData.New().Append(args))
|
|
}
|
|
}
|