mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-19 06:10:31 +00:00
feat: payment made form in new and edit mode.
This commit is contained in:
@@ -489,7 +489,7 @@ export default class BillPaymentsService {
|
||||
* @return {object}
|
||||
*/
|
||||
public async getBillPayment(tenantId: number, billPaymentId: number) {
|
||||
const { BillPayment } = this.tenancy.models(tenantId);
|
||||
const { BillPayment, Bill } = this.tenancy.models(tenantId);
|
||||
const billPayment = await BillPayment.query()
|
||||
.findById(billPaymentId)
|
||||
.withGraphFetched('entries')
|
||||
@@ -499,7 +499,16 @@ export default class BillPaymentsService {
|
||||
if (!billPayment) {
|
||||
throw new ServiceError(ERRORS.PAYMENT_MADE_NOT_FOUND);
|
||||
}
|
||||
return billPayment;
|
||||
|
||||
const payableBills = await Bill.query().onBuild((builder) => {
|
||||
const billsIds = billPayment.entries.map((entry) => entry.billId);
|
||||
|
||||
builder.where('vendor_id', billPayment.vendorId);
|
||||
builder.orWhereIn('id', billsIds);
|
||||
builder.orderByRaw(`FIELD(id, ${billsIds.join(', ')}) DESC`);
|
||||
builder.orderBy('bill_date', 'ASC');
|
||||
})
|
||||
return { billPayment, payableBills };
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { omit, sumBy, pick, difference } from 'lodash';
|
||||
import { omit, sumBy, pick, difference, assignWith } from 'lodash';
|
||||
import moment from 'moment';
|
||||
import { Inject, Service } from 'typedi';
|
||||
import {
|
||||
@@ -23,11 +23,13 @@ import {
|
||||
IPaginationMeta,
|
||||
IFilterMeta,
|
||||
IBillsFilter,
|
||||
IBillPaymentEntry,
|
||||
} from 'interfaces';
|
||||
import { ServiceError } from 'exceptions';
|
||||
import ItemsService from 'services/Items/ItemsService';
|
||||
import ItemsEntriesService from 'services/Items/ItemsEntriesService';
|
||||
import { Bill } from 'models';
|
||||
import PaymentMadesSubscriber from 'subscribers/paymentMades';
|
||||
|
||||
const ERRORS = {
|
||||
BILL_NOT_FOUND: 'BILL_NOT_FOUND',
|
||||
@@ -428,6 +430,7 @@ export default class BillsService extends SalesInvoicesCost {
|
||||
const { Bill } = this.tenancy.models(tenantId);
|
||||
|
||||
const dueBills = await Bill.query().onBuild((query) => {
|
||||
query.orderBy('bill_date', 'DESC');
|
||||
query.modify('dueBills');
|
||||
|
||||
if (vendorId) {
|
||||
|
||||
@@ -413,7 +413,7 @@ export default class SaleInvoicesService extends SalesInvoicesCost {
|
||||
* @param {number} tenantId
|
||||
* @param {number} customerId
|
||||
*/
|
||||
public async getDueInvoices(
|
||||
public async getPayableInvoices(
|
||||
tenantId: number,
|
||||
customerId?: number,
|
||||
): Promise<ISaleInvoice> {
|
||||
|
||||
Reference in New Issue
Block a user