feat: remove path alias.

feat: remove Webpack and depend on nodemon.
feat: refactoring expenses.
feat: optimize system users with caching.
feat: architecture tenant optimize.
This commit is contained in:
Ahmed Bouhuolia
2020-09-15 00:51:39 +02:00
parent ad00f140d1
commit a22c8395f3
293 changed files with 3391 additions and 1637 deletions

View File

@@ -1,13 +1,13 @@
/* eslint-disable global-require */
import { Model } from 'objection';
import { flatten } from 'lodash';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
import {
buildFilterQuery,
buildSortColumnQuery,
} from '@/lib/ViewRolesBuilder';
import { flatToNestedArray } from '@/utils';
import DependencyGraph from '@/lib/DependencyGraph';
} from 'lib/ViewRolesBuilder';
import { flatToNestedArray } from 'utils';
import DependencyGraph from 'lib/DependencyGraph';
export default class Account extends TenantModel {
/**
@@ -54,8 +54,8 @@ export default class Account extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const AccountType = require('@/models/AccountType');
const AccountTransaction = require('@/models/AccountTransaction');
const AccountType = require('models/AccountType');
const AccountTransaction = require('models/AccountTransaction');
return {
/**

View File

@@ -1,6 +1,6 @@
import { Model } from 'objection';
import moment from 'moment';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class AccountTransaction extends TenantModel {
/**
@@ -83,7 +83,7 @@ export default class AccountTransaction extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Account = require('@/models/Account');
const Account = require('models/Account');
return {
account: {

View File

@@ -1,6 +1,6 @@
// import path from 'path';
import { Model, mixin } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class AccountType extends TenantModel {
/**
@@ -14,7 +14,7 @@ export default class AccountType extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Account = require('@/models/Account');
const Account = require('models/Account');
return {
/**

View File

@@ -1,6 +1,6 @@
import { Model } from 'objection';
import { difference } from 'lodash';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class Bill extends TenantModel {
/**
@@ -36,8 +36,8 @@ export default class Bill extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Vendor = require('@/models/Vendor');
const ItemEntry = require('@/models/ItemEntry');
const Vendor = require('models/Vendor');
const ItemEntry = require('models/ItemEntry');
return {
vendor: {

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class BillPayment extends TenantModel {
/**
@@ -20,10 +20,10 @@ export default class BillPayment extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const BillPaymentEntry = require('@/models/BillPaymentEntry');
const AccountTransaction = require('@/models/AccountTransaction');
const Vendor = require('@/models/Vendor');
const Account = require('@/models/Account');
const BillPaymentEntry = require('models/BillPaymentEntry');
const AccountTransaction = require('models/AccountTransaction');
const Vendor = require('models/Vendor');
const Account = require('models/Account');
return {
entries: {

View File

@@ -1,5 +1,5 @@
import { mixin } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class BillPaymentEntry extends TenantModel {
/**

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class Contact extends TenantModel {
/**
@@ -39,8 +39,8 @@ export default class Contact extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const SaleInvoice = require('@/models/SaleInvoice');
const Bill = require('@/models/Bill');
const SaleInvoice = require('models/SaleInvoice');
const Bill = require('models/Bill');
return {
salesInvoices: {

View File

@@ -1,4 +1,4 @@
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class Currency extends TenantModel {
/**

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class Customer extends TenantModel {
/**

View File

@@ -1,6 +1,6 @@
import bcrypt from 'bcryptjs';
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class ExchangeRate extends TenantModel {
/**

View File

@@ -1,6 +1,6 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import { viewRolesBuilder } from '@/lib/ViewRolesBuilder';
import TenantModel from 'models/TenantModel';
import { viewRolesBuilder } from 'lib/ViewRolesBuilder';
export default class Expense extends TenantModel {
/**
@@ -70,9 +70,9 @@ export default class Expense extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Account = require('@/models/Account');
const User = require('@/models/TenantUser');
const ExpenseCategory = require('@/models/ExpenseCategory');
const Account = require('models/Account');
const User = require('models/TenantUser');
const ExpenseCategory = require('models/ExpenseCategory');
return {
paymentAccount: {

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class ExpenseCategory extends TenantModel {
/**
@@ -13,7 +13,7 @@ export default class ExpenseCategory extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Account = require('@/models/Account');
const Account = require('models/Account');
return {
expenseAccount: {

View File

@@ -1,6 +1,6 @@
import { Model } from 'objection';
import moment from 'moment';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class InventoryCostLotTracker extends TenantModel {
/**
@@ -52,7 +52,7 @@ export default class InventoryCostLotTracker extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Item = require('@/models/Item');
const Item = require('models/Item');
return {
item: {

View File

@@ -1,6 +1,6 @@
import { Model } from 'objection';
import moment from 'moment';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class InventoryTransaction extends TenantModel {
/**
@@ -41,7 +41,7 @@ export default class InventoryTransaction extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Item = require('@/models/Item');
const Item = require('models/Item');
return {
item: {

View File

@@ -1,8 +1,8 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
import {
buildFilterQuery,
} from '@/lib/ViewRolesBuilder';
} from 'lib/ViewRolesBuilder';
export default class Item extends TenantModel {
/**
@@ -39,9 +39,9 @@ export default class Item extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Media = require('@/models/Media');
const Account = require('@/models/Account');
const ItemCategory = require('@/models/ItemCategory');
const Media = require('models/Media');
const Account = require('models/Account');
const ItemCategory = require('models/ItemCategory');
return {
/**

View File

@@ -1,6 +1,6 @@
import path from 'path';
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class ItemCategory extends TenantModel {
/**
@@ -14,7 +14,7 @@ export default class ItemCategory extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Item = require('@/models/Item');
const Item = require('models/Item');
return {
/**

View File

@@ -1,6 +1,6 @@
import path from 'path';
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class ItemEntry extends TenantModel {
/**
@@ -33,7 +33,7 @@ export default class ItemEntry extends TenantModel {
}
static get relationMappings() {
const Item = require('@/models/Item');
const Item = require('models/Item');
return {
item: {

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class ManualJournal extends TenantModel {
/**
@@ -20,7 +20,7 @@ export default class ManualJournal extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Media = require('@/models/Media');
const Media = require('models/Media');
return {
media: {

View File

@@ -1,4 +1,4 @@
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class Media extends TenantModel {
/**

View File

@@ -1,4 +1,4 @@
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class MediaLink extends TenantModel {
/**

View File

@@ -1,4 +1,4 @@
import knex from '@/database/knex';
import knex from 'database/knex';
// import cache from 'memory-cache';
// Metadata

View File

@@ -1,8 +1,8 @@
import { Model, mixin } from 'objection';
import { snakeCase, each } from 'lodash';
import { mapKeysDeep } from '@/utils';
import PaginationQueryBuilder from '@/models/Pagination';
import DateSession from '@/models/DateSession';
import { mapKeysDeep } from 'utils';
import PaginationQueryBuilder from 'models/Pagination';
import DateSession from 'models/DateSession';
export default class ModelBase extends mixin(Model, [DateSession]) {

View File

@@ -1,5 +1,5 @@
import TenantModel from '@/models/TenantModel';
import definedOptions from '@/data/options';
import TenantModel from 'models/TenantModel';
import definedOptions from 'data/options';
export default class Option extends TenantModel {

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class PaymentReceive extends TenantModel {
/**
@@ -20,10 +20,10 @@ export default class PaymentReceive extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const PaymentReceiveEntry = require('@/models/PaymentReceiveEntry');
const AccountTransaction = require('@/models/AccountTransaction');
const Customer = require('@/models/Customer');
const Account = require('@/models/Account');
const PaymentReceiveEntry = require('models/PaymentReceiveEntry');
const AccountTransaction = require('models/AccountTransaction');
const Customer = require('models/Customer');
const Account = require('models/Account');
return {
customer: {

View File

@@ -1,5 +1,5 @@
import { Model, mixin } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class PaymentReceiveEntry extends TenantModel {
/**
@@ -20,8 +20,8 @@ export default class PaymentReceiveEntry extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const PaymentReceive = require('@/models/PaymentReceive');
const SaleInvoice = require('@/models/SaleInvoice');
const PaymentReceive = require('models/PaymentReceive');
const SaleInvoice = require('models/SaleInvoice');
return {
/**

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class Resource extends TenantModel {
/**
@@ -20,8 +20,8 @@ export default class Resource extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const View = require('@/models/View');
const ResourceField = require('@/models/ResourceField');
const View = require('models/View');
const ResourceField = require('models/ResourceField');
return {
/**

View File

@@ -1,7 +1,7 @@
import { snakeCase } from 'lodash';
import { Model } from 'objection';
import path from 'path';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class ResourceField extends TenantModel {
/**
@@ -51,7 +51,7 @@ export default class ResourceField extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Resource = require('@/models/Resource');
const Resource = require('models/Resource');
return {
/**

View File

@@ -1,4 +1,4 @@
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class ResourceFieldMetadata extends TenantModel {
/**

View File

@@ -1,5 +1,5 @@
import { Model, mixin } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class SaleEstimate extends TenantModel {
/**
@@ -20,8 +20,8 @@ export default class SaleEstimate extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const ItemEntry = require('@/models/ItemEntry');
const Customer = require('@/models/Customer');
const ItemEntry = require('models/ItemEntry');
const Customer = require('models/Customer');
return {
customer: {

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class SaleEstimateEntry extends TenantModel {
@@ -14,7 +14,7 @@ export default class SaleEstimateEntry extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const SaleEstimate = require('@/models/SaleEstimate');
const SaleEstimate = require('models/SaleEstimate');
return {
estimate: {

View File

@@ -1,6 +1,6 @@
import { Model, mixin } from 'objection';
import moment from 'moment';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class SaleInvoice extends TenantModel {
/**
@@ -55,10 +55,10 @@ export default class SaleInvoice extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const AccountTransaction = require('@/models/AccountTransaction');
const ItemEntry = require('@/models/ItemEntry');
const Customer = require('@/models/Customer');
const InventoryCostLotTracker = require('@/models/InventoryCostLotTracker');
const AccountTransaction = require('models/AccountTransaction');
const ItemEntry = require('models/ItemEntry');
const Customer = require('models/Customer');
const InventoryCostLotTracker = require('models/InventoryCostLotTracker');
return {
entries: {

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class SaleInvoiceEntry extends TenantModel {
/**
@@ -13,7 +13,7 @@ export default class SaleInvoiceEntry extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const SaleInvoice = require('@/models/SaleInvoice');
const SaleInvoice = require('models/SaleInvoice');
return {
saleInvoice: {

View File

@@ -1,5 +1,5 @@
import { Model, mixin } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class SaleReceipt extends TenantModel {
/**
@@ -20,10 +20,10 @@ export default class SaleReceipt extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Customer = require('@/models/Customer');
const Account = require('@/models/Account');
const AccountTransaction = require('@/models/AccountTransaction');
const ItemEntry = require('@/models/ItemEntry');
const Customer = require('models/Customer');
const Account = require('models/Account');
const AccountTransaction = require('models/AccountTransaction');
const ItemEntry = require('models/ItemEntry');
return {
customer: {

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class SaleReceiptEntry extends TenantModel {
/**
@@ -13,7 +13,7 @@ export default class SaleReceiptEntry extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const SaleReceipt = require('@/models/SaleReceipt');
const SaleReceipt = require('models/SaleReceipt');
return {
saleReceipt: {

View File

@@ -1,4 +1,4 @@
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
import Auth from './Auth';
export default class Setting extends TenantModel {

View File

@@ -1,4 +1,4 @@
import BaseModel from '@/models/Model';
import BaseModel from 'models/Model';
export default class TenantModel extends BaseModel {

View File

@@ -1,5 +1,5 @@
import bcrypt from 'bcryptjs';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class TenantUser extends TenantModel {
/**

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class Vendor extends TenantModel {
/**

View File

@@ -1,5 +1,5 @@
import { Model, mixin } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class View extends TenantModel {
/**
@@ -40,9 +40,9 @@ export default class View extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Resource = require('@/models/Resource');
const ViewColumn = require('@/models/ViewColumn');
const ViewRole = require('@/models/ViewRole');
const Resource = require('models/Resource');
const ViewColumn = require('models/ViewColumn');
const ViewRole = require('models/ViewRole');
return {
/**

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class ViewColumn extends TenantModel {
/**
@@ -13,7 +13,7 @@ export default class ViewColumn extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const ResourceField = require('@/models/ResourceField');
const ResourceField = require('models/ResourceField');
return {
/**

View File

@@ -1,5 +1,5 @@
import { Model } from 'objection';
import TenantModel from '@/models/TenantModel';
import TenantModel from 'models/TenantModel';
export default class ViewRole extends TenantModel {
@@ -27,8 +27,8 @@ export default class ViewRole extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const ResourceField = require('@/models/ResourceField');
const View = require('@/models/View');
const ResourceField = require('models/ResourceField');
const View = require('models/View');
return {
/**