Добавил обработку пустых запросов
All checks were successful
Create and publish a Docker image / build-and-push-image (push) Successful in 24s
All checks were successful
Create and publish a Docker image / build-and-push-image (push) Successful in 24s
This commit is contained in:
parent
8e16dfe567
commit
bfea515ec2
@ -29,11 +29,13 @@ public class HomeController : Controller
|
|||||||
var random = new Random(DateTime.Now.Millisecond);
|
var random = new Random(DateTime.Now.Millisecond);
|
||||||
universities = universities.OrderBy(x => random.Next()).ToList();
|
universities = universities.OrderBy(x => random.Next()).ToList();
|
||||||
|
|
||||||
return View(universities.ToList());
|
var answer = new UniversityViewModel(universities, searchString);
|
||||||
|
|
||||||
|
return View(answer);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Route("Directions")]
|
[Route("Directions")]
|
||||||
public async Task<IActionResult> Directions(long universityId)
|
public async Task<IActionResult> Directions(long universityId, string searchString)
|
||||||
{
|
{
|
||||||
if (universityId == 0)
|
if (universityId == 0)
|
||||||
return RedirectToAction("Index");
|
return RedirectToAction("Index");
|
||||||
@ -41,9 +43,17 @@ public class HomeController : Controller
|
|||||||
var answer = new UniversityDirectionsViewModel();
|
var answer = new UniversityDirectionsViewModel();
|
||||||
answer.University = await _universityService.GetUniversityById(universityId);
|
answer.University = await _universityService.GetUniversityById(universityId);
|
||||||
answer.Directions = await _universityService.GetDirectionsByUniversityId(universityId);
|
answer.Directions = await _universityService.GetDirectionsByUniversityId(universityId);
|
||||||
|
answer.SearchString = searchString;
|
||||||
|
|
||||||
|
if (!String.IsNullOrEmpty(searchString))
|
||||||
|
{
|
||||||
|
answer.Directions = answer.Directions.Where(s => s.Name!.ToLower().Contains(searchString.ToLower()) || s.Code!.ToLower().Contains(searchString.ToLower())).ToList();
|
||||||
|
}
|
||||||
|
|
||||||
return View(answer);
|
return View(answer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Route("Credits")]
|
||||||
public IActionResult Credits()
|
public IActionResult Credits()
|
||||||
{
|
{
|
||||||
return View();
|
return View();
|
||||||
|
10
PaydayFrontend/Models/University.cs
Normal file
10
PaydayFrontend/Models/University.cs
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
namespace PaydayFrontend.Models;
|
||||||
|
|
||||||
|
public class University
|
||||||
|
{
|
||||||
|
public long Id { get; set; }
|
||||||
|
public string Name { get; set; }
|
||||||
|
public string FullName { get; set; }
|
||||||
|
public string ImageUrl { get; set; }
|
||||||
|
public long MinPlaceCost { get; set; }
|
||||||
|
}
|
@ -2,6 +2,18 @@
|
|||||||
|
|
||||||
public class UniversityDirectionsViewModel
|
public class UniversityDirectionsViewModel
|
||||||
{
|
{
|
||||||
|
public UniversityDirectionsViewModel()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public UniversityDirectionsViewModel(University university, List<Direction> directions, string searchString)
|
||||||
|
{
|
||||||
|
University = university;
|
||||||
|
Directions = directions;
|
||||||
|
SearchString = searchString;
|
||||||
|
}
|
||||||
|
|
||||||
public University University { get; set; }
|
public University University { get; set; }
|
||||||
public List<Direction> Directions { get; set; }
|
public List<Direction> Directions { get; set; }
|
||||||
|
public string SearchString { get; set; }
|
||||||
}
|
}
|
@ -1,10 +1,13 @@
|
|||||||
namespace PaydayFrontend.Models;
|
namespace PaydayFrontend.Models;
|
||||||
|
|
||||||
public class University
|
public class UniversityViewModel
|
||||||
{
|
{
|
||||||
public long Id { get; set; }
|
public UniversityViewModel(List<University> directions, string searchString)
|
||||||
public string Name { get; set; }
|
{
|
||||||
public string FullName { get; set; }
|
Directions = directions;
|
||||||
public string ImageUrl { get; set; }
|
SearchString = searchString;
|
||||||
public long MinPlaceCost { get; set; }
|
}
|
||||||
|
|
||||||
|
public List<University> Directions { get; set; }
|
||||||
|
public string SearchString { get; set; }
|
||||||
}
|
}
|
@ -10,28 +10,43 @@
|
|||||||
<div class="navigation_fixed_background"></div>
|
<div class="navigation_fixed_background"></div>
|
||||||
<div class="navigation_banks col-md-12" id="navigation">
|
<div class="navigation_banks col-md-12" id="navigation">
|
||||||
<div class="navigation_banks_univer" id="universe">@Model.University.Name</div>
|
<div class="navigation_banks_univer" id="universe">@Model.University.Name</div>
|
||||||
<div id="navigation_row_block" class="navigation_input_block">
|
<form id="navigation_row_block" class="navigation_input_block">
|
||||||
<input type="text" class="navigation_input" placeholder="Введите код или название направления"><img src="/img/logo/search.svg" alt="search" class="navigation_search">
|
<input type="hidden" name="universityId" value="@Model.University.Id" />
|
||||||
</div>
|
<input type="text" name="searchString" class="navigation_input" placeholder="Введите код или название направления" value="@Model.SearchString">
|
||||||
|
<input type="image" src="/img/logo/search.svg" alt="search" class="navigation_search">
|
||||||
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="row row-cols-lg-1 g-5 g-lg-3">
|
<div id="listDirections" class="row row-cols-lg-1 g-5 g-lg-3">
|
||||||
@{
|
@{
|
||||||
foreach (var direction in Model.Directions)
|
foreach (var direction in Model.Directions)
|
||||||
{
|
{
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="navigation_info navigation_info_text p-3">@direction.Code - @direction.Name<span class="navigation_cost">От 5600 в мес.</span> 10+ Банков</div>
|
<div class="navigation_info navigation_info_text p-3">@direction.Code - @direction.Name<span class="navigation_cost">От @float.Round(direction.PlaceCost/12) т в мес.</span> @direction.PlaceCost т в год</div>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<script>
|
||||||
|
var element = document.getElementById("listDirections");
|
||||||
|
var numberOfChildren = element.childElementCount;
|
||||||
|
if (numberOfChildren <= 0) {
|
||||||
|
Swal.fire(
|
||||||
|
'Ничего не найдено!',
|
||||||
|
"По вашему запросу ничего не найдено",
|
||||||
|
'warning'
|
||||||
|
).then((result) => {
|
||||||
|
window.location.replace("/Directions?universityId=@Model.University.Id");
|
||||||
|
})
|
||||||
|
}
|
||||||
|
</script>
|
||||||
</div>
|
</div>
|
||||||
<div class="navigation_choise">
|
<div class="navigation_choise">
|
||||||
<div class="navigation_slid">
|
<div class="navigation_slid">
|
||||||
|
<a href="/" class="navigation_slid_disable">
|
||||||
<span class="navigation_slid_disable"></span>
|
<span class="navigation_slid_disable"></span>
|
||||||
|
</a>
|
||||||
<span class="navigation_slid_active"></span>
|
<span class="navigation_slid_active"></span>
|
||||||
<span class="navigation_slid_disable"></span>
|
<span class="navigation_slid_disable"></span>
|
||||||
<span class="navigation_slid_disable"></span>
|
<span class="navigation_slid_disable"></span>
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
@model List<University>
|
@model UniversityViewModel
|
||||||
|
|
||||||
|
|
||||||
@{
|
@{
|
||||||
ViewData["Title"] = "Доступное образование";
|
ViewData["Title"] = "Доступное образование";
|
||||||
@ -6,13 +7,13 @@
|
|||||||
|
|
||||||
<section class="universe">
|
<section class="universe">
|
||||||
<div class="container container_flex">
|
<div class="container container_flex">
|
||||||
<div class="row row_flex">
|
<div id="listUniversity" class="row row_flex">
|
||||||
<form class="universe_input_block col-md-12">
|
<form class="universe_input_block col-md-12">
|
||||||
<input type="text" class="universe_input" name="searchString" placeholder="Введите название вуза или суза...">
|
<input type="text" class="universe_input" name="searchString" placeholder="Введите название вуза или суза..." value="@Model.SearchString">
|
||||||
<input type="image" src="/img/logo/search.svg" alt="search" class="universe_search">
|
<input type="image" src="/img/logo/search.svg" alt="search" class="universe_search">
|
||||||
</form>
|
</form>
|
||||||
@{
|
@{
|
||||||
foreach (var university in Model)
|
foreach (var university in Model.Directions)
|
||||||
{
|
{
|
||||||
<a href="Directions?UniversityId=@university.Id" class="col-2 universe_card universe_card_text">
|
<a href="Directions?UniversityId=@university.Id" class="col-2 universe_card universe_card_text">
|
||||||
<img src="@university.ImageUrl" alt="universe" class="universe_icon">
|
<img src="@university.ImageUrl" alt="universe" class="universe_icon">
|
||||||
@ -25,8 +26,21 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<script>
|
||||||
|
var element = document.getElementById("listUniversity");
|
||||||
|
var numberOfChildren = element.childElementCount;
|
||||||
|
if (numberOfChildren <= 1) {
|
||||||
|
Swal.fire(
|
||||||
|
'Ничего не найдено!',
|
||||||
|
"По вашему запросу ничего не найдено",
|
||||||
|
'warning'
|
||||||
|
).then((result) => {
|
||||||
|
window.location.replace("/");
|
||||||
|
})
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
<div class="navigation_choise">
|
<div class="navigation_choise">
|
||||||
<div class="navigation_slid">
|
<div class="navigation_slid">
|
||||||
<span class="navigation_slid_active"></span>
|
<span class="navigation_slid_active"></span>
|
||||||
|
@ -21,8 +21,8 @@
|
|||||||
<span></span>
|
<span></span>
|
||||||
<span></span>
|
<span></span>
|
||||||
</div>
|
</div>
|
||||||
<img src="/img/logo/logoPayDay.png" alt="logo" class="menu_logo">
|
<a href="/"><img src="img/logo/logoPayDay.png" alt="logo" class="menu_logo"></a>
|
||||||
<div class="menu_project_name menu_project_name_text">Доступное образование</div>
|
<a href="/" class="menu_project_name menu_project_name_text">Доступное образование</a>
|
||||||
</div>
|
</div>
|
||||||
<!-- <button class="header_login">
|
<!-- <button class="header_login">
|
||||||
Вход через <span class="header_login_text">ЕСИА</span>
|
Вход через <span class="header_login_text">ЕСИА</span>
|
||||||
@ -47,6 +47,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</nav> *@
|
</nav> *@
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||||
</header>
|
</header>
|
||||||
@* <div class="container"> *@
|
@* <div class="container"> *@
|
||||||
<main role="main" class="pb-3">
|
<main role="main" class="pb-3">
|
||||||
|
@ -55,6 +55,7 @@ header {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.menu_project_name_text {
|
.menu_project_name_text {
|
||||||
|
text-decoration: none;
|
||||||
color: #20d37d;
|
color: #20d37d;
|
||||||
font-size: 3.5vh;
|
font-size: 3.5vh;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user