feat:优化项目结构
This commit is contained in:
@ -4,14 +4,15 @@ import (
|
||||
model3 "SciencesServer/app/api/manage/model"
|
||||
"SciencesServer/app/handle"
|
||||
"SciencesServer/app/service"
|
||||
"SciencesServer/app/session"
|
||||
"SciencesServer/config"
|
||||
"SciencesServer/utils"
|
||||
"errors"
|
||||
)
|
||||
|
||||
type Account struct{ *Platform }
|
||||
type Account struct{ *session.Manage }
|
||||
|
||||
type AccountHandle func(session *service.Session) *Account
|
||||
type AccountHandle func(session *session.Manage) *Account
|
||||
|
||||
type (
|
||||
AccountLoginResponse struct {
|
||||
@ -39,32 +40,32 @@ func (c *Account) Login(account, password, captchaKey, captchaValue, equipment,
|
||||
if !mSysUser.ValidatePassword(password) {
|
||||
return nil, errors.New("密码错误")
|
||||
}
|
||||
session := service.NewSession()
|
||||
session.UID = mSysUser.UUID
|
||||
session.Name = mSysUser.Name
|
||||
session.Mobile = mSysUser.Mobile
|
||||
session.IsAdmin = mSysUser.IsAdminUser()
|
||||
_session := service.NewSession()
|
||||
_session.UID = mSysUser.UUID
|
||||
_session.Name = mSysUser.Name
|
||||
_session.Mobile = mSysUser.Mobile
|
||||
_session.IsAdmin = mSysUser.IsAdminUser()
|
||||
|
||||
uid := mSysUser.UUIDString()
|
||||
|
||||
session.Token = utils.JWTEncrypt(config.SettingInfo.TokenEffectTime, map[string]interface{}{config.TokenForUID: uid})
|
||||
_session.Token = utils.JWTEncrypt(config.SettingInfo.TokenEffectTime, map[string]interface{}{config.TokenForUID: uid})
|
||||
|
||||
service.Publish(config.EventForRedisHashProduce, config.RedisKeyForAccount, uid, session)
|
||||
service.Publish(config.EventForAccountLoginProduce, session.TenantID, session.UID, equipment, ip)
|
||||
service.Publish(config.EventForRedisHashProduce, config.RedisKeyForAccount, uid, _session)
|
||||
service.Publish(config.EventForAccountLoginProduce, _session.TenantID, _session.UID, equipment, ip)
|
||||
|
||||
return &AccountLoginResponse{Token: session.Token, EffectTime: config.SettingInfo.TokenEffectTime}, nil
|
||||
return &AccountLoginResponse{Token: _session.Token, EffectTime: config.SettingInfo.TokenEffectTime}, nil
|
||||
}
|
||||
|
||||
// Logout 退出请求
|
||||
func (c *Account) Logout() error {
|
||||
if c.Session != nil && c.UID > 0 {
|
||||
if c.Manage != nil && c.UID > 0 {
|
||||
service.Publish(config.EventForRedisHashDestroy, config.RedisKeyForAccount, utils.UintToString(c.UID))
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func NewAccount() AccountHandle {
|
||||
return func(session *service.Session) *Account {
|
||||
return &Account{Platform: &Platform{Session: session}}
|
||||
return func(session *session.Manage) *Account {
|
||||
return &Account{Manage: session}
|
||||
}
|
||||
}
|
||||
|
@ -11,7 +11,7 @@ import (
|
||||
type Platform struct{ *service.Session }
|
||||
|
||||
func (c *Platform) Format() string {
|
||||
return c.TenantKey
|
||||
return ""
|
||||
}
|
||||
|
||||
// ReturnPages 分页数据
|
||||
|
@ -4,8 +4,6 @@ import (
|
||||
"SciencesServer/app/api/manage/controller"
|
||||
model3 "SciencesServer/app/api/manage/model"
|
||||
model2 "SciencesServer/app/common/model"
|
||||
"SciencesServer/serve/logger"
|
||||
|
||||
"SciencesServer/app/service"
|
||||
"SciencesServer/serve/orm"
|
||||
"SciencesServer/utils"
|
||||
@ -59,16 +57,16 @@ func (c *Role) Bind(uid uint64, roleIDs []uint64) error {
|
||||
return err
|
||||
}
|
||||
go utils.TryCatch(func() {
|
||||
permission := service.NewPermission(obj)(c.TenantKey, utils.UintToString(uid))
|
||||
|
||||
if _, err = permission.DeleteRolesForUser(false); err != nil {
|
||||
logger.ErrorF("删除用户【%d】角色权限错误:%v", uid, err)
|
||||
return
|
||||
}
|
||||
if _, err = permission.AddRoleForUser(); err != nil {
|
||||
logger.ErrorF("添加用户【%d】角色权限错误:%v", uid, err)
|
||||
return
|
||||
}
|
||||
//permission := service.NewPermission(obj)(c.TenantKey, utils.UintToString(uid))
|
||||
//
|
||||
//if _, err = permission.DeleteRolesForUser(false); err != nil {
|
||||
// logger.ErrorF("删除用户【%d】角色权限错误:%v", uid, err)
|
||||
// return
|
||||
//}
|
||||
//if _, err = permission.AddRoleForUser(); err != nil {
|
||||
// logger.ErrorF("添加用户【%d】角色权限错误:%v", uid, err)
|
||||
// return
|
||||
//}
|
||||
})
|
||||
return nil
|
||||
})
|
||||
|
Reference in New Issue
Block a user