From 25c72b2eb52c7344bf8d6eadad983b29e5b4d9ae Mon Sep 17 00:00:00 2001 From: mmrbnjd Date: Sun, 19 Jan 2025 17:53:59 +0330 Subject: [PATCH] ... --- Back/Controllers/InvoiceController.cs | 2 +- Back/Controllers/InvoiceItemController.cs | 56 ++++++++++++++++------- 2 files changed, 41 insertions(+), 17 deletions(-) diff --git a/Back/Controllers/InvoiceController.cs b/Back/Controllers/InvoiceController.cs index 1e2ddbf..3da333f 100644 --- a/Back/Controllers/InvoiceController.cs +++ b/Back/Controllers/InvoiceController.cs @@ -643,7 +643,7 @@ namespace Back.Controllers var Inventory =await _warehouseService.Inventory(CompanyID.Value, item.CODID); if (Inventory - item.TotalAm <= 0 ) { - errors.Add($"مقدار کالا {item.CODID} کمتر از درخواست شماست"); + errors.Add($"موجودی کالا {item.CODID} کمتر از درخواست شماست"); } } if (errors.Count==0) diff --git a/Back/Controllers/InvoiceItemController.cs b/Back/Controllers/InvoiceItemController.cs index bf2d781..0734aed 100644 --- a/Back/Controllers/InvoiceItemController.cs +++ b/Back/Controllers/InvoiceItemController.cs @@ -8,8 +8,10 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Shared.DTOs; +using Shared.Enums; using System.Net; using System.Runtime.ConstrainedExecution; +using static System.Runtime.InteropServices.JavaScript.JSType; namespace Back.Controllers { @@ -23,6 +25,7 @@ namespace Back.Controllers private readonly AUInvoiceItemValidation _validationInvoiceItem; private readonly servInvoice _servInvoice; private readonly RemittanceService _remittanceService; + private readonly WarehouseService _warehouseService; public InvoiceItemController(servInvoiceItem servInvoiceItem, AUInvoiceItemValidation validationInvoiceItem , servUser servUser, servInvoice servInvoice) { @@ -63,22 +66,41 @@ namespace Back.Controllers if (await _servInvoice.UpdateInvoice(invoice)) { - if (await _remittanceService.HasaRemittance(model.invoiceID, model.item.CODID)) - { + //check mojodi //add + var inv = await _warehouseService.Inventory(user.RolUsers.First().CompanyID, model.item.CODID); + if (inv- model.item.am <= 0) + { + return BadRequest(new List { "موجودی کالا کمتر از درخواست شماست" }); + } + else + { + await _remittanceService.ADD(new Shared.DTOs.Warehouse.RemittanceDto() + { + CODID = model.item.CODID, + Count = model.item.am, + Date = DateTime.Now.ConvertMiladiToShamsi(), + info = $"حواله خودکار از صورتحساب {model.invoiceID}", + InvoiceID = model.invoiceID, + Type = TypeRemittance.Sale + }); + + return Ok(await _servInvoiceItem.Add(new InvoiceItem + { + am = model.item.am, + fee = model.item.fee, + dis = model.item.dis, + CODID = model.item.CODID, + InvoiceID = model.invoiceID, + + })); } + + - return Ok(await _servInvoiceItem.Add(new InvoiceItem - { - am = model.item.am, - fee = model.item.fee, - dis = model.item.dis, - CODID = model.item.CODID, - InvoiceID = model.invoiceID, - - })); + } else return BadRequest(new List { "خطایی رخ داده" }); @@ -166,12 +188,14 @@ namespace Back.Controllers if (await _servInvoice.UpdateInvoice(invoice)) { if (await _remittanceService.HasaRemittance(invoiceitem.invoice.ID, invoiceitem.CODID)) - { await _remittanceService.DeleteByInvoiceIDandCODID(invoiceitem.invoice.ID, invoiceitem.CODID); - //check mojodi - //add - } - return Ok(await _servInvoiceItem.Update(invoiceitem)); + + var inv = await _warehouseService.Inventory(user.RolUsers.First().CompanyID, model.item.CODID); + if (inv - model.item.am <= 0) + return BadRequest(new List { "موجودی کالا کمتر از درخواست شماست" }); + + else + return Ok(await _servInvoiceItem.Update(invoiceitem)); } else return BadRequest(new List { "خطایی رخ داده" });