using Blahblah.FlowerStory.Server.Data; using Microsoft.AspNetCore.Mvc; namespace Blahblah.FlowerStory.Server.Controller; /// <summary> /// 基础 API 服务 /// </summary> [ApiController] [Produces("application/json")] [Route("api")] public partial class ApiController : BaseController { /// <inheritdoc/> public ApiController(FlowerDatabase database, ILogger<BaseController>? logger = null) : base(database, logger) { } /// <summary> /// 获取版本号 /// </summary> /// <remarks> /// 请求示例: /// /// GET /api/version /// /// </remarks> /// <returns>版本号</returns> /// <response code="200">返回版本号</response> [Route("version", Name = "getVersion")] [HttpGet] [ResponseCache(NoStore = true, Location = ResponseCacheLocation.None)] public ActionResult<string> GetApiVersion() { return Ok(Program.Version); } /// <summary> /// 获取常量字典定义 /// </summary> /// <remarks> /// 请求示例: /// /// GET /api/consts?{ver} /// /// </remarks> /// <returns>字典集</returns> /// <response code="200">返回常量字典集</response> [Route("consts", Name = "getConsts")] [HttpGet] public ActionResult<DefinitionResult> GetDefinitions() { return Ok(new DefinitionResult { ApiVersion = Program.Version, Categories = Constants.Categories, Events = Constants.Events, }); } }