修复企业授权报错的问题
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m57s
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m57s
This commit is contained in:
@@ -162,6 +162,29 @@ func (s *EnterpriseDeviceAuthorizationStore) GetActiveAuthsByDeviceIDs(ctx conte
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// GetActiveAuthEnterpriseByDeviceIDs 获取设备ID列表的有效授权企业映射(deviceID -> enterpriseID)
|
||||
func (s *EnterpriseDeviceAuthorizationStore) GetActiveAuthEnterpriseByDeviceIDs(ctx context.Context, deviceIDs []uint) (map[uint]uint, error) {
|
||||
if len(deviceIDs) == 0 {
|
||||
return make(map[uint]uint), nil
|
||||
}
|
||||
|
||||
var auths []model.EnterpriseDeviceAuthorization
|
||||
query := s.db.WithContext(ctx).
|
||||
Select("device_id, enterprise_id").
|
||||
Where("device_id IN ? AND revoked_at IS NULL", deviceIDs)
|
||||
// 应用企业数据权限过滤
|
||||
query = middleware.ApplyEnterpriseFilter(ctx, query)
|
||||
if err := query.Find(&auths).Error; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
result := make(map[uint]uint, len(auths))
|
||||
for _, auth := range auths {
|
||||
result[auth.DeviceID] = auth.EnterpriseID
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (s *EnterpriseDeviceAuthorizationStore) ListDeviceIDsByEnterprise(ctx context.Context, enterpriseID uint) ([]uint, error) {
|
||||
var deviceIDs []uint
|
||||
query := s.db.WithContext(ctx).
|
||||
|
||||
Reference in New Issue
Block a user