This commit is contained in:
mmrbnjd
2024-07-29 23:32:54 +03:30
parent a025225920
commit a1a6076035
8 changed files with 61 additions and 16 deletions

View File

@@ -36,7 +36,7 @@
<ItemGroup>
<Reference Include="Service">
<HintPath>..\..\..\LocalGit\TaxPayerTools\Service\bin\Debug\Service.dll</HintPath>
<HintPath>..\..\Dlls\Service.dll</HintPath>
</Reference>
</ItemGroup>

View File

@@ -165,7 +165,7 @@ namespace Back.Controllers
{
Company.Credit -= order.TPrice;
var comUpdate=await _servCompany.AddORUpdateCompany(Company);
if (comUpdate!=null)
if (comUpdate != null)
{
if (await _servWalt.AddDocument(new CreditDocuments
{
@@ -175,7 +175,14 @@ namespace Back.Controllers
type = CreditDocumentType.Decrease,
Value = order.TPrice
}))
return Ok();
{
if (await _servOrders.SubmitOrder(order,CompanyID))
return Ok();
else
return BadRequest(new List<string> { "خطا در بروزرسانی سرویس ها" });
}
else
return BadRequest(new List<string> { "خطا در بروزرسانی سند سفارش" });
}

View File

@@ -9,15 +9,17 @@ namespace Back.Services
{
public class ServOrders
{
private readonly IAsyncRepository<PermissionPeriod> _repoPermissionPeriod;
private readonly IAsyncRepository<Order> _repoOrder;
private readonly IAsyncRepository<OrderItem> _repoOrderItem;
public ServOrders(IAsyncRepository<Order> repoOrder, IAsyncRepository<OrderItem> repoOrderItem)
public ServOrders(IAsyncRepository<Order> repoOrder, IAsyncRepository<OrderItem> repoOrderItem
, IAsyncRepository<PermissionPeriod> repoPermissionPeriod)
{
_repoOrder = repoOrder;
_repoOrderItem = repoOrderItem;
_repoPermissionPeriod = repoPermissionPeriod;
}
public async Task<PagingDto<OrderDto>> GetOrdersByCompanyID(int CompanyID, ItemSerachOrder itemSerach)
{
@@ -84,5 +86,30 @@ namespace Back.Services
}
}
public async Task<bool> SubmitOrder(Order ordermodel,int CompanyID)
{
try
{
foreach (OrderItem order in ordermodel.OrderItems.ToList())
{
var pp = await _repoPermissionPeriod.Get(w => w.PermissionID == order.PermissionID && w.CompanyID == CompanyID && w.CalculationTypeID == 1).FirstOrDefaultAsync();
if (pp != null)
{
pp.RemainingAmount += order.CreditAmount;
pp.TotalAmount += order.CreditAmount;
await _repoPermissionPeriod.UpdateAsync(pp);
}
}
ordermodel.Status = StatusOrder.Paid;
return await _repoOrder.UpdateAsync(ordermodel);
}
catch (Exception)
{
return false;
throw;
}
}
}
}

View File

@@ -144,6 +144,7 @@ namespace Back.Services
{
ID = user.RolUsers.First().CompanyID,
Name = user.RolUsers.First().Company.Name,
Credit = user.RolUsers.First().Company.Credit,
IsAdmin = user.RolUsers.First().IsAdmin,
Logo = user.RolUsers.First().Company.Logo == null ? null : Convert.ToBase64String(user.RolUsers.First().Company.Logo)