作者 yangfu

公司权限验证

... ... @@ -16,6 +16,7 @@ type Company struct {
UpdateAt time.Time `orm:"column(update_at);type(timestamp)" description:"更新时间"`
DeleteAt time.Time `orm:"column(delete_at);type(timestamp)" description:"删除时间"`
UserCenterId int64 `orm:"column(user_center_id)" description:"统一用户中心企业id"`
Enable int8 `orm:"column(enable)" description:"是否有效【1:有效】【2:无效】"`
}
func (t *Company) TableName() string {
... ...
package agg
import (
"fmt"
"github.com/prometheus/common/log"
"opp/models"
)
//检查公司权限
func CheckCompanyPermission(companyId int64) (err error) {
var (
company *models.Company
)
if companyId == 0 {
return nil
}
if company, err = models.GetCompanyById(companyId); err != nil {
log.Error("公司不存在:", companyId, err)
return
}
if company.Enable == 1 {
return nil
}
if company.Enable == 2 {
err = fmt.Errorf("公司:%v 无权限,请联系管理员", company.Name)
}
return
}
... ...
... ... @@ -257,6 +257,11 @@ func RefreshToken(request *protocol.RefreshTokenRequest) (rsp *protocol.RefreshT
if err = models.UpdateUserAuthById(userAuth); err != nil {
return
}
if err = agg.CheckCompanyPermission(userAuth.CurrentCompanyId); err != nil {
log.Error(err)
err = protocol.NewErrWithMessage(4140, err)
return
}
rsp = &protocol.RefreshTokenResponse{
AccessToken: userAuth.AccessToken,
RefreshToken: userAuth.RefreshToken,
... ...
... ... @@ -21,6 +21,13 @@ func MessageCenter(header *protocol.RequestHeader, request *protocol.MessageCent
)
rsp = &protocol.MessageCenterResponse{}
rsp.Totals = make([]*protocol.MessageTotal, 0)
//注入公司校验
if err = agg.CheckCompanyPermission(header.CompanyId); err != nil {
log.Error(err)
err = protocol.NewErrWithMessage(4141)
return
}
if request.MsgType&protocol.MsgTypeInteraction > 0 {
if request.MsgType&protocol.MsgTypeThumbUp == 0 {
request.MsgType |= protocol.MsgTypeThumbUp
... ...