/// <summary> /// Gets the latest activity of the employee. /// </summary> /// <param name="context">The request context.</param> /// <returns>The latest employee activity.</returns> public static EmployeeActivity GetLatestActivity(RequestContext context) { ThrowIf.Null(context, "context"); var request = new GetEmployeeCurrentRegistrationStateRealtimeRequest( context.GetPrincipal().UserId, context.GetTerminal().TerminalId); return(context.Execute <SingleEntityDataServiceResponse <EmployeeActivity> >(request).Entity); }
/// <summary> /// Executes get employee current registration state requests. /// </summary> /// <param name="request">The service request.</param> /// <returns>The activity response.</returns> private static SingleEntityDataServiceResponse <EmployeeActivity> GetEmployeeCurrentRegistrationState(GetEmployeeCurrentRegistrationStateRealtimeRequest request) { var transactionService = new TransactionServiceClient(request.RequestContext); var activity = transactionService.GetEmployeeCurrentRegistrationState(request.UserId, request.TerminalId); // Convert the UTC date time offset of employee activity to channel date time offset if (activity.ActivityDateTimeOffset.HasValue) { activity.ActivityDateTimeOffset = request.RequestContext.ConvertDateTimeToChannelDate(activity.ActivityDateTimeOffset.Value); } return(new SingleEntityDataServiceResponse <EmployeeActivity>(activity)); }