manufacturing and gantt

This commit is contained in:
2026-03-15 12:11:46 -05:00
parent a9d31730f8
commit 16582d3cea
26 changed files with 1614 additions and 75 deletions

View File

@@ -5,6 +5,10 @@ export interface GanttTaskDto {
end: string;
progress: number;
type: "task" | "project" | "milestone";
parentId?: string | null;
status?: string;
ownerLabel?: string | null;
detailHref?: string | null;
}
export interface GanttLinkDto {
@@ -14,3 +18,30 @@ export interface GanttLinkDto {
type: string;
}
export interface PlanningSummaryDto {
activeProjects: number;
atRiskProjects: number;
overdueProjects: number;
activeWorkOrders: number;
overdueWorkOrders: number;
unscheduledWorkOrders: number;
horizonStart: string;
horizonEnd: string;
}
export interface PlanningExceptionDto {
id: string;
kind: "PROJECT" | "WORK_ORDER";
title: string;
status: string;
dueDate: string | null;
ownerLabel: string | null;
detailHref: string;
}
export interface PlanningTimelineDto {
tasks: GanttTaskDto[];
links: GanttLinkDto[];
summary: PlanningSummaryDto;
exceptions: PlanningExceptionDto[];
}

View File

@@ -27,6 +27,28 @@ export interface InventoryBomLineInput {
position: number;
}
export interface InventoryItemOperationDto {
id: string;
stationId: string;
stationCode: string;
stationName: string;
setupMinutes: number;
runMinutesPerUnit: number;
moveMinutes: number;
estimatedMinutesPerUnit: number;
position: number;
notes: string;
}
export interface InventoryItemOperationInput {
stationId: string;
setupMinutes: number;
runMinutesPerUnit: number;
moveMinutes: number;
position: number;
notes: string;
}
export interface InventoryItemOptionDto {
id: string;
sku: string;
@@ -134,6 +156,7 @@ export interface InventoryItemDetailDto extends InventoryItemSummaryDto {
notes: string;
createdAt: string;
bomLines: InventoryBomLineDto[];
operations: InventoryItemOperationDto[];
onHandQuantity: number;
stockBalances: InventoryStockBalanceDto[];
recentTransactions: InventoryTransactionDto[];
@@ -152,4 +175,5 @@ export interface InventoryItemInput {
defaultPrice: number | null;
notes: string;
bomLines: InventoryBomLineInput[];
operations: InventoryItemOperationInput[];
}

View File

@@ -2,6 +2,25 @@ export const workOrderStatuses = ["DRAFT", "RELEASED", "IN_PROGRESS", "ON_HOLD",
export type WorkOrderStatus = (typeof workOrderStatuses)[number];
export interface ManufacturingStationDto {
id: string;
code: string;
name: string;
description: string;
queueDays: number;
isActive: boolean;
createdAt: string;
updatedAt: string;
}
export interface ManufacturingStationInput {
code: string;
name: string;
description: string;
queueDays: number;
isActive: boolean;
}
export interface ManufacturingProjectOptionDto {
id: string;
projectNumber: string;
@@ -16,6 +35,8 @@ export interface ManufacturingItemOptionDto {
name: string;
type: string;
unitOfMeasure: string;
operationCount: number;
totalEstimatedMinutesPerUnit: number;
}
export interface WorkOrderSummaryDto {
@@ -37,9 +58,26 @@ export interface WorkOrderSummaryDto {
locationId: string;
locationCode: string;
locationName: string;
operationCount: number;
totalPlannedMinutes: number;
updatedAt: string;
}
export interface WorkOrderOperationDto {
id: string;
stationId: string;
stationCode: string;
stationName: string;
sequence: number;
setupMinutes: number;
runMinutesPerUnit: number;
moveMinutes: number;
plannedMinutes: number;
plannedStart: string;
plannedEnd: string;
notes: string;
}
export interface WorkOrderMaterialRequirementDto {
componentItemId: string;
componentSku: string;
@@ -83,6 +121,7 @@ export interface WorkOrderDetailDto extends WorkOrderSummaryDto {
itemUnitOfMeasure: string;
projectCustomerName: string | null;
dueQuantity: number;
operations: WorkOrderOperationDto[];
materialRequirements: WorkOrderMaterialRequirementDto[];
materialIssues: WorkOrderMaterialIssueDto[];
completions: WorkOrderCompletionDto[];