using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Azure.Functions.Worker; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Logging; using TEAMModelOS.Function.DI; using TEAMModelOS.SDK.DI; using TEAMModelOS.SDK; using TEAMModelOS.Models; using Microsoft.Extensions.Options; using System.Net; using System.Text.Json; using System.Reflection; using HTEXLib.COMM.Helpers; using StackExchange.Redis; using static TEAMModelOS.SDK.Services.BlobService; using TEAMModelOS.SDK.Models; using Azure.Cosmos; using TEAMModelOS.SDK.Extension; using System.Dynamic; using Azure.Storage.Blobs.Models; using TEAMModelOS.SDK.Models.Table; namespace TEAMModelOS.Function { public class IESHttpTrigger { private readonly ILogger _logger; private readonly AzureCosmosFactory _azureCosmos; private readonly DingDing _dingDing; private readonly AzureStorageFactory _azureStorage; private readonly AzureRedisFactory _azureRedis; private readonly IHttpClientFactory _httpClient; private readonly Option? _option; private readonly CoreAPIHttpService _coreAPIHttpService; private readonly IConfiguration _configuration; private readonly BackgroundWorkerQueue _backgroundWorkerQueue; public IESHttpTrigger(ILogger logger, AzureCosmosFactory azureCosmos, DingDing dingDing, CoreAPIHttpService coreAPIHttpService, AzureStorageFactory azureStorage , AzureRedisFactory azureRedis, IHttpClientFactory httpClient, IOptionsSnapshot