示例#1
0
        public IActionResult Update(TransactionUpdateModel transactionUpdateModel)
        {
            try
            {
                var transaction = _transactionDataAccess.UpdateAsync(transactionUpdateModel.TransactionId.ToString(), new Transactions()
                {
                    WalletId        = transactionUpdateModel.WalletId,
                    UserId          = transactionUpdateModel.UserId,
                    Balance         = transactionUpdateModel.Balance,
                    TransactionName = transactionUpdateModel.TransactionName,
                    TransactionTime = transactionUpdateModel.TransactionTime
                }).Result;

                transaction = _transactionDataAccess.GetByIdAsync(transactionUpdateModel.TransactionId.ToString()).Result;

                if (transaction == null)
                {
                    return(BadRequest(new { message = "Transaction güncellenemedi!" }));
                }

                return(Ok(new { transaction }));
            }
            catch (Exception ex)
            {
                return(BadRequest(new { message = ex.Message }));
            }
        }
示例#2
0
        public async Task <IActionResult> UpdateTransaction(int id, TransactionUpdateModel model)
        {
            var updated = await _service.UpdateTransaction(id, model.CustomerId, model.ProductId, model.Quantity, model.TransactionStatus);

            if (!updated)
            {
                return(BadRequest());
            }
            return(Ok());
        }
        public async Task <IActionResult> PutTransaction(Guid id, TransactionUpdateModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var command = new UpdateTransactionCommand
            {
                Id    = id,
                Input = model
            };

            return(await ExecuteRequest(command).ConfigureAwait(false));
        }
        public async Task UpdateTransactionStatus(TransactionUpdateModel transactionUpdateModel)
        {
            try
            {
                var transaction =
                    await _mediator.Send(new GetTransactionByIdQuery(transactionUpdateModel.TransactionId));

                transaction.Info   = transactionUpdateModel.Info;
                transaction.Status = transactionUpdateModel.Status;

                await _mediator.Send(new UpdateTransactionCommand(transactionUpdateModel.TransactionId, transaction));
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
示例#5
0
        public void UpdateTransaction(TransactionUpdateModel model)
        {
            using (var db = this.GetWalletContext())
            {
                var query = from t in db.BASE_TRANSACTION
                            where t.TRANSACTION_ID == model.TransactionId
                            select t;

                var entity = query.SingleOrDefault();
                if (null != entity)
                {
                    entity.BLOCK_HASH    = model.BlockHash;
                    entity.BLOCK_TIME    = model.BlockTime;
                    entity.CONFIRMATIONS = model.Confirmations;

                    db.SaveChanges();
                }
            }
        }
        public async Task <CustomRawTransactionInfo> CheckAndRecordTransactionStatus(string transactionId)
        {
            uint256 txId = uint256.Parse(transactionId);
            var     raw  = await BTCOperator.Instance.GetRawTransactionInfoAsync(txId);

            if (raw.Confirmations <= 0)
            {
                return(null);
            }

            var updatedModel = new TransactionUpdateModel
            {
                TransactionId = transactionId,
                BlockHash     = raw.BlockHash.ToString(),
                BlockTime     = raw.BlockTime.HasValue ? raw.BlockTime.Value.UtcDateTime : (DateTime?)null,
                Confirmations = raw.Confirmations
            };

            TransactionDao.UpdateTransaction(updatedModel);

            return(raw);
        }
 private void HandleMessage(TransactionUpdateModel transactionUpdateModel)
 {
     _transactionUpdateService.UpdateTransactionStatus(transactionUpdateModel);
 }
示例#8
0
 public override async Task <ExecuteResponse> UpdateTransaction(UpdateTransactionRequest request, ServerCallContext context)
 {
     return(await Task.Factory.StartNew(TaskPush, TransactionUpdateModel.FromRequest(request, true)));
 }