From 6ea9d4e5b782d1acb52cc7f8bd6821c8599a6843 Mon Sep 17 00:00:00 2001 From: Ruslan Bakiev Date: Sat, 4 Apr 2026 08:57:26 +0700 Subject: [PATCH] Unify order flow across users --- src/resolvers.js | 30 ++++++------------------------ 1 file changed, 6 insertions(+), 24 deletions(-) diff --git a/src/resolvers.js b/src/resolvers.js index 3f17b14..22e042a 100644 --- a/src/resolvers.js +++ b/src/resolvers.js @@ -205,26 +205,8 @@ async function requireCompletedCounterpartyProfile(context, userId) { } async function resolveOrderRequirements(context, user, deliveryAddressId) { - if (user.role !== 'MANAGER') { - await requireCompletedCounterpartyProfile(context, user.id); - return resolveSelectedDeliveryAddress(context, user.id, deliveryAddressId); - } - - const normalizedAddressId = normalizeOptionalText(deliveryAddressId); - if (normalizedAddressId) { - return resolveSelectedDeliveryAddress(context, user.id, normalizedAddressId); - } - - const manager = await context.prisma.user.findUnique({ - where: { id: user.id }, - select: { defaultDeliveryAddressId: true }, - }); - - if (!manager?.defaultDeliveryAddressId) { - return null; - } - - return resolveSelectedDeliveryAddress(context, user.id, manager.defaultDeliveryAddressId); + await requireCompletedCounterpartyProfile(context, user.id); + return resolveSelectedDeliveryAddress(context, user.id, deliveryAddressId); } function formatOrderStatusMessage(order, status, note) { @@ -884,8 +866,8 @@ export const resolvers = { code: orderCode(), kind: 'READY', customerId: customer.id, - deliveryAddressId: selectedAddress?.id ?? null, - deliveryAddress: selectedAddress ? presentDeliveryAddress(selectedAddress) : null, + deliveryAddressId: selectedAddress.id, + deliveryAddress: presentDeliveryAddress(selectedAddress), status: 'NEW', items: { create: input.items.map((item) => { @@ -921,8 +903,8 @@ export const resolvers = { code: orderCode(), kind: 'CALCULATION', customerId: customer.id, - deliveryAddressId: selectedAddress?.id ?? null, - deliveryAddress: selectedAddress ? presentDeliveryAddress(selectedAddress) : null, + deliveryAddressId: selectedAddress.id, + deliveryAddress: presentDeliveryAddress(selectedAddress), status: 'NEW', calculationPayload: input.parameters, items: {