using Microsoft.AspNetCore.Mvc; using System.Net; using System.Net.Http.Headers; using Microsoft.Extensions.Hosting.Internal; using Microsoft.AspNetCore.Http.Extensions; using IStation.Untity; using Furion.DynamicApiController; using System.ComponentModel.DataAnnotations; using Mapster; using Microsoft.AspNetCore.Http; using Furion.DependencyInjection; using Microsoft.AspNetCore.Authorization; using Furion.DataEncryption; using Furion.FriendlyException; namespace IStation.Application { /// /// 摄像头 /// [AllowAnonymous] [Route("LargeScreen/Szjt/Camera")] [ApiDescriptionSettings("LargeScreen", Name = "苏州金庭(摄像头)", Order = 999)] public class SzjtCamera_Controller : IDynamicApiController, ITransient { private readonly IHttpContextAccessor _httpContextAccessor; /// /// /// public SzjtCamera_Controller(IHttpContextAccessor httpContextAccessor) { _httpContextAccessor = httpContextAccessor; } private const long _corpId = 3; /// /// 通过 StationID 获取列表 /// [Route("GetListByStationID")] [HttpGet] public List GetListByStationID([FromQuery][Required] StationIDInput input) { var corpId =_corpId; var stationId = input.StationID; var cacheKey = $"Product_Camera_Logic_GetListByStationID_{corpId}_{stationId}"; var vm_list = MemoryCacheHelper.GetSet(cacheKey, () => { var cameralList = new Service.Product().GetCameraListByBelongTypeAndBelongID(corpId, ObjectType.Station, stationId); if (cameralList == null || cameralList.Count < 1) return default; var vmCacheList = cameralList.Select(x => new SzjtCameraDto(x)).ToList(); return vmCacheList; }, CacheHelper.CacheLevel3); return vm_list; } } }