|
...
|
...
|
@@ -379,14 +379,15 @@ func UserInfo(header *protocol.RequestHeader, request *protocol.UserInfoRequest) |
|
|
|
//用户信息
|
|
|
|
func UserInfoV3(header *protocol.RequestHeader, request *protocol.UserInfoRequest) (rsp *protocol.UserInfoResponse, err error) {
|
|
|
|
var (
|
|
|
|
companyId int64
|
|
|
|
userCompany *models.UserCompany
|
|
|
|
userAuth *models.UserAuth
|
|
|
|
userBaseAgg *protocol.UserBaseInfoAggregation
|
|
|
|
companys []*models.Company
|
|
|
|
userCompanys []*models.UserCompany
|
|
|
|
tmpCompanys []*models.Company = make([]*models.Company, 0)
|
|
|
|
defaultUserId int64
|
|
|
|
companyId int64
|
|
|
|
//userCompany *models.UserCompany
|
|
|
|
userAuth *models.UserAuth
|
|
|
|
userBaseAgg *protocol.UserBaseInfoAggregation
|
|
|
|
companys []*models.Company
|
|
|
|
userCompanys []*models.UserCompany
|
|
|
|
tmpCompanys []*models.Company = make([]*models.Company, 0)
|
|
|
|
defaultUserId int64
|
|
|
|
defaultCompanyId int64
|
|
|
|
)
|
|
|
|
if companys, err = models.GetCompanyByPermission(header.Uid); err != nil {
|
|
|
|
log.Error(err)
|
|
...
|
...
|
@@ -398,11 +399,11 @@ func UserInfoV3(header *protocol.RequestHeader, request *protocol.UserInfoReques |
|
|
|
}
|
|
|
|
for i := range userCompanys {
|
|
|
|
if hasAuth := agg.CheckUserModuleAuth(userCompanys[i].Id); !hasAuth {
|
|
|
|
log.Debug("检查公司权限:", userCompanys[i].Id, userCompanys[i].CompanyId, "无模块权限")
|
|
|
|
log.Debug("检查公司权限:", "用户编号-", userCompanys[i].Id, "公司编号-", userCompanys[i].CompanyId, "无模块权限")
|
|
|
|
continue
|
|
|
|
}
|
|
|
|
if companyId == 0 { //取默认一个有权限的公司
|
|
|
|
companyId = userCompanys[i].CompanyId
|
|
|
|
if defaultCompanyId == 0 { //取默认一个有权限的公司
|
|
|
|
defaultCompanyId = userCompanys[i].CompanyId
|
|
|
|
defaultUserId = userCompanys[i].Id
|
|
|
|
}
|
|
|
|
for j := 0; j < len(companys); j++ {
|
|
...
|
...
|
@@ -423,23 +424,16 @@ func UserInfoV3(header *protocol.RequestHeader, request *protocol.UserInfoReques |
|
|
|
return
|
|
|
|
}
|
|
|
|
if companyId == 0 {
|
|
|
|
if userCompany, err = models.GetUserCompanysFirst(header.Uid); err != nil {
|
|
|
|
log.Error(err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
if userAuth, err = models.GetUserAuthByUserId(header.Uid, protocol.DeviceType); err != nil {
|
|
|
|
log.Error(err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
if err = utils.UpdateTableByMap(&models.UserAuth{Id: userAuth.Id}, map[string]interface{}{
|
|
|
|
"CurrentCompanyId": userCompany.CompanyId, "CurrentUserCompanyId": userCompany.Id}); err != nil {
|
|
|
|
"CurrentCompanyId": defaultCompanyId, "CurrentUserCompanyId": defaultUserId}); err != nil {
|
|
|
|
log.Error(err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
companyId = int64(userCompany.CompanyId)
|
|
|
|
header.UserId = userCompany.Id
|
|
|
|
}
|
|
|
|
if header.UserId == 0 {
|
|
|
|
companyId = defaultCompanyId
|
|
|
|
header.UserId = defaultUserId
|
|
|
|
}
|
|
|
|
if userBaseAgg, err = agg.GetUserBaseInfoAggregation(header.UserId, companyId); err != nil {
|
...
|
...
|
|