CourseWork_KPO/CandidateReviewClientApp/Views/Company/CompanyProfile.cshtml

160 lines
8.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@using CandidateReviewContracts.ViewModels
@model CompanyViewModel
@{
ViewData["Title"] = "Профиль компании";
var userRole = (APIClient.User?.Role == CandidateReviewDataModels.Enums.RoleEnum.Сотрудник || APIClient.User?.Role == CandidateReviewDataModels.Enums.RoleEnum.Администратор) ? true : false;
}
<div class="container mt-5">
<div class="row g-4">
<div class="col-md-4">
<div class="card">
<img src="@(Model.LogoFilePath ?? "https://static.thenounproject.com/png/2504969-200.png")" style="max-width: 150px; max-height: 150px;" class="card-img-top img-fluid rounded-circle mx-auto d-block" alt="Логотип компании">
<div class="card-body">
<h5 class="card-title">@Model.Name</h5>
<p class="card-text">@(Model.Description == null ? "Описание отсутствует" : Model.Description) </p>
<a href="@(Model.Website ?? "#")" target="_blank" class="btn btn-primary mt-2">@(Model.Website != null ? "Официальный сайт" : "Веб-сайт отсутствует")</a> </a>
</div>
</div>
</div>
<div class="col-md-8">
<div class="card mb-4">
<div class="card-header d-flex justify-content-between align-items-center">
<h2>Информация о компании</h2>
@if (userRole)
{
<a asp-action="EditCompanyProfile" asp-controller="Company" asp-route-id="@Model.Id" class="btn btn-primary">Редактировать</a>
}
</div>
<div class="card-body">
<dl class="row">
<dt class="col-sm-3">Адрес:</dt>
<dd class="col-sm-9">@(Model.Address?.ToString() ?? "Адрес не указан")</dd>
<dt class="col-sm-3">Контакты:</dt>
<dd class="col-sm-9">@(Model.Contacts?.ToString() ?? "Контакты не указаны")</dd>
</dl>
</div>
</div>
<div class="card">
<div class="card-header d-flex justify-content-between align-items-center">
<h2>Вакансии компании</h2>
@if (userRole)
{
<a asp-action="EditVacancy" asp-controller="Vacancy" asp-route-companyId="@Model.Id" class="btn btn-success">Добавить вакансию</a>
}
</div>
<div class="card-body">
@if (Model.Vacancies != null && Model.Vacancies.Any())
{
<table class="table table-striped">
<thead>
<tr>
<th>Название</th>
<th>Тип занятости</th>
<th>Статус</th>
<th>Действия</th>
</tr>
</thead>
<tbody>
@foreach (var vacancy in Model.Vacancies)
{
<tr>
<td>@vacancy.JobTitle</td>
<td>@vacancy.JobType</td>
<td>@vacancy.Status</td>
<td>
<a asp-action="VacancyDetails" asp-controller="Vacancy" asp-route-id="@vacancy.Id" class="text-info" title="Просмотр">
<i class="bi bi-eye"></i>
</a>
@if (userRole)
{
<a asp-action="EditVacancy" asp-controller="Vacancy" asp-route-id="@vacancy.Id" class="text-warning" title="Редактировать">
<i class="bi bi-pencil"></i>
</a>
<a asp-action="Delete" asp-controller="Vacancy" asp-route-id="@vacancy.Id" class="text-danger" title="Удалить" onclick="return confirm('Вы уверены, что хотите удалить вакансию?');">
<i class="bi bi-trash"></i>
</a>
}
</td>
</tr>
}
</tbody>
</table>
}
else
{
<p>Вакансий нет.</p>
}
</div>
</div>
<br />
<div class="card">
<div class="card-header d-flex justify-content-between align-items-center">
<h2>Сотрудники компании</h2>
@if (userRole)
{
<a asp-action="UserProfileEdit" asp-controller="User" asp-route-companyId="@Model.Id" class="btn btn-success">Добавить сотрудника</a>
}
</div>
<div class="card-body">
@if (Model.Employees != null && Model.Employees.Any())
{
<table class="table table-striped">
<thead>
<tr>
<th>Фамилия</th>
<th>Имя</th>
<th>Эл. почта</th>
<th>Действия</th>
</tr>
</thead>
<tbody>
@foreach (var employee in Model.Employees)
{
<tr>
<td>@employee.Surname</td>
<td>@employee.Name</td>
<td>@employee.Email</td>
<td>
<a asp-action="UserProfile" asp-controller="User" asp-route-id="@employee.Id" class="text-info" title="Просмотр">
<i class="bi bi-eye"></i>
</a>
@if (userRole)
{
<a asp-action="UserProfileEdit" asp-controller="User" asp-route-id="@employee.Id" class="text-warning" title="Редактировать">
<i class="bi bi-pencil"></i>
</a>
<a asp-action="DeleteEmployee" asp-controller="User" asp-route-id="@employee.Id" class="text-danger" title="Удалить" onclick="return confirm('Вы уверены, что хотите удалить сотрудника?');">
<i class="bi bi-trash"></i>
</a>
}
</td>
</tr>
}
</tbody>
</table>
@* <nav>
<ul class="pagination justify-content-center">
@for (int i = 1; i <= pageCount; i++)
{
<li class="page-item @(i == pageNumber ? "active" : "")">
<a class="page-link" asp-action="CompanyProfile" asp-controller="Company" asp-route-id="@Model.Id" asp-route-pageNumber="@i">
@i
</a>
</li>
}
</ul>
</nav> *@
}
else
{
<p>Сотрудников нет.</p>
}
</div>
</div>
</div>
</div>