namespace PowderCoating.Core.Enums; public enum JobStatus { Pending = 0, Quoted = 1, Approved = 2, InPreparation = 3, Sandblasting = 4, MaskingTaping = 5, Cleaning = 6, InOven = 7, Coating = 8, Curing = 9, QualityCheck = 10, Completed = 11, OnHold = 12, Cancelled = 13, ReadyForPickup = 14, Delivered = 15 } public enum JobPriority { Low = 0, Normal = 1, High = 2, Urgent = 3, Rush = 4 } public enum QuoteStatus { Draft = 0, Pending = 1, Sent = 2, Approved = 3, Rejected = 4, Expired = 5, Converted = 6 } public enum InventoryTransactionType { Purchase = 0, Sale = 1, Adjustment = 2, Transfer = 3, Return = 4, Waste = 5, Initial = 6, JobUsage = 7 // Powder consumed during job completion } public enum MaintenanceStatus { Scheduled = 0, InProgress = 1, Completed = 2, Cancelled = 3, Overdue = 4 } public enum MaintenancePriority { Low = 0, Normal = 1, High = 2, Critical = 3 } public enum EquipmentStatus { Operational = 0, NeedsMaintenance = 1, UnderMaintenance = 2, OutOfService = 3, Retired = 4 } public enum JobPhotoType { Before = 0, Progress = 1, After = 2, QualityCheck = 3, Issue = 4, Completed = 5 } public enum MaintenanceRecurrenceFrequency { Daily = 1, Weekly = 2, BiWeekly = 3, Monthly = 4, Annually = 5, BiAnnually = 6, Quarterly = 7 } public enum ReworkType { InternalDefect = 0, CustomerWarranty = 1, CustomerDamage = 2 } public enum ReworkReason { AdhesionFailure = 0, Contamination = 1, ColorMismatch = 2, RunsSags = 3, SurfacePrepFailure = 4, OvenIssue = 5, InsufficientCoverage = 6, HandlingDamage = 7, Other = 8 } public enum ReworkDiscoveredBy { Internal = 0, Customer = 1 } public enum ReworkStatus { Open = 0, InProgress = 1, Resolved = 2, WrittenOff = 3, Disputed = 4 } public enum ReworkResolution { RecoatedNoCharge = 0, RecoatedBilled = 1, CustomerCredited = 2, WrittenOff = 3, NoActionRequired = 4 } /// Who bears the cost of the rework job, recorded at the time the rework is logged. public enum ReworkPricingType { ShopFault = 0, // Redo is on the shop — rework job items priced at $0 CustomerReduced = 1, // Customer caused it; we're helping — prices copied, user edits CustomerFull = 2 // Customer caused it; full original pricing applies } public enum BugReportStatus { New = 0, InProgress = 1, Completed = 2, Cancelled = 3 } public enum BugReportPriority { Low = 0, Normal = 1, High = 2, Critical = 3 } public enum OvenBatchStatus { Planned = 0, Loading = 1, InProgress = 2, Completed = 3, Cancelled = 4 } public enum OvenBatchItemStatus { Pending = 0, InOven = 1, Completed = 2, Removed = 3 } public enum PurchaseOrderStatus { Draft = 0, Submitted = 1, PartiallyReceived = 2, Received = 3, Cancelled = 4 }