- feat: Sales estimates APIs.

- feat: Sales invoices APIs.
- feat: Sales receipts APIs.
- WIP: Sales payment receipts.
- WIP: Purchases bills.
- WIP: Purchases payments made.
This commit is contained in:
Ahmed Bouhuolia
2020-07-22 02:03:12 +02:00
parent 9d9c7c1568
commit 56278a25f0
83 changed files with 5330 additions and 76 deletions

View File

@@ -0,0 +1,46 @@
import { Model, mixin } from 'objection';
import moment from 'moment';
import TenantModel from '@/models/TenantModel';
import CachableQueryBuilder from '@/lib/Cachable/CachableQueryBuilder';
import CachableModel from '@/lib/Cachable/CachableModel';
export default class PaymentReceive extends mixin(TenantModel, [CachableModel]) {
/**
* Table name
*/
static get tableName() {
return 'payment_receives';
}
/**
* Timestamps columns.
*/
get timestamps() {
return ['created_at', 'updated_at'];
}
/**
* Extend query builder model.
*/
static get QueryBuilder() {
return CachableQueryBuilder;
}
/**
* Relationship mapping.
*/
static get relationMappings() {
const PaymentReceiveEntry = require('@/models/PaymentReceiveEntry');
return {
entries: {
relation: Model.HasManyRelation,
modelClass: this.relationBindKnex(PaymentReceiveEntry.default),
join: {
from: 'payment_receives.id',
to: 'payment_receives_entries.payment_receive_id',
},
},
};
}
}