From ad51d125722de847bfae5610460c3fbb074814a3 Mon Sep 17 00:00:00 2001 From: Ahmed Bouhuolia Date: Mon, 28 Sep 2020 20:51:22 +0200 Subject: [PATCH] fix: remove relation bind knex. --- server/src/models/Account.js | 4 ++-- server/src/models/AccountTransaction.js | 2 +- server/src/models/AccountType.js | 2 +- server/src/models/Bill.js | 4 ++-- server/src/models/BillPayment.js | 8 ++++---- server/src/models/Contact.js | 4 ++-- server/src/models/Expense.js | 15 ++++++++++++--- server/src/models/ExpenseCategory.js | 2 +- server/src/models/InventoryCostLotTracker.js | 2 +- server/src/models/InventoryTransaction.js | 2 +- server/src/models/Item.js | 10 +++++----- server/src/models/ItemCategory.js | 2 +- server/src/models/ItemEntry.js | 2 +- server/src/models/ManualJournal.js | 4 ++-- server/src/models/PaymentReceive.js | 8 ++++---- server/src/models/PaymentReceiveEntry.js | 4 ++-- server/src/models/SaleEstimate.js | 4 ++-- server/src/models/SaleEstimateEntry.js | 2 +- server/src/models/SaleInvoice.js | 8 ++++---- server/src/models/SaleInvoiceEntry.js | 2 +- server/src/models/SaleReceipt.js | 8 ++++---- server/src/models/SaleReceiptEntry.js | 2 +- server/src/models/View.js | 4 ++-- server/src/models/ViewRole.js | 2 +- .../models/Subscriptions/PlanSubscription.js | 4 ++-- server/src/system/models/Tenant.js | 2 +- 26 files changed, 61 insertions(+), 52 deletions(-) diff --git a/server/src/models/Account.js b/server/src/models/Account.js index 30355b864..a70b0623a 100644 --- a/server/src/models/Account.js +++ b/server/src/models/Account.js @@ -63,7 +63,7 @@ export default class Account extends TenantModel { */ type: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(AccountType.default), + modelClass: AccountType.default, join: { from: 'accounts.accountTypeId', to: 'account_types.id', @@ -75,7 +75,7 @@ export default class Account extends TenantModel { */ transactions: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(AccountTransaction.default), + modelClass: AccountTransaction.default, join: { from: 'accounts.id', to: 'accounts_transactions.accountId', diff --git a/server/src/models/AccountTransaction.js b/server/src/models/AccountTransaction.js index c2df7e32b..c5c36c19e 100644 --- a/server/src/models/AccountTransaction.js +++ b/server/src/models/AccountTransaction.js @@ -88,7 +88,7 @@ export default class AccountTransaction extends TenantModel { return { account: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'accounts_transactions.accountId', to: 'accounts.id', diff --git a/server/src/models/AccountType.js b/server/src/models/AccountType.js index 6e6b46e9e..b0babeed6 100644 --- a/server/src/models/AccountType.js +++ b/server/src/models/AccountType.js @@ -22,7 +22,7 @@ export default class AccountType extends TenantModel { */ accounts: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'account_types.id', to: 'accounts.accountTypeId', diff --git a/server/src/models/Bill.js b/server/src/models/Bill.js index 5644a4909..bace2321a 100644 --- a/server/src/models/Bill.js +++ b/server/src/models/Bill.js @@ -42,7 +42,7 @@ export default class Bill extends TenantModel { return { vendor: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Vendor.default), + modelClass: Vendor.default, join: { from: 'bills.vendorId', to: 'vendors.id', @@ -51,7 +51,7 @@ export default class Bill extends TenantModel { entries: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(ItemEntry.default), + modelClass: ItemEntry.default, join: { from: 'bills.id', to: 'items_entries.referenceId', diff --git a/server/src/models/BillPayment.js b/server/src/models/BillPayment.js index eeb1655e2..71f598615 100644 --- a/server/src/models/BillPayment.js +++ b/server/src/models/BillPayment.js @@ -28,7 +28,7 @@ export default class BillPayment extends TenantModel { return { entries: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(BillPaymentEntry.default), + modelClass: BillPaymentEntry.default, join: { from: 'bills_payments.id', to: 'bills_payments_entries.billPaymentId', @@ -37,7 +37,7 @@ export default class BillPayment extends TenantModel { vendor: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Vendor.default), + modelClass: Vendor.default, join: { from: 'bills_payments.vendorId', to: 'vendors.id', @@ -46,7 +46,7 @@ export default class BillPayment extends TenantModel { paymentAccount: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'bills_payments.paymentAccountId', to: 'accounts.id', @@ -55,7 +55,7 @@ export default class BillPayment extends TenantModel { transactions: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(AccountTransaction.default), + modelClass: AccountTransaction.default, join: { from: 'bills_payments.id', to: 'accounts_transactions.referenceId' diff --git a/server/src/models/Contact.js b/server/src/models/Contact.js index 92064e416..21505c9da 100644 --- a/server/src/models/Contact.js +++ b/server/src/models/Contact.js @@ -45,7 +45,7 @@ export default class Contact extends TenantModel { return { salesInvoices: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(SaleInvoice.default), + modelClass: SaleInvoice.default, join: { from: 'contacts.id', to: 'sales_invoices.customerId', @@ -54,7 +54,7 @@ export default class Contact extends TenantModel { bills: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(Bill.default), + modelClass: Bill.default, join: { from: 'contacts.id', to: 'bills.vendorId', diff --git a/server/src/models/Expense.js b/server/src/models/Expense.js index 5ea5710ef..8c3cdac3b 100644 --- a/server/src/models/Expense.js +++ b/server/src/models/Expense.js @@ -72,11 +72,12 @@ export default class Expense extends TenantModel { static get relationMappings() { const Account = require('models/Account'); const ExpenseCategory = require('models/ExpenseCategory'); - + const SystemUser = require('system/models/SystemUser'); + return { paymentAccount: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'expenses_transactions.paymentAccountId', to: 'accounts.id', @@ -84,12 +85,20 @@ export default class Expense extends TenantModel { }, categories: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(ExpenseCategory.default), + modelClass: ExpenseCategory.default, join: { from: 'expenses_transactions.id', to: 'expense_transaction_categories.expenseId', }, }, + user: { + relation: Model.BelongsToOneRelation, + modelClass: SystemUser.default, + join: { + from: 'expenses_transactions.userId', + to: 'users.id', + } + } }; } } diff --git a/server/src/models/ExpenseCategory.js b/server/src/models/ExpenseCategory.js index 54b150111..80b89e89f 100644 --- a/server/src/models/ExpenseCategory.js +++ b/server/src/models/ExpenseCategory.js @@ -18,7 +18,7 @@ export default class ExpenseCategory extends TenantModel { return { expenseAccount: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'expense_transaction_categories.expenseAccountId', to: 'accounts.id', diff --git a/server/src/models/InventoryCostLotTracker.js b/server/src/models/InventoryCostLotTracker.js index 3a2a477d9..351e01a7b 100644 --- a/server/src/models/InventoryCostLotTracker.js +++ b/server/src/models/InventoryCostLotTracker.js @@ -57,7 +57,7 @@ export default class InventoryCostLotTracker extends TenantModel { return { item: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Item.default), + modelClass: Item.default, join: { from: 'inventory_cost_lot_tracker.itemId', to: 'items.id', diff --git a/server/src/models/InventoryTransaction.js b/server/src/models/InventoryTransaction.js index 26e388ce4..9b17c9d89 100644 --- a/server/src/models/InventoryTransaction.js +++ b/server/src/models/InventoryTransaction.js @@ -46,7 +46,7 @@ export default class InventoryTransaction extends TenantModel { return { item: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Item.default), + modelClass: Item.default, join: { from: 'inventory_transactions.itemId', to: 'items.id', diff --git a/server/src/models/Item.js b/server/src/models/Item.js index 3a262e238..4abfa3408 100644 --- a/server/src/models/Item.js +++ b/server/src/models/Item.js @@ -49,7 +49,7 @@ export default class Item extends TenantModel { */ category: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(ItemCategory.default), + modelClass: ItemCategory.default, join: { from: 'items.categoryId', to: 'items_categories.id', @@ -58,7 +58,7 @@ export default class Item extends TenantModel { costAccount: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'items.costAccountId', to: 'accounts.id', @@ -67,7 +67,7 @@ export default class Item extends TenantModel { sellAccount: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'items.sellAccountId', to: 'accounts.id', @@ -76,7 +76,7 @@ export default class Item extends TenantModel { inventoryAccount: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'items.inventoryAccountId', to: 'accounts.id', @@ -85,7 +85,7 @@ export default class Item extends TenantModel { media: { relation: Model.ManyToManyRelation, - modelClass: this.relationBindKnex(Media.default), + modelClass: Media.default, join: { from: 'items.id', through: { diff --git a/server/src/models/ItemCategory.js b/server/src/models/ItemCategory.js index e363adbc6..ad79dd4d7 100644 --- a/server/src/models/ItemCategory.js +++ b/server/src/models/ItemCategory.js @@ -22,7 +22,7 @@ export default class ItemCategory extends TenantModel { */ items: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(Item.default), + modelClass: Item.default, join: { from: 'items_categories.id', to: 'items.categoryId', diff --git a/server/src/models/ItemEntry.js b/server/src/models/ItemEntry.js index 271a5cf43..3434b01af 100644 --- a/server/src/models/ItemEntry.js +++ b/server/src/models/ItemEntry.js @@ -38,7 +38,7 @@ export default class ItemEntry extends TenantModel { return { item: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Item.default), + modelClass: Item.default, join: { from: 'items_entries.itemId', to: 'items.id', diff --git a/server/src/models/ManualJournal.js b/server/src/models/ManualJournal.js index 648275eb9..71c285825 100644 --- a/server/src/models/ManualJournal.js +++ b/server/src/models/ManualJournal.js @@ -27,7 +27,7 @@ export default class ManualJournal extends TenantModel { return { entries: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(AccountTransaction.default), + modelClass: AccountTransaction.default, join: { from: 'manual_journals.id', to: 'accounts_transactions.referenceId', @@ -38,7 +38,7 @@ export default class ManualJournal extends TenantModel { }, media: { relation: Model.ManyToManyRelation, - modelClass: this.relationBindKnex(Media.default), + modelClass: Media.default, join: { from: 'manual_journals.id', through: { diff --git a/server/src/models/PaymentReceive.js b/server/src/models/PaymentReceive.js index 6d2b73bb9..d992978a9 100644 --- a/server/src/models/PaymentReceive.js +++ b/server/src/models/PaymentReceive.js @@ -28,7 +28,7 @@ export default class PaymentReceive extends TenantModel { return { customer: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Customer.default), + modelClass: Customer.default, join: { from: 'payment_receives.customerId', to: 'customers.id', @@ -37,7 +37,7 @@ export default class PaymentReceive extends TenantModel { depositAccount: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'payment_receives.depositAccountId', to: 'accounts.id', @@ -46,7 +46,7 @@ export default class PaymentReceive extends TenantModel { entries: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(PaymentReceiveEntry.default), + modelClass: PaymentReceiveEntry.default, join: { from: 'payment_receives.id', to: 'payment_receives_entries.paymentReceiveId', @@ -55,7 +55,7 @@ export default class PaymentReceive extends TenantModel { transactions: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(AccountTransaction.default), + modelClass: AccountTransaction.default, join: { from: 'payment_receives.id', to: 'accounts_transactions.referenceId' diff --git a/server/src/models/PaymentReceiveEntry.js b/server/src/models/PaymentReceiveEntry.js index 5b9152afe..7076bfb41 100644 --- a/server/src/models/PaymentReceiveEntry.js +++ b/server/src/models/PaymentReceiveEntry.js @@ -28,7 +28,7 @@ export default class PaymentReceiveEntry extends TenantModel { */ entries: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(PaymentReceive.default), + modelClass: PaymentReceive.default, join: { from: 'payment_receives_entries.payment_receive_id', to: 'payment_receives.id', @@ -40,7 +40,7 @@ export default class PaymentReceiveEntry extends TenantModel { */ invoice: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(SaleInvoice.default), + modelClass: SaleInvoice.default, join: { from: 'payment_receives_entries.invoiceId', to: 'sales_invoices.id', diff --git a/server/src/models/SaleEstimate.js b/server/src/models/SaleEstimate.js index 463ab015b..fcbe46cb0 100644 --- a/server/src/models/SaleEstimate.js +++ b/server/src/models/SaleEstimate.js @@ -26,7 +26,7 @@ export default class SaleEstimate extends TenantModel { return { customer: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Customer.default), + modelClass: Customer.default, join: { from: 'sales_estimates.customerId', to: 'customers.id', @@ -35,7 +35,7 @@ export default class SaleEstimate extends TenantModel { entries: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(ItemEntry.default), + modelClass: ItemEntry.default, join: { from: 'sales_estimates.id', to: 'items_entries.referenceId', diff --git a/server/src/models/SaleEstimateEntry.js b/server/src/models/SaleEstimateEntry.js index a67eaea56..35c3b5106 100644 --- a/server/src/models/SaleEstimateEntry.js +++ b/server/src/models/SaleEstimateEntry.js @@ -19,7 +19,7 @@ export default class SaleEstimateEntry extends TenantModel { return { estimate: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(SaleEstimate.default), + modelClass: SaleEstimate.default, join: { from: 'sales_estimates.id', to: 'sales_estimate_entries.estimate_id', diff --git a/server/src/models/SaleInvoice.js b/server/src/models/SaleInvoice.js index fa904c89c..0fae868fa 100644 --- a/server/src/models/SaleInvoice.js +++ b/server/src/models/SaleInvoice.js @@ -63,7 +63,7 @@ export default class SaleInvoice extends TenantModel { return { entries: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(ItemEntry.default), + modelClass: ItemEntry.default, join: { from: 'sales_invoices.id', to: 'items_entries.referenceId', @@ -75,7 +75,7 @@ export default class SaleInvoice extends TenantModel { customer: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Customer.default), + modelClass: Customer.default, join: { from: 'sales_invoices.customerId', to: 'customers.id', @@ -84,7 +84,7 @@ export default class SaleInvoice extends TenantModel { transactions: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(AccountTransaction.default), + modelClass: AccountTransaction.default, join: { from: 'sales_invoices.id', to: 'accounts_transactions.referenceId' @@ -96,7 +96,7 @@ export default class SaleInvoice extends TenantModel { costTransactions: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(InventoryCostLotTracker.default), + modelClass: InventoryCostLotTracker.default, join: { from: 'sales_invoices.id', to: 'inventory_cost_lot_tracker.transactionId' diff --git a/server/src/models/SaleInvoiceEntry.js b/server/src/models/SaleInvoiceEntry.js index 6d258b45f..0d081bdb2 100644 --- a/server/src/models/SaleInvoiceEntry.js +++ b/server/src/models/SaleInvoiceEntry.js @@ -18,7 +18,7 @@ export default class SaleInvoiceEntry extends TenantModel { return { saleInvoice: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(SaleInvoice.default), + modelClass: SaleInvoice.default, join: { from: 'sales_invoices_entries.sale_invoice_id', to: 'sales_invoices.id', diff --git a/server/src/models/SaleReceipt.js b/server/src/models/SaleReceipt.js index 732636851..9b05cda29 100644 --- a/server/src/models/SaleReceipt.js +++ b/server/src/models/SaleReceipt.js @@ -28,7 +28,7 @@ export default class SaleReceipt extends TenantModel { return { customer: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Customer.default), + modelClass: Customer.default, join: { from: 'sales_receipts.customerId', to: 'customers.id', @@ -37,7 +37,7 @@ export default class SaleReceipt extends TenantModel { depositAccount: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Account.default), + modelClass: Account.default, join: { from: 'sales_receipts.depositAccountId', to: 'accounts.id', @@ -46,7 +46,7 @@ export default class SaleReceipt extends TenantModel { entries: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(ItemEntry.default), + modelClass: ItemEntry.default, join: { from: 'sales_receipts.id', to: 'items_entries.referenceId', @@ -58,7 +58,7 @@ export default class SaleReceipt extends TenantModel { transactions: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(AccountTransaction.default), + modelClass: AccountTransaction.default, join: { from: 'sales_receipts.id', to: 'accounts_transactions.referenceId' diff --git a/server/src/models/SaleReceiptEntry.js b/server/src/models/SaleReceiptEntry.js index ce08e0159..1d0f55b5f 100644 --- a/server/src/models/SaleReceiptEntry.js +++ b/server/src/models/SaleReceiptEntry.js @@ -18,7 +18,7 @@ export default class SaleReceiptEntry extends TenantModel { return { saleReceipt: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(SaleReceipt.default), + modelClass: SaleReceipt.default, join: { from: 'sales_receipt_entries.sale_receipt_id', to: 'sales_receipts.id', diff --git a/server/src/models/View.js b/server/src/models/View.js index 4eb330084..2745326fd 100644 --- a/server/src/models/View.js +++ b/server/src/models/View.js @@ -49,7 +49,7 @@ export default class View extends TenantModel { */ columns: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(ViewColumn.default), + modelClass: ViewColumn.default, join: { from: 'views.id', to: 'view_has_columns.viewId', @@ -61,7 +61,7 @@ export default class View extends TenantModel { */ roles: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(ViewRole.default), + modelClass: ViewRole.default, join: { from: 'views.id', to: 'view_roles.viewId', diff --git a/server/src/models/ViewRole.js b/server/src/models/ViewRole.js index aa9283777..24fe1f0da 100644 --- a/server/src/models/ViewRole.js +++ b/server/src/models/ViewRole.js @@ -35,7 +35,7 @@ export default class ViewRole extends TenantModel { */ view: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(View.default), + modelClass: View.default, join: { from: 'view_roles.viewId', to: 'views.id', diff --git a/server/src/system/models/Subscriptions/PlanSubscription.js b/server/src/system/models/Subscriptions/PlanSubscription.js index dbbbaa8ce..a98cf8b10 100644 --- a/server/src/system/models/Subscriptions/PlanSubscription.js +++ b/server/src/system/models/Subscriptions/PlanSubscription.js @@ -76,7 +76,7 @@ export default class PlanSubscription extends mixin(SystemModel) { */ tenant: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Tenant.default), + modelClass: Tenant.default, join: { from: 'subscription_plan_subscriptions.tenantId', to: 'tenants.id' @@ -88,7 +88,7 @@ export default class PlanSubscription extends mixin(SystemModel) { */ plan: { relation: Model.BelongsToOneRelation, - modelClass: this.relationBindKnex(Plan.default), + modelClass: Plan.default, join: { from: 'subscription_plan_subscriptions.planId', to: 'subscription_plans.id', diff --git a/server/src/system/models/Tenant.js b/server/src/system/models/Tenant.js index dfc738387..701597109 100644 --- a/server/src/system/models/Tenant.js +++ b/server/src/system/models/Tenant.js @@ -37,7 +37,7 @@ export default class Tenant extends BaseModel { return { subscriptions: { relation: Model.HasManyRelation, - modelClass: this.relationBindKnex(PlanSubscription.default), + modelClass: PlanSubscription.default, join: { from: 'tenants.id', to: 'subscription_plan_subscriptions.tenantId',