feat:优化项目结构
This commit is contained in:
@ -4,16 +4,16 @@ import (
|
||||
"SciencesServer/app/api/enterprise/model"
|
||||
model2 "SciencesServer/app/common/model"
|
||||
"SciencesServer/app/handle"
|
||||
"SciencesServer/app/service"
|
||||
"SciencesServer/app/session"
|
||||
"SciencesServer/utils"
|
||||
"errors"
|
||||
)
|
||||
|
||||
type Bank struct {
|
||||
*service.SessionEnterprise
|
||||
*session.Enterprise
|
||||
}
|
||||
|
||||
type BankHandle func(enterprise *service.SessionEnterprise) *Bank
|
||||
type BankHandle func(session *session.Enterprise) *Bank
|
||||
|
||||
type (
|
||||
// BankInfo 银行卡信息
|
||||
@ -116,7 +116,7 @@ func (c *Bank) Unbind(id uint64) error {
|
||||
}
|
||||
|
||||
func NewBank() BankHandle {
|
||||
return func(enterprise *service.SessionEnterprise) *Bank {
|
||||
return &Bank{enterprise}
|
||||
return func(session *session.Enterprise) *Bank {
|
||||
return &Bank{Enterprise: session}
|
||||
}
|
||||
}
|
||||
|
@ -4,17 +4,20 @@ import (
|
||||
"SciencesServer/app/api/enterprise/model"
|
||||
"SciencesServer/app/basic/config"
|
||||
model2 "SciencesServer/app/common/model"
|
||||
"SciencesServer/app/handle"
|
||||
"SciencesServer/app/service"
|
||||
"SciencesServer/app/session"
|
||||
config2 "SciencesServer/config"
|
||||
"SciencesServer/serve/orm"
|
||||
"SciencesServer/utils"
|
||||
"errors"
|
||||
"gorm.io/gorm"
|
||||
"time"
|
||||
)
|
||||
|
||||
type Instance struct{ *service.SessionEnterprise }
|
||||
type Instance struct{ *session.Enterprise }
|
||||
|
||||
type InstanceHandle func(enterprise *service.SessionEnterprise) *Instance
|
||||
type InstanceHandle func(session *session.Enterprise) *Instance
|
||||
|
||||
type (
|
||||
// InstanceInfo 基本信息
|
||||
@ -58,6 +61,36 @@ func (c *Instance) Detail() (*InstanceDetailInfo, error) {
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
// BindMobile 绑定手机号码
|
||||
func (c *Instance) BindMobile(mobile, captcha string) error {
|
||||
if !utils.ValidateMobile(mobile) {
|
||||
return errors.New("操作错误,手机号码格式异常")
|
||||
}
|
||||
// 查询用户手机号码是否绑定
|
||||
mUserInstance := model.NewUserInstance()
|
||||
|
||||
if _, err := model2.FirstField(mUserInstance.UserInstance, []string{"id", "uuid", "mobile"}, model2.NewWhere("uuid", c.UID)); err != nil {
|
||||
return err
|
||||
}
|
||||
if mUserInstance.Mobile == mobile {
|
||||
return nil
|
||||
}
|
||||
pass, err := handle.NewCaptcha().Validate(&handle.CaptchaSms{
|
||||
Mobile: mobile, Captcha: captcha,
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
} else if !pass {
|
||||
return errors.New("操作错误,验证码错误或已过期")
|
||||
}
|
||||
if err := model2.Updates(mUserInstance.UserInstance, map[string]interface{}{
|
||||
"mobile": mobile, "updated_at": time.Now(),
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// SwitchIdentity 切换身份
|
||||
func (c *Instance) SwitchIdentity(identity int) error {
|
||||
if _, has := config.TenantUserIdentityData[identity]; !has {
|
||||
@ -96,12 +129,12 @@ func (c *Instance) SwitchIdentity(identity int) error {
|
||||
c.ManageUID = mUserManage.UUID
|
||||
}
|
||||
c.SelectIdentity = identity
|
||||
service.Publish(config2.EventForAccountLoginProduce, config2.RedisKeyForAccount, c.UIDToString(), c.SessionEnterprise)
|
||||
service.Publish(config2.EventForAccountLoginProduce, config2.RedisKeyForAccount, c.UIDToString(), c.Enterprise)
|
||||
return nil
|
||||
}
|
||||
|
||||
func NewInstance() InstanceHandle {
|
||||
return func(enterprise *service.SessionEnterprise) *Instance {
|
||||
return &Instance{SessionEnterprise: enterprise}
|
||||
return func(session *session.Enterprise) *Instance {
|
||||
return &Instance{Enterprise: session}
|
||||
}
|
||||
}
|
||||
|
@ -4,15 +4,15 @@ import (
|
||||
model3 "SciencesServer/app/api/enterprise/model"
|
||||
"SciencesServer/app/basic/config"
|
||||
model2 "SciencesServer/app/common/model"
|
||||
"SciencesServer/app/service"
|
||||
"SciencesServer/app/session"
|
||||
"SciencesServer/utils"
|
||||
"errors"
|
||||
)
|
||||
|
||||
// Settled 入驻
|
||||
type Settled struct{ *service.SessionEnterprise }
|
||||
type Settled struct{ *session.Enterprise }
|
||||
|
||||
type SettledHandle func(enterprise *service.SessionEnterprise) *Settled
|
||||
type SettledHandle func(session *session.Enterprise) *Settled
|
||||
|
||||
type SettledParams struct {
|
||||
ID uint64
|
||||
@ -185,7 +185,7 @@ func (c *Settled) Agent() {
|
||||
}
|
||||
|
||||
func NewSettled() SettledHandle {
|
||||
return func(enterprise *service.SessionEnterprise) *Settled {
|
||||
return &Settled{enterprise}
|
||||
return func(session *session.Enterprise) *Settled {
|
||||
return &Settled{Enterprise: session}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user