new schema and crud for invoice

This commit is contained in:
José Salazar
2025-11-25 14:12:19 -05:00
parent 174845eb24
commit 1bc052bd9d
18 changed files with 7228 additions and 3738 deletions

View File

@@ -39,6 +39,19 @@ export enum EventStatus {
CANCELED = "CANCELED",
};
export enum InvoiceStatus {
DRAFT = "DRAFT",
PENDING_REVIEW = "PENDING_REVIEW",
APPROVED = "APPROVED",
DISPUTED = "DISPUTED",
UNDER_REVIEW = "UNDER_REVIEW",
RESOLVED = "RESOLVED",
OVERDUE = "OVERDUE",
PAID = "PAID",
RECONCILED = "RECONCILED",
CANCELLED = "CANCELLED",
};
export enum RecurrenceType {
SINGLE = "SINGLE",
DATE_RANGE = "DATE_RANGE",
@@ -125,6 +138,20 @@ export interface CreateEventVariables {
assignedStaff?: string | null;
}
export interface CreateInvoiceData {
invoice_insert: Invoice_Key;
}
export interface CreateInvoiceVariables {
invoiceNumber: string;
amount: number;
status: InvoiceStatus;
issueDate: TimestampString;
dueDate: TimestampString;
disputedItems?: string | null;
isAutoGenerated?: boolean | null;
}
export interface CreateStaffData {
staff_insert: Staff_Key;
}
@@ -187,6 +214,14 @@ export interface DeleteEventVariables {
id: UUIDString;
}
export interface DeleteInvoiceData {
invoice_delete?: Invoice_Key | null;
}
export interface DeleteInvoiceVariables {
id: UUIDString;
}
export interface DeleteVendorData {
vendor_delete?: Vendor_Key | null;
}
@@ -271,6 +306,25 @@ export interface FilterEventsVariables {
clientEmail?: string | null;
}
export interface FilterInvoicesData {
invoices: ({
id: UUIDString;
invoiceNumber: string;
amount: number;
status: InvoiceStatus;
issueDate: TimestampString;
dueDate: TimestampString;
isAutoGenerated?: boolean | null;
} & Invoice_Key)[];
}
export interface FilterInvoicesVariables {
invoiceNumber?: string | null;
status?: InvoiceStatus | null;
isAutoGenerated?: boolean | null;
amount?: number | null;
}
export interface FilterVendorDefaultSettingsData {
vendorDefaultSettings: ({
id: UUIDString;
@@ -374,6 +428,23 @@ export interface GetEventByIdVariables {
id: UUIDString;
}
export interface GetInvoiceByIdData {
invoice?: {
id: UUIDString;
invoiceNumber: string;
amount: number;
status: InvoiceStatus;
issueDate: TimestampString;
dueDate: TimestampString;
disputedItems?: string | null;
isAutoGenerated?: boolean | null;
} & Invoice_Key;
}
export interface GetInvoiceByIdVariables {
id: UUIDString;
}
export interface GetVendorByIdData {
vendor?: {
id: UUIDString;
@@ -424,6 +495,11 @@ export interface GetVendorRateByIdVariables {
id: UUIDString;
}
export interface Invoice_Key {
id: UUIDString;
__typename?: 'Invoice_Key';
}
export interface ListEventsData {
events: ({
id: UUIDString;
@@ -464,6 +540,18 @@ export interface ListEventsData {
} & Event_Key)[];
}
export interface ListInvoiceData {
invoices: ({
id: UUIDString;
invoiceNumber: string;
amount: number;
status: InvoiceStatus;
issueDate: TimestampString;
dueDate: TimestampString;
isAutoGenerated?: boolean | null;
} & Invoice_Key)[];
}
export interface ListStaffData {
staffs: ({
id: UUIDString;
@@ -561,6 +649,21 @@ export interface UpdateEventVariables {
assignedStaff?: string | null;
}
export interface UpdateInvoiceData {
invoice_update?: Invoice_Key | null;
}
export interface UpdateInvoiceVariables {
id: UUIDString;
invoiceNumber?: string | null;
amount?: number | null;
status?: InvoiceStatus | null;
issueDate?: TimestampString | null;
dueDate?: TimestampString | null;
disputedItems?: string | null;
isAutoGenerated?: boolean | null;
}
export interface UpdateVendorData {
vendor_update?: Vendor_Key | null;
}
@@ -665,77 +768,41 @@ export const deleteVendorRef: DeleteVendorRef;
export function deleteVendor(vars: DeleteVendorVariables): MutationPromise<DeleteVendorData, DeleteVendorVariables>;
export function deleteVendor(dc: DataConnect, vars: DeleteVendorVariables): MutationPromise<DeleteVendorData, DeleteVendorVariables>;
interface CreateVendorRateRef {
interface ListVendorDefaultSettingsRef {
/* Allow users to create refs without passing in DataConnect */
(vars: CreateVendorRateVariables): MutationRef<CreateVendorRateData, CreateVendorRateVariables>;
(): QueryRef<ListVendorDefaultSettingsData, undefined>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: CreateVendorRateVariables): MutationRef<CreateVendorRateData, CreateVendorRateVariables>;
(dc: DataConnect): QueryRef<ListVendorDefaultSettingsData, undefined>;
operationName: string;
}
export const createVendorRateRef: CreateVendorRateRef;
export const listVendorDefaultSettingsRef: ListVendorDefaultSettingsRef;
export function createVendorRate(vars: CreateVendorRateVariables): MutationPromise<CreateVendorRateData, CreateVendorRateVariables>;
export function createVendorRate(dc: DataConnect, vars: CreateVendorRateVariables): MutationPromise<CreateVendorRateData, CreateVendorRateVariables>;
export function listVendorDefaultSettings(): QueryPromise<ListVendorDefaultSettingsData, undefined>;
export function listVendorDefaultSettings(dc: DataConnect): QueryPromise<ListVendorDefaultSettingsData, undefined>;
interface UpdateVendorRateRef {
interface GetVendorDefaultSettingByIdRef {
/* Allow users to create refs without passing in DataConnect */
(vars: UpdateVendorRateVariables): MutationRef<UpdateVendorRateData, UpdateVendorRateVariables>;
(vars: GetVendorDefaultSettingByIdVariables): QueryRef<GetVendorDefaultSettingByIdData, GetVendorDefaultSettingByIdVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: UpdateVendorRateVariables): MutationRef<UpdateVendorRateData, UpdateVendorRateVariables>;
(dc: DataConnect, vars: GetVendorDefaultSettingByIdVariables): QueryRef<GetVendorDefaultSettingByIdData, GetVendorDefaultSettingByIdVariables>;
operationName: string;
}
export const updateVendorRateRef: UpdateVendorRateRef;
export const getVendorDefaultSettingByIdRef: GetVendorDefaultSettingByIdRef;
export function updateVendorRate(vars: UpdateVendorRateVariables): MutationPromise<UpdateVendorRateData, UpdateVendorRateVariables>;
export function updateVendorRate(dc: DataConnect, vars: UpdateVendorRateVariables): MutationPromise<UpdateVendorRateData, UpdateVendorRateVariables>;
export function getVendorDefaultSettingById(vars: GetVendorDefaultSettingByIdVariables): QueryPromise<GetVendorDefaultSettingByIdData, GetVendorDefaultSettingByIdVariables>;
export function getVendorDefaultSettingById(dc: DataConnect, vars: GetVendorDefaultSettingByIdVariables): QueryPromise<GetVendorDefaultSettingByIdData, GetVendorDefaultSettingByIdVariables>;
interface DeleteVendorRateRef {
interface FilterVendorDefaultSettingsRef {
/* Allow users to create refs without passing in DataConnect */
(vars: DeleteVendorRateVariables): MutationRef<DeleteVendorRateData, DeleteVendorRateVariables>;
(vars?: FilterVendorDefaultSettingsVariables): QueryRef<FilterVendorDefaultSettingsData, FilterVendorDefaultSettingsVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: DeleteVendorRateVariables): MutationRef<DeleteVendorRateData, DeleteVendorRateVariables>;
(dc: DataConnect, vars?: FilterVendorDefaultSettingsVariables): QueryRef<FilterVendorDefaultSettingsData, FilterVendorDefaultSettingsVariables>;
operationName: string;
}
export const deleteVendorRateRef: DeleteVendorRateRef;
export const filterVendorDefaultSettingsRef: FilterVendorDefaultSettingsRef;
export function deleteVendorRate(vars: DeleteVendorRateVariables): MutationPromise<DeleteVendorRateData, DeleteVendorRateVariables>;
export function deleteVendorRate(dc: DataConnect, vars: DeleteVendorRateVariables): MutationPromise<DeleteVendorRateData, DeleteVendorRateVariables>;
interface CreateEventRef {
/* Allow users to create refs without passing in DataConnect */
(vars: CreateEventVariables): MutationRef<CreateEventData, CreateEventVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: CreateEventVariables): MutationRef<CreateEventData, CreateEventVariables>;
operationName: string;
}
export const createEventRef: CreateEventRef;
export function createEvent(vars: CreateEventVariables): MutationPromise<CreateEventData, CreateEventVariables>;
export function createEvent(dc: DataConnect, vars: CreateEventVariables): MutationPromise<CreateEventData, CreateEventVariables>;
interface UpdateEventRef {
/* Allow users to create refs without passing in DataConnect */
(vars: UpdateEventVariables): MutationRef<UpdateEventData, UpdateEventVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: UpdateEventVariables): MutationRef<UpdateEventData, UpdateEventVariables>;
operationName: string;
}
export const updateEventRef: UpdateEventRef;
export function updateEvent(vars: UpdateEventVariables): MutationPromise<UpdateEventData, UpdateEventVariables>;
export function updateEvent(dc: DataConnect, vars: UpdateEventVariables): MutationPromise<UpdateEventData, UpdateEventVariables>;
interface DeleteEventRef {
/* Allow users to create refs without passing in DataConnect */
(vars: DeleteEventVariables): MutationRef<DeleteEventData, DeleteEventVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: DeleteEventVariables): MutationRef<DeleteEventData, DeleteEventVariables>;
operationName: string;
}
export const deleteEventRef: DeleteEventRef;
export function deleteEvent(vars: DeleteEventVariables): MutationPromise<DeleteEventData, DeleteEventVariables>;
export function deleteEvent(dc: DataConnect, vars: DeleteEventVariables): MutationPromise<DeleteEventData, DeleteEventVariables>;
export function filterVendorDefaultSettings(vars?: FilterVendorDefaultSettingsVariables): QueryPromise<FilterVendorDefaultSettingsData, FilterVendorDefaultSettingsVariables>;
export function filterVendorDefaultSettings(dc: DataConnect, vars?: FilterVendorDefaultSettingsVariables): QueryPromise<FilterVendorDefaultSettingsData, FilterVendorDefaultSettingsVariables>;
interface ListEventsRef {
/* Allow users to create refs without passing in DataConnect */
@@ -773,6 +840,42 @@ export const filterEventsRef: FilterEventsRef;
export function filterEvents(vars?: FilterEventsVariables): QueryPromise<FilterEventsData, FilterEventsVariables>;
export function filterEvents(dc: DataConnect, vars?: FilterEventsVariables): QueryPromise<FilterEventsData, FilterEventsVariables>;
interface CreateInvoiceRef {
/* Allow users to create refs without passing in DataConnect */
(vars: CreateInvoiceVariables): MutationRef<CreateInvoiceData, CreateInvoiceVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: CreateInvoiceVariables): MutationRef<CreateInvoiceData, CreateInvoiceVariables>;
operationName: string;
}
export const createInvoiceRef: CreateInvoiceRef;
export function createInvoice(vars: CreateInvoiceVariables): MutationPromise<CreateInvoiceData, CreateInvoiceVariables>;
export function createInvoice(dc: DataConnect, vars: CreateInvoiceVariables): MutationPromise<CreateInvoiceData, CreateInvoiceVariables>;
interface UpdateInvoiceRef {
/* Allow users to create refs without passing in DataConnect */
(vars: UpdateInvoiceVariables): MutationRef<UpdateInvoiceData, UpdateInvoiceVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: UpdateInvoiceVariables): MutationRef<UpdateInvoiceData, UpdateInvoiceVariables>;
operationName: string;
}
export const updateInvoiceRef: UpdateInvoiceRef;
export function updateInvoice(vars: UpdateInvoiceVariables): MutationPromise<UpdateInvoiceData, UpdateInvoiceVariables>;
export function updateInvoice(dc: DataConnect, vars: UpdateInvoiceVariables): MutationPromise<UpdateInvoiceData, UpdateInvoiceVariables>;
interface DeleteInvoiceRef {
/* Allow users to create refs without passing in DataConnect */
(vars: DeleteInvoiceVariables): MutationRef<DeleteInvoiceData, DeleteInvoiceVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: DeleteInvoiceVariables): MutationRef<DeleteInvoiceData, DeleteInvoiceVariables>;
operationName: string;
}
export const deleteInvoiceRef: DeleteInvoiceRef;
export function deleteInvoice(vars: DeleteInvoiceVariables): MutationPromise<DeleteInvoiceData, DeleteInvoiceVariables>;
export function deleteInvoice(dc: DataConnect, vars: DeleteInvoiceVariables): MutationPromise<DeleteInvoiceData, DeleteInvoiceVariables>;
interface CreateStaffRef {
/* Allow users to create refs without passing in DataConnect */
(vars: CreateStaffVariables): MutationRef<CreateStaffData, CreateStaffVariables>;
@@ -857,41 +960,41 @@ export const deleteVendorDefaultSettingRef: DeleteVendorDefaultSettingRef;
export function deleteVendorDefaultSetting(vars: DeleteVendorDefaultSettingVariables): MutationPromise<DeleteVendorDefaultSettingData, DeleteVendorDefaultSettingVariables>;
export function deleteVendorDefaultSetting(dc: DataConnect, vars: DeleteVendorDefaultSettingVariables): MutationPromise<DeleteVendorDefaultSettingData, DeleteVendorDefaultSettingVariables>;
interface ListVendorDefaultSettingsRef {
interface CreateVendorRateRef {
/* Allow users to create refs without passing in DataConnect */
(): QueryRef<ListVendorDefaultSettingsData, undefined>;
(vars: CreateVendorRateVariables): MutationRef<CreateVendorRateData, CreateVendorRateVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect): QueryRef<ListVendorDefaultSettingsData, undefined>;
(dc: DataConnect, vars: CreateVendorRateVariables): MutationRef<CreateVendorRateData, CreateVendorRateVariables>;
operationName: string;
}
export const listVendorDefaultSettingsRef: ListVendorDefaultSettingsRef;
export const createVendorRateRef: CreateVendorRateRef;
export function listVendorDefaultSettings(): QueryPromise<ListVendorDefaultSettingsData, undefined>;
export function listVendorDefaultSettings(dc: DataConnect): QueryPromise<ListVendorDefaultSettingsData, undefined>;
export function createVendorRate(vars: CreateVendorRateVariables): MutationPromise<CreateVendorRateData, CreateVendorRateVariables>;
export function createVendorRate(dc: DataConnect, vars: CreateVendorRateVariables): MutationPromise<CreateVendorRateData, CreateVendorRateVariables>;
interface GetVendorDefaultSettingByIdRef {
interface UpdateVendorRateRef {
/* Allow users to create refs without passing in DataConnect */
(vars: GetVendorDefaultSettingByIdVariables): QueryRef<GetVendorDefaultSettingByIdData, GetVendorDefaultSettingByIdVariables>;
(vars: UpdateVendorRateVariables): MutationRef<UpdateVendorRateData, UpdateVendorRateVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: GetVendorDefaultSettingByIdVariables): QueryRef<GetVendorDefaultSettingByIdData, GetVendorDefaultSettingByIdVariables>;
(dc: DataConnect, vars: UpdateVendorRateVariables): MutationRef<UpdateVendorRateData, UpdateVendorRateVariables>;
operationName: string;
}
export const getVendorDefaultSettingByIdRef: GetVendorDefaultSettingByIdRef;
export const updateVendorRateRef: UpdateVendorRateRef;
export function getVendorDefaultSettingById(vars: GetVendorDefaultSettingByIdVariables): QueryPromise<GetVendorDefaultSettingByIdData, GetVendorDefaultSettingByIdVariables>;
export function getVendorDefaultSettingById(dc: DataConnect, vars: GetVendorDefaultSettingByIdVariables): QueryPromise<GetVendorDefaultSettingByIdData, GetVendorDefaultSettingByIdVariables>;
export function updateVendorRate(vars: UpdateVendorRateVariables): MutationPromise<UpdateVendorRateData, UpdateVendorRateVariables>;
export function updateVendorRate(dc: DataConnect, vars: UpdateVendorRateVariables): MutationPromise<UpdateVendorRateData, UpdateVendorRateVariables>;
interface FilterVendorDefaultSettingsRef {
interface DeleteVendorRateRef {
/* Allow users to create refs without passing in DataConnect */
(vars?: FilterVendorDefaultSettingsVariables): QueryRef<FilterVendorDefaultSettingsData, FilterVendorDefaultSettingsVariables>;
(vars: DeleteVendorRateVariables): MutationRef<DeleteVendorRateData, DeleteVendorRateVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars?: FilterVendorDefaultSettingsVariables): QueryRef<FilterVendorDefaultSettingsData, FilterVendorDefaultSettingsVariables>;
(dc: DataConnect, vars: DeleteVendorRateVariables): MutationRef<DeleteVendorRateData, DeleteVendorRateVariables>;
operationName: string;
}
export const filterVendorDefaultSettingsRef: FilterVendorDefaultSettingsRef;
export const deleteVendorRateRef: DeleteVendorRateRef;
export function filterVendorDefaultSettings(vars?: FilterVendorDefaultSettingsVariables): QueryPromise<FilterVendorDefaultSettingsData, FilterVendorDefaultSettingsVariables>;
export function filterVendorDefaultSettings(dc: DataConnect, vars?: FilterVendorDefaultSettingsVariables): QueryPromise<FilterVendorDefaultSettingsData, FilterVendorDefaultSettingsVariables>;
export function deleteVendorRate(vars: DeleteVendorRateVariables): MutationPromise<DeleteVendorRateData, DeleteVendorRateVariables>;
export function deleteVendorRate(dc: DataConnect, vars: DeleteVendorRateVariables): MutationPromise<DeleteVendorRateData, DeleteVendorRateVariables>;
interface ListVendorRateRef {
/* Allow users to create refs without passing in DataConnect */
@@ -929,3 +1032,75 @@ export const filterVendorRatesRef: FilterVendorRatesRef;
export function filterVendorRates(vars?: FilterVendorRatesVariables): QueryPromise<FilterVendorRatesData, FilterVendorRatesVariables>;
export function filterVendorRates(dc: DataConnect, vars?: FilterVendorRatesVariables): QueryPromise<FilterVendorRatesData, FilterVendorRatesVariables>;
interface CreateEventRef {
/* Allow users to create refs without passing in DataConnect */
(vars: CreateEventVariables): MutationRef<CreateEventData, CreateEventVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: CreateEventVariables): MutationRef<CreateEventData, CreateEventVariables>;
operationName: string;
}
export const createEventRef: CreateEventRef;
export function createEvent(vars: CreateEventVariables): MutationPromise<CreateEventData, CreateEventVariables>;
export function createEvent(dc: DataConnect, vars: CreateEventVariables): MutationPromise<CreateEventData, CreateEventVariables>;
interface UpdateEventRef {
/* Allow users to create refs without passing in DataConnect */
(vars: UpdateEventVariables): MutationRef<UpdateEventData, UpdateEventVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: UpdateEventVariables): MutationRef<UpdateEventData, UpdateEventVariables>;
operationName: string;
}
export const updateEventRef: UpdateEventRef;
export function updateEvent(vars: UpdateEventVariables): MutationPromise<UpdateEventData, UpdateEventVariables>;
export function updateEvent(dc: DataConnect, vars: UpdateEventVariables): MutationPromise<UpdateEventData, UpdateEventVariables>;
interface DeleteEventRef {
/* Allow users to create refs without passing in DataConnect */
(vars: DeleteEventVariables): MutationRef<DeleteEventData, DeleteEventVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: DeleteEventVariables): MutationRef<DeleteEventData, DeleteEventVariables>;
operationName: string;
}
export const deleteEventRef: DeleteEventRef;
export function deleteEvent(vars: DeleteEventVariables): MutationPromise<DeleteEventData, DeleteEventVariables>;
export function deleteEvent(dc: DataConnect, vars: DeleteEventVariables): MutationPromise<DeleteEventData, DeleteEventVariables>;
interface ListInvoiceRef {
/* Allow users to create refs without passing in DataConnect */
(): QueryRef<ListInvoiceData, undefined>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect): QueryRef<ListInvoiceData, undefined>;
operationName: string;
}
export const listInvoiceRef: ListInvoiceRef;
export function listInvoice(): QueryPromise<ListInvoiceData, undefined>;
export function listInvoice(dc: DataConnect): QueryPromise<ListInvoiceData, undefined>;
interface GetInvoiceByIdRef {
/* Allow users to create refs without passing in DataConnect */
(vars: GetInvoiceByIdVariables): QueryRef<GetInvoiceByIdData, GetInvoiceByIdVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars: GetInvoiceByIdVariables): QueryRef<GetInvoiceByIdData, GetInvoiceByIdVariables>;
operationName: string;
}
export const getInvoiceByIdRef: GetInvoiceByIdRef;
export function getInvoiceById(vars: GetInvoiceByIdVariables): QueryPromise<GetInvoiceByIdData, GetInvoiceByIdVariables>;
export function getInvoiceById(dc: DataConnect, vars: GetInvoiceByIdVariables): QueryPromise<GetInvoiceByIdData, GetInvoiceByIdVariables>;
interface FilterInvoicesRef {
/* Allow users to create refs without passing in DataConnect */
(vars?: FilterInvoicesVariables): QueryRef<FilterInvoicesData, FilterInvoicesVariables>;
/* Allow users to pass in custom DataConnect instances */
(dc: DataConnect, vars?: FilterInvoicesVariables): QueryRef<FilterInvoicesData, FilterInvoicesVariables>;
operationName: string;
}
export const filterInvoicesRef: FilterInvoicesRef;
export function filterInvoices(vars?: FilterInvoicesVariables): QueryPromise<FilterInvoicesData, FilterInvoicesVariables>;
export function filterInvoices(dc: DataConnect, vars?: FilterInvoicesVariables): QueryPromise<FilterInvoicesData, FilterInvoicesVariables>;