private void SaveTransactionLog(Shift shift, string transactionId)
            {
                TransactionType?transactionType = GetTransactionType(shift);

                if (transactionType == null)
                {
                    return; // Do nothing
                }

                TransactionLog transactionLog = new TransactionLog
                {
                    TransactionType = transactionType.Value,
                    StaffId         = shift.StaffId,
                    Id         = transactionId,
                    TerminalId = shift.CurrentTerminalId,
                    StoreId    = shift.StoreId
                };

                // Need to persist the current terminal id here since the Shift could be floated.
                SaveTransactionLogDataRequest saveTransactionLogDataServiceRequest = new SaveTransactionLogDataRequest(transactionLog);

                this.Context.Runtime.Execute <NullResponse>(saveTransactionLogDataServiceRequest, this.Context);
            }
            /// <summary>
            /// Logs the transaction.
            /// </summary>
            /// <param name="context">The context.</param>
            /// <param name="log">The log.</param>
            private static void LogTransaction(RequestContext context, TransactionLog log)
            {
                SaveTransactionLogDataRequest request = new SaveTransactionLogDataRequest(log);

                context.Runtime.Execute <NullResponse>(request, context);
            }
 private static NullResponse SaveTransactionLog(SaveTransactionLogDataRequest request)
 {
     new TransactionLogDataManager(request.RequestContext).Save(request.TransactionLog);
     return(new NullResponse());
 }