Files
moadiran/TaxPayerFull/Pages/UserPanel/Panel.razor
mmrbnjd 692aa30afe last
2024-06-18 13:59:32 +03:30

569 lines
33 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.

@page "/Panel"
@using Front.Services
@using Shared
@using Shared.DTOs
@inject localService localserv;
@inject NavigationManager nav
@layout PanelLayout
@inject HttpClientController hc;
@inject Fixedvalues fv;
<PageTitle>کاربری</PageTitle>
<div class="row">
<div class="col-lg-8 mb-4 order-0">
<div class="card">
<div class="d-flex align-items-end row">
<div class="col-sm-7">
<div class="card-body">
<h5 class="card-title text-primary">خوش آمدید! 🎉</h5>
<p class="mb-4">یک دید کلی از سیستم برای شما تهیه شده<br /> بهتر است روزانه نگاهی به آن داشته باشید</p>
</div>
</div>
<div class="col-sm-5 text-center text-sm-left">
<div class="card-body pb-0 px-0 px-md-4">
<img src="assets/img/illustrations/man-with-laptop-light.png" height="140" alt="View Badge User" data-app-dark-img="illustrations/man-with-laptop-dark.png" data-app-light-img="illustrations/man-with-laptop-light.png">
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-4 order-1">
<div class="row">
@if (dashBoard != null && dashBoard.AlistofServices.Any(w => w.PermissionID == 3))
{
<div class="col-lg-6 col-md-12 col-6 mb-4">
<div class="card">
<div class="card-body">
<div class="card-title d-flex align-items-start justify-content-between">
<div class="avatar flex-shrink-0">
<img src="assets/img/icons/unicons/cc-success.png" alt="User" class="rounded">
</div>
<div class="dropdown">
<button class="btn p-0" type="button" id="cardOpt3" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="bx bx-dots-vertical-rounded"></i>
</button>
<div class="dropdown-menu dropdown-menu-end customStyle new-style-15" aria-labelledby="cardOpt3">
<a class="dropdown-item" >تمدید</a>
<NavLink class="dropdown-item" href="Invoice">صورتحساب ها</NavLink>
</div>
</div>
</div>
<span class="fw-semibold d-block">صورتحساب <br /> (کل @dashBoard.AlistofServices.Where(w => w.PermissionID == 3 && w.CalTypeID == 1).Select(s => s.Total).First())</span>
<h3 class="card-title mb-1"><span style="font-size: 14px">مانده</span></h3>
@if (dashBoard.AlistofServices.Any(w => w.PermissionID == 3 && w.CalTypeID == 1))
{
@if (dashBoard.AlistofServices.Where(w => w.PermissionID == 3 && w.CalTypeID == 1).Select(s => s.Remaining).First()>0)
{
<small class="text-success fw-semibold">
<i class='bx'></i>
@dashBoard.AlistofServices.Where(w => w.PermissionID == 3 && w.CalTypeID == 1).Select(s => s.Remaining).First() آیتم
</small>
}
else
{
<small class="text-danger fw-semibold">
<i class='bx'></i>
@dashBoard.AlistofServices.Where(w => w.PermissionID == 3 && w.CalTypeID == 1).Select(s => s.Remaining).First() آیتم
</small>
}
}
else if (dashBoard.AlistofServices.Any(w => w.PermissionID == 3 && w.CalTypeID == 2))
{
<small class="text-success fw-semibold">
<i class='bx'></i>
نامحدود
</small>
}
else
{
@if (Convert.ToInt32(dashBoard.Datenow) <= dashBoard.AlistofServices.Where(w => w.PermissionID == 3 && w.CalTypeID == 1).Select(s => s.Remaining).First())
{
<small class="text-success fw-semibold">
<i class='bx'></i>
تا تاریخ @dashBoard.AlistofServices.Where(w => w.PermissionID == 3 && w.CalTypeID == 1).Select(s => s.Remaining).First().ToString().ShamciToFormatShamciinFront()
</small>
}
else
{
<small class="text-danger fw-semibold">
<i class='bx'></i>
تا تاریخ @dashBoard.AlistofServices.Where(w => w.PermissionID == 3 && w.CalTypeID == 1).Select(s => s.Remaining).First().ToString().ShamciToFormatShamciinFront()
</small>
}
}
</div>
</div>
</div>
}
@if (dashBoard != null && dashBoard.AlistofServices.Any(w => w.PermissionID == 4))
{
<div class="col-lg-6 col-md-12 col-6 mb-4">
<div class="card">
<div class="card-body">
<div class="card-title d-flex align-items-start justify-content-between">
<div class="avatar flex-shrink-0">
<img src="assets/img/icons/unicons/wallet-info.png" alt="chart success" class="rounded">
</div>
<div class="dropdown">
<button class="btn p-0" type="button" id="cardOpt3" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="bx bx-dots-vertical-rounded"></i>
</button>
<div class="dropdown-menu dropdown-menu-end customStyle new-style-15" aria-labelledby="cardOpt3">
<a class="dropdown-item" >تمدید</a>
<NavLink class="dropdown-item" href="Cod">کالا ها</NavLink>
</div>
</div>
</div>
<span class="fw-semibold d-block">کالا <br /> (کل @dashBoard.AlistofServices.Where(w => w.PermissionID == 4 && w.CalTypeID == 1).Select(s => s.Total).First())</span>
<h3 class="card-title mb-1"><span style="font-size: 14px">مانده</span></h3>
@if (dashBoard.AlistofServices.Any(w => w.PermissionID == 4 && w.CalTypeID == 1))
{
@if (dashBoard.AlistofServices.Where(w => w.PermissionID == 4 && w.CalTypeID == 1).Select(s => s.Remaining).First()>0)
{
<small class="text-success fw-semibold">
<i class='bx'></i>
@dashBoard.AlistofServices.Where(w => w.PermissionID == 4 && w.CalTypeID == 1).Select(s => s.Remaining).First() آیتم
</small>
}
else
{
<small class="text-danger fw-semibold">
<i class='bx'></i>
@dashBoard.AlistofServices.Where(w => w.PermissionID == 4 && w.CalTypeID == 1).Select(s => s.Remaining).First() آیتم
</small>
}
}
else if (dashBoard.AlistofServices.Any(w => w.PermissionID == 4 && w.CalTypeID == 2))
{
<small class="text-success fw-semibold">
<i class='bx'></i>
نامحدود
</small>
}
else
{
@if (Convert.ToInt32(dashBoard.Datenow) <= dashBoard.AlistofServices.Where(w => w.PermissionID == 4 && w.CalTypeID == 1).Select(s => s.Remaining).First())
{
<small class="text-success fw-semibold">
<i class='bx'></i>
تا تاریخ @dashBoard.AlistofServices.Where(w => w.PermissionID == 4 && w.CalTypeID == 1).Select(s => s.Remaining).First().ToString().ShamciToFormatShamciinFront()
</small>
}
else
{
<small class="text-danger fw-semibold">
<i class='bx'></i>
تا تاریخ @dashBoard.AlistofServices.Where(w => w.PermissionID == 4 && w.CalTypeID == 1).Select(s => s.Remaining).First().ToString().ShamciToFormatShamciinFront()
</small>
}
}
</div>
</div>
</div>
}
</div>
</div>
<!-- Total Revenue -->
<div class="col-12 col-lg-8 order-2 order-md-3 order-lg-2 mb-4">
<div class="card">
<div class="row row-bordered g-0">
<div class="col-md-8">
<h5 class="card-header m-0 me-2 pb-3">کل درآمد</h5>
<div id="totalRevenueChart" class="px-2"></div>
</div>
<div class="col-md-4">
<div class="card-body">
<div class="text-center">
<div class="dropdown">
<button class="btn btn-sm btn-outline-primary dropdown-toggle" type="button" id="growthReportId" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
1400
</button>
<div class="dropdown-menu dropdown-menu-end" aria-labelledby="growthReportId">
<a class="dropdown-item" href="javascript:void(0);">1399</a>
<a class="dropdown-item" href="javascript:void(0);">1400</a>
<a class="dropdown-item" href="javascript:void(0);">1401</a>
</div>
</div>
</div>
</div>
<div id="growthChart"></div>
<div class="text-center fw-semibold pt-3 mb-2">62% رشد شرکت</div>
<div class="d-flex px-xxl-4 px-lg-2 p-4 gap-xxl-3 gap-lg-1 gap-3 justify-content-between">
<div class="d-flex">
<div class="me-2">
<span class="badge bg-label-primary p-2"><i class="bx bx-dollar text-primary"></i></span>
</div>
<div class="d-flex flex-column">
<small>1400</small>
<h6 class="mb-0">32.5<span style="font-size: 14px"> تومان</span></h6>
</div>
</div>
<div class="d-flex">
<div class="me-2">
<span class="badge bg-label-info p-2"><i class="bx bx-wallet text-info"></i></span>
</div>
<div class="d-flex flex-column">
<small>1399</small>
<h6 class="mb-0">41.2<span style="font-size: 14px"> تومان</span></h6>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!--/ Total Revenue -->
<div class="col-12 col-md-8 col-lg-4 order-3 order-md-2">
<div class="row">
@if (dashBoard != null && dashBoard.AlistofServices.Any(w => w.PermissionID == 5))
{
<div class="col-6 mb-4">
<div class="card">
<div class="card-body">
<div class="card-title d-flex align-items-start justify-content-between">
<div class="avatar flex-shrink-0">
<img src="assets/img/icons/unicons/cc-primary.png" alt="chart success" class="rounded">
</div>
<div class="dropdown">
<button class="btn p-0" type="button" id="cardOpt3" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="bx bx-dots-vertical-rounded"></i>
</button>
<div class="dropdown-menu dropdown-menu-end customStyle new-style-15" aria-labelledby="cardOpt3">
<a class="dropdown-item">تمدید</a>
<NavLink class="dropdown-item" href="Customer">مشتری ها</NavLink>
</div>
</div>
</div>
<span class="fw-semibold d-block">مشتری <br /> (کل @dashBoard.AlistofServices.Where(w => w.PermissionID == 5 && w.CalTypeID == 1).Select(s => s.Total).First())</span>
<h3 class="card-title mb-1"><span style="font-size: 14px">مانده</span></h3>
@if (dashBoard.AlistofServices.Any(w => w.PermissionID == 5 && w.CalTypeID == 1))
{
@if (dashBoard.AlistofServices.Where(w => w.PermissionID == 5 && w.CalTypeID == 1).Select(s => s.Remaining).First()>0)
{
<small class="text-success fw-semibold">
<i class='bx'></i>
@dashBoard.AlistofServices.Where(w => w.PermissionID == 5 && w.CalTypeID == 1).Select(s => s.Remaining).First() آیتم
</small>
}
else
{
<small class="text-danger fw-semibold">
<i class='bx'></i>
@dashBoard.AlistofServices.Where(w => w.PermissionID == 5 && w.CalTypeID == 1).Select(s => s.Remaining).First() آیتم
</small>
}
}
else if (dashBoard.AlistofServices.Any(w => w.PermissionID == 5 && w.CalTypeID == 2))
{
<small class="text-success fw-semibold">
<i class='bx'></i>
نامحدود
</small>
}
else
{
@if (Convert.ToInt32(dashBoard.Datenow) <= dashBoard.AlistofServices.Where(w => w.PermissionID == 5 && w.CalTypeID == 1).Select(s => s.Remaining).First())
{
<small class="text-success fw-semibold">
<i class='bx'></i>
تا تاریخ @dashBoard.AlistofServices.Where(w => w.PermissionID == 5 && w.CalTypeID == 1).Select(s => s.Remaining).First().ToString().ShamciToFormatShamciinFront()
</small>
}
else
{
<small class="text-danger fw-semibold">
<i class='bx'></i>
تا تاریخ @dashBoard.AlistofServices.Where(w => w.PermissionID == 5 && w.CalTypeID == 1).Select(s => s.Remaining).First().ToString().ShamciToFormatShamciinFront()
</small>
}
}
</div>
</div>
</div>
}
@if (dashBoard != null && dashBoard.AlistofServices.Any(w => w.PermissionID == 16))
{
<div class="col-6 mb-4">
<div class="card">
<div class="card-body">
<div class="card-title d-flex align-items-start justify-content-between">
<div class="avatar flex-shrink-0">
<img src="assets/img/icons/unicons/paypal.png" alt="chart success" class="rounded">
</div>
<div class="dropdown">
<button class="btn p-0" type="button" id="cardOpt3" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="bx bx-dots-vertical-rounded"></i>
</button>
<div class="dropdown-menu dropdown-menu-end customStyle new-style-15" aria-labelledby="cardOpt3">
<a class="dropdown-item">تمدید</a>
<NavLink class="dropdown-item" href="TaxPayer">سامانه مودیان</NavLink>
</div>
</div>
</div>
<span class="fw-semibold d-block">سامانه مودیان <br /> (کل @dashBoard.AlistofServices.Where(w => w.PermissionID == 16 && w.CalTypeID == 1).Select(s => s.Total).First())</span>
<h3 class="card-title mb-1"><span style="font-size: 14px">مانده</span></h3>
@if (dashBoard.AlistofServices.Any(w => w.PermissionID == 16 && w.CalTypeID == 1))
{
@if (dashBoard.AlistofServices.Where(w => w.PermissionID == 16 && w.CalTypeID == 1).Select(s => s.Remaining).First()>0)
{
<small class="text-success fw-semibold">
<i class='bx'></i>
@dashBoard.AlistofServices.Where(w => w.PermissionID == 16 && w.CalTypeID == 1).Select(s => s.Remaining).First() آیتم
</small>
}
else
{
<small class="text-danger fw-semibold">
<i class='bx'></i>
@dashBoard.AlistofServices.Where(w => w.PermissionID == 16 && w.CalTypeID == 1).Select(s => s.Remaining).First() آیتم
</small>
}
}
else if (dashBoard.AlistofServices.Any(w => w.PermissionID == 16 && w.CalTypeID == 2))
{
<small class="text-success fw-semibold">
<i class='bx'></i>
نامحدود
</small>
}
else
{
@if (Convert.ToInt32(dashBoard.Datenow) <= dashBoard.AlistofServices.Where(w => w.PermissionID == 16 && w.CalTypeID == 1).Select(s => s.Remaining).First())
{
<small class="text-success fw-semibold">
<i class='bx'></i>
تا تاریخ @dashBoard.AlistofServices.Where(w => w.PermissionID == 16 && w.CalTypeID == 1).Select(s => s.Remaining).First().ToString().ShamciToFormatShamciinFront()
</small>
}
else
{
<small class="text-danger fw-semibold">
<i class='bx'></i>
تا تاریخ @dashBoard.AlistofServices.Where(w => w.PermissionID == 16 && w.CalTypeID == 1).Select(s => s.Remaining).First().ToString().ShamciToFormatShamciinFront()
</small>
}
}
</div>
</div>
</div>
}
<!-- </div>
<div class="row"> -->
<div class="col-12 mb-4">
<div class="card">
<div class="card-body">
<div class="d-flex justify-content-between flex-sm-row flex-column gap-3">
<div class="d-flex flex-sm-column flex-row align-items-start justify-content-between">
<div class="card-title">
<h5 class="text-nowrap mb-2">گزارش نمایه</h5>
<span class="badge bg-label-warning rounded-pill">سال 1399</span>
</div>
<div class="mt-sm-auto">
<small class="text-success text-nowrap fw-semibold"><i class='bx bx-chevron-up'></i> 68.2%</small>
<h3 class="mb-0">84,686<span style="font-size: 14px">تومان</span></h3>
</div>
</div>
<div id="profileReportChart"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<!-- Order Statistics -->
<LastActivityServices dashBoard="dashBoard" />
<!--/ Order Statistics -->
<!-- Expense Overview -->
<div class="col-md-6 col-lg-4 order-1 mb-4">
<div class="card h-100">
<div class="card-header">
<ul class="nav nav-pills" role="tablist">
<li class="nav-item">
<button type="button" class="nav-link active" role="tab" data-bs-toggle="tab" data-bs-target="#navs-tabs-line-card-income" aria-controls="navs-tabs-line-card-income" aria-selected="true">درآمد</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link" role="tab">هزینه ها</button>
</li>
<li class="nav-item">
<button type="button" class="nav-link" role="tab">سود</button>
</li>
</ul>
</div>
<div class="card-body px-0">
<div class="tab-content p-0">
<div class="tab-pane fade show active" id="navs-tabs-line-card-income" role="tabpanel">
<div class="d-flex p-4 pt-3">
<div class="avatar flex-shrink-0 me-3">
<img src="assets/img/icons/unicons/wallet.png" alt="User">
</div>
<div>
<small class="text-muted d-block">کل موجودی</small>
<div class="d-flex align-items-center">
<h6 class="mb-0 me-1">459.10<span style="font-size: 14px">تومان</span></h6>
<small class="text-success fw-semibold">
<i class='bx bx-chevron-up'></i>
42.9%
</small>
</div>
</div>
</div>
<div id="incomeChart"></div>
<div class="d-flex justify-content-center pt-4 gap-2">
<div class="flex-shrink-0">
<div id="expensesOfWeek"></div>
</div>
<div>
<p class="mb-n1 mt-1">هزینه های این هفته</p>
<small class="text-muted"><span style="font-size: 14px">تومان</span>39 کمتر از هفته گذشته</small>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!--/ Expense Overview -->
<!-- Transactions -->
<div class="col-md-6 col-lg-4 order-2 mb-4">
<div class="card h-100">
<div class="card-header d-flex align-items-center justify-content-between">
<h5 class="card-title m-0 me-2">معاملات</h5>
<div class="dropdown">
<button class="btn p-0" type="button" id="transactionID" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="bx bx-dots-vertical-rounded"></i>
</button>
<div class="dropdown-menu dropdown-menu-end new-style-16" aria-labelledby="transactionID">
<a class="dropdown-item" href="javascript:void(0);">28 روز گذشته</a>
<a class="dropdown-item" href="javascript:void(0);">ماه گذشته</a>
<a class="dropdown-item" href="javascript:void(0);">سال گذشته</a>
</div>
</div>
</div>
<div class="card-body">
<ul class="p-0 m-0">
<li class="d-flex mb-4 pb-1">
<div class="avatar flex-shrink-0 me-3">
<img src="assets/img/icons/unicons/paypal.png" alt="User" class="rounded">
</div>
<div class="d-flex w-100 flex-wrap align-items-center justify-content-between gap-2">
<div class="me-2">
<small class="text-muted d-block mb-1">پی پال</small>
<h6 class="mb-0">ارسال پول</h6>
</div>
<div class="user-progress d-flex align-items-center gap-1">
<h6 class="mb-0">+82.6</h6> <span class="text-muted">ریال</span>
</div>
</div>
</li>
<li class="d-flex mb-4 pb-1">
<div class="avatar flex-shrink-0 me-3">
<img src="assets/img/icons/unicons/wallet.png" alt="User" class="rounded">
</div>
<div class="d-flex w-100 flex-wrap align-items-center justify-content-between gap-2">
<div class="me-2">
<small class="text-muted d-block mb-1">کیف پول</small>
<h6 class="mb-0">مک دی</h6>
</div>
<div class="user-progress d-flex align-items-center gap-1">
<h6 class="mb-0">+270.69</h6> <span class="text-muted">ریال</span>
</div>
</div>
</li>
<li class="d-flex mb-4 pb-1">
<div class="avatar flex-shrink-0 me-3">
<img src="assets/img/icons/unicons/chart.png" alt="User" class="rounded">
</div>
<div class="d-flex w-100 flex-wrap align-items-center justify-content-between gap-2">
<div class="me-2">
<small class="text-muted d-block mb-1">منتقل کردن</small>
<h6 class="mb-0">بازپرداخت</h6>
</div>
<div class="user-progress d-flex align-items-center gap-1">
<h6 class="mb-0">+637.91</h6> <span class="text-muted">ریال</span>
</div>
</div>
</li>
<li class="d-flex mb-4 pb-1">
<div class="avatar flex-shrink-0 me-3">
<img src="assets/img/icons/unicons/cc-success.png" alt="User" class="rounded">
</div>
<div class="d-flex w-100 flex-wrap align-items-center justify-content-between gap-2">
<div class="me-2">
<small class="text-muted d-block mb-1">کارت اعتباری</small>
<h6 class="mb-0">غذا سفارش داد</h6>
</div>
<div class="user-progress d-flex align-items-center gap-1">
<h6 class="mb-0">-838.71</h6> <span class="text-muted">ریال</span>
</div>
</div>
</li>
<li class="d-flex mb-4 pb-1">
<div class="avatar flex-shrink-0 me-3">
<img src="assets/img/icons/unicons/wallet.png" alt="User" class="rounded">
</div>
<div class="d-flex w-100 flex-wrap align-items-center justify-content-between gap-2">
<div class="me-2">
<small class="text-muted d-block mb-1">کیف پول</small>
<h6 class="mb-0">استارباکس</h6>
</div>
<div class="user-progress d-flex align-items-center gap-1">
<h6 class="mb-0">+203.33</h6> <span class="text-muted">ریال</span>
</div>
</div>
</li>
<li class="d-flex">
<div class="avatar flex-shrink-0 me-3">
<img src="assets/img/icons/unicons/cc-warning.png" alt="User" class="rounded">
</div>
<div class="d-flex w-100 flex-wrap align-items-center justify-content-between gap-2">
<div class="me-2">
<small class="text-muted d-block mb-1">مسترکارت</small>
<h6 class="mb-0">غذا سفارش داد</h6>
</div>
<div class="user-progress d-flex align-items-center gap-1">
<h6 class="mb-0">-92.45</h6> <span class="text-muted">ریال</span>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
<!--/ Transactions -->
</div>
@code {
public DashBoardDTO? dashBoard { get; set; }
protected override async Task OnInitializedAsync()
{
if (!await localserv.OnlineUser())
nav.NavigateTo("/");
dashBoard =await fv.GetDashBoard();
//var rsp = await hc.Get("User/GetDashBoard");
// if (rsp.IsSuccessStatusCode)
// {
// dashBoard = await rsp.Content.ReadFromJsonAsync<DashBoardDTO>();
// }
await base.OnInitializedAsync();
}
}