This commit is contained in:
@@ -1,4 +1,91 @@
|
||||
@page
|
||||
@model TaxBaik.Web.Pages.Admin.Clients.IndexModel
|
||||
@{ ViewData["Title"] = "클라이언트"; }
|
||||
<section class="container py-5"><h1 class="h2 fw-bold">클라이언트 목록</h1><p class="text-muted">Blazor 관리자 화면을 Razor Pages로 전환하는 자리입니다.</p></section>
|
||||
@{
|
||||
ViewData["Title"] = "고객 관리";
|
||||
}
|
||||
|
||||
<section class="container-fluid py-4">
|
||||
<div class="page-header d-print-none mb-4">
|
||||
<div class="row align-items-center">
|
||||
<div class="col">
|
||||
<div class="page-pretitle">CRM</div>
|
||||
<h2 class="page-title">고객 관리</h2>
|
||||
</div>
|
||||
<div class="col-auto ms-auto">
|
||||
<a class="btn btn-primary" href="/admin/customers/create">고객 등록</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form method="get" class="card mb-3">
|
||||
<div class="card-body">
|
||||
<div class="row g-3 align-items-end">
|
||||
<div class="col-md-5">
|
||||
<label class="form-label" for="Search">검색</label>
|
||||
<input class="form-control" id="Search" name="search" value="@Model.Search" placeholder="이름, 전화, 회사명" />
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<label class="form-label" for="Status">상태</label>
|
||||
<select class="form-select" id="Status" name="status">
|
||||
<option value="" selected="@(string.IsNullOrWhiteSpace(Model.Status))">전체</option>
|
||||
<option value="active" selected="@(Model.Status == "active")">active</option>
|
||||
<option value="inactive" selected="@(Model.Status == "inactive")">inactive</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<label class="form-label" for="PageSize">페이지 크기</label>
|
||||
<select class="form-select" id="PageSize" name="pageSize">
|
||||
<option value="10" selected="@(Model.PageSize == 10)">10</option>
|
||||
<option value="20" selected="@(Model.PageSize == 20)">20</option>
|
||||
<option value="50" selected="@(Model.PageSize == 50)">50</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-md-2 d-grid">
|
||||
<button class="btn btn-primary" type="submit">검색</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<div class="card">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-vcenter card-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>고객명</th>
|
||||
<th>회사명</th>
|
||||
<th>전화</th>
|
||||
<th>상태</th>
|
||||
<th>등록일</th>
|
||||
<th class="text-end">작업</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@if (Model.Items.Count == 0)
|
||||
{
|
||||
<tr><td colspan="6"><partial name="_EmptyState" model="검색 결과가 없습니다." /></td></tr>
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach (var item in Model.Items)
|
||||
{
|
||||
<tr>
|
||||
<td class="fw-semibold">@item.Name</td>
|
||||
<td>@item.CompanyName</td>
|
||||
<td>@item.Phone</td>
|
||||
<td><partial name="_StatusBadge" model="@(item.Status)" /></td>
|
||||
<td>@item.CreatedAt.ToString("yyyy-MM-dd")</td>
|
||||
<td class="text-end">
|
||||
<a class="btn btn-sm btn-outline-primary" href="/admin/customers/@item.Id">상세</a>
|
||||
<a class="btn btn-sm btn-outline-secondary" href="/admin/customers/@item.Id/edit">수정</a>
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<partial name="_Pagination" model="new TaxBaik.Web.Pages.Shared.PaginationModel(Model.CurrentPage, Model.TotalPages, Model.BuildPageUrl)" />
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user