public async Task <IActionResult> Buy([FromBody] BuyStockRequest buyStockRequest) { var buyStockResponse = new BuyStockResponse() { ValidationResult = new ValidationResult { Success = true } }; try { if (buyStockRequest == null || buyStockRequest.StockId == Guid.Empty || buyStockRequest.NoOfUnits <= 0) { return(HandleBadRequest(buyStockRequest, buyStockResponse)); } var saveResponse = await _tradeTxService.Buy(buyStockRequest.UserId, buyStockRequest.StockId, buyStockRequest.NoOfUnits); if (!saveResponse) { return(HandleError(HttpStatusCode.BadRequest, buyStockRequest, buyStockResponse)); } return(Ok(buyStockResponse)); } catch (Exception ex) { return(HandleError(HttpStatusCode.InternalServerError, buyStockRequest, buyStockResponse, ex)); } }
public BuyStockResponse BuyStock(BuyStockRequest externalRequest) { Log(Logger.LogMessageType.Info, "-> -------------------- Comienza la ejecución del método Stock.BuyStock", Logger.LoggingLevelType.Medium); BuyStockRequestInternal internalRequest = new BuyStockRequestInternal() { SessionID = externalRequest.Request.SessionID, Amount = externalRequest.Request.Amount, DeviceType = externalRequest.Request.DeviceType }; BuyStockResponseInternal internalResponse = BuyStockInternal(internalRequest); BuyStockResponse externalResponse = new BuyStockResponse() { Response = new BuyStockResponseBody() { ResponseCode = internalResponse.ResponseCode, ResponseMessage = internalResponse.ResponseMessage, TransactionID = internalResponse.TransactionID } }; Log(Logger.LogMessageType.Info, "-> -------------------- Termina la ejecución del método Stock.BuyStock", Logger.LoggingLevelType.Medium); return(externalResponse); }