Доделал вторую вкладку
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				Create and publish a Docker image / build-and-push-image (push) Successful in 8s
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	Create and publish a Docker image / build-and-push-image (push) Successful in 8s
				
			This commit is contained in:
		| @@ -18,26 +18,30 @@ public class HomeController : Controller | ||||
|   | ||||
|     public async Task<IActionResult> Index(string searchString) | ||||
|     { | ||||
|         IEnumerable<University> universities = await _universityService.GetAllUniversity(); | ||||
|         List<University> universities = await _universityService.GetAllUniversity(); | ||||
|  | ||||
|         if (!String.IsNullOrEmpty(searchString)) | ||||
|         { | ||||
|             universities = universities.Where(s => s.Name!.ToLower().Contains(searchString.ToLower())); | ||||
|             universities = universities.Where(s => s.Name!.ToLower().Contains(searchString.ToLower()) || s.FullName!.ToLower().Contains(searchString.ToLower())).ToList(); | ||||
|         } | ||||
|          | ||||
|         // Выдача университетов в случайном порядке | ||||
|         var random = new Random(DateTime.Now.Millisecond); | ||||
|         universities = universities.OrderBy(x => random.Next()).ToList(); | ||||
|  | ||||
|         return View(universities.ToList()); | ||||
|     } | ||||
|      | ||||
|     [Route("Directions")] | ||||
|     public IActionResult Directions(long universityId) | ||||
|     public async Task<IActionResult> Directions(long universityId) | ||||
|     { | ||||
|         Console.WriteLine(universityId); | ||||
|         if (universityId == 0) | ||||
|             return RedirectToAction("Index"); | ||||
|          | ||||
|          | ||||
|          | ||||
|         return View(); | ||||
|         var answer = new UniversityDirectionsViewModel(); | ||||
|         answer.University = await _universityService.GetUniversityById(universityId); | ||||
|         answer.Directions = await _universityService.GetDirectionsByUniversityId(universityId); | ||||
|         return View(answer); | ||||
|     } | ||||
|      | ||||
|     public IActionResult Credits() | ||||
|   | ||||
| @@ -8,4 +8,5 @@ public class Direction | ||||
|     public string Name { get; set; } | ||||
|     public string Url { get; set; } | ||||
|     public int PlaceCost { get; set; } | ||||
|     public string UniversityName { get; set; } | ||||
| } | ||||
							
								
								
									
										7
									
								
								PaydayFrontend/Models/UniversityDirectionsViewModel.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								PaydayFrontend/Models/UniversityDirectionsViewModel.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| namespace PaydayFrontend.Models; | ||||
|  | ||||
| public class UniversityDirectionsViewModel | ||||
| { | ||||
|     public University University { get; set; } | ||||
|     public List<Direction> Directions { get; set; } | ||||
| } | ||||
| @@ -6,7 +6,8 @@ namespace PaydayFrontend.Services; | ||||
| public interface IUniversityService | ||||
| { | ||||
|     public Task<List<University>> GetAllUniversity();  | ||||
|     public Task<List<University>> GetDirectionsByUniversityId();  | ||||
|     public Task<List<Direction>> GetDirectionsByUniversityId(long universityId); | ||||
|     public Task<University> GetUniversityById(long id); | ||||
| } | ||||
|  | ||||
| public class UniversityService : IUniversityService | ||||
| @@ -29,12 +30,23 @@ public class UniversityService : IUniversityService | ||||
|         }); | ||||
|         return university; | ||||
|     } | ||||
|  | ||||
|     public async Task<List<University>> GetDirectionsByUniversityId() | ||||
|      | ||||
|     public async Task<List<Direction>> GetDirectionsByUniversityId(long universityId) | ||||
|     { | ||||
|         var response = await _httpClient.GetAsync("v1/public/university"); | ||||
|         var response = await _httpClient.GetAsync($"v1/public/university/{universityId}/directions"); | ||||
|         var result = await response.Content.ReadAsStringAsync(); | ||||
|         var university = JsonSerializer.Deserialize<List<University>>(result, new JsonSerializerOptions | ||||
|         var directions = JsonSerializer.Deserialize<List<Direction>>(result, new JsonSerializerOptions | ||||
|         { | ||||
|             PropertyNameCaseInsensitive = true | ||||
|         }); | ||||
|         return directions; | ||||
|     } | ||||
|      | ||||
|     public async Task<University> GetUniversityById(long id) | ||||
|     { | ||||
|         var response = await _httpClient.GetAsync("v1/public/university/" + id); | ||||
|         var result = await response.Content.ReadAsStringAsync(); | ||||
|         var university = JsonSerializer.Deserialize<University>(result, new JsonSerializerOptions | ||||
|         { | ||||
|             PropertyNameCaseInsensitive = true | ||||
|         }); | ||||
|   | ||||
| @@ -1,38 +1,40 @@ | ||||
| @model UniversityDirectionsViewModel | ||||
|  | ||||
| @{ | ||||
|     ViewData["Title"] = "Выбор направления"; | ||||
| } | ||||
|     <section class="navigation" id="second"> | ||||
|         <div class="container container_flex flex_column"> | ||||
|             <div class="row" id="navigation_row_block"> | ||||
|  | ||||
| <section class="navigation" id="second"> | ||||
|     <div class="container container_flex flex_column"> | ||||
|         <div class="row" id="navigation_row_block"> | ||||
|             <div class="navigation_fixed_background"></div> | ||||
|             <div class="navigation_banks col-md-12" id="navigation"> | ||||
|                <div class="navigation_banks_univer" id="universe">СпбГУ</div> | ||||
|             <div 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"></div> | ||||
|             </div> | ||||
|                  | ||||
|             </div> | ||||
|             <div class="row row-cols-lg-1 g-5 g-lg-3"> | ||||
|                 <div class="col-md-12"> | ||||
|                     <div class="navigation_info navigation_info_text p-3">09.03.04 - Программная инженерия <span class="navigation_cost">От 5600 в мес.</span> 10+ Банков</div> | ||||
|                 </div> | ||||
|                 <div class="col-md-12"> | ||||
|                     <div class="navigation_info navigation_info_text p-3">09.03.04 - Программная инженерия <span class="navigation_cost">От 5600 в мес.</span> 10+ Банков</div> | ||||
|                 </div> | ||||
|                 <div class="col-md-12"> | ||||
|                     <div class="navigation_info navigation_info_text p-3">09.03.04 - Программная инженерия <span class="navigation_cost">От 5600 в мес.</span> 10+ Банков</div> | ||||
|                 </div> | ||||
|                 <div class="col-md-12"> | ||||
|                     <div class="navigation_info navigation_info_text p-3">09.03.04 - Программная инженерия <span class="navigation_cost">От 5600 в мес.</span> 10+ Банков</div> | ||||
|                 <div class="navigation_banks_univer" id="universe">@Model.University.Name</div> | ||||
|                 <div 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"> | ||||
|                 </div> | ||||
|             </div> | ||||
|  | ||||
|         </div> | ||||
|         <div class="navigation_choise"> | ||||
|                 <div class="navigation_slid"> | ||||
|                     <span class="navigation_slid_disable"></span> | ||||
|                     <span class="navigation_slid_active"></span> | ||||
|                     <span class="navigation_slid_disable"></span> | ||||
|                     <span class="navigation_slid_disable"></span> | ||||
|                 </div> | ||||
|         <div class="row row-cols-lg-1 g-5 g-lg-3"> | ||||
|             @{ | ||||
|                 foreach (var direction in Model.Directions) | ||||
|                 { | ||||
|                     <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> | ||||
|                 } | ||||
|             } | ||||
|  | ||||
|              | ||||
|         </div> | ||||
|     </section> | ||||
|     </div> | ||||
|     <div class="navigation_choise"> | ||||
|         <div class="navigation_slid"> | ||||
|             <span class="navigation_slid_disable"></span> | ||||
|             <span class="navigation_slid_active"></span> | ||||
|             <span class="navigation_slid_disable"></span> | ||||
|             <span class="navigation_slid_disable"></span> | ||||
|         </div> | ||||
|     </div> | ||||
| </section> | ||||
| @@ -1,7 +1,7 @@ | ||||
| @model List<University> | ||||
|  | ||||
| @{ | ||||
|     ViewData["Title"] = "Home Page"; | ||||
|     ViewData["Title"] = "Доступное образование"; | ||||
| } | ||||
|  | ||||
| <section class="universe"> | ||||
|   | ||||
							
								
								
									
										2
									
								
								PaydayFrontend/wwwroot/css/bootstrap.min.css
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								PaydayFrontend/wwwroot/css/bootstrap.min.css
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @@ -56,7 +56,7 @@ header { | ||||
|  | ||||
| .menu_project_name_text { | ||||
|     color: #20d37d; | ||||
|     font-size: 48px; | ||||
|     font-size: 3.5vh; | ||||
|     font-style: normal; | ||||
|     font-weight: 500 | ||||
| } | ||||
| @@ -714,7 +714,7 @@ header { | ||||
|     -webkit-box-align: center; | ||||
|     -ms-flex-align: center; | ||||
|     align-items: center; | ||||
|     height: 50px; | ||||
|     height: 53px; /*TODO: Скрывает последний результат*/ | ||||
|     width: 100%; | ||||
|     bottom: 50px | ||||
| } | ||||
|   | ||||
| Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB | 
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
		Reference in New Issue
	
	Block a user