using System; using System.Collections; using System.Collections.Generic; using System.Dynamic; using System.IdentityModel.Tokens.Jwt; using System.IO; using System.Linq; using System.Net; using System.Net.Http; using System.Net.Http.Headers; using System.Net.Http.Json; using System.Text; using System.Text.Json; using System.Threading.Tasks; using Azure; using Azure.Cosmos; using Azure.Messaging.ServiceBus; using Azure.Storage.Sas; using HTEXLib.COMM.Helpers; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Cryptography.KeyDerivation; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Azure.Amqp.Framing; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Options; using Microsoft.Identity.Client; using Org.BouncyCastle.Asn1.Tsp; using StackExchange.Redis; using TEAMModelOS.Filter; using TEAMModelOS.Models; using TEAMModelOS.SDK; using TEAMModelOS.SDK.DI; using TEAMModelOS.SDK.Extension; using TEAMModelOS.SDK.Models; using TEAMModelOS.SDK.Models.Cosmos; using TEAMModelOS.SDK.Models.Cosmos.Common; using TEAMModelOS.SDK.Models.Service; using static TEAMModelOS.SDK.Services.BlobService; using static TEAMModelOS.SDK.StudentService; namespace TEAMModelOS.Controllers { [Route("student")] [ApiController] public class StudentController : Controller { private readonly AzureCosmosFactory _azureCosmos; private readonly AzureStorageFactory _azureStorage; private readonly AzureRedisFactory _azureRedis; private readonly DingDing _dingDing; private readonly Option _option; private readonly IPSearcher _searcher; private readonly HttpTrigger _httpTrigger; private readonly CoreAPIHttpService _coreAPIHttpService; private readonly IWebHostEnvironment _environment; public IConfiguration _configuration { get; set; } private readonly AzureServiceBusFactory _serviceBus; private readonly IHttpClientFactory _httpClient; public StudentController(IWebHostEnvironment environment, CoreAPIHttpService coreAPIHttpService, AzureCosmosFactory azureCosmos, AzureStorageFactory azureStorage, AzureRedisFactory azureRedis, DingDing dingDing, IPSearcher searcher, IOptionsSnapshot