using YD_Event.Core.Entities; using Mapster; using System.ComponentModel; using Furion.DynamicApiController; using YD_Event.Application.Region.Dtos; namespace YD_Event.Application.Region { /// /// 行政区域服务 /// public class RegionService : ITransient, IDynamicApiController { private readonly ISqlSugarRepository _provinceRepository; private readonly ISqlSugarRepository _cityRepository; private readonly ISqlSugarRepository _districtRepository; public RegionService( ISqlSugarRepository provinceRepository, ISqlSugarRepository cityRepository, ISqlSugarRepository districtRepository) { _provinceRepository = provinceRepository; _cityRepository = cityRepository; _districtRepository = districtRepository; } /// /// 获取所有省份 /// /// [DisplayName("获取所有省份")] public async Task> GetProvinces() { var provinces = await _provinceRepository.GetListAsync(); return provinces.Adapt>(); } /// /// 根据省份代码获取城市列表 /// /// /// [DisplayName("根据省份代码获取城市列表")] public async Task> GetCitiesByProvince(string provinceCode) { var cities = await _cityRepository.GetListAsync(c => c.ProvinceCode == provinceCode); return cities.Adapt>(); } /// /// 根据城市代码获取区县列表 /// /// /// [DisplayName("根据城市代码获取区县列表")] public async Task> GetDistrictsByCity(string cityCode) { var districts = await _districtRepository.GetListAsync(d => d.CityCode == cityCode); return districts.Adapt>(); } } }