Initial commit
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
namespace PowderCoating.Core.Enums;
|
||||
|
||||
public enum AccountType
|
||||
{
|
||||
Asset = 1,
|
||||
Liability = 2,
|
||||
Equity = 3,
|
||||
Revenue = 4,
|
||||
CostOfGoods = 5,
|
||||
Expense = 6
|
||||
}
|
||||
|
||||
public enum AccountSubType
|
||||
{
|
||||
// Assets
|
||||
Checking = 1,
|
||||
Savings = 2,
|
||||
AccountsReceivable = 3,
|
||||
Inventory = 4,
|
||||
FixedAsset = 5,
|
||||
OtherCurrentAsset = 6,
|
||||
OtherAsset = 7,
|
||||
|
||||
// Liabilities
|
||||
AccountsPayable = 10,
|
||||
CreditCard = 11,
|
||||
OtherCurrentLiability = 12,
|
||||
LongTermLiability = 13,
|
||||
|
||||
// Equity
|
||||
OwnersEquity = 20,
|
||||
RetainedEarnings = 21,
|
||||
|
||||
// Revenue
|
||||
Sales = 30,
|
||||
ServiceRevenue = 31,
|
||||
OtherIncome = 32,
|
||||
|
||||
// Cost of Goods Sold
|
||||
CostOfGoodsSold = 40,
|
||||
|
||||
// Expenses
|
||||
Advertising = 50,
|
||||
SuppliesMaterials = 51,
|
||||
Equipment = 52,
|
||||
Insurance = 53,
|
||||
Payroll = 54,
|
||||
ProfessionalFees = 55,
|
||||
Rent = 56,
|
||||
Utilities = 57,
|
||||
Vehicle = 58,
|
||||
Travel = 59,
|
||||
Meals = 60,
|
||||
OfficeSupplies = 61,
|
||||
Depreciation = 62,
|
||||
BankCharges = 63,
|
||||
Other = 99
|
||||
}
|
||||
|
||||
public enum BillStatus
|
||||
{
|
||||
Draft = 0,
|
||||
Open = 1,
|
||||
PartiallyPaid = 2,
|
||||
Paid = 3,
|
||||
Voided = 4
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
namespace PowderCoating.Core.Enums;
|
||||
|
||||
/// <summary>
|
||||
/// Types of discounts that can be applied to quotes
|
||||
/// </summary>
|
||||
public enum DiscountType
|
||||
{
|
||||
/// <summary>
|
||||
/// No discount applied
|
||||
/// </summary>
|
||||
None = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Discount is a percentage of the subtotal (e.g., 10% off)
|
||||
/// </summary>
|
||||
Percentage = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Discount is a fixed dollar amount (e.g., $100 off)
|
||||
/// </summary>
|
||||
FixedAmount = 2
|
||||
}
|
||||
@@ -0,0 +1,198 @@
|
||||
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 ShopWorkerRole
|
||||
{
|
||||
GeneralLabor = 0,
|
||||
Sandblaster = 1,
|
||||
Coater = 2,
|
||||
Masker = 3,
|
||||
QualityControl = 4,
|
||||
OvenOperator = 5,
|
||||
Supervisor = 6,
|
||||
Maintenance = 7
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
namespace PowderCoating.Core.Enums;
|
||||
|
||||
public enum RefundStatus
|
||||
{
|
||||
Pending = 0, // Recorded — shop has not yet physically issued the refund
|
||||
Issued = 1, // Refund has been sent to the customer
|
||||
Cancelled = 2
|
||||
}
|
||||
|
||||
public enum CreditMemoStatus
|
||||
{
|
||||
Active = 0,
|
||||
PartiallyApplied = 1,
|
||||
FullyApplied = 2,
|
||||
Voided = 3
|
||||
}
|
||||
|
||||
public enum InvoiceStatus
|
||||
{
|
||||
Draft = 0,
|
||||
Sent = 1,
|
||||
PartiallyPaid = 2,
|
||||
Paid = 3,
|
||||
Overdue = 4,
|
||||
Voided = 5,
|
||||
WrittenOff = 6
|
||||
}
|
||||
|
||||
public enum PaymentMethod
|
||||
{
|
||||
Cash = 0,
|
||||
Check = 1,
|
||||
CreditDebitCard = 2,
|
||||
BankTransferACH = 3,
|
||||
DigitalPayment = 4,
|
||||
StoreCredit = 5 // Refund issued as store credit (creates a CreditMemo)
|
||||
}
|
||||
|
||||
public enum GiftCertificateStatus
|
||||
{
|
||||
Active = 0,
|
||||
PartiallyRedeemed = 1,
|
||||
FullyRedeemed = 2,
|
||||
Expired = 3,
|
||||
Voided = 4
|
||||
}
|
||||
|
||||
public enum OnlinePaymentStatus
|
||||
{
|
||||
NotApplicable = 0, // Online payments not enabled for this company
|
||||
Pending = 1, // Link generated, not yet paid
|
||||
PartiallyPaid = 2, // Customer has made one or more partial payments
|
||||
Paid = 3, // Fully paid via online payment
|
||||
Refunded = 4 // Online payment was refunded via Stripe
|
||||
}
|
||||
|
||||
public enum OnlinePaymentSurchargeType
|
||||
{
|
||||
None = 0,
|
||||
Percent = 1, // e.g. 2.9% of transaction
|
||||
Flat = 2 // e.g. $1.50 flat fee
|
||||
}
|
||||
|
||||
public enum StripeConnectStatus
|
||||
{
|
||||
NotConnected = 0,
|
||||
Pending = 1, // OAuth started, not yet completed
|
||||
Active = 2, // Connected and ready to accept payments
|
||||
Disabled = 3 // Manually disabled or deauthorized by the company
|
||||
}
|
||||
|
||||
public enum GiftCertificateIssuedReason
|
||||
{
|
||||
Sold = 0,
|
||||
Prize = 1,
|
||||
Promotional = 2,
|
||||
Goodwill = 3,
|
||||
Other = 4
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
namespace PowderCoating.Core.Enums;
|
||||
|
||||
public enum NotificationChannel { Email = 0, Sms = 1 }
|
||||
public enum NotificationStatus { Sent = 0, Failed = 1, Skipped = 2 }
|
||||
public enum NotificationType
|
||||
{
|
||||
QuoteSent = 0,
|
||||
QuoteApproved = 1,
|
||||
JobStatusChanged = 2,
|
||||
JobReadyForPickup = 3,
|
||||
JobCompleted = 4,
|
||||
SmsConsentConfirmation = 5,
|
||||
InvoiceSent = 6,
|
||||
PaymentReceived = 7,
|
||||
QuoteDeclinedByCustomer = 8,
|
||||
PaymentReminder = 9,
|
||||
SubscriptionExpiryReminder = 10,
|
||||
SubscriptionExpired = 11,
|
||||
SmsInboundStop = 12,
|
||||
SmsInboundHelp = 13
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
namespace PowderCoating.Core.Enums;
|
||||
|
||||
public enum PricingMode
|
||||
{
|
||||
/// <summary>Markup % applied to material costs only. Labor and equipment pass through at cost.</summary>
|
||||
MarkupOnMaterial = 0,
|
||||
|
||||
/// <summary>Target margin % applied to total item cost (material + labor + equipment).</summary>
|
||||
MarginOnTotalCost = 1
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
namespace PowderCoating.Core.Enums;
|
||||
|
||||
/// <summary>
|
||||
/// Broad capability tier selected during onboarding. Sets default equipment profile values
|
||||
/// so new shops get reasonable estimates without completing full calibration.
|
||||
/// </summary>
|
||||
public enum ShopCapabilityTier
|
||||
{
|
||||
/// <summary>Home garage coater, small compressor, siphon cabinet.</summary>
|
||||
Garage = 0,
|
||||
/// <summary>1-5 person shop with moderate equipment.</summary>
|
||||
Small = 1,
|
||||
/// <summary>Established shop, pressure pot, 5-10 people.</summary>
|
||||
Medium = 2,
|
||||
/// <summary>High-volume operation, large pressure pots, 10+ people.</summary>
|
||||
Large = 3
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sandblasting equipment configuration. Pressure pot delivers ~2x the media
|
||||
/// velocity of a siphon-fed setup, significantly affecting sqft/hr throughput.
|
||||
/// </summary>
|
||||
public enum BlastSetupType
|
||||
{
|
||||
SiphonCabinet = 0,
|
||||
SiphonPot = 1,
|
||||
PressurePot = 2,
|
||||
WetBlasting = 3
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Primary coating/substrate being removed. Affects how many passes are needed
|
||||
/// and therefore the effective blast rate per sqft.
|
||||
/// </summary>
|
||||
public enum BlastSubstrateType
|
||||
{
|
||||
Paint = 0,
|
||||
PowderCoat = 1,
|
||||
RustAndScale = 2,
|
||||
Mixed = 3
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Powder coating gun technology. Affects application speed and first-pass
|
||||
/// transfer efficiency, especially on complex geometry.
|
||||
/// </summary>
|
||||
public enum CoatingGunType
|
||||
{
|
||||
Corona = 0,
|
||||
Tribo = 1,
|
||||
Both = 2
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
namespace PowderCoating.Core.Enums;
|
||||
|
||||
public enum SubscriptionStatus
|
||||
{
|
||||
Active = 0,
|
||||
GracePeriod = 1,
|
||||
Expired = 2,
|
||||
Canceled = 3,
|
||||
Inactive = 4
|
||||
}
|
||||
Reference in New Issue
Block a user