public async Task <TransactionInsertResult> InsertAsync(TransactionInsertArgs args)
        {
            TransactionInsertResult logicResult = new TransactionInsertResult();

            try
            {
                Transaction entity = args.Transaction.ToEntity();
                entity.MetaCreatedTimeCode  = DateTime.UtcNow.ToSuperEpochUtc();
                entity.MetaModifiedTimeCode = DateTime.UtcNow.ToSuperEpochUtc();
                _context.Add(entity);
                await _context.SaveChangesAsync()
                .ConfigureAwait(false);
            }
            catch (Exception ex)
            {
                logicResult.Exception = ex;
            }
            return(logicResult);
        }
        public async Task <TransactionCreateResult> Handle(TransactionCreateCommand command, CancellationToken cancellationToken)
        {
            TransactionCreateResult logicResult = new TransactionCreateResult();

            try
            {
                Transaction           transaction           = Transaction.Create(command.Args);
                TransactionInsertArgs transactionInsertArgs = new TransactionInsertArgs
                {
                    Transaction = transaction
                };
                TransactionInsertResult transactionInsertResult = await _transactionRepository.InsertAsync(transactionInsertArgs)
                                                                  .ConfigureAwait(false);

                transactionInsertResult.EnsureSuccess();
                logicResult.Result = transactionInsertResult.Result;
            }
            catch (Exception ex)
            {
                logicResult.Exception = ex;
            }
            return(logicResult);
        }