project cockpit
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
export const projectStatuses = ["PLANNED", "ACTIVE", "ON_HOLD", "AT_RISK", "COMPLETE"] as const;
|
||||
export const projectPriorities = ["LOW", "MEDIUM", "HIGH", "CRITICAL"] as const;
|
||||
export const projectMilestoneStatuses = ["PLANNED", "IN_PROGRESS", "BLOCKED", "COMPLETE"] as const;
|
||||
export const projectCockpitRiskLevels = ["LOW", "MEDIUM", "HIGH"] as const;
|
||||
|
||||
export type ProjectStatus = (typeof projectStatuses)[number];
|
||||
export type ProjectPriority = (typeof projectPriorities)[number];
|
||||
export type ProjectMilestoneStatus = (typeof projectMilestoneStatuses)[number];
|
||||
export type ProjectCockpitRiskLevel = (typeof projectCockpitRiskLevels)[number];
|
||||
|
||||
export interface ProjectCustomerOptionDto {
|
||||
id: string;
|
||||
@@ -69,6 +71,93 @@ export interface ProjectMilestoneDto {
|
||||
sortOrder: number;
|
||||
}
|
||||
|
||||
export interface ProjectCockpitCommercialDto {
|
||||
quoteTotal: number | null;
|
||||
quoteStatus: string | null;
|
||||
orderTotal: number | null;
|
||||
orderStatus: string | null;
|
||||
activeDocumentType: "QUOTE" | "ORDER" | null;
|
||||
activeDocumentNumber: string | null;
|
||||
activeDocumentStatus: string | null;
|
||||
activeDocumentTotal: number | null;
|
||||
}
|
||||
|
||||
export interface ProjectCockpitPurchaseOrderDto {
|
||||
id: string;
|
||||
documentNumber: string;
|
||||
vendorId: string;
|
||||
vendorName: string;
|
||||
status: string;
|
||||
issueDate: string;
|
||||
linkedLineCount: number;
|
||||
linkedLineValue: number;
|
||||
totalOrderedQuantity: number;
|
||||
totalReceivedQuantity: number;
|
||||
totalOutstandingQuantity: number;
|
||||
receiptCount: number;
|
||||
}
|
||||
|
||||
export interface ProjectCockpitVendorDto {
|
||||
vendorId: string;
|
||||
vendorName: string;
|
||||
orderCount: number;
|
||||
linkedLineValue: number;
|
||||
outstandingQuantity: number;
|
||||
}
|
||||
|
||||
export interface ProjectCockpitReceiptDto {
|
||||
receiptId: string;
|
||||
receiptNumber: string;
|
||||
purchaseOrderId: string;
|
||||
purchaseOrderNumber: string;
|
||||
vendorName: string;
|
||||
receivedAt: string;
|
||||
totalQuantity: number;
|
||||
}
|
||||
|
||||
export interface ProjectCockpitPurchasingDto {
|
||||
linkedPurchaseOrderCount: number;
|
||||
openPurchaseOrderCount: number;
|
||||
vendorCount: number;
|
||||
linkedLineCount: number;
|
||||
linkedLineValue: number;
|
||||
totalOrderedQuantity: number;
|
||||
totalReceivedQuantity: number;
|
||||
totalOutstandingQuantity: number;
|
||||
purchaseOrders: ProjectCockpitPurchaseOrderDto[];
|
||||
vendors: ProjectCockpitVendorDto[];
|
||||
recentReceipts: ProjectCockpitReceiptDto[];
|
||||
}
|
||||
|
||||
export interface ProjectCockpitDeliveryDto {
|
||||
shipmentNumber: string | null;
|
||||
shipmentStatus: string | null;
|
||||
shipDate: string | null;
|
||||
packageCount: number;
|
||||
trackingNumber: string | null;
|
||||
carrier: string | null;
|
||||
serviceLevel: string | null;
|
||||
}
|
||||
|
||||
export interface ProjectCockpitRiskDto {
|
||||
readinessScore: number;
|
||||
riskLevel: ProjectCockpitRiskLevel;
|
||||
blockedMilestoneCount: number;
|
||||
overdueMilestoneCount: number;
|
||||
overdueWorkOrderCount: number;
|
||||
shortageItemCount: number;
|
||||
totalUncoveredQuantity: number;
|
||||
outstandingPurchaseOrderCount: number;
|
||||
outstandingReceiptQuantity: number;
|
||||
}
|
||||
|
||||
export interface ProjectCockpitDto {
|
||||
commercial: ProjectCockpitCommercialDto;
|
||||
purchasing: ProjectCockpitPurchasingDto;
|
||||
delivery: ProjectCockpitDeliveryDto;
|
||||
risk: ProjectCockpitRiskDto;
|
||||
}
|
||||
|
||||
export interface ProjectMilestoneInput {
|
||||
id?: string | null;
|
||||
title: string;
|
||||
@@ -90,6 +179,7 @@ export interface ProjectDetailDto extends ProjectSummaryDto {
|
||||
customerEmail: string;
|
||||
customerPhone: string;
|
||||
milestones: ProjectMilestoneDto[];
|
||||
cockpit: ProjectCockpitDto;
|
||||
}
|
||||
|
||||
export interface ProjectInput {
|
||||
|
||||
Reference in New Issue
Block a user