...
This commit is contained in:
@@ -38,6 +38,11 @@ namespace Back.Validations
|
|||||||
{
|
{
|
||||||
if (model.Item4 == eActionValidation.update || model.Item4 == eActionValidation.add)
|
if (model.Item4 == eActionValidation.update || model.Item4 == eActionValidation.add)
|
||||||
{
|
{
|
||||||
|
if (model.Item3.pv <= 0)
|
||||||
|
{
|
||||||
|
context.AddFailure("مبلغ پرداختی باید بیشتر از صفر باشد.");
|
||||||
|
}
|
||||||
|
|
||||||
var totalpay = invoice.payments.Sum(s => s.pv).GetValueOrDefault() + model.Item3.pv;
|
var totalpay = invoice.payments.Sum(s => s.pv).GetValueOrDefault() + model.Item3.pv;
|
||||||
if (totalpay > invoice.tbill) context.AddFailure("مجموع مبلغ پرداختی نمی تواند از مجموع صورتحساب بیشتر باشد.");
|
if (totalpay > invoice.tbill) context.AddFailure("مجموع مبلغ پرداختی نمی تواند از مجموع صورتحساب بیشتر باشد.");
|
||||||
else
|
else
|
||||||
@@ -50,13 +55,23 @@ namespace Back.Validations
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
var today = Convert.ToInt32(DateTime.Now.ConvertMiladiToShamsi());
|
||||||
string paydate = model.Item3.PaymentDateTime.Replace("/", "");
|
string paydate = model.Item3.PaymentDateTime.Replace("/", "");
|
||||||
|
|
||||||
if (paydate.Length == 8 && int.TryParse(paydate, out int _paydate))
|
if (paydate.Length == 8 && int.TryParse(paydate, out int _paydate))
|
||||||
|
{
|
||||||
|
if (today >= _paydate)
|
||||||
{
|
{
|
||||||
if (Convert.ToInt32(invoice.InvoiceDate) > _paydate)
|
if (Convert.ToInt32(invoice.InvoiceDate) > _paydate)
|
||||||
{
|
{
|
||||||
context.AddFailure("تاریخ پرداخت نمیتواند از تاریخ صورتحساب عقبتر باشد");
|
context.AddFailure("تاریخ پرداخت نمیتواند از تاریخ صورتحساب عقبتر باشد");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
context.AddFailure("تاریخ پرداخت نمی تواند از امروز جلوتر باشد");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
else context.AddFailure("تاریخ صحیح نمی باشد");
|
else context.AddFailure("تاریخ صحیح نمی باشد");
|
||||||
|
@@ -120,31 +120,31 @@ namespace Shared.DTOs
|
|||||||
public class InvoicePaymentDTO
|
public class InvoicePaymentDTO
|
||||||
{
|
{
|
||||||
public int? ID { get; set; }
|
public int? ID { get; set; }
|
||||||
[MaxLength(9)]
|
//[MaxLength(9)]
|
||||||
public string? iinn { get; set; }
|
public string? iinn { get; set; }
|
||||||
//شماره پذیرنده فروشگاهی
|
//شماره پذیرنده فروشگاهی
|
||||||
[MaxLength(14)]
|
//[MaxLength(14)]
|
||||||
public string? acn { get; set; }
|
public string? acn { get; set; }
|
||||||
//شماره پایانه
|
//شماره پایانه
|
||||||
[MaxLength(8)]
|
//[MaxLength(8)]
|
||||||
public string? trmn { get; set; }
|
public string? trmn { get; set; }
|
||||||
//روش پرداخت
|
//روش پرداخت
|
||||||
[MaxLength(2)]
|
//[MaxLength(2)]
|
||||||
public int? pmt { get; set; }
|
public int? pmt { get; set; }
|
||||||
public string? paymentMethod { get; set; }
|
public string? paymentMethod { get; set; }
|
||||||
//شماره پیگیری/شماره مرجع
|
//شماره پیگیری/شماره مرجع
|
||||||
[MaxLength(14)]
|
//[MaxLength(14)]
|
||||||
public string? trn { get; set; }
|
public string? trn { get; set; }
|
||||||
//شماره کارت پرداخت کننده صورتحساب
|
//شماره کارت پرداخت کننده صورتحساب
|
||||||
[MaxLength(16)]
|
//[MaxLength(16)]
|
||||||
public string? pcn { get; set; }
|
public string? pcn { get; set; }
|
||||||
//شماره/شناسه ملی/کد فراگیر اتباع غیر ایرانی پرداخت کننده صورتحساب
|
//شماره/شناسه ملی/کد فراگیر اتباع غیر ایرانی پرداخت کننده صورتحساب
|
||||||
[MaxLength(12)]
|
[MaxLength(12)]
|
||||||
public string? pid { get; set; }
|
public string? pid { get; set; }
|
||||||
//تاریخ و زمان پرداخت
|
//تاریخ و زمان پرداخت
|
||||||
public string? PaymentDateTime { get; set; }
|
public string? PaymentDateTime { get; set; } = DateTime.Now.ConvertMiladiToShamsiinFront().ShamciToFormatShamciinFront();
|
||||||
//مبلغ پرداختی
|
//مبلغ پرداختی
|
||||||
[MaxLength(18)]
|
//[MaxLength(18)]
|
||||||
public long? pv { get; set; }
|
public long? pv { get; set; }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -1,4 +1,5 @@
|
|||||||
@using Front.Services
|
@using Front.Services
|
||||||
|
@using Shared
|
||||||
@using Shared.DTOs
|
@using Shared.DTOs
|
||||||
@inject Fixedvalues fv;
|
@inject Fixedvalues fv;
|
||||||
@inject HttpClientController hc;
|
@inject HttpClientController hc;
|
||||||
@@ -7,7 +8,8 @@
|
|||||||
TItem="InvoicePaymentDTO"
|
TItem="InvoicePaymentDTO"
|
||||||
Class="table table-hover table-bordered table-striped mt-3"
|
Class="table table-hover table-bordered table-striped mt-3"
|
||||||
Data="invoice.payments"
|
Data="invoice.payments"
|
||||||
OnRowClick="OnRowClick">
|
OnRowClick="OnRowClick"
|
||||||
|
Responsive="true">
|
||||||
|
|
||||||
<GridColumns>
|
<GridColumns>
|
||||||
<GridColumn TItem="InvoicePaymentDTO" TextAlignment="Alignment.Center" HeaderTextAlignment="Alignment.Center" HeaderText="شماره سوییچ پرداخت" PropertyName="iinn">
|
<GridColumn TItem="InvoicePaymentDTO" TextAlignment="Alignment.Center" HeaderTextAlignment="Alignment.Center" HeaderText="شماره سوییچ پرداخت" PropertyName="iinn">
|
||||||
@@ -34,8 +36,8 @@
|
|||||||
<GridColumn TItem="InvoicePaymentDTO" TextAlignment="Alignment.Center" HeaderTextAlignment="Alignment.Center" HeaderText="تاریخ" PropertyName="PaymentDateTime">
|
<GridColumn TItem="InvoicePaymentDTO" TextAlignment="Alignment.Center" HeaderTextAlignment="Alignment.Center" HeaderText="تاریخ" PropertyName="PaymentDateTime">
|
||||||
@context.PaymentDateTime
|
@context.PaymentDateTime
|
||||||
</GridColumn>
|
</GridColumn>
|
||||||
<GridColumn TItem="InvoicePaymentDTO" TextAlignment="Alignment.Center" HeaderTextAlignment="Alignment.Center" HeaderText="مبلغ" PropertyName="pv">
|
<GridColumn TItem="InvoicePaymentDTO" TextAlignment="Alignment.Center" HeaderTextAlignment="Alignment.Center" HeaderText="مبلغ(ریال)" PropertyName="pv">
|
||||||
@context.pv??.ToString("N0")
|
@context.pv.Value.ToString("N0")
|
||||||
</GridColumn>
|
</GridColumn>
|
||||||
</GridColumns>
|
</GridColumns>
|
||||||
</Grid>
|
</Grid>
|
||||||
@@ -128,6 +130,14 @@
|
|||||||
<CurrencyInput TValue="long?" @bind-Value="item.pv" Locale="fa-Ir" Placeholder="مبلغ" style="text-align: center" />
|
<CurrencyInput TValue="long?" @bind-Value="item.pv" Locale="fa-Ir" Placeholder="مبلغ" style="text-align: center" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row g-3">
|
||||||
|
<div class="form-group col-md-4">
|
||||||
|
<Alert hidden="@Hidealert" Color="@alertColor" Dismissable="false">
|
||||||
|
<Icon Name="@alertIconName" class="me-2"></Icon>
|
||||||
|
@alertMessage
|
||||||
|
</Alert>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="row g-3">
|
<div class="row g-3">
|
||||||
@if (add)
|
@if (add)
|
||||||
{
|
{
|
||||||
@@ -151,22 +161,15 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="form-group col-md-2">
|
<div class="form-group col-md-2">
|
||||||
<Button class="mt-3" Color="ButtonColor.Primary" @onclick="cancell" Type="ButtonType.Button">
|
<Button class="mt-3" Color="ButtonColor.Primary" @onclick="cancell" Type="ButtonType.Button">
|
||||||
انصزاف
|
انصراف
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@* alert *@
|
|
||||||
<div class="row">
|
|
||||||
<Alert hidden="@Hidealert" Color="@alertColor" Dismissable="false">
|
|
||||||
<Icon Name="@alertIconName" class="me-2"></Icon>
|
|
||||||
@alertMessage
|
|
||||||
</Alert>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
@code {
|
@code {
|
||||||
bool add = true;
|
bool add = true;
|
||||||
[Parameter] public InvoiceDTO invoice { get; set; }
|
[Parameter] public InvoiceDTO invoice { get; set; }
|
||||||
@@ -182,6 +185,7 @@
|
|||||||
protected override async Task OnParametersSetAsync()
|
protected override async Task OnParametersSetAsync()
|
||||||
{
|
{
|
||||||
item = new InvoicePaymentDTO();
|
item = new InvoicePaymentDTO();
|
||||||
|
|
||||||
pmts = await fv.GetPaymentMethods();
|
pmts = await fv.GetPaymentMethods();
|
||||||
await base.OnParametersSetAsync();
|
await base.OnParametersSetAsync();
|
||||||
}
|
}
|
||||||
@@ -199,9 +203,15 @@
|
|||||||
}
|
}
|
||||||
async Task AddPay()
|
async Task AddPay()
|
||||||
{
|
{
|
||||||
|
|
||||||
if (await Validation())
|
if (await Validation())
|
||||||
{
|
{
|
||||||
var rsp = await hc.Post<InvoicePaymentDTO>("InvoicePayment/AddPay", item);
|
var sentItem = new InvoiceItemAction<InvoicePaymentDTO>()
|
||||||
|
{
|
||||||
|
invoiceID = invoice.ID,
|
||||||
|
item = item
|
||||||
|
};
|
||||||
|
var rsp = await hc.Post<InvoiceItemAction<InvoicePaymentDTO>>("InvoicePayment/AddPay", sentItem);
|
||||||
if (rsp.IsSuccessStatusCode)
|
if (rsp.IsSuccessStatusCode)
|
||||||
{
|
{
|
||||||
var request = await rsp.Content.ReadFromJsonAsync<InvoicePaymentDTO>();
|
var request = await rsp.Content.ReadFromJsonAsync<InvoicePaymentDTO>();
|
||||||
@@ -230,7 +240,11 @@
|
|||||||
{
|
{
|
||||||
if (await Validation())
|
if (await Validation())
|
||||||
{
|
{
|
||||||
var rsp = await hc.Put<InvoicePaymentDTO>("InvoicePayment/UpdatePay", item);
|
var rsp = await hc.Put<InvoiceItemAction<InvoicePaymentDTO>>("InvoicePayment/UpdatePay", new InvoiceItemAction<InvoicePaymentDTO>()
|
||||||
|
{
|
||||||
|
invoiceID = invoice.ID,
|
||||||
|
item = item
|
||||||
|
});
|
||||||
if (rsp.IsSuccessStatusCode)
|
if (rsp.IsSuccessStatusCode)
|
||||||
{
|
{
|
||||||
var request = await rsp.Content.ReadFromJsonAsync<InvoicePaymentDTO>();
|
var request = await rsp.Content.ReadFromJsonAsync<InvoicePaymentDTO>();
|
||||||
@@ -294,6 +308,10 @@
|
|||||||
}
|
}
|
||||||
async Task<bool> Validation()
|
async Task<bool> Validation()
|
||||||
{
|
{
|
||||||
|
if (item.pv<=0)
|
||||||
|
{
|
||||||
|
ShowDangerAlert("مبلغ پرداختی باید بیشتر از صفر باشد.");
|
||||||
|
}
|
||||||
if (invoice.tbill < invoice.payments.Sum(s => s.pv) + item.pv)
|
if (invoice.tbill < invoice.payments.Sum(s => s.pv) + item.pv)
|
||||||
{
|
{
|
||||||
ShowDangerAlert("مجموع مبلغ پرداختی نمی تواند از مجموع صورتحساب بیشتر باشد.");
|
ShowDangerAlert("مجموع مبلغ پرداختی نمی تواند از مجموع صورتحساب بیشتر باشد.");
|
||||||
@@ -311,12 +329,21 @@
|
|||||||
{
|
{
|
||||||
string paydate = item.PaymentDateTime.Replace("/", "");
|
string paydate = item.PaymentDateTime.Replace("/", "");
|
||||||
if (paydate.Length == 8 && int.TryParse(paydate, out int _paydate))
|
if (paydate.Length == 8 && int.TryParse(paydate, out int _paydate))
|
||||||
|
{
|
||||||
|
var today = Convert.ToInt32(DateTime.Now.ConvertMiladiToShamsiinFront());
|
||||||
|
if (today >= _paydate)
|
||||||
{
|
{
|
||||||
if (Convert.ToInt32(invoice.InvoiceDate.Replace("/", "")) > _paydate)
|
if (Convert.ToInt32(invoice.InvoiceDate.Replace("/", "")) > _paydate)
|
||||||
{
|
{
|
||||||
ShowDangerAlert("تاریخ پرداخت نمیتواند از تاریخ صورتحساب عقبتر باشد");
|
ShowDangerAlert("تاریخ پرداخت نمیتواند از تاریخ صورتحساب عقبتر باشد");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ShowDangerAlert("تاریخ پرداخت نمی تواند از امروز جلوتر باشد");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
else { ShowDangerAlert("تاریخ صحیح نمی باشد"); return false; }
|
else { ShowDangerAlert("تاریخ صحیح نمی باشد"); return false; }
|
||||||
|
@@ -36,10 +36,10 @@ builder.Services.AddScoped(sp => new UserAuthenticationDTO()
|
|||||||
//builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri("http://195.88.208.142:7075/api/") });
|
//builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri("http://195.88.208.142:7075/api/") });
|
||||||
|
|
||||||
//Home
|
//Home
|
||||||
//builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri("https://localhost:7075/api/") });
|
builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri("https://localhost:7075/api/") });
|
||||||
|
|
||||||
//farzan
|
//farzan
|
||||||
builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri("http://localhost:5271/api/") });
|
//builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri("http://localhost:5271/api/") });
|
||||||
|
|
||||||
CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("fa-Ir");
|
CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("fa-Ir");
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user