fix: database migrations FK relations.

fix: database columns indexing.
This commit is contained in:
Ahmed Bouhuolia
2020-10-03 12:08:11 +02:00
parent 1250eccc0d
commit 0114ed9f8b
86 changed files with 788 additions and 801 deletions

View File

@@ -4,7 +4,6 @@ import { difference } from 'lodash';
import { Inject, Service } from 'typedi';
import { IPaymentReceive, IPaymentReceiveOTD } from 'interfaces';
import BaseController from 'api/controllers/BaseController';
import validateMiddleware from 'api/middleware/validateMiddleware';
import asyncMiddleware from 'api/middleware/asyncMiddleware';
import PaymentReceiveService from 'services/Sales/PaymentsReceives';
import SaleInvoiceService from 'services/Sales/SalesInvoices';
@@ -34,7 +33,7 @@ export default class PaymentReceivesController extends BaseController {
router.post(
'/:id',
this.editPaymentReceiveValidation,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validatePaymentReceiveExistance.bind(this)),
asyncMiddleware(this.validatePaymentReceiveNoExistance.bind(this)),
asyncMiddleware(this.validateCustomerExistance.bind(this)),
@@ -47,7 +46,7 @@ export default class PaymentReceivesController extends BaseController {
router.post(
'/',
this.newPaymentReceiveValidation,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validatePaymentReceiveNoExistance.bind(this)),
asyncMiddleware(this.validateCustomerExistance.bind(this)),
asyncMiddleware(this.validateDepositAccount.bind(this)),
@@ -58,20 +57,20 @@ export default class PaymentReceivesController extends BaseController {
router.get(
'/:id',
this.paymentReceiveValidation,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validatePaymentReceiveExistance.bind(this)),
asyncMiddleware(this.getPaymentReceive.bind(this))
);
router.get(
'/',
this.validatePaymentReceiveList,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.getPaymentReceiveList.bind(this)),
);
router.delete(
'/:id',
this.paymentReceiveValidation,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validatePaymentReceiveExistance.bind(this)),
asyncMiddleware(this.deletePaymentReceive.bind(this)),
);

View File

@@ -3,7 +3,6 @@ import { check, param, query, matchedData } from 'express-validator';
import { Inject, Service } from 'typedi';
import { ISaleEstimate, ISaleEstimateOTD } from 'interfaces';
import BaseController from 'api/controllers/BaseController'
import validateMiddleware from 'api/middleware/validateMiddleware';
import asyncMiddleware from 'api/middleware/asyncMiddleware';
import SaleEstimateService from 'services/Sales/SalesEstimate';
import ItemsService from 'services/Items/ItemsService';
@@ -25,7 +24,7 @@ export default class SalesEstimatesController extends BaseController {
router.post(
'/',
this.estimateValidationSchema,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateEstimateCustomerExistance.bind(this)),
asyncMiddleware(this.validateEstimateNumberExistance.bind(this)),
asyncMiddleware(this.validateEstimateEntriesItemsExistance.bind(this)),
@@ -36,7 +35,7 @@ export default class SalesEstimatesController extends BaseController {
...this.validateSpecificEstimateSchema,
...this.estimateValidationSchema,
],
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateEstimateIdExistance.bind(this)),
asyncMiddleware(this.validateEstimateCustomerExistance.bind(this)),
asyncMiddleware(this.validateEstimateNumberExistance.bind(this)),
@@ -48,21 +47,21 @@ export default class SalesEstimatesController extends BaseController {
'/:id', [
this.validateSpecificEstimateSchema,
],
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateEstimateIdExistance.bind(this)),
asyncMiddleware(this.deleteEstimate.bind(this))
);
router.get(
'/:id',
this.validateSpecificEstimateSchema,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateEstimateIdExistance.bind(this)),
asyncMiddleware(this.getEstimate.bind(this))
);
router.get(
'/',
this.validateEstimateListSchema,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.getEstimates.bind(this))
);
return router;

View File

@@ -3,14 +3,14 @@ import { check, param, query, matchedData } from 'express-validator';
import { difference } from 'lodash';
import { raw } from 'objection';
import { Service, Inject } from 'typedi';
import validateMiddleware from 'api/middleware/validateMiddleware';
import BaseController from '../BaseController';
import asyncMiddleware from 'api/middleware/asyncMiddleware';
import SaleInvoiceService from 'services/Sales/SalesInvoices';
import ItemsService from 'services/Items/ItemsService';
import { ISaleInvoiceOTD } from 'interfaces';
@Service()
export default class SaleInvoicesController {
export default class SaleInvoicesController extends BaseController{
@Inject()
itemsService: ItemsService;
@@ -26,7 +26,7 @@ export default class SaleInvoicesController {
router.post(
'/',
this.saleInvoiceValidationSchema,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateInvoiceCustomerExistance.bind(this)),
asyncMiddleware(this.validateInvoiceNumberUnique.bind(this)),
asyncMiddleware(this.validateInvoiceItemsIdsExistance.bind(this)),
@@ -39,7 +39,7 @@ export default class SaleInvoicesController {
...this.saleInvoiceValidationSchema,
...this.specificSaleInvoiceValidation,
],
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateInvoiceExistance.bind(this)),
asyncMiddleware(this.validateInvoiceCustomerExistance.bind(this)),
asyncMiddleware(this.validateInvoiceNumberUnique.bind(this)),
@@ -52,7 +52,7 @@ export default class SaleInvoicesController {
router.delete(
'/:id',
this.specificSaleInvoiceValidation,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateInvoiceExistance.bind(this)),
asyncMiddleware(this.deleteSaleInvoice.bind(this))
);
@@ -64,13 +64,14 @@ export default class SaleInvoicesController {
router.get(
'/:id',
this.specificSaleInvoiceValidation,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateInvoiceExistance.bind(this)),
asyncMiddleware(this.getSaleInvoice.bind(this))
);
router.get(
'/',
this.saleInvoiceListValidationSchema,
this.validationResult,
asyncMiddleware(this.getSalesInvoices.bind(this))
)
return router;

View File

@@ -1,14 +1,14 @@
import { Router, Request, Response } from 'express';
import { check, param, query, matchedData } from 'express-validator';
import { Inject, Service } from 'typedi';
import validateMiddleware from 'api/middleware/validateMiddleware';
import asyncMiddleware from 'api/middleware/asyncMiddleware';
import AccountsService from 'services/Accounts/AccountsService';
import ItemsService from 'services/Items/ItemsService';
import SaleReceiptService from 'services/Sales/SalesReceipts';
import BaseController from '../BaseController';
@Service()
export default class SalesReceiptsController {
export default class SalesReceiptsController extends BaseController{
@Inject()
saleReceiptService: SaleReceiptService;
@@ -29,7 +29,7 @@ export default class SalesReceiptsController {
...this.specificReceiptValidationSchema,
...this.salesReceiptsValidationSchema,
],
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateSaleReceiptExistance.bind(this)),
asyncMiddleware(this.validateReceiptCustomerExistance.bind(this)),
asyncMiddleware(this.validateReceiptDepositAccountExistance.bind(this)),
@@ -40,7 +40,7 @@ export default class SalesReceiptsController {
router.post(
'/',
this.salesReceiptsValidationSchema,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateReceiptCustomerExistance.bind(this)),
asyncMiddleware(this.validateReceiptDepositAccountExistance.bind(this)),
asyncMiddleware(this.validateReceiptItemsIdsExistance.bind(this)),
@@ -49,14 +49,14 @@ export default class SalesReceiptsController {
router.delete(
'/:id',
this.specificReceiptValidationSchema,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.validateSaleReceiptExistance.bind(this)),
asyncMiddleware(this.deleteSaleReceipt.bind(this))
);
router.get(
'/',
this.listSalesReceiptsValidationSchema,
validateMiddleware,
this.validationResult,
asyncMiddleware(this.listingSalesReceipts.bind(this))
);
return router;