using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; using System.Collections.Generic; using System.Text.Json; using System.Threading.Tasks; using TEAMModelOS.Filter; using TEAMModelOS.Models; using TEAMModelOS.SDK; using TEAMModelOS.SDK.DI; using TEAMModelOS.SDK.Models; using TEAMModelOS.SDK.Extension; using System.Text; using System; using Azure.Cosmos; using TEAMModelOS.SDK.Models.Service; using System.Linq; using OfficeOpenXml; namespace TEAMModelOS.Controllers.Both { [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status400BadRequest)] [Route("knowledge")] [ApiController] public class KnowledgeController : ControllerBase { private readonly SnowflakeId _snowflakeId; private readonly AzureCosmosFactory _azureCosmos; private readonly DingDing _dingDing; private readonly Option _option; private readonly AzureRedisFactory _azureRedis; private readonly HttpTrigger _httpTrigger; public KnowledgeController(HttpTrigger httpTrigger, AzureCosmosFactory azureCosmos, SnowflakeId snowflakeId, DingDing dingDing, IOptionsSnapshot