using fubon_api.Models; using FubonNeo.Sdk; using Microsoft.AspNetCore.Mvc; namespace fubon_api.Controllers; [ApiController] [Route("trade/[controller]")] public class FubonSdkTradeController : ControllerBase { private readonly FubonSDK _sdk; private Account _account; private readonly ILogger _logger; public FubonSdkTradeController(ILogger logger, FubonSDK sdk, Account account) { _sdk = sdk; _account = account; _logger = logger; } [HttpPost("PlaceOrder")] public bool PlaceOrder([FromBody] OrderRequest request) { var order = new Order( request.GetBuySellEnum(), request.Symbol, request.Price, request.Quantity, request.GetMarketTypeEnum(), request.GetPriceType(), request.GetTimeInForceEnum(), request.GetOrderTypeEnum(), null ); _sdk.Stock.PlaceOrder(_account, order); Console.WriteLine(request.ToString()); return true; } [HttpGet("OrderResult")] public IEnumerable GetOrderResult() { var orderResults = _sdk.Stock.GetOrderResults(_account); return orderResults.data; } [HttpPost("ModifyOrder")] public bool ModifyOrder() { /* todo : input 1. orderResult 2. Type: price, quantity modify price method modify quantity method */ return true; } }