static string FormatCode(TransactionModel transaction, long? bankOperationId) { const string pattern = "TRAN_{0}"; var prefix = bankOperationId != null ? "OP_" : string.Empty; var code = string.Format(prefix + pattern, transaction.Code).ToUpperInvariant(); return code; }
static string FormatDescription(TransactionModel transaction, long? bankOperationId) { const string operationalPattern = "Transaction #{0}({1})[OP-{2}] is in progress."; const string pattern = "Transaction #{0}({1}) was changed."; var description = bankOperationId == null ? string.Format(pattern, transaction.Id, transaction.Description) : string.Format(operationalPattern, transaction.Id, transaction.Description, bankOperationId); return description; }
public TransactionProgressEvent(Guid operationId, TransactionModel transaction, long? bankOperationId = null) { Argument.NotNull(transaction, "transaction"); Argument.Satisfies(operationId, x => x != Guid.Empty); OperationId = operationId; TransactionId = transaction.Id; BankOperationId = bankOperationId; Data = JsonConvert.SerializeObject(transaction); Code = FormatCode(transaction, bankOperationId); Description = FormatDescription(transaction, bankOperationId); }
public TransactionProcessingResult(TransactionModel transaction, IEnumerable <IEvent> transactionalEvents) : base(transactionalEvents) { Argument.NotNull(transaction, "transaction"); _transaction = transaction; }
public TransactionProcessingResult(TransactionModel transaction, IEnumerable<IEvent> transactionalEvents) : base(transactionalEvents) { Argument.NotNull(transaction, "transaction"); _transaction = transaction; }
static string FormatDescription(TransactionModel transaction, long? bankOperationId) { const string operationalPattern = "Transaction #{0}({1})[OP-{2}] is {3}."; const string pattern = "Transaction #{0}({1}) is {2}."; var status = transaction.Status == ProcessStatusModel.Failed ? "failed" : "completed"; var description = bankOperationId == null ? string.Format(pattern, transaction.Id, transaction.Description, status) : string.Format(operationalPattern, transaction.Id, transaction.Description, bankOperationId, status); return description; }