/// <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);
            }
Exemple #2
0
            /// <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));
            }