From 4a8778504f1b79af122a20b17c70f7b5a2f39524 Mon Sep 17 00:00:00 2001 From: Scott Pouliot Date: Wed, 13 May 2026 21:36:53 -0400 Subject: [PATCH] Fix FK violation on kiosk intake submission: set JobPriorityId ProcessSubmissionAsync was creating a Job without JobPriorityId, leaving it as 0 which violates the FK to JobPriorityLookups. Look up the NORMAL priority the same way JobsController does everywhere else. Co-Authored-By: Claude Sonnet 4.6 --- src/PowderCoating.Web/Controllers/KioskController.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/PowderCoating.Web/Controllers/KioskController.cs b/src/PowderCoating.Web/Controllers/KioskController.cs index 4419330..5e8938e 100644 --- a/src/PowderCoating.Web/Controllers/KioskController.cs +++ b/src/PowderCoating.Web/Controllers/KioskController.cs @@ -586,10 +586,13 @@ public class KioskController : Controller : "RemoteIntake"; } - // 3. Create Job in Pending status - var statuses = await _lookupCache.GetJobStatusLookupsAsync(companyId); + // 3. Create Job in Pending status with Normal priority + var statuses = await _lookupCache.GetJobStatusLookupsAsync(companyId); var pendingStatus = statuses.FirstOrDefault(s => s.StatusCode == AppConstants.StatusCodes.Job.Pending); + var priorities = await _lookupCache.GetJobPriorityLookupsAsync(companyId); + var normalPriority = priorities.FirstOrDefault(p => p.PriorityCode == "NORMAL") ?? priorities.FirstOrDefault(); + var jobNumber = await GenerateJobNumberAsync(companyId); var job = new Job { @@ -597,6 +600,7 @@ public class KioskController : Controller CustomerId = customer!.Id, JobNumber = jobNumber, JobStatusId = pendingStatus?.Id ?? 1, + JobPriorityId = normalPriority?.Id ?? 1, SpecialInstructions = session.JobDescription, Description = $"Walk-in intake — {session.CustomerFirstName} {session.CustomerLastName}".Trim() };