fix(Setup): fix seed setup settings to the storage.

This commit is contained in:
a.bouhuolia
2021-03-21 16:26:26 +02:00
parent 54958eb18b
commit ad50da4214
7 changed files with 47 additions and 23 deletions

View File

@@ -11,17 +11,17 @@ exports.up = (knex) => {
// Inserts seed entries
return knex('views').insert([
// Accounts.
{ id: 15, name: i18n.__('Inactive'), roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 1, name: i18n.__('Assets'), roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 2, name: i18n.__('Liabilities'), roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 3, name: i18n.__('Equity'), roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 4, name: i18n.__('Income'), roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ id: 5, name: i18n.__('Expenses'), roles_logic_expression: '1', resource_model: 'Account', predefined: true },
{ 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'), roles_logic_expression: '1', resource_model: 'Item', predefined: true },
{ id: 7, name: i18n.__('Inventory'), roles_logic_expression: '1', resource_model: 'Item', predefined: true },
{ id: 8, name: i18n.__('Non-Inventory'), roles_logic_expression: '1', resource_model: 'Item', predefined: true },
{ 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 },
@@ -29,9 +29,8 @@ exports.up = (knex) => {
{ id: 11, name: i18n.__('Reconciliation'), roles_logic_expression: '1', resource_model: 'ManualJournal', predefined: true },
// Expenses.
{ id: 12, name: i18n.__('Interest'), roles_logic_expression: '1', resource_model: 'Expense', predefined: false, },
{ id: 13, name: i18n.__('Depreciation'), roles_logic_expression: '1', resource_model: 'Expense', predefined: false, },
{ id: 14, name: i18n.__('Payroll'), roles_logic_expression: '1', resource_model: 'Expense', predefined: false },
{ 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: 'Draft', slug: 'draft', roles_logic_expression: '1', resource_model: 'SaleInvoice', predefined: true, },

View File

@@ -18,6 +18,10 @@ exports.up = (knex) => {
{ 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 },

View File

@@ -104,7 +104,7 @@ export default class MetableStore implements IMetableStore {
const metadata = query;
metadata.forEach((meta: IMetadata) => {
this.set(meta.key, meta.value);
this.set(meta);
});
return;
}

View File

@@ -79,6 +79,14 @@ export default class Expense extends TenantModel {
viewRolesBuilder(query, conditionals, expression) {
viewRolesBuilder(conditionals, expression)(query);
},
filterByDraft(query) {
query.where('published_at', null);
},
filterByPublished(query) {
query.whereNot('published_at', null);
},
};
}
@@ -165,6 +173,26 @@ export default class Expense extends TenantModel {
label: "Published",
column: "published_at",
},
status: {
label: 'Status',
options: [
{ key: 'draft', label: 'Draft' },
{ key: 'published', label: 'Published' },
],
query: (query, role) => {
switch (role.value) {
case 'draft':
query.modify('filterByDraft');
break;
case 'published':
query.modify('filterByPublished');
break;
}
},
sortQuery(query, role) {
query.modify('sortByStatus', role.order);
},
},
created_at: {
label: "Created at",
column: "created_at",

View File

@@ -566,6 +566,7 @@ export default class ItemsService implements IItemsService {
dynamicFilter.buildQuery()(builder);
})
.pagination(itemsFilter.page - 1, itemsFilter.pageSize);
return {
items: results,
pagination,

View File

@@ -52,9 +52,8 @@ export default class SetupService {
const settings = this.tenancy.settings(tenantId);
// Can't continue if app is already configured.
if (settings.get('app_configured')) {
return;
}
if (settings.get('app_configured')) { return; }
settings.set([
...this.transformSetupDTOToOptions(organizationSetupDTO)
.filter((option) => typeof option.value !== 'undefined')

View File

@@ -11,12 +11,9 @@ exports.seed = (knex) => {
price: 0,
active: true,
currency: 'LYD',
trial_period: 7,
trial_interval: 'days',
index: 1,
voucher_required: true,
},
{
name: 'Starter',
@@ -24,10 +21,8 @@ exports.seed = (knex) => {
price: 500,
active: true,
currency: 'LYD',
invoice_period: 12,
invoice_interval: 'month',
index: 2,
},
{
@@ -36,10 +31,8 @@ exports.seed = (knex) => {
price: 1000,
active: true,
currency: 'LYD',
invoice_period: 12,
invoice_interval: 'month',
index: 3,
},
]);