devicemngmt_old/action_get_device_permissio...

29 lines
797 B
Go

package devicemngt
import (
"context"
"fmt"
"github.com/Selly-Modules/logger"
)
// GetDevicePermissionsByToken ...
func (s Service) GetDevicePermissionsByToken(token string) (doc StaffDevicePermissions) {
ctx := context.Background()
stm, args, _ := s.Builder.
Select("dm.id AS device_id, s.id, s.name, s.account_type, sr.permissions").
From(fmt.Sprintf("%s AS dm", TableDeviceMngt)).
Join(fmt.Sprintf("LEFT JOIN %s s ON s.id = dm.owner_id", TableStaff)).
Join(fmt.Sprintf("LEFT JOIN %s sr ON s.role_id = sr.id", TableStaffRole)).
Where("dm.auth_token = ?", token).
ToSql()
if err := s.DB.GetContext(ctx, &doc, stm, args...); err != nil {
logger.Error("devicemngt - GetDevicePermissionsByToken", logger.LogData{
"token": token,
"error": err.Error(),
})
}
return
}