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();
}
}
}