diff --git a/PaydayBackend/Controllers/PublicController.cs b/PaydayBackend/Controllers/PublicController.cs index 332d326..d0560a3 100644 --- a/PaydayBackend/Controllers/PublicController.cs +++ b/PaydayBackend/Controllers/PublicController.cs @@ -24,6 +24,21 @@ public class PublicController : ControllerBase return await _publicService.GetAllUniversity(); } + /// + /// Получение университета по Id + /// + /// Университет не найден + [HttpGet("university/{id}")] + public async Task>> GetAllUniversityById(long id) + { + var result = await _publicService.GetAllUniversityById(id); + + if (result == null) + return BadRequest(); + + return Ok(result); + } + /// /// Получение всех направлений университета /// diff --git a/PaydayBackend/Services/IPublicService.cs b/PaydayBackend/Services/IPublicService.cs index 1b3fb16..ad435a2 100644 --- a/PaydayBackend/Services/IPublicService.cs +++ b/PaydayBackend/Services/IPublicService.cs @@ -9,6 +9,7 @@ public interface IPublicService public Task?> GetAllUniversityDirectionByUniversityId(long universityId); public Task?> GetAllLoansByDirectionCost(long universityDirectionId); public Task GetMinPlaceCostByUniversityId(long universityId); + public Task GetAllUniversityById(long universityId); } public class PublicService : IPublicService @@ -19,9 +20,7 @@ public class PublicService : IPublicService { _databaseContext = databaseContext; } - - - + public async Task> GetAllUniversity() { var result = await _databaseContext.Universities.ToListAsync(); @@ -77,4 +76,13 @@ public class PublicService : IPublicService return 0; } } + + public async Task GetAllUniversityById(long universityId) + { + var university = await _databaseContext.Universities.Where(x => x.Id == universityId).FirstAsync(); + if (university == null) + return null; + + return new UniversityDto(university.Id, university.Name, university.FullName, university.ImageUrl); + } } \ No newline at end of file