opencrm/backend/dist/services/contractTask.service.d.ts

246 lines
6.7 KiB
TypeScript

import { ContractTaskStatus } from '@prisma/client';
export interface ContractTaskFilters {
contractId: number;
status?: ContractTaskStatus;
visibleInPortal?: boolean;
customerPortalEmails?: string[];
}
export declare function getTasksByContract(filters: ContractTaskFilters): Promise<({
subtasks: {
id: number;
createdAt: Date;
updatedAt: Date;
status: import(".prisma/client").$Enums.ContractTaskStatus;
title: string;
createdBy: string | null;
completedAt: Date | null;
taskId: number;
}[];
} & {
id: number;
createdAt: Date;
updatedAt: Date;
description: string | null;
status: import(".prisma/client").$Enums.ContractTaskStatus;
contractId: number;
title: string;
visibleInPortal: boolean;
createdBy: string | null;
completedAt: Date | null;
})[]>;
export declare function getTaskById(id: number): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
description: string | null;
status: import(".prisma/client").$Enums.ContractTaskStatus;
contractId: number;
title: string;
visibleInPortal: boolean;
createdBy: string | null;
completedAt: Date | null;
} | null>;
export declare function createTask(data: {
contractId: number;
title: string;
description?: string;
visibleInPortal?: boolean;
createdBy?: string;
}): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
description: string | null;
status: import(".prisma/client").$Enums.ContractTaskStatus;
contractId: number;
title: string;
visibleInPortal: boolean;
createdBy: string | null;
completedAt: Date | null;
}>;
export declare function updateTask(id: number, data: {
title?: string;
description?: string;
visibleInPortal?: boolean;
}): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
description: string | null;
status: import(".prisma/client").$Enums.ContractTaskStatus;
contractId: number;
title: string;
visibleInPortal: boolean;
createdBy: string | null;
completedAt: Date | null;
}>;
export declare function completeTask(id: number): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
description: string | null;
status: import(".prisma/client").$Enums.ContractTaskStatus;
contractId: number;
title: string;
visibleInPortal: boolean;
createdBy: string | null;
completedAt: Date | null;
}>;
export declare function reopenTask(id: number): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
description: string | null;
status: import(".prisma/client").$Enums.ContractTaskStatus;
contractId: number;
title: string;
visibleInPortal: boolean;
createdBy: string | null;
completedAt: Date | null;
}>;
export declare function deleteTask(id: number): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
description: string | null;
status: import(".prisma/client").$Enums.ContractTaskStatus;
contractId: number;
title: string;
visibleInPortal: boolean;
createdBy: string | null;
completedAt: Date | null;
}>;
export declare function createSubtask(data: {
taskId: number;
title: string;
createdBy?: string;
}): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
status: import(".prisma/client").$Enums.ContractTaskStatus;
title: string;
createdBy: string | null;
completedAt: Date | null;
taskId: number;
}>;
export declare function updateSubtask(id: number, data: {
title?: string;
}): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
status: import(".prisma/client").$Enums.ContractTaskStatus;
title: string;
createdBy: string | null;
completedAt: Date | null;
taskId: number;
}>;
export declare function completeSubtask(id: number): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
status: import(".prisma/client").$Enums.ContractTaskStatus;
title: string;
createdBy: string | null;
completedAt: Date | null;
taskId: number;
}>;
export declare function reopenSubtask(id: number): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
status: import(".prisma/client").$Enums.ContractTaskStatus;
title: string;
createdBy: string | null;
completedAt: Date | null;
taskId: number;
}>;
export declare function deleteSubtask(id: number): Promise<{
id: number;
createdAt: Date;
updatedAt: Date;
status: import(".prisma/client").$Enums.ContractTaskStatus;
title: string;
createdBy: string | null;
completedAt: Date | null;
taskId: number;
}>;
export declare function getSubtaskById(id: number): Promise<({
task: {
id: number;
createdAt: Date;
updatedAt: Date;
description: string | null;
status: import(".prisma/client").$Enums.ContractTaskStatus;
contractId: number;
title: string;
visibleInPortal: boolean;
createdBy: string | null;
completedAt: Date | null;
};
} & {
id: number;
createdAt: Date;
updatedAt: Date;
status: import(".prisma/client").$Enums.ContractTaskStatus;
title: string;
createdBy: string | null;
completedAt: Date | null;
taskId: number;
}) | null>;
export interface AllTasksFilters {
status?: ContractTaskStatus;
customerId?: number;
customerPortalCustomerIds?: number[];
customerPortalEmails?: string[];
}
export declare function getAllTasks(filters: AllTasksFilters): Promise<({
contract: {
id: number;
customerId: number;
customer: {
id: number;
firstName: string;
lastName: string;
customerNumber: string;
companyName: string | null;
};
tariff: {
id: number;
name: string;
} | null;
provider: {
id: number;
name: string;
} | null;
tariffName: string | null;
providerName: string | null;
contractNumber: string;
};
subtasks: {
id: number;
createdAt: Date;
updatedAt: Date;
status: import(".prisma/client").$Enums.ContractTaskStatus;
title: string;
createdBy: string | null;
completedAt: Date | null;
taskId: number;
}[];
} & {
id: number;
createdAt: Date;
updatedAt: Date;
description: string | null;
status: import(".prisma/client").$Enums.ContractTaskStatus;
contractId: number;
title: string;
visibleInPortal: boolean;
createdBy: string | null;
completedAt: Date | null;
})[]>;
export declare function getTaskStats(filters: AllTasksFilters): Promise<{
openCount: number;
}>;
//# sourceMappingURL=contractTask.service.d.ts.map