2025-06-06 16:00:39 +08:00

68 lines
2.2 KiB
C#

using AutoMapper;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using VOL.Business.IServices;
using VOL.Business.IServices.School;
using VOL.Core.CacheManager;
using VOL.Core.Extensions.AutofacManager;
using VOL.Core.ManageUser;
using VOL.Core.Utilities;
using VOL.Entity.DomainModels;
using VOL.Entity.DomainModels.Business.People;
using VOL.Entity.Enum;
using VOL.Model;
using VOL.Model.Ai;
using VOL.Model.Norm.Response;
using VOL.Model.School.Request;
using VOL.System.IRepositories;
using VOL.System.Repositories;
namespace VOL.Business.Services
{
public class LocationService : ILocationService, IDependency
{
#region
private readonly ISys_ProvinceRepository _provinceRepository;
[ActivatorUtilitiesConstructor]
public LocationService(ISys_ProvinceRepository provinceRepository)
{
_provinceRepository = provinceRepository;
}
#endregion
public async Task<List<ProvinceModel>> GetProvinceList()
{
var res = await _provinceRepository.FindAsIQueryable(x => true).Select(x => new ProvinceModel()
{
ProvinceCode = x.ProvinceCode,
ProvinceName = x.ProvinceName,
}).ToListAsync();
return res;
}
public async Task<List<CityModel>> GetCityList(string provinceCode)
{
var res = await _provinceRepository.DbContext.Set<Sys_City>().Where(x => x.ProvinceCode == provinceCode).Select(x => new CityModel()
{
ProvinceCode = x.ProvinceCode,
CityCode = x.CityCode,
CityName = x.CityName
}).ToListAsync();
return res;
}
public async Task<List<DistrictModel>> GetDistrictList(string cityCode)
{
var res = await _provinceRepository.DbContext.Set<Sys_District>().Where(x => x.CityCode == cityCode).Select(x => new DistrictModel()
{
CityCode = x.CityCode,
DistrictCode = x.DistrictCode,
DistrictName = x.DistrictName
}).ToListAsync();
return res;
}
}
}