Fix :Forms Floating Actions.

This commit is contained in:
elforjani3
2020-11-25 23:05:37 +02:00
parent 7c16cb2b24
commit 33827f8ed2
8 changed files with 73 additions and 66 deletions

View File

@@ -1,28 +1,28 @@
import { Model } from 'objection';
import TenantModel from 'models/TenantModel';
import { viewRolesBuilder } from 'lib/ViewRolesBuilder';
import Media from './Media';
import { Model } from "objection";
import TenantModel from "models/TenantModel";
import { viewRolesBuilder } from "lib/ViewRolesBuilder";
import Media from "./Media";
export default class Expense extends TenantModel {
/**
* Table name
*/
static get tableName() {
return 'expenses_transactions';
return "expenses_transactions";
}
/**
* Account transaction reference type.
*/
static get referenceType() {
return 'Expense';
return "Expense";
}
/**
* Model timestamps.
*/
get timestamps() {
return ['createdAt', 'updatedAt'];
return ["createdAt", "updatedAt"];
}
/**
@@ -33,11 +33,18 @@ export default class Expense extends TenantModel {
}
/**
*
*
*/
static get media () {
static get media() {
return true;
}
static get virtualAttributes() {
return ["isPublished"];
}
isPublished() {
return Boolean(this.publishedAt);
}
/**
* Model modifiers.
@@ -46,28 +53,28 @@ export default class Expense extends TenantModel {
return {
filterByDateRange(query, startDate, endDate) {
if (startDate) {
query.where('date', '>=', startDate);
query.where("date", ">=", startDate);
}
if (endDate) {
query.where('date', '<=', endDate);
query.where("date", "<=", endDate);
}
},
filterByAmountRange(query, from, to) {
if (from) {
query.where('amount', '>=', from);
query.where("amount", ">=", from);
}
if (to) {
query.where('amount', '<=', to);
query.where("amount", "<=", to);
}
},
filterByExpenseAccount(query, accountId) {
if (accountId) {
query.where('expense_account_id', accountId);
query.where("expense_account_id", accountId);
}
},
filterByPaymentAccount(query, accountId) {
if (accountId) {
query.where('payment_account_id', accountId);
query.where("payment_account_id", accountId);
}
},
viewRolesBuilder(query, conditionals, expression) {
@@ -80,41 +87,41 @@ export default class Expense extends TenantModel {
* Relationship mapping.
*/
static get relationMappings() {
const Account = require('models/Account');
const ExpenseCategory = require('models/ExpenseCategory');
const Media = require('models/Media');
const Account = require("models/Account");
const ExpenseCategory = require("models/ExpenseCategory");
const Media = require("models/Media");
return {
paymentAccount: {
relation: Model.BelongsToOneRelation,
modelClass: Account.default,
join: {
from: 'expenses_transactions.paymentAccountId',
to: 'accounts.id',
from: "expenses_transactions.paymentAccountId",
to: "accounts.id",
},
},
categories: {
relation: Model.HasManyRelation,
modelClass: ExpenseCategory.default,
join: {
from: 'expenses_transactions.id',
to: 'expense_transaction_categories.expenseId',
from: "expenses_transactions.id",
to: "expense_transaction_categories.expenseId",
},
},
media: {
relation: Model.ManyToManyRelation,
modelClass: Media.default,
join: {
from: 'expenses_transactions.id',
from: "expenses_transactions.id",
through: {
from: 'media_links.model_id',
to: 'media_links.media_id',
from: "media_links.model_id",
to: "media_links.media_id",
},
to: 'media.id',
to: "media.id",
},
filter(query) {
query.where('model_name', 'Expense');
}
query.where("model_name", "Expense");
},
},
};
}
@@ -125,51 +132,50 @@ export default class Expense extends TenantModel {
static get fields() {
return {
payment_date: {
label: 'Payment date',
column: 'payment_date',
columnType: 'date',
label: "Payment date",
column: "payment_date",
columnType: "date",
},
payment_account: {
label: 'Payment account',
column: 'payment_account_id',
relation: 'accounts.id',
optionsResource: 'account',
label: "Payment account",
column: "payment_account_id",
relation: "accounts.id",
optionsResource: "account",
},
amount: {
label: 'Amount',
column: 'total_amount',
columnType: 'number'
label: "Amount",
column: "total_amount",
columnType: "number",
},
currency_code: {
label: 'Currency',
column: 'currency_code',
optionsResource: 'currency',
label: "Currency",
column: "currency_code",
optionsResource: "currency",
},
reference_no: {
label: 'Reference No.',
column: 'reference_no',
columnType: 'string',
label: "Reference No.",
column: "reference_no",
columnType: "string",
},
description: {
label: 'Description',
column: 'description',
columnType: 'string',
label: "Description",
column: "description",
columnType: "string",
},
published: {
label: 'Published',
column: 'published',
label: "Published",
column: "published",
},
user: {
label: 'User',
column: 'user_id',
relation: 'users.id',
relationColumn: 'users.id',
label: "User",
column: "user_id",
relation: "users.id",
relationColumn: "users.id",
},
created_at: {
label: 'Created at',
column: 'created_at',
columnType: 'date',
label: "Created at",
column: "created_at",
columnType: "date",
},
};
}