mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-18 05:40:31 +00:00
118 lines
2.6 KiB
TypeScript
118 lines
2.6 KiB
TypeScript
import { IFilterRole } from '@/modules/DynamicListing/DynamicFilter/DynamicFilter.types';
|
|
import { Knex } from 'knex';
|
|
import { Expense } from '../models/Expense.model';
|
|
|
|
// import { AttachmentLinkDTO } from '../Attachments/Attachments';
|
|
|
|
export interface IPaginationMeta {
|
|
total: number;
|
|
page: number;
|
|
pageSize: number;
|
|
}
|
|
|
|
export interface IExpensesFilter {
|
|
page: number;
|
|
pageSize: number;
|
|
filterRoles?: IFilterRole[];
|
|
columnSortBy: string;
|
|
sortOrder: string;
|
|
viewSlug?: string;
|
|
filterQuery?: (query: any) => void;
|
|
}
|
|
|
|
export interface IExpenseCommonDTO {
|
|
currencyCode: string;
|
|
exchangeRate?: number;
|
|
description?: string;
|
|
paymentAccountId: number;
|
|
peyeeId?: number;
|
|
referenceNo?: string;
|
|
publish: boolean;
|
|
userId: number;
|
|
paymentDate: Date;
|
|
payeeId: number;
|
|
categories: IExpenseCategoryDTO[];
|
|
|
|
branchId?: number;
|
|
// attachments?: AttachmentLinkDTO[];
|
|
}
|
|
|
|
export interface IExpenseCreateDTO extends IExpenseCommonDTO {}
|
|
export interface IExpenseEditDTO extends IExpenseCommonDTO {}
|
|
|
|
export interface IExpenseCategoryDTO {
|
|
id?: number;
|
|
expenseAccountId: number;
|
|
index: number;
|
|
amount: number;
|
|
description?: string;
|
|
expenseId: number;
|
|
landedCost?: boolean;
|
|
projectId?: number;
|
|
}
|
|
|
|
export interface IExpenseCreatingPayload {
|
|
trx: Knex.Transaction;
|
|
tenantId: number;
|
|
expenseDTO: IExpenseCreateDTO;
|
|
}
|
|
|
|
export interface IExpenseEventEditingPayload {
|
|
tenantId: number;
|
|
oldExpense: Expense;
|
|
expenseDTO: IExpenseEditDTO;
|
|
trx: Knex.Transaction;
|
|
}
|
|
export interface IExpenseCreatedPayload {
|
|
tenantId: number;
|
|
expenseId: number;
|
|
// authorizedUser: ISystemUser;
|
|
expense: Expense;
|
|
expenseDTO: IExpenseCreateDTO;
|
|
trx: Knex.Transaction;
|
|
}
|
|
|
|
export interface IExpenseEventEditPayload {
|
|
tenantId: number;
|
|
expenseId: number;
|
|
expense: Expense;
|
|
expenseDTO: IExpenseEditDTO;
|
|
// authorizedUser: ISystemUser;
|
|
oldExpense: Expense;
|
|
trx: Knex.Transaction;
|
|
}
|
|
|
|
export interface IExpenseEventDeletePayload {
|
|
tenantId: number;
|
|
expenseId: number;
|
|
// authorizedUser: ISystemUser;
|
|
oldExpense: Expense;
|
|
trx: Knex.Transaction;
|
|
}
|
|
|
|
export interface IExpenseDeletingPayload {
|
|
trx: Knex.Transaction;
|
|
tenantId: number;
|
|
oldExpense: Expense;
|
|
}
|
|
export interface IExpenseEventPublishedPayload {
|
|
tenantId: number;
|
|
expenseId: number;
|
|
oldExpense: Expense;
|
|
expense: Expense;
|
|
// authorizedUser: ISystemUser;
|
|
trx: Knex.Transaction;
|
|
}
|
|
|
|
export interface IExpensePublishingPayload {
|
|
trx: Knex.Transaction;
|
|
oldExpense: Expense;
|
|
tenantId: number;
|
|
}
|
|
export enum ExpenseAction {
|
|
Create = 'Create',
|
|
Edit = 'Edit',
|
|
Delete = 'Delete',
|
|
View = 'View',
|
|
}
|