mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-20 13:38:15 +02:00
Improve customer order creation with a new frontend schema
Introduce a frontend-compatible schema for customer order creation, allowing for more flexible data input and mapping to backend fields. This change also removes role restrictions for order creation and includes updated test scripts and cookie handling. Replit-Commit-Author: Agent Replit-Commit-Session-Id: b163d4c0-de5e-4f4e-a9c0-aed4c7049718 Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/b163d4c0-de5e-4f4e-a9c0-aed4c7049718/CKKcmBc
This commit is contained in:
1 parent
bbdeb63b70
commit
9f00702fae
5 files changed
+125
-10
No files matched your search
@@ -450,6 +450,26 @@ export const insertCustomerOrderSchema = createInsertSchema(customerOrders).omit
|
||||
updatedAt: true,
|
||||
});
|
||||
|
||||
// Frontend-compatible schema with different field names
|
||||
export const insertCustomerOrderFrontendSchema = z.object({
|
||||
customerName: z.string().min(1, "Customer name is required"),
|
||||
contactNumber: z.string().min(1, "Contact number is required"), // Maps to customerPhone
|
||||
productName: z.string().min(1, "Product name is required"), // Maps to productDesignation
|
||||
productDescription: z.string().optional(), // Optional description
|
||||
quantity: z.number().int().positive().default(1),
|
||||
groupId: z.number().int().positive(),
|
||||
isPickup: z.boolean().default(false),
|
||||
notes: z.string().optional(),
|
||||
// Optional fields with defaults
|
||||
orderTaker: z.string().optional(), // Will be set to creator name if not provided
|
||||
gencode: z.string().optional().default(""), // Will be empty if not provided
|
||||
supplierId: z.number().int().positive().optional().default(1), // Default supplier ID
|
||||
deposit: z.number().optional().default(0),
|
||||
isPromotionalPrice: z.boolean().default(false),
|
||||
customerEmail: z.string().email().optional(),
|
||||
productReference: z.string().optional(),
|
||||
});
|
||||
|
||||
export const insertDlcProductSchema = createInsertSchema(dlcProducts).omit({
|
||||
id: true,
|
||||
createdAt: true,
|
||||
|
||||
Reference in new issue
Block a user