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/Map")] [ApiDescriptionSettings("LargeScreen", Name = "苏州金庭(地图)", Order = 999)] public class SzjtMap_Controller : IDynamicApiController, ITransient { private readonly IHttpContextAccessor _httpContextAccessor; /// /// /// public SzjtMap_Controller(IHttpContextAccessor httpContextAccessor) { _httpContextAccessor = httpContextAccessor; } private readonly Service.ObjectMapInfo _service = new Service.ObjectMapInfo(); private const long _corpId = 3; /// /// 通过 Kind 和 Purpose 获取特定对象的第一条地图信息 /// [Route("GetFirstByKindAndPurposeOfObject")] [HttpGet] public SzjtObjectMapInfoDto GetFirstByKindAndPurposeOfObject([FromQuery][Required] SzjtGetObjectMapInfoInput input) { var model = _service.GetFirstByKindAndPurposeOfObject(_corpId, input.ObjectType, input.ObjectID, input.Kind, input.Purpose); return model == null ? null : new SzjtObjectMapInfoDto(model); } /// /// 通过 Kind 和 Purpose 获取客户下地图位置信息 /// [Route("GetByKindAndPurposeUnderCorp")] [HttpGet] public List GetByKindAndPurposeUnderCorp ( [Required, DataValidation(AllowEmptyStrings = false)] string Kind, [Required, DataValidation(AllowEmptyStrings = false)] string Purpose ) { var list = new Service.ObjectMapInfo().GetByKindAndPurposeUnderCorp(_corpId, Kind, Purpose); return list?.Select(x => new SzjtObjectMapInfoDto(x)).ToList(); } } }