diff --git a/AssetManager.API/Controllers/AuthController.cs b/AssetManager.API/Controllers/AuthController.cs index 6eb3acf..d82c8ec 100644 --- a/AssetManager.API/Controllers/AuthController.cs +++ b/AssetManager.API/Controllers/AuthController.cs @@ -10,7 +10,7 @@ using System.Linq; namespace AssetManager.API.Controllers; [ApiController] -[Route("api/[controller]")] +[Route("api/auth")] public class AuthController : ControllerBase { private readonly ILogger _logger; @@ -27,6 +27,15 @@ public class AuthController : ControllerBase } + /// + /// 微信登录接口 + /// + /// 登录请求参数,包含微信授权码和用户信息 + /// 登录结果,包含JWT令牌、用户信息和过期时间 + /// + /// 此接口用于微信小程序或公众号的用户登录,通过微信授权码换取OpenID, + /// 然后查找或创建用户,并生成JWT令牌返回给客户端。 + /// [HttpPost("wechat-login")] public async Task>> WechatLogin([FromBody] WechatLoginRequest request) { diff --git a/AssetManager.API/Controllers/PortfolioController.cs b/AssetManager.API/Controllers/PortfolioController.cs index 572e439..24810cc 100644 --- a/AssetManager.API/Controllers/PortfolioController.cs +++ b/AssetManager.API/Controllers/PortfolioController.cs @@ -8,7 +8,7 @@ using Microsoft.Extensions.Logging; namespace AssetManager.API.Controllers; [ApiController] -[Route("api/v1/[controller]")] +[Route("api/v1/portfolio")] [Authorize] public class PortfolioController : ControllerBase { @@ -21,6 +21,14 @@ public class PortfolioController : ControllerBase _portfolioService = portfolioService; } + /// + /// 创建新投资组合 + /// + /// 投资组合创建请求参数 + /// 创建的投资组合详情 + /// + /// 此接口用于创建新的投资组合。 + /// [HttpPost] public ActionResult> CreatePortfolio([FromBody] CreatePortfolioRequest request) { @@ -52,6 +60,13 @@ public class PortfolioController : ControllerBase } } + /// + /// 获取投资组合列表 + /// + /// 投资组合列表 + /// + /// 此接口用于获取投资组合列表。 + /// [HttpGet] public ActionResult> GetPortfolios() { @@ -83,6 +98,13 @@ public class PortfolioController : ControllerBase } } + /// + /// 获取总资产情况 + /// + /// 总资产情况 + /// + /// 此接口用于获取用户的总资产情况。 + /// [HttpGet("assets")] public ActionResult> GetTotalAssets() { @@ -114,6 +136,14 @@ public class PortfolioController : ControllerBase } } + /// + /// 获取单个投资组合详情 + /// + /// 投资组合ID + /// 投资组合详情 + /// + /// 此接口用于获取指定投资组合的详细信息。 + /// [HttpGet("{id}")] public ActionResult> GetPortfolioById(string id) { @@ -145,6 +175,16 @@ public class PortfolioController : ControllerBase } } + /// + /// 获取交易记录 + /// + /// 投资组合ID + /// 每页记录数 + /// 偏移量 + /// 交易记录列表 + /// + /// 此接口用于获取指定投资组合的交易记录。 + /// [HttpGet("transactions")] public ActionResult> GetTransactions([FromQuery] string portfolioId, [FromQuery] int limit = 10, [FromQuery] int offset = 0) { @@ -176,6 +216,14 @@ public class PortfolioController : ControllerBase } } + /// + /// 创建新交易 + /// + /// 交易创建请求参数 + /// 创建的交易详情 + /// + /// 此接口用于创建新的交易。 + /// [HttpPost("transactions")] public ActionResult> CreateTransaction([FromBody] CreateTransactionRequest request) { diff --git a/AssetManager.API/Controllers/StrategyController.cs b/AssetManager.API/Controllers/StrategyController.cs index c3d14f9..89a49a5 100644 --- a/AssetManager.API/Controllers/StrategyController.cs +++ b/AssetManager.API/Controllers/StrategyController.cs @@ -10,7 +10,7 @@ using System.Security.Claims; namespace AssetManager.API.Controllers; [ApiController] -[Route("api/v1/[controller]s")] +[Route("api/v1/strategy")] [Authorize] public class StrategyController : ControllerBase { @@ -28,7 +28,14 @@ public class StrategyController : ControllerBase return User.FindFirst(ClaimTypes.NameIdentifier)?.Value ?? throw new Exception("User not authenticated"); } - [HttpGet] + /// + /// 获取策略列表 + /// + /// 策略列表 + /// + /// 此接口用于获取当前登录用户的所有策略列表。 + /// + [HttpGet("strategies")] public ActionResult>> GetStrategies() { try @@ -60,6 +67,14 @@ public class StrategyController : ControllerBase } } + /// + /// 获取单个策略详情 + /// + /// 策略ID + /// 策略详情 + /// + /// 此接口用于获取指定策略的详细信息。 + /// [HttpGet("{id}")] public ActionResult> GetStrategyById(string id) { @@ -92,6 +107,14 @@ public class StrategyController : ControllerBase } } + /// + /// 创建新策略 + /// + /// 策略创建请求参数 + /// 创建的策略详情 + /// + /// 此接口用于创建新的策略。 + /// [HttpPost] public ActionResult> CreateStrategy([FromBody] CreateStrategyRequest request) { @@ -124,6 +147,15 @@ public class StrategyController : ControllerBase } } + /// + /// 更新策略 + /// + /// 策略ID + /// 策略更新请求参数 + /// 更新后的策略详情 + /// + /// 此接口用于更新指定策略的信息。 + /// [HttpPut("{id}")] public ActionResult> UpdateStrategy(string id, [FromBody] UpdateStrategyRequest request) { @@ -156,6 +188,14 @@ public class StrategyController : ControllerBase } } + /// + /// 删除策略 + /// + /// 策略ID + /// 删除结果 + /// + /// 此接口用于删除指定的策略。 + /// [HttpDelete("{id}")] public ActionResult> DeleteStrategy(string id) { diff --git a/AssetManager.API/Controllers/UserController.cs b/AssetManager.API/Controllers/UserController.cs index f06af36..4c2f0f7 100644 --- a/AssetManager.API/Controllers/UserController.cs +++ b/AssetManager.API/Controllers/UserController.cs @@ -8,7 +8,7 @@ using AssetManager.Data; namespace AssetManager.API.Controllers; [ApiController] -[Route("api/user")] +[Route("api/v1/user")] [Authorize] public class UserController : ControllerBase { @@ -21,6 +21,13 @@ public class UserController : ControllerBase _databaseService = databaseService; } + /// + /// 获取用户信息 + /// + /// 用户信息 + /// + /// 此接口用于获取当前登录用户的详细信息。 + /// [HttpGet("info")] public ActionResult> GetUserInfo() { @@ -86,6 +93,13 @@ public class UserController : ControllerBase } } + /// + /// 获取用户统计数据 + /// + /// 用户统计数据 + /// + /// 此接口用于获取当前登录用户的统计数据,如捕获的信号数、胜率等。 + /// [HttpGet("stats")] public ActionResult> GetUserStats() { @@ -150,6 +164,14 @@ public class UserController : ControllerBase } } + /// + /// 更新用户信息 + /// + /// 用户信息更新请求参数 + /// 更新结果 + /// + /// 此接口用于更新当前登录用户的信息。 + /// [HttpPut("info")] public ActionResult> UpdateUserInfo([FromBody] UpdateUserRequest request) {