feat: Enhance Supply Chain Module with Analytic Move Line Features

- Added support for analytic move lines in InvoiceServiceSupplychainImpl.
- Implemented methods to check for missing analytic move lines in PurchaseOrderController and PurchaseRequestController.
- Introduced budget distribution line generation in PurchaseOrderController.
- Updated SaleOrderController to generate analytic move lines.
- Enhanced StockMoveController with budget distribution line generation.
- Modified StockMoveLineController to include analytic account and axis handling.
- Updated domain models to include references to analytic accounts and axes in Partner, StockLocation, and StockMoveLine.
- Created unit tests for StockMoveLineServiceSupplychainImpl to ensure proper functionality of new features.
- Added MockQuery class for testing purposes.
This commit is contained in:
BACHIR SOULDI
2026-02-17 15:13:17 +01:00
parent 9eb959f07a
commit 6881c439b2
74 changed files with 2975 additions and 930 deletions

View File

@@ -21,6 +21,7 @@ import com.axelor.apps.ReportFactory;
import com.axelor.apps.account.db.Invoice;
import com.axelor.apps.account.db.repo.InvoiceRepository;
import com.axelor.apps.account.exception.IExceptionMessage;
import com.axelor.apps.account.service.AnalyticMoveLineService;
import com.axelor.apps.account.service.app.AppAccountService;
import com.axelor.apps.account.service.config.AccountConfigService;
import com.axelor.apps.account.service.invoice.InvoiceLineService;
@@ -52,7 +53,8 @@ public class InvoiceServiceProjectImpl extends InvoiceServiceSupplychainImpl {
AppAccountService appAccountService,
PartnerService partnerService,
InvoiceLineService invoiceLineService,
AccountConfigService accountConfigService) {
AccountConfigService accountConfigService,
AnalyticMoveLineService analyticMoveLineService) {
super(
validateFactory,
ventilateFactory,
@@ -62,7 +64,8 @@ public class InvoiceServiceProjectImpl extends InvoiceServiceSupplychainImpl {
appAccountService,
partnerService,
invoiceLineService,
accountConfigService);
accountConfigService,
analyticMoveLineService);
}
public List<String> editInvoiceAnnex(Invoice invoice, String invoiceIds, boolean toAttach)