FullInvoiceItem

This commit is contained in:
mmrbnjd
2024-07-20 17:34:28 +03:30
parent cb8c69d81b
commit bd99459bc2
5 changed files with 158 additions and 125 deletions

View File

@@ -334,16 +334,17 @@
}
else
{
<div class="d-flex gap-2">
<Dropdown Color="DropdownColor.Info" Direction="DropdownDirection.Dropend">
<DropdownToggleButton>Dropend</DropdownToggleButton>
<DropdownMenu>
<DropdownItem Type="ButtonType.Link" @onclick="OnClickUpdate"> ثبت تغییرات</DropdownItem>
<DropdownItem Type="ButtonType.Link" @onclick="ShowConfirmationDeleteAsync">حذف</DropdownItem>
<DropdownItem Type="ButtonType.Link" @onclick="showFullInvoiceItem">اطلاعات تکمیلی صورتحساب</DropdownItem>
</DropdownMenu>
</Dropdown>
</div>
<Button class="mt-3" Color="ButtonColor.Success" @onclick="OnClickUpdate" Type="ButtonType.Button">
ثبت تغییرات
</Button>
<Button class="mt-3" Color="ButtonColor.Danger" @onclick="ShowConfirmationDeleteAsync" Type="ButtonType.Button">
حذف
</Button>
<Button class="mt-3" Color="ButtonColor.Primary" @onclick="showFullInvoiceItem" Type="ButtonType.Button">
اطلاعات تکمیلی
</Button>
@* <Button class="mt-3" Color="ButtonColor.Primary" @onclick="ShowReport" Type="ButtonType.Button">
pdf
</Button>
@@ -354,7 +355,7 @@
}
</div>
@if (invoice.invoiceType != InvoiceType.Bidding && SendInvoice)
@if (!invoice.IsDeleted && invoice.invoiceType != InvoiceType.Bidding && SendInvoice)
{
<div class="form-group col-md-2">
<br />

View File

@@ -17,22 +17,36 @@
</Alert>
</div>
<h4 class="fw-bold py-3 mb-4">
<span class="text-muted fw-light">سرویس ها / صورتحساب /</span> آماده سازی قبل از ارسال به سامانه مودیان
</h4>
<div class="row">
<div class="col-md-12">
<div class="card mb-4">
<h4 style="color:red;" class="card-header">توجه</h4>
<div class="card-body">
<p>1) این یک پیش نمایش کامل از صورتحساب شماست با دقت آنرا بررسی کنید</p>
<p>2) یسری از فیلدها قابل دسترس هستند میتوانید در این مرحله اطلاعات تکمیلی بیشتری برای صورتحساب وارد کنید</p>
<p>3) فیلد هایی که قابل دسترسی نیستند به صورت خودکار از صورتحساب پر شده اند</p>
<p>4) فیلد های قرمز را حتما مشخص کنید</p>
@if (FullInvoice)
{
<h4 class="fw-bold py-3 mb-4">
<span class="text-muted fw-light">سرویس ها / صورتحساب /</span> اطلاعات تکمیلی صورتحساب
</h4>
}
else
{
<h4 class="fw-bold py-3 mb-4">
<span class="text-muted fw-light">سرویس ها / صورتحساب /</span> آماده سازی قبل از ارسال به سامانه مودیان
</h4>
}
@if(!FullInvoice)
{
<div class="row">
<div class="col-md-12">
<div class="card mb-4">
<h4 style="color:red;" class="card-header">توجه</h4>
<div class="card-body">
<p>1) این یک پیش نمایش کامل از صورتحساب شماست با دقت آنرا بررسی کنید</p>
<p>2) یسری از فیلدها قابل دسترس هستند میتوانید در این مرحله اطلاعات تکمیلی بیشتری برای صورتحساب وارد کنید</p>
<p>3) فیلد هایی که قابل دسترسی نیستند به صورت خودکار از صورتحساب پر شده اند</p>
<p>4) فیلد های قرمز را حتما مشخص کنید</p>
</div>
</div>
</div>
</div>
</div>
}
<div class="row">
<div class="col-md-12">
<div class="card mb-4">
@@ -188,7 +202,15 @@
<div class="row">
<div class="col-md-12">
<div class="col-auto">
<button type="submit" @onclick="Send" class="btn btn-primary">آماده سازی و ارسال</button>
@if (FullInvoice)
{
<button type="submit" @onclick="Send" class="btn btn-primary">ثبت تغییرات</button>
}
else
{
<button type="submit" @onclick="Send" class="btn btn-primary">آماده سازی و ارسال</button>
}
</div>
</div>
</div>
@@ -204,6 +226,7 @@
List<ToastMessage> messages = new List<ToastMessage>();
[Inject] protected PreloadService PreloadService { get; set; } = default!;
public _TaxPayer.Atemplatefield? invoice { get; set; }
public bool FullInvoice { get; set; } = true;
// alert
AlertColor alertColor = AlertColor.Primary;
IconName alertIconName = IconName.CheckCircleFill;
@@ -216,7 +239,9 @@
await LoadData();
PreloadService.Hide();
var res= hc._nav.Uri.ToString();
if (hc._nav.Uri.ToString().Contains("FullInvoiceItem"))
FullInvoice = true;
else FullInvoice = false;
await base.OnParametersSetAsync();
}
@@ -232,7 +257,7 @@
};
public async Task Send()
{
if (!await CheckAuth())
if (!FullInvoice && !await CheckAuth())
{
ShowMessage(ToastType.Danger, "خطا در احراز هویت سازمان مالیاتی");
}
@@ -244,31 +269,40 @@
var response = await rsp.Content.ReadFromJsonAsync<bool>();
if (response)
{
ShowMessage(ToastType.Success, "آماده سازی با موفقیت انجام شد");
ShowMessage(ToastType.Light, "در حال ارسال صورتحساب");
rsp = await hc.Get($"TaxPayer/SendInvoice/{InvoiceID}");
if (rsp.IsSuccessStatusCode)
if(FullInvoice)
ShowMessage(ToastType.Success, "تغییرات با موفقیت انجام شد");
if (!FullInvoice)
{
response = await rsp.Content.ReadFromJsonAsync<bool>();
if (response)
ShowMessage(ToastType.Light, "در حال ارسال صورتحساب");
rsp = await hc.Get($"TaxPayer/SendInvoice/{InvoiceID}");
if (rsp.IsSuccessStatusCode)
{
hc._nav.NavigateTo($"TaxPayer/{InvoiceID}");
// ShowMessage(ToastType.Success, "ارسال با موفقیت انجام شد");
response = await rsp.Content.ReadFromJsonAsync<bool>();
if (response)
{
hc._nav.NavigateTo($"TaxPayer/{InvoiceID}");
// ShowMessage(ToastType.Success, "ارسال با موفقیت انجام شد");
}
else
{
ShowMessage(ToastType.Danger, "خطای در ارسال رخ داده");
}
}
else
{
ShowMessage(ToastType.Danger, "خطای در ارسال رخ داده");
var request = await rsp.Content.ReadFromJsonAsync<List<string>>();
ShowMessage(ToastType.Danger, request[0]);
}
}
else
{
var request = await rsp.Content.ReadFromJsonAsync<List<string>>();
ShowMessage(ToastType.Danger, request[0]);
}
}
else
{
ShowMessage(ToastType.Danger, "خطای در آماده سازی اطلاعات رخ داده");
if (FullInvoice)
ShowMessage(ToastType.Danger, "خطای در ذخیره سازی اطلاعات رخ داده");
else
ShowMessage(ToastType.Danger, "خطای در آماده سازی اطلاعات رخ داده");
}
}
else