/// <summary> /// Получить данные аутентификации сотрудника. /// </summary> /// <param name="employeeOperationCredentials">Данные аутентификации сотрудника.</param> /// <returns>Скорректированные данные аутентификации сотрудника.</returns> protected EmployeeOperationCredentials TryGetCredentials(EmployeeOperationCredentials employeeOperationCredentials) { var authToken = employeeOperationCredentials?.AuthToken ?? Token; var boxId = employeeOperationCredentials?.BoxAddress ?? BoxId; if (authToken == null && boxId == null && employeeOperationCredentials == null) { return(null); } return(new EmployeeOperationCredentials { AuthToken = authToken, BoxAddress = boxId }); }
/// <summary> /// Вызов метода для зарегистрированного сотрудника. /// </summary> /// <typeparam name="TResult">Тип возвращаемого метода.</typeparam> /// <param name="credentials">Данные аутентификации сотрудника.</param> /// <param name="action">Вызываемый метод.</param> /// <returns>Значение вызываемого метода.</returns> protected TResult CheckAutorizedInvoke <TResult>(EmployeeOperationCredentials credentials, Func <EmployeeOperationCredentials, TResult> action) { var correctCredentials = TryGetCredentials(credentials); return(CheckAutorizedInvoke(() => action(correctCredentials))); }