feat: services quick search.

This commit is contained in:
a.bouhuolia
2021-08-07 20:37:11 +02:00
parent fad9052da8
commit 1b90610cec
39 changed files with 380 additions and 204 deletions

View File

@@ -1,81 +0,0 @@
import Container from 'typedi';
import TenancyService from 'services/Tenancy/TenancyService';
exports.up = (knex) => {
const tenancyService = Container.get(TenancyService);
const i18n = tenancyService.i18n(knex.userParams.tenantId);
// Deletes ALL existing entries
return knex('views').del()
.then(() => {
// Inserts seed entries
return knex('views').insert([
// Accounts.
{ id: 15, name: i18n.__('Inactive'), slug: 'inactive', roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 1, name: i18n.__('Assets'), slug: 'assets', roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 2, name: i18n.__('Liabilities'), slug: 'liabilities', roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 3, name: i18n.__('Equity'), slug: 'equity', roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 4, name: i18n.__('Income'), slug: 'income', roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 5, name: i18n.__('Expenses'), slug: 'expenses', roles_logic_expression: '1', resource_model: 'Account', predefined: true },
// Items.
{ id: 6, name: i18n.__('Services'), slug: 'services', roles_logic_expression: '1', resource_model: 'Item', predefined: true },
{ id: 7, name: i18n.__('Inventory'), slug: 'inventory', roles_logic_expression: '1', resource_model: 'Item', predefined: true },
{ id: 8, name: i18n.__('Non-Inventory'), slug: 'non-inventory', roles_logic_expression: '1', resource_model: 'Item', predefined: true },
// Manual Journals
{ id: 9, name: i18n.__('Journal'), roles_logic_expression: '1', resource_model: 'ManualJournal', predefined: true },
{ id: 10, name: i18n.__('Credit'), roles_logic_expression: '1', resource_model: 'ManualJournal', predefined: true },
{ id: 11, name: i18n.__('Reconciliation'), roles_logic_expression: '1', resource_model: 'ManualJournal', predefined: true },
// Expenses.
{ id: 12, name: i18n.__('Draft'), slug: 'draft', roles_logic_expression: '1', resource_model: 'Expense', predefined: true, },
{ id: 13, name: i18n.__('Published'), slug: 'published', roles_logic_expression: '1', resource_model: 'Expense', predefined: true, },
// Sales invoices.
{ id: 16, name: i18n.__('Draft'), slug: 'draft', roles_logic_expression: '1', resource_model: 'SaleInvoice', predefined: true, },
{ id: 17, name: i18n.__('Delivered'), slug: 'delivered', roles_logic_expression: '1', resource_model: 'SaleInvoice', predefined: true },
{ id: 18, name: i18n.__('Unpaid'), slug: 'unpaid', roles_logic_expression: '1', resource_model: 'SaleInvoice', predefined: true },
{ id: 19, name: i18n.__('Overdue'), slug: 'overdue', roles_logic_expression: '1', resource_model: 'SaleInvoice', predefined: true },
{ id: 20, name: i18n.__('Partially paid'), slug: 'partially-paid', roles_logic_expression: '1', resource_model: 'SaleInvoice', predefined: true },
{ id: 21, name: i18n.__('Paid'), slug: 'paid', roles_logic_expression: '1', resource_model: 'SaleInvoice', predefined: true },
// Bills.
{ id: 22, name: i18n.__('Draft'), slug: 'draft', roles_logic_expression: '1', resource_model: 'Bill', predefined: true, },
{ id: 23, name: i18n.__('Opened'), slug: 'opened', roles_logic_expression: '1', resource_model: 'Bill', predefined: true },
{ id: 24, name: i18n.__('Unpaid'), slug: 'unpaid', roles_logic_expression: '1', resource_model: 'Bill', predefined: true },
{ id: 25, name: i18n.__('Overdue'), slug: 'overdue', roles_logic_expression: '1', resource_model: 'Bill', predefined: true },
{ id: 26, name: i18n.__('Partially paid'), slug: 'partially-paid', roles_logic_expression: '1', resource_model: 'Bill', predefined: true },
{ id: 27, name: i18n.__('Paid'), slug: 'paid', roles_logic_expression: '1', resource_model: 'Bill', predefined: true },
// Sale estimate.
{ id: 28, name: i18n.__('Draft'), slug: 'draft', roles_logic_expression: '1', resource_model: 'SaleEstimate', predefined: true },
{ id: 29, name: i18n.__('Delivered'), slug: 'delivered', roles_logic_expression: '1', resource_model: 'SaleEstimate', predefined: true },
{ id: 30, name: i18n.__('Approved'), slug: 'approved', roles_logic_expression: '1', resource_model: 'SaleEstimate', predefined: true },
{ id: 31, name: i18n.__('Rejected'), slug: 'rejected', roles_logic_expression: '1', resource_model: 'SaleEstimate', predefined: true },
{ id: 32, name: i18n.__('Invoiced'), slug: 'invoiced', roles_logic_expression: '1', resource_model: 'SaleEstimate', predefined: true },
{ id: 33, name: i18n.__('Expired'), slug: 'expired', roles_logic_expression: '1', resource_model: 'SaleEstimate', predefined: true },
// Sale receipts.
{ id: 34, name: i18n.__('Draft'), slug: 'draft', roles_logic_expression: '1', resource_model: 'SaleReceipt', predefined: true },
{ id: 35, name: i18n.__('Closed'), slug: 'closed', roles_logic_expression: '1', resource_model: 'SaleReceipt', predefined: true },
// Customers
{ id: 36, name: i18n.__('Active'), slug: 'active', roles_logic_expression: '1', resource_model: 'Customer', predefined: true },
{ id: 37, name: i18n.__('Inactive'), slug: 'inactive', roles_logic_expression: '1', resource_model: 'Customer', predefined: true },
{ id: 38, name: i18n.__('Overdue'), slug: 'overdue', roles_logic_expression: '1', resource_model: 'Customer', predefined: true },
{ id: 39, name: i18n.__('Unpaid'), slug: 'inpaid', roles_logic_expression: '1', resource_model: 'Customer', predefined: true },
// Vendors
{ id: 40, name: i18n.__('Active'), slug: 'active', roles_logic_expression: '1', resource_model: 'Vendor', predefined: true },
{ id: 41, name: i18n.__('Inactive'), slug: 'inactive', roles_logic_expression: '1', resource_model: 'Vendor', predefined: true },
{ id: 42, name: i18n.__('Overdue'), slug: 'overdue', roles_logic_expression: '1', resource_model: 'Vendor', predefined: true },
{ id: 43, name: i18n.__('Unpaid'), slug: 'overdue', roles_logic_expression: '1', resource_model: 'Vendor', predefined: true },
]);
});
};
exports.down = (knex) => {
};

View File

@@ -1,75 +0,0 @@
exports.up = (knex) => {
// Deletes ALL existing entries
return knex('view_roles').del()
.then(() => {
// Inserts seed entries
return knex('view_roles').insert([
// Accounts
{ field_key: 'root_type', index: 1, comparator: 'equals', value: 'asset', view_id: 1 },
{ field_key: 'root_type', index: 1, comparator: 'equals', value: 'liability', view_id: 2 },
{ field_key: 'root_type', index: 1, comparator: 'equals', value: 'equity', view_id: 3 },
{ field_key: 'root_type', index: 1, comparator: 'equals', value: 'income', view_id: 4 },
{ field_key: 'root_type', index: 1, comparator: 'equals', value: 'expense', view_id: 5 },
{ field_key: 'active', index: 1, comparator: 'is', value: 1, view_id: 15 },
// Items.
{ field_key: 'type', index: 1, comparator: 'equals', value: 'service', view_id: 6 },
{ field_key: 'type', index: 1, comparator: 'equals', value: 'inventory', view_id: 7 },
{ field_key: 'type', index: 1, comparator: 'equals', value: 'non-inventory', view_id: 8 },
// Expenses.
{ field_key: 'status', index: 1, comparator: 'equals', value: 'draft', view_id: 12 },
{ field_key: 'status', index: 1, comparator: 'equals', value: 'published', view_id: 13 },
// Manual Journals.
{ field_key: 'journal_type', index: 1, comparator: 'equals', value: 'Journal', view_id: 9 },
{ field_key: 'journal_type', index: 1, comparator: 'equals', value: 'CreditNote', view_id: 10 },
{ field_key: 'journal_type', index: 1, comparator: 'equals', value: 'Reconciliation', view_id: 11 },
// Sale invoice.
{ field_key: 'status', index: 1, comparator: 'is', value: 'draft', view_id: 16 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'delivered', view_id: 17 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'unpaid', view_id: 18 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'overdue', view_id: 19 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'partially-paid', view_id: 20 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'paid', view_id: 21 },
// Bills
{ field_key: 'status', index: 1, comparator: 'is', value: 'draft', view_id: 22 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'opened', view_id: 23 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'unpaid', view_id: 24 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'overdue', view_id: 25 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'partially-paid', view_id: 26 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'paid', view_id: 27 },
// Sale estimates
{ field_key: 'status', index: 1, comparator: 'is', value: 'draft', view_id: 28 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'delivered', view_id: 29 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'approved', view_id: 30 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'rejected', view_id: 31 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'invoiced', view_id: 32 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'expired', view_id: 33 },
// Sale receipts.
{ field_key: 'status', index: 1, comparator: 'is', value: 'draft', view_id: 34 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'closed', view_id: 35 },
// Customers
{ field_key: 'status', index: 1, comparator: 'is', value: 'active', view_id: 36 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'inactive', view_id: 37 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'overdue', view_id: 38 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'unpaid', view_id: 39 },
// Vendors
{ field_key: 'status', index: 1, comparator: 'is', value: 'active', view_id: 40 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'inactive', view_id: 41 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'overdue', view_id: 42 },
{ field_key: 'status', index: 1, comparator: 'is', value: 'unpaid', view_id: 43 },
]);
});
};
exports.down = (knex) => {
}