diff --git a/prisma/migrations/20261001120000_app_banner_link/migration.sql b/prisma/migrations/20261001120000_app_banner_link/migration.sql new file mode 100644 index 0000000..0c958c2 --- /dev/null +++ b/prisma/migrations/20261001120000_app_banner_link/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE "AppBanner" ADD COLUMN "bannerLink" TEXT; diff --git a/prisma/migrations/20261001183000_remove_brand_entity/migration.sql b/prisma/migrations/20261001183000_remove_brand_entity/migration.sql new file mode 100644 index 0000000..d87e418 --- /dev/null +++ b/prisma/migrations/20261001183000_remove_brand_entity/migration.sql @@ -0,0 +1,23 @@ +-- Preserve customer ↔ company links where only CustomerBrand existed (match by brand/company name or slug) +UPDATE "Customer" c +SET "companyId" = comp.id +FROM "CustomerBrand" cb +JOIN "Brand" b ON b.id = cb."brandId" +JOIN "Company" comp ON LOWER(TRIM(comp.name)) = LOWER(TRIM(b.name)) +WHERE cb."customerId" = c.id + AND c."companyId" IS NULL; + +UPDATE "Customer" c +SET "companyId" = comp.id +FROM "CustomerBrand" cb +JOIN "Brand" b ON b.id = cb."brandId" +JOIN "Company" comp ON b.slug IS NOT NULL AND comp.slug = b.slug +WHERE cb."customerId" = c.id + AND c."companyId" IS NULL; + +ALTER TABLE "Product" DROP CONSTRAINT IF EXISTS "Product_brandId_fkey"; +DROP INDEX IF EXISTS "Product_brandId_idx"; +ALTER TABLE "Product" DROP COLUMN IF EXISTS "brandId"; + +DROP TABLE IF EXISTS "CustomerBrand"; +DROP TABLE IF EXISTS "Brand"; diff --git a/prisma/migrations/20261001190000_nademitex_payment_recipient/migration.sql b/prisma/migrations/20261001190000_nademitex_payment_recipient/migration.sql new file mode 100644 index 0000000..59abe35 --- /dev/null +++ b/prisma/migrations/20261001190000_nademitex_payment_recipient/migration.sql @@ -0,0 +1,30 @@ +-- نادمی تکس: شرکت اصلی (دریافت پرداخت + پیش‌فرض محصولات بدون شرکت مشخص) +INSERT INTO "Company" ( + "id", + "name", + "slug", + "description", + "isActive", + "displayOrder", + "cashInvoiceValidityHours", + "updatedAt" +) +VALUES ( + 'company-nademitex', + 'نادمی تکس', + 'nademitex', + 'شرکت اصلی — تمام پرداخت‌های اپ به حساب‌های این شرکت واریز می‌شود', + true, + 0, + 8, + CURRENT_TIMESTAMP +) +ON CONFLICT ("slug") DO UPDATE SET + "name" = EXCLUDED."name", + "description" = EXCLUDED."description", + "isActive" = true; + +-- حساب‌های بانکی فقط برای دریافت پرداخت نادمی تکس +UPDATE "BankAccount" +SET "companyId" = (SELECT "id" FROM "Company" WHERE "slug" = 'nademitex' LIMIT 1) +WHERE "companyId" IS NOT NULL; diff --git a/prisma/migrations/20261001200000_product_specs/migration.sql b/prisma/migrations/20261001200000_product_specs/migration.sql new file mode 100644 index 0000000..600f0ca --- /dev/null +++ b/prisma/migrations/20261001200000_product_specs/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE "Product" ADD COLUMN "specs" TEXT; diff --git a/prisma/migrations/20261001210000_support_social_links/migration.sql b/prisma/migrations/20261001210000_support_social_links/migration.sql new file mode 100644 index 0000000..b735630 --- /dev/null +++ b/prisma/migrations/20261001210000_support_social_links/migration.sql @@ -0,0 +1,3 @@ +ALTER TABLE "SystemSettings" ADD COLUMN "supportWhatsapp" TEXT; +ALTER TABLE "SystemSettings" ADD COLUMN "supportTelegram" TEXT; +ALTER TABLE "SystemSettings" ADD COLUMN "supportInstagram" TEXT; diff --git a/prisma/migrations/20261001220000_settlement_cash_check/migration.sql b/prisma/migrations/20261001220000_settlement_cash_check/migration.sql new file mode 100644 index 0000000..30137cf --- /dev/null +++ b/prisma/migrations/20261001220000_settlement_cash_check/migration.sql @@ -0,0 +1,5 @@ +-- AlterEnum +ALTER TYPE "SettlementType" ADD VALUE 'cash_check'; + +-- AlterTable +ALTER TABLE "SystemSettings" ADD COLUMN "defaultSettlementCashCheck" BOOLEAN NOT NULL DEFAULT false; diff --git a/prisma/schema.prisma b/prisma/schema.prisma index c2f43d3..0db8344 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -11,6 +11,7 @@ datasource db { enum SettlementType { cash check + cash_check } enum CheckRegistrationMode { @@ -175,6 +176,8 @@ model Product { code String color String description String? + /// مشخصات آزاد محصول (نمایش در specs-extra اپ) + specs String? @db.Text minMeterage Float @default(30) orderMultiplier Float @default(10) /// قیمت هر متر (تومان) برای نمایش کاتالوگ / پیش‌فاکتور @@ -194,12 +197,10 @@ model Product { subtitle String? rollMeters Float @default(50) isNew Boolean @default(false) - brandId String? createdAt DateTime @default(now()) updatedAt DateTime @updatedAt company Company @relation(fields: [companyId], references: [id], onDelete: Cascade) - brand Brand? @relation(fields: [brandId], references: [id], onDelete: SetNull) cartItems CartItem[] orderItems OrderItem[] favorites ProductFavorite[] @@ -208,7 +209,6 @@ model Product { @@unique([companyId, code]) @@index([companyId]) - @@index([brandId]) @@index([usageCategory]) @@index([season]) } @@ -254,7 +254,6 @@ model Customer { favorites ProductFavorite[] catalogRequests CatalogRequest[] productSuggestions ProductSuggestion[] - customerBrands CustomerBrand[] addresses CustomerAddress[] @@index([companyId]) @@ -485,8 +484,9 @@ model SystemSettings { id String @id @default("default") maxMeteragePerInvoice Int @default(5000) cashInvoiceValidityHours Int @default(8) - defaultSettlementCheck Boolean @default(true) - defaultSettlementCash Boolean @default(true) + defaultSettlementCheck Boolean @default(true) + defaultSettlementCash Boolean @default(true) + defaultSettlementCashCheck Boolean @default(false) /// حداقل سفارش: تعداد طاقه از هر محصول (§۱۹) minOrderRollsPerProduct Int @default(1) /// نمایش قیمت عمومی در کاتالوگ (پیش‌فرض خاموش) @@ -502,6 +502,9 @@ model SystemSettings { smsShippingUpdate Boolean @default(true) supportPhone String? supportEmail String? + supportWhatsapp String? + supportTelegram String? + supportInstagram String? /// تصاویر دسته‌های کاربرد/فصل اپ کاربر: { trousers: dataUrl, summer: dataUrl, ... } categoryImagesJson Json? /// تعاریف دسته‌ها (کاربرد/فصل). اگر خالی باشد از مقادیر پیش‌فرض کد استفاده می‌شود. @@ -517,6 +520,8 @@ model AppBanner { subtitle String? ctaLabel String? ctaLink String? + /// لینک کلیک روی تصویر بنر (مستقل از لینک دکمه) + bannerLink String? imageUrl String? displayOrder Int @default(0) isActive Boolean @default(true) @@ -627,32 +632,6 @@ model ProductFavorite { @@index([customerId]) } -model Brand { - id String @id @default(cuid()) - name String - slug String? @unique - description String? - isActive Boolean @default(true) - displayOrder Int @default(0) - createdAt DateTime @default(now()) - updatedAt DateTime @updatedAt - - customers CustomerBrand[] - products Product[] -} - -model CustomerBrand { - customerId String - brandId String - createdAt DateTime @default(now()) - - customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade) - brand Brand @relation(fields: [brandId], references: [id], onDelete: Cascade) - - @@id([customerId, brandId]) - @@index([brandId]) -} - model CustomerLevelDef { id String @id @default(cuid()) code String @unique diff --git a/prisma/seed.ts b/prisma/seed.ts index 2673874..66b89a7 100644 --- a/prisma/seed.ts +++ b/prisma/seed.ts @@ -66,6 +66,17 @@ async function main() { await prisma.company.createMany({ data: [ + { + id: 'company-nademitex', + name: 'نادمی تکس', + slug: 'nademitex', + description: 'شرکت اصلی — دریافت تمام پرداخت‌های اپ', + isActive: true, + displayOrder: 0, + maxMeteragePerInvoice: null, + cashInvoiceValidityHours: 8, + cashInvoiceValidUntilHour: 17, + }, { id: 'company-par', name: 'شرکت پَر', @@ -95,9 +106,9 @@ async function main() { data: [ { id: 'ba-par-1', - companyId: 'company-par', + companyId: 'company-nademitex', bankName: 'بانک ملی', - accountHolder: 'شرکت پَر', + accountHolder: 'نادمی تکس', accountNumber: '0123456789', cardNumber: '6037-9912-3456-7890', iban: 'IR120170000000012345678901', @@ -106,9 +117,9 @@ async function main() { }, { id: 'ba-par-2', - companyId: 'company-par', + companyId: 'company-nademitex', bankName: 'بانک صادرات', - accountHolder: 'شرکت پَر', + accountHolder: 'نادمی تکس', accountNumber: '9876543210', cardNumber: '6037-6912-3456-7891', iban: 'IR620190000000098765432101', @@ -117,9 +128,9 @@ async function main() { }, { id: 'ba-fam-1', - companyId: 'company-fam-baft', + companyId: 'company-nademitex', bankName: 'بانک ملت', - accountHolder: 'فام‌بافت', + accountHolder: 'نادمی تکس', accountNumber: '1122334455', cardNumber: '6104-3378-9012-3456', iban: 'IR450120000000011223344556', diff --git a/runtime/migrations/20261001120000_app_banner_link/migration.sql b/runtime/migrations/20261001120000_app_banner_link/migration.sql new file mode 100644 index 0000000..0c958c2 --- /dev/null +++ b/runtime/migrations/20261001120000_app_banner_link/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE "AppBanner" ADD COLUMN "bannerLink" TEXT; diff --git a/runtime/migrations/20261001183000_remove_brand_entity/migration.sql b/runtime/migrations/20261001183000_remove_brand_entity/migration.sql new file mode 100644 index 0000000..d87e418 --- /dev/null +++ b/runtime/migrations/20261001183000_remove_brand_entity/migration.sql @@ -0,0 +1,23 @@ +-- Preserve customer ↔ company links where only CustomerBrand existed (match by brand/company name or slug) +UPDATE "Customer" c +SET "companyId" = comp.id +FROM "CustomerBrand" cb +JOIN "Brand" b ON b.id = cb."brandId" +JOIN "Company" comp ON LOWER(TRIM(comp.name)) = LOWER(TRIM(b.name)) +WHERE cb."customerId" = c.id + AND c."companyId" IS NULL; + +UPDATE "Customer" c +SET "companyId" = comp.id +FROM "CustomerBrand" cb +JOIN "Brand" b ON b.id = cb."brandId" +JOIN "Company" comp ON b.slug IS NOT NULL AND comp.slug = b.slug +WHERE cb."customerId" = c.id + AND c."companyId" IS NULL; + +ALTER TABLE "Product" DROP CONSTRAINT IF EXISTS "Product_brandId_fkey"; +DROP INDEX IF EXISTS "Product_brandId_idx"; +ALTER TABLE "Product" DROP COLUMN IF EXISTS "brandId"; + +DROP TABLE IF EXISTS "CustomerBrand"; +DROP TABLE IF EXISTS "Brand"; diff --git a/runtime/migrations/20261001190000_nademitex_payment_recipient/migration.sql b/runtime/migrations/20261001190000_nademitex_payment_recipient/migration.sql new file mode 100644 index 0000000..59abe35 --- /dev/null +++ b/runtime/migrations/20261001190000_nademitex_payment_recipient/migration.sql @@ -0,0 +1,30 @@ +-- نادمی تکس: شرکت اصلی (دریافت پرداخت + پیش‌فرض محصولات بدون شرکت مشخص) +INSERT INTO "Company" ( + "id", + "name", + "slug", + "description", + "isActive", + "displayOrder", + "cashInvoiceValidityHours", + "updatedAt" +) +VALUES ( + 'company-nademitex', + 'نادمی تکس', + 'nademitex', + 'شرکت اصلی — تمام پرداخت‌های اپ به حساب‌های این شرکت واریز می‌شود', + true, + 0, + 8, + CURRENT_TIMESTAMP +) +ON CONFLICT ("slug") DO UPDATE SET + "name" = EXCLUDED."name", + "description" = EXCLUDED."description", + "isActive" = true; + +-- حساب‌های بانکی فقط برای دریافت پرداخت نادمی تکس +UPDATE "BankAccount" +SET "companyId" = (SELECT "id" FROM "Company" WHERE "slug" = 'nademitex' LIMIT 1) +WHERE "companyId" IS NOT NULL; diff --git a/runtime/migrations/20261001200000_product_specs/migration.sql b/runtime/migrations/20261001200000_product_specs/migration.sql new file mode 100644 index 0000000..600f0ca --- /dev/null +++ b/runtime/migrations/20261001200000_product_specs/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE "Product" ADD COLUMN "specs" TEXT; diff --git a/runtime/migrations/20261001210000_support_social_links/migration.sql b/runtime/migrations/20261001210000_support_social_links/migration.sql new file mode 100644 index 0000000..b735630 --- /dev/null +++ b/runtime/migrations/20261001210000_support_social_links/migration.sql @@ -0,0 +1,3 @@ +ALTER TABLE "SystemSettings" ADD COLUMN "supportWhatsapp" TEXT; +ALTER TABLE "SystemSettings" ADD COLUMN "supportTelegram" TEXT; +ALTER TABLE "SystemSettings" ADD COLUMN "supportInstagram" TEXT; diff --git a/runtime/migrations/20261001220000_settlement_cash_check/migration.sql b/runtime/migrations/20261001220000_settlement_cash_check/migration.sql new file mode 100644 index 0000000..30137cf --- /dev/null +++ b/runtime/migrations/20261001220000_settlement_cash_check/migration.sql @@ -0,0 +1,5 @@ +-- AlterEnum +ALTER TYPE "SettlementType" ADD VALUE 'cash_check'; + +-- AlterTable +ALTER TABLE "SystemSettings" ADD COLUMN "defaultSettlementCashCheck" BOOLEAN NOT NULL DEFAULT false; diff --git a/runtime/schema.prisma b/runtime/schema.prisma index 8987564..4dfd902 100644 --- a/runtime/schema.prisma +++ b/runtime/schema.prisma @@ -11,6 +11,7 @@ datasource db { enum SettlementType { cash check + cash_check } enum CheckRegistrationMode { @@ -175,6 +176,8 @@ model Product { code String color String description String? + /// مشخصات آزاد محصول (نمایش در specs-extra اپ) + specs String? @db.Text minMeterage Float @default(30) orderMultiplier Float @default(10) /// قیمت هر متر (تومان) برای نمایش کاتالوگ / پیش‌فاکتور @@ -194,12 +197,10 @@ model Product { subtitle String? rollMeters Float @default(50) isNew Boolean @default(false) - brandId String? createdAt DateTime @default(now()) updatedAt DateTime @updatedAt company Company @relation(fields: [companyId], references: [id], onDelete: Cascade) - brand Brand? @relation(fields: [brandId], references: [id], onDelete: SetNull) cartItems CartItem[] orderItems OrderItem[] favorites ProductFavorite[] @@ -208,7 +209,6 @@ model Product { @@unique([companyId, code]) @@index([companyId]) - @@index([brandId]) @@index([usageCategory]) @@index([season]) } @@ -254,7 +254,6 @@ model Customer { favorites ProductFavorite[] catalogRequests CatalogRequest[] productSuggestions ProductSuggestion[] - customerBrands CustomerBrand[] addresses CustomerAddress[] @@index([companyId]) @@ -482,31 +481,35 @@ model Shipment { } model SystemSettings { - id String @id @default("default") - maxMeteragePerInvoice Int @default(5000) - cashInvoiceValidityHours Int @default(8) - defaultSettlementCheck Boolean @default(true) - defaultSettlementCash Boolean @default(true) + id String @id @default("default") + maxMeteragePerInvoice Int @default(5000) + cashInvoiceValidityHours Int @default(8) + defaultSettlementCheck Boolean @default(true) + defaultSettlementCash Boolean @default(true) + defaultSettlementCashCheck Boolean @default(false) /// حداقل سفارش: تعداد طاقه از هر محصول (§۱۹) - minOrderRollsPerProduct Int @default(1) + minOrderRollsPerProduct Int @default(1) /// نمایش قیمت عمومی در کاتالوگ (پیش‌فرض خاموش) - showCatalogPublicPrice Boolean @default(false) + showCatalogPublicPrice Boolean @default(false) /// اجازه قیمت‌گذاری توسط واسطه (§۱۹) - allowAgentPricing Boolean @default(false) + allowAgentPricing Boolean @default(false) /// کف قیمت واحد برای قیمت‌گذاری واسطه (ریال) — اختیاری - agentMinUnitPrice Int? - smsOrderRegistered Boolean @default(true) - smsPricingReady Boolean @default(true) - smsPaymentReminder Boolean @default(true) - smsCheckReview Boolean @default(true) - smsShippingUpdate Boolean @default(true) - supportPhone String? - supportEmail String? + agentMinUnitPrice Int? + smsOrderRegistered Boolean @default(true) + smsPricingReady Boolean @default(true) + smsPaymentReminder Boolean @default(true) + smsCheckReview Boolean @default(true) + smsShippingUpdate Boolean @default(true) + supportPhone String? + supportEmail String? + supportWhatsapp String? + supportTelegram String? + supportInstagram String? /// تصاویر دسته‌های کاربرد/فصل اپ کاربر: { trousers: dataUrl, summer: dataUrl, ... } - categoryImagesJson Json? + categoryImagesJson Json? /// تعاریف دسته‌ها (کاربرد/فصل). اگر خالی باشد از مقادیر پیش‌فرض کد استفاده می‌شود. - categoryDefsJson Json? - updatedAt DateTime @updatedAt + categoryDefsJson Json? + updatedAt DateTime @updatedAt } /// بنرهای قابل مدیریت بخش‌های اپ کاربر @@ -517,6 +520,8 @@ model AppBanner { subtitle String? ctaLabel String? ctaLink String? + /// لینک کلیک روی تصویر بنر (مستقل از لینک دکمه) + bannerLink String? imageUrl String? displayOrder Int @default(0) isActive Boolean @default(true) @@ -627,32 +632,6 @@ model ProductFavorite { @@index([customerId]) } -model Brand { - id String @id @default(cuid()) - name String - slug String? @unique - description String? - isActive Boolean @default(true) - displayOrder Int @default(0) - createdAt DateTime @default(now()) - updatedAt DateTime @updatedAt - - customers CustomerBrand[] - products Product[] -} - -model CustomerBrand { - customerId String - brandId String - createdAt DateTime @default(now()) - - customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade) - brand Brand @relation(fields: [brandId], references: [id], onDelete: Cascade) - - @@id([customerId, brandId]) - @@index([brandId]) -} - model CustomerLevelDef { id String @id @default(cuid()) code String @unique diff --git a/runtime/seed.cjs b/runtime/seed.cjs index 18e5519..b764593 100644 --- a/runtime/seed.cjs +++ b/runtime/seed.cjs @@ -6403,6 +6403,7 @@ var require_client = __commonJS({ code: "code", color: "color", description: "description", + specs: "specs", minMeterage: "minMeterage", orderMultiplier: "orderMultiplier", basePrice: "basePrice", @@ -6420,7 +6421,6 @@ var require_client = __commonJS({ subtitle: "subtitle", rollMeters: "rollMeters", isNew: "isNew", - brandId: "brandId", createdAt: "createdAt", updatedAt: "updatedAt" }; @@ -6607,6 +6607,7 @@ var require_client = __commonJS({ cashInvoiceValidityHours: "cashInvoiceValidityHours", defaultSettlementCheck: "defaultSettlementCheck", defaultSettlementCash: "defaultSettlementCash", + defaultSettlementCashCheck: "defaultSettlementCashCheck", minOrderRollsPerProduct: "minOrderRollsPerProduct", showCatalogPublicPrice: "showCatalogPublicPrice", allowAgentPricing: "allowAgentPricing", @@ -6618,6 +6619,9 @@ var require_client = __commonJS({ smsShippingUpdate: "smsShippingUpdate", supportPhone: "supportPhone", supportEmail: "supportEmail", + supportWhatsapp: "supportWhatsapp", + supportTelegram: "supportTelegram", + supportInstagram: "supportInstagram", categoryImagesJson: "categoryImagesJson", categoryDefsJson: "categoryDefsJson", updatedAt: "updatedAt" @@ -6629,6 +6633,7 @@ var require_client = __commonJS({ subtitle: "subtitle", ctaLabel: "ctaLabel", ctaLink: "ctaLink", + bannerLink: "bannerLink", imageUrl: "imageUrl", displayOrder: "displayOrder", isActive: "isActive", @@ -6704,21 +6709,6 @@ var require_client = __commonJS({ productId: "productId", createdAt: "createdAt" }; - exports2.Prisma.BrandScalarFieldEnum = { - id: "id", - name: "name", - slug: "slug", - description: "description", - isActive: "isActive", - displayOrder: "displayOrder", - createdAt: "createdAt", - updatedAt: "updatedAt" - }; - exports2.Prisma.CustomerBrandScalarFieldEnum = { - customerId: "customerId", - brandId: "brandId", - createdAt: "createdAt" - }; exports2.Prisma.CustomerLevelDefScalarFieldEnum = { id: "id", code: "code", @@ -6815,7 +6805,8 @@ var require_client = __commonJS({ }; exports2.SettlementType = exports2.$Enums.SettlementType = { cash: "cash", - check: "check" + check: "check", + cash_check: "cash_check" }; exports2.CheckRegistrationMode = exports2.$Enums.CheckRegistrationMode = { full: "full", @@ -6940,8 +6931,6 @@ var require_client = __commonJS({ MeetingInteraction: "MeetingInteraction", Reminder: "Reminder", ProductFavorite: "ProductFavorite", - Brand: "Brand", - CustomerBrand: "CustomerBrand", CustomerLevelDef: "CustomerLevelDef", LevelBenefit: "LevelBenefit", CatalogRequest: "CatalogRequest", @@ -7000,8 +6989,8 @@ var require_client = __commonJS({ } } }, - "inlineSchema": 'generator client {\n provider = "prisma-client-js"\n binaryTargets = ["native", "debian-openssl-3.0.x"]\n}\n\ndatasource db {\n provider = "postgresql"\n url = env("DATABASE_URL")\n}\n\nenum SettlementType {\n cash\n check\n}\n\nenum CheckRegistrationMode {\n full\n brief\n}\n\nenum OrderStatus {\n cart\n awaiting_settlement\n cash_in_progress\n check_in_progress\n submitted\n awaiting_review\n pricing\n needs_correction\n awaiting_settlement_fix\n cash_invoice_issued\n awaiting_cash_payment\n cash_payment_submitted\n awaiting_cash_confirmation\n cash_confirmed\n awaiting_check_review\n check_needs_fix\n check_rejected\n checks_approved\n final_approved\n preparing\n ready_to_ship\n shipped\n delivered\n cancelled\n rejected\n expired\n}\n\nenum CheckStatus {\n pending_review\n approved\n rejected\n}\n\nenum CashPaymentStatus {\n pending_review\n approved\n rejected\n expired\n}\n\nenum ShipmentStatus {\n preparing\n ready\n shipped\n delivered\n}\n\nenum CustomerType {\n wholesale\n retail\n}\n\nenum AppUserRole {\n customer\n agent\n}\n\nenum InteractionType {\n in_person\n call\n message\n note\n}\n\nenum ProductSeason {\n summer\n winter\n all_season\n}\n\nenum ProductUsageCategory {\n trousers\n suit\n shirt\n other\n}\n\nenum AdminRole {\n admin\n sales\n finance\n warehouse\n}\n\nenum NotificationTone {\n info\n warning\n success\n danger\n}\n\n/// \u06AF\u0631\u062F\u0634 \u06A9\u0627\u0644\u06CC\u062A\u0647 \u0641\u06CC\u0632\u06CC\u06A9\u06CC (\xA7\u06F7 \u0633\u0646\u062F)\nenum CatalogRequestStatus {\n new\n approved\n ready_to_ship\n delivered\n returned\n cancelled\n}\n\nenum CatalogItemHolderType {\n warehouse\n customer\n agent\n}\n\nmodel Company {\n id String @id @default(cuid())\n name String\n slug String @unique\n description String?\n logoUrl String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n /// \u062E\u0627\u0644\u06CC \u06CC\u0639\u0646\u06CC \u0627\u0632 \u062A\u0646\u0638\u06CC\u0645\u0627\u062A \u0633\u06CC\u0633\u062A\u0645 \u0627\u0631\u062B \u0645\u06CC\u200C\u0628\u0631\u062F\n maxMeteragePerInvoice Int?\n cashInvoiceValidityHours Int @default(8)\n cashInvoiceValidUntilHour Int?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n bankAccounts BankAccount[]\n products Product[]\n orders Order[]\n customers Customer[]\n}\n\nmodel BankAccount {\n id String @id @default(cuid())\n companyId String\n bankName String\n accountHolder String\n accountNumber String\n cardNumber String\n iban String\n notes String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company @relation(fields: [companyId], references: [id], onDelete: Cascade)\n cashReceipts CashPaymentReceipt[]\n\n @@index([companyId])\n}\n\nmodel Product {\n id String @id @default(cuid())\n companyId String\n name String\n code String\n color String\n description String?\n minMeterage Float @default(30)\n orderMultiplier Float @default(10)\n /// \u0642\u06CC\u0645\u062A \u0647\u0631 \u0645\u062A\u0631 (\u062A\u0648\u0645\u0627\u0646) \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF / \u067E\u06CC\u0634\u200C\u0641\u0627\u06A9\u062A\u0648\u0631\n basePrice Float?\n stock Float?\n isActive Boolean @default(true)\n /// \u0641\u06CC\u0644\u062F\u0647\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF \u0645\u0648\u06A9\u0627\u067E (\u0627\u067E \u06A9\u0627\u0631\u0628\u0631)\n usageCategory String @default("other")\n season String @default("all_season")\n widthCm Float?\n composition String?\n weightGrams Float?\n weaveType String?\n colorsJson Json?\n tagsJson Json?\n imageUrlsJson Json?\n subtitle String?\n rollMeters Float @default(50)\n isNew Boolean @default(false)\n brandId String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company @relation(fields: [companyId], references: [id], onDelete: Cascade)\n brand Brand? @relation(fields: [brandId], references: [id], onDelete: SetNull)\n cartItems CartItem[]\n orderItems OrderItem[]\n favorites ProductFavorite[]\n catalogRequestItems CatalogRequestItem[]\n productSuggestions ProductSuggestion[]\n\n @@unique([companyId, code])\n @@index([companyId])\n @@index([brandId])\n @@index([usageCategory])\n @@index([season])\n}\n\nmodel Customer {\n id String @id @default(cuid())\n firstName String\n lastName String\n phone String @unique\n nationalId String?\n customerType CustomerType @default(wholesale)\n /// \u0646\u0642\u0634 \u062F\u0631 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: \u0645\u0634\u062A\u0631\u06CC \u0639\u0627\u062F\u06CC \u06CC\u0627 \u0648\u0627\u0633\u0637\u0647\n appRole AppUserRole @default(customer)\n agentCode String?\n businessName String?\n levelLabel String?\n nextLevelLabel String?\n pointsToNext Int?\n levelProgress Int? @default(0)\n assignedAgentId String?\n avatarLetter String?\n avatarColor String?\n avatarUrl String?\n /// \u0622\u062F\u0631\u0633 \u0648\u0627\u0633\u0637\u0647 (\u062F\u0631 \u067E\u0631\u0648\u0641\u0627\u06CC\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631)\n address String?\n companyId String?\n levelDefId String?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company? @relation(fields: [companyId], references: [id], onDelete: SetNull)\n levelDef CustomerLevelDef? @relation(fields: [levelDefId], references: [id], onDelete: SetNull)\n assignedAgent Customer? @relation("AgentCustomers", fields: [assignedAgentId], references: [id], onDelete: SetNull)\n agentCustomers Customer[] @relation("AgentCustomers")\n carts Cart[]\n orders Order[]\n notifications CustomerNotification[]\n meetings MeetingInteraction[] @relation("MeetingCustomer")\n meetingsAsAgent MeetingInteraction[] @relation("MeetingAgent")\n reminders Reminder[] @relation("ReminderOwner")\n remindersAbout Reminder[] @relation("ReminderCustomer")\n favorites ProductFavorite[]\n catalogRequests CatalogRequest[]\n productSuggestions ProductSuggestion[]\n customerBrands CustomerBrand[]\n addresses CustomerAddress[]\n\n @@index([companyId])\n @@index([appRole])\n @@index([assignedAgentId])\n @@index([agentCode])\n @@index([levelDefId])\n}\n\nmodel CustomerAddress {\n id String @id @default(cuid())\n customerId String\n label String?\n text String\n isDefault Boolean @default(false)\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n\n @@index([customerId])\n}\n\nmodel AdminUser {\n id String @id @default(cuid())\n fullName String\n phone String @unique\n email String @unique\n passwordHash String\n role AdminRole @default(admin)\n isActive Boolean @default(true)\n lastLoginAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel OtpChallenge {\n id String @id @default(cuid())\n phone String\n code String\n firstName String?\n lastName String?\n isRegister Boolean @default(false)\n attempts Int @default(0)\n expiresAt DateTime\n createdAt DateTime @default(now())\n\n @@index([phone])\n}\n\nmodel Cart {\n id String @id @default(cuid())\n userId String\n companyId String?\n notes String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n user Customer @relation(fields: [userId], references: [id], onDelete: Cascade)\n items CartItem[]\n\n @@index([userId])\n}\n\nmodel CartItem {\n id String @id @default(cuid())\n cartId String\n productId String\n catalogCode String\n productName String\n productCode String\n color String\n meterage Float\n unitPrice Float?\n notes String?\n companyId String\n companyName String\n\n cart Cart @relation(fields: [cartId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Restrict)\n\n @@unique([cartId, productId])\n @@index([cartId])\n}\n\nmodel Order {\n id String @id @default(cuid())\n orderNumber String @unique\n userId String\n companyId String\n companyName String\n // \u0631\u0648\u0634 \u062A\u0633\u0648\u06CC\u0647 \u0628\u0639\u062F \u0627\u0632 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0627\u062F\u0645\u06CC\u0646 \u062A\u0648\u0633\u0637 \u0645\u0634\u062A\u0631\u06CC \u0627\u0646\u062A\u062E\u0627\u0628 \u0645\u06CC\u200C\u0634\u0648\u062F\n settlementType SettlementType?\n checkMode CheckRegistrationMode?\n status OrderStatus @default(awaiting_review)\n totalMeterage Float @default(0)\n totalAmount Float?\n shippingCost Float?\n totalDiscount Float?\n finalAmount Float?\n notes String?\n checkRassDays Int?\n checkRassDate DateTime?\n cashInvoiceExpiresAt DateTime?\n /// \u0632\u0645\u0627\u0646 \u0627\u0631\u0633\u0627\u0644 \u06CC\u0627\u062F\u0622\u0648\u0631\u06CC \u067E\u0627\u06CC\u0627\u0646 \u0645\u0647\u0644\u062A \u067E\u0631\u062F\u0627\u062E\u062A \u062A\u0627 \u062F\u0648\u0628\u0627\u0631\u0647 \u0627\u0631\u0633\u0627\u0644 \u0646\u0634\u0648\u062F\n cashReminderSentAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n user Customer @relation(fields: [userId], references: [id], onDelete: Restrict)\n company Company @relation(fields: [companyId], references: [id], onDelete: Restrict)\n items OrderItem[]\n checks Check[]\n cashReceipt CashPaymentReceipt?\n shipment Shipment?\n statusHistory OrderStatusHistory[]\n notifications CustomerNotification[]\n\n @@index([userId])\n @@index([companyId])\n @@index([status])\n @@index([createdAt])\n @@index([status, cashInvoiceExpiresAt])\n}\n\nmodel OrderItem {\n id String @id @default(cuid())\n orderId String\n productId String?\n catalogCode String\n productName String\n productCode String?\n color String\n requestedMeterage Float\n confirmedMeterage Float?\n unitPrice Float?\n unitDiscount Float? @default(0)\n lineTotal Float?\n notes String?\n companyId String\n companyName String\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n product Product? @relation(fields: [productId], references: [id], onDelete: SetNull)\n\n @@index([orderId])\n @@index([companyId])\n}\n\nmodel OrderStatusHistory {\n id String @id @default(cuid())\n orderId String\n fromStatus OrderStatus?\n toStatus OrderStatus\n changedBy String\n note String?\n reason String?\n changedAt DateTime @default(now())\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n\n @@index([orderId])\n}\n\nmodel Check {\n id String @id @default(cuid())\n orderId String\n row Int\n amount Float\n dueDate DateTime\n sayadId String?\n checkNumber String?\n ownerNationalId String?\n ownerFirstName String?\n ownerLastName String?\n bankName String?\n branchName String?\n frontImage String?\n backImage String?\n notes String?\n mode CheckRegistrationMode @default(full)\n status CheckStatus @default(pending_review)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n\n @@index([orderId])\n @@index([dueDate])\n}\n\nmodel CashPaymentReceipt {\n id String @id @default(cuid())\n orderId String @unique\n amount Float\n paidAmount Float?\n transferDate DateTime?\n transferTime String?\n trackingNumber String?\n destinationAccountId String?\n receiptImage String?\n notes String?\n expiresAt DateTime?\n status CashPaymentStatus @default(pending_review)\n submittedAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n destinationAccount BankAccount? @relation(fields: [destinationAccountId], references: [id], onDelete: SetNull)\n}\n\nmodel Shipment {\n id String @id @default(cuid())\n orderId String @unique\n carrier String\n trackingNumber String?\n meterage Float\n status ShipmentStatus @default(preparing)\n shippedAt DateTime?\n deliveredAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n}\n\nmodel SystemSettings {\n id String @id @default("default")\n maxMeteragePerInvoice Int @default(5000)\n cashInvoiceValidityHours Int @default(8)\n defaultSettlementCheck Boolean @default(true)\n defaultSettlementCash Boolean @default(true)\n /// \u062D\u062F\u0627\u0642\u0644 \u0633\u0641\u0627\u0631\u0634: \u062A\u0639\u062F\u0627\u062F \u0637\u0627\u0642\u0647 \u0627\u0632 \u0647\u0631 \u0645\u062D\u0635\u0648\u0644 (\xA7\u06F1\u06F9)\n minOrderRollsPerProduct Int @default(1)\n /// \u0646\u0645\u0627\u06CC\u0634 \u0642\u06CC\u0645\u062A \u0639\u0645\u0648\u0645\u06CC \u062F\u0631 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF (\u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u062E\u0627\u0645\u0648\u0634)\n showCatalogPublicPrice Boolean @default(false)\n /// \u0627\u062C\u0627\u0632\u0647 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u062A\u0648\u0633\u0637 \u0648\u0627\u0633\u0637\u0647 (\xA7\u06F1\u06F9)\n allowAgentPricing Boolean @default(false)\n /// \u06A9\u0641 \u0642\u06CC\u0645\u062A \u0648\u0627\u062D\u062F \u0628\u0631\u0627\u06CC \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0648\u0627\u0633\u0637\u0647 (\u0631\u06CC\u0627\u0644) \u2014 \u0627\u062E\u062A\u06CC\u0627\u0631\u06CC\n agentMinUnitPrice Int?\n smsOrderRegistered Boolean @default(true)\n smsPricingReady Boolean @default(true)\n smsPaymentReminder Boolean @default(true)\n smsCheckReview Boolean @default(true)\n smsShippingUpdate Boolean @default(true)\n supportPhone String?\n supportEmail String?\n /// \u062A\u0635\u0627\u0648\u06CC\u0631 \u062F\u0633\u062A\u0647\u200C\u0647\u0627\u06CC \u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: { trousers: dataUrl, summer: dataUrl, ... }\n categoryImagesJson Json?\n /// \u062A\u0639\u0627\u0631\u06CC\u0641 \u062F\u0633\u062A\u0647\u200C\u0647\u0627 (\u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644). \u0627\u06AF\u0631 \u062E\u0627\u0644\u06CC \u0628\u0627\u0634\u062F \u0627\u0632 \u0645\u0642\u0627\u062F\u06CC\u0631 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u062F \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0645\u06CC\u200C\u0634\u0648\u062F.\n categoryDefsJson Json?\n updatedAt DateTime @updatedAt\n}\n\n/// \u0628\u0646\u0631\u0647\u0627\u06CC \u0642\u0627\u0628\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u062E\u0634\u200C\u0647\u0627\u06CC \u0627\u067E \u06A9\u0627\u0631\u0628\u0631\nmodel AppBanner {\n id String @id @default(cuid())\n slot String\n title String\n subtitle String?\n ctaLabel String?\n ctaLink String?\n imageUrl String?\n displayOrder Int @default(0)\n isActive Boolean @default(true)\n showTitle Boolean @default(true)\n showSubtitle Boolean @default(true)\n showCta Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@index([slot, isActive, displayOrder])\n}\n\nmodel AdminNotification {\n id String @id @default(cuid())\n title String\n body String\n tone NotificationTone? @default(info)\n link String?\n isRead Boolean @default(false)\n sentAt DateTime @default(now())\n}\n\nmodel CustomerNotification {\n id String @id @default(cuid())\n customerId String\n orderId String?\n event String\n title String\n body String\n tone NotificationTone? @default(info)\n link String?\n isRead Boolean @default(false)\n smsSent Boolean @default(false)\n sentAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n order Order? @relation(fields: [orderId], references: [id], onDelete: SetNull)\n\n @@index([customerId, isRead])\n @@index([sentAt])\n}\n\nmodel InternalMessage {\n id String @id @default(cuid())\n senderName String\n subject String\n preview String\n link String?\n isRead Boolean @default(false)\n sentAt DateTime @default(now())\n}\n\nmodel MeetingInteraction {\n id String @id @default(cuid())\n customerId String\n agentId String\n type InteractionType @default(in_person)\n title String\n description String?\n subject String?\n content String?\n date String\n time String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customer Customer @relation("MeetingCustomer", fields: [customerId], references: [id], onDelete: Cascade)\n agent Customer @relation("MeetingAgent", fields: [agentId], references: [id], onDelete: Cascade)\n\n @@index([customerId])\n @@index([agentId])\n @@index([date])\n}\n\nmodel Reminder {\n id String @id @default(cuid())\n ownerId String\n customerId String\n title String\n description String?\n note String?\n date String\n time String\n interactionType InteractionType @default(note)\n completed Boolean @default(false)\n completedAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n owner Customer @relation("ReminderOwner", fields: [ownerId], references: [id], onDelete: Cascade)\n customer Customer @relation("ReminderCustomer", fields: [customerId], references: [id], onDelete: Cascade)\n\n @@index([ownerId, completed])\n @@index([customerId])\n @@index([date])\n}\n\nmodel ProductFavorite {\n id String @id @default(cuid())\n customerId String\n productId String\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Cascade)\n\n @@unique([customerId, productId])\n @@index([customerId])\n}\n\nmodel Brand {\n id String @id @default(cuid())\n name String\n slug String? @unique\n description String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customers CustomerBrand[]\n products Product[]\n}\n\nmodel CustomerBrand {\n customerId String\n brandId String\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n brand Brand @relation(fields: [brandId], references: [id], onDelete: Cascade)\n\n @@id([customerId, brandId])\n @@index([brandId])\n}\n\nmodel CustomerLevelDef {\n id String @id @default(cuid())\n code String @unique\n label String\n sortOrder Int @default(0)\n criteriaJson Json?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n benefits LevelBenefit[]\n customers Customer[]\n}\n\nmodel LevelBenefit {\n id String @id @default(cuid())\n levelId String\n title String\n description String?\n\n level CustomerLevelDef @relation(fields: [levelId], references: [id], onDelete: Cascade)\n\n @@index([levelId])\n}\n\nmodel CatalogRequest {\n id String @id @default(cuid())\n customerId String\n status CatalogRequestStatus @default(new)\n note String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n items CatalogRequestItem[]\n\n @@index([customerId])\n @@index([status])\n}\n\nmodel CatalogRequestItem {\n id String @id @default(cuid())\n requestId String\n productId String\n quantity Int @default(1)\n holderType CatalogItemHolderType @default(warehouse)\n holderCustomerId String?\n\n request CatalogRequest @relation(fields: [requestId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Restrict)\n movements CatalogItemMovement[]\n\n @@index([requestId])\n @@index([productId])\n}\n\nmodel CatalogItemMovement {\n id String @id @default(cuid())\n itemId String\n fromHolder String\n toHolder String\n note String?\n movedAt DateTime @default(now())\n\n item CatalogRequestItem @relation(fields: [itemId], references: [id], onDelete: Cascade)\n\n @@index([itemId])\n}\n\nmodel ProductSuggestion {\n id String @id @default(cuid())\n customerId String\n productId String\n note String?\n createdByAdminId String?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Cascade)\n\n @@index([customerId, isActive])\n @@index([productId])\n}\n\n/// \u06CC\u06A9 \u0631\u062F\u06CC\u0641 \u0628\u0631\u0627\u06CC \u062A\u0639\u0631\u0641\u0647\u060C \u0645\u0648\u062C\u0648\u062F\u06CC \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648\u0627\u0631\u06CC\u0632 \u067E\u06CC\u0627\u0645\u06A9\nmodel SmsWallet {\n id String @id @default("default")\n balanceToman Int @default(0)\n pricePerPart Int @default(250)\n blocked Boolean @default(false)\n cardNumber String @default("6219861941033817")\n sheba String @default("IR805606118280056043604401")\n accountName String @default("\u062D\u0633\u06CC\u0646 \u0645\u0646\u062A\u0638\u0631")\n yellowThreshold Int @default(10000)\n redThreshold Int @default(1000)\n updatedAt DateTime @updatedAt\n}\n\nmodel SmsUsage {\n id String @id @default(cuid())\n parts Int\n costToman Int\n createdAt DateTime @default(now())\n\n @@index([createdAt])\n}\n\nmodel SmsTopUp {\n id String @id @default(cuid())\n amountToman Int\n note String?\n createdAt DateTime @default(now())\n}\n', - "inlineSchemaHash": "48064e922b4134bc3d97fe88086bf6d05956866842d76d13ab14a7dc55970aed", + "inlineSchema": 'generator client {\n provider = "prisma-client-js"\n binaryTargets = ["native", "debian-openssl-3.0.x"]\n}\n\ndatasource db {\n provider = "postgresql"\n url = env("DATABASE_URL")\n}\n\nenum SettlementType {\n cash\n check\n cash_check\n}\n\nenum CheckRegistrationMode {\n full\n brief\n}\n\nenum OrderStatus {\n cart\n awaiting_settlement\n cash_in_progress\n check_in_progress\n submitted\n awaiting_review\n pricing\n needs_correction\n awaiting_settlement_fix\n cash_invoice_issued\n awaiting_cash_payment\n cash_payment_submitted\n awaiting_cash_confirmation\n cash_confirmed\n awaiting_check_review\n check_needs_fix\n check_rejected\n checks_approved\n final_approved\n preparing\n ready_to_ship\n shipped\n delivered\n cancelled\n rejected\n expired\n}\n\nenum CheckStatus {\n pending_review\n approved\n rejected\n}\n\nenum CashPaymentStatus {\n pending_review\n approved\n rejected\n expired\n}\n\nenum ShipmentStatus {\n preparing\n ready\n shipped\n delivered\n}\n\nenum CustomerType {\n wholesale\n retail\n}\n\nenum AppUserRole {\n customer\n agent\n}\n\nenum InteractionType {\n in_person\n call\n message\n note\n}\n\nenum ProductSeason {\n summer\n winter\n all_season\n}\n\nenum ProductUsageCategory {\n trousers\n suit\n shirt\n other\n}\n\nenum AdminRole {\n admin\n sales\n finance\n warehouse\n}\n\nenum NotificationTone {\n info\n warning\n success\n danger\n}\n\n/// \u06AF\u0631\u062F\u0634 \u06A9\u0627\u0644\u06CC\u062A\u0647 \u0641\u06CC\u0632\u06CC\u06A9\u06CC (\xA7\u06F7 \u0633\u0646\u062F)\nenum CatalogRequestStatus {\n new\n approved\n ready_to_ship\n delivered\n returned\n cancelled\n}\n\nenum CatalogItemHolderType {\n warehouse\n customer\n agent\n}\n\nmodel Company {\n id String @id @default(cuid())\n name String\n slug String @unique\n description String?\n logoUrl String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n /// \u062E\u0627\u0644\u06CC \u06CC\u0639\u0646\u06CC \u0627\u0632 \u062A\u0646\u0638\u06CC\u0645\u0627\u062A \u0633\u06CC\u0633\u062A\u0645 \u0627\u0631\u062B \u0645\u06CC\u200C\u0628\u0631\u062F\n maxMeteragePerInvoice Int?\n cashInvoiceValidityHours Int @default(8)\n cashInvoiceValidUntilHour Int?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n bankAccounts BankAccount[]\n products Product[]\n orders Order[]\n customers Customer[]\n}\n\nmodel BankAccount {\n id String @id @default(cuid())\n companyId String\n bankName String\n accountHolder String\n accountNumber String\n cardNumber String\n iban String\n notes String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company @relation(fields: [companyId], references: [id], onDelete: Cascade)\n cashReceipts CashPaymentReceipt[]\n\n @@index([companyId])\n}\n\nmodel Product {\n id String @id @default(cuid())\n companyId String\n name String\n code String\n color String\n description String?\n /// \u0645\u0634\u062E\u0635\u0627\u062A \u0622\u0632\u0627\u062F \u0645\u062D\u0635\u0648\u0644 (\u0646\u0645\u0627\u06CC\u0634 \u062F\u0631 specs-extra \u0627\u067E)\n specs String? @db.Text\n minMeterage Float @default(30)\n orderMultiplier Float @default(10)\n /// \u0642\u06CC\u0645\u062A \u0647\u0631 \u0645\u062A\u0631 (\u062A\u0648\u0645\u0627\u0646) \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF / \u067E\u06CC\u0634\u200C\u0641\u0627\u06A9\u062A\u0648\u0631\n basePrice Float?\n stock Float?\n isActive Boolean @default(true)\n /// \u0641\u06CC\u0644\u062F\u0647\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF \u0645\u0648\u06A9\u0627\u067E (\u0627\u067E \u06A9\u0627\u0631\u0628\u0631)\n usageCategory String @default("other")\n season String @default("all_season")\n widthCm Float?\n composition String?\n weightGrams Float?\n weaveType String?\n colorsJson Json?\n tagsJson Json?\n imageUrlsJson Json?\n subtitle String?\n rollMeters Float @default(50)\n isNew Boolean @default(false)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company @relation(fields: [companyId], references: [id], onDelete: Cascade)\n cartItems CartItem[]\n orderItems OrderItem[]\n favorites ProductFavorite[]\n catalogRequestItems CatalogRequestItem[]\n productSuggestions ProductSuggestion[]\n\n @@unique([companyId, code])\n @@index([companyId])\n @@index([usageCategory])\n @@index([season])\n}\n\nmodel Customer {\n id String @id @default(cuid())\n firstName String\n lastName String\n phone String @unique\n nationalId String?\n customerType CustomerType @default(wholesale)\n /// \u0646\u0642\u0634 \u062F\u0631 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: \u0645\u0634\u062A\u0631\u06CC \u0639\u0627\u062F\u06CC \u06CC\u0627 \u0648\u0627\u0633\u0637\u0647\n appRole AppUserRole @default(customer)\n agentCode String?\n businessName String?\n levelLabel String?\n nextLevelLabel String?\n pointsToNext Int?\n levelProgress Int? @default(0)\n assignedAgentId String?\n avatarLetter String?\n avatarColor String?\n avatarUrl String?\n /// \u0622\u062F\u0631\u0633 \u0648\u0627\u0633\u0637\u0647 (\u062F\u0631 \u067E\u0631\u0648\u0641\u0627\u06CC\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631)\n address String?\n companyId String?\n levelDefId String?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company? @relation(fields: [companyId], references: [id], onDelete: SetNull)\n levelDef CustomerLevelDef? @relation(fields: [levelDefId], references: [id], onDelete: SetNull)\n assignedAgent Customer? @relation("AgentCustomers", fields: [assignedAgentId], references: [id], onDelete: SetNull)\n agentCustomers Customer[] @relation("AgentCustomers")\n carts Cart[]\n orders Order[]\n notifications CustomerNotification[]\n meetings MeetingInteraction[] @relation("MeetingCustomer")\n meetingsAsAgent MeetingInteraction[] @relation("MeetingAgent")\n reminders Reminder[] @relation("ReminderOwner")\n remindersAbout Reminder[] @relation("ReminderCustomer")\n favorites ProductFavorite[]\n catalogRequests CatalogRequest[]\n productSuggestions ProductSuggestion[]\n addresses CustomerAddress[]\n\n @@index([companyId])\n @@index([appRole])\n @@index([assignedAgentId])\n @@index([agentCode])\n @@index([levelDefId])\n}\n\nmodel CustomerAddress {\n id String @id @default(cuid())\n customerId String\n label String?\n text String\n isDefault Boolean @default(false)\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n\n @@index([customerId])\n}\n\nmodel AdminUser {\n id String @id @default(cuid())\n fullName String\n phone String @unique\n email String @unique\n passwordHash String\n role AdminRole @default(admin)\n isActive Boolean @default(true)\n lastLoginAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel OtpChallenge {\n id String @id @default(cuid())\n phone String\n code String\n firstName String?\n lastName String?\n isRegister Boolean @default(false)\n attempts Int @default(0)\n expiresAt DateTime\n createdAt DateTime @default(now())\n\n @@index([phone])\n}\n\nmodel Cart {\n id String @id @default(cuid())\n userId String\n companyId String?\n notes String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n user Customer @relation(fields: [userId], references: [id], onDelete: Cascade)\n items CartItem[]\n\n @@index([userId])\n}\n\nmodel CartItem {\n id String @id @default(cuid())\n cartId String\n productId String\n catalogCode String\n productName String\n productCode String\n color String\n meterage Float\n unitPrice Float?\n notes String?\n companyId String\n companyName String\n\n cart Cart @relation(fields: [cartId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Restrict)\n\n @@unique([cartId, productId])\n @@index([cartId])\n}\n\nmodel Order {\n id String @id @default(cuid())\n orderNumber String @unique\n userId String\n companyId String\n companyName String\n // \u0631\u0648\u0634 \u062A\u0633\u0648\u06CC\u0647 \u0628\u0639\u062F \u0627\u0632 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0627\u062F\u0645\u06CC\u0646 \u062A\u0648\u0633\u0637 \u0645\u0634\u062A\u0631\u06CC \u0627\u0646\u062A\u062E\u0627\u0628 \u0645\u06CC\u200C\u0634\u0648\u062F\n settlementType SettlementType?\n checkMode CheckRegistrationMode?\n status OrderStatus @default(awaiting_review)\n totalMeterage Float @default(0)\n totalAmount Float?\n shippingCost Float?\n totalDiscount Float?\n finalAmount Float?\n notes String?\n checkRassDays Int?\n checkRassDate DateTime?\n cashInvoiceExpiresAt DateTime?\n /// \u0632\u0645\u0627\u0646 \u0627\u0631\u0633\u0627\u0644 \u06CC\u0627\u062F\u0622\u0648\u0631\u06CC \u067E\u0627\u06CC\u0627\u0646 \u0645\u0647\u0644\u062A \u067E\u0631\u062F\u0627\u062E\u062A \u062A\u0627 \u062F\u0648\u0628\u0627\u0631\u0647 \u0627\u0631\u0633\u0627\u0644 \u0646\u0634\u0648\u062F\n cashReminderSentAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n user Customer @relation(fields: [userId], references: [id], onDelete: Restrict)\n company Company @relation(fields: [companyId], references: [id], onDelete: Restrict)\n items OrderItem[]\n checks Check[]\n cashReceipt CashPaymentReceipt?\n shipment Shipment?\n statusHistory OrderStatusHistory[]\n notifications CustomerNotification[]\n\n @@index([userId])\n @@index([companyId])\n @@index([status])\n @@index([createdAt])\n @@index([status, cashInvoiceExpiresAt])\n}\n\nmodel OrderItem {\n id String @id @default(cuid())\n orderId String\n productId String?\n catalogCode String\n productName String\n productCode String?\n color String\n requestedMeterage Float\n confirmedMeterage Float?\n unitPrice Float?\n unitDiscount Float? @default(0)\n lineTotal Float?\n notes String?\n companyId String\n companyName String\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n product Product? @relation(fields: [productId], references: [id], onDelete: SetNull)\n\n @@index([orderId])\n @@index([companyId])\n}\n\nmodel OrderStatusHistory {\n id String @id @default(cuid())\n orderId String\n fromStatus OrderStatus?\n toStatus OrderStatus\n changedBy String\n note String?\n reason String?\n changedAt DateTime @default(now())\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n\n @@index([orderId])\n}\n\nmodel Check {\n id String @id @default(cuid())\n orderId String\n row Int\n amount Float\n dueDate DateTime\n sayadId String?\n checkNumber String?\n ownerNationalId String?\n ownerFirstName String?\n ownerLastName String?\n bankName String?\n branchName String?\n frontImage String?\n backImage String?\n notes String?\n mode CheckRegistrationMode @default(full)\n status CheckStatus @default(pending_review)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n\n @@index([orderId])\n @@index([dueDate])\n}\n\nmodel CashPaymentReceipt {\n id String @id @default(cuid())\n orderId String @unique\n amount Float\n paidAmount Float?\n transferDate DateTime?\n transferTime String?\n trackingNumber String?\n destinationAccountId String?\n receiptImage String?\n notes String?\n expiresAt DateTime?\n status CashPaymentStatus @default(pending_review)\n submittedAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n destinationAccount BankAccount? @relation(fields: [destinationAccountId], references: [id], onDelete: SetNull)\n}\n\nmodel Shipment {\n id String @id @default(cuid())\n orderId String @unique\n carrier String\n trackingNumber String?\n meterage Float\n status ShipmentStatus @default(preparing)\n shippedAt DateTime?\n deliveredAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n}\n\nmodel SystemSettings {\n id String @id @default("default")\n maxMeteragePerInvoice Int @default(5000)\n cashInvoiceValidityHours Int @default(8)\n defaultSettlementCheck Boolean @default(true)\n defaultSettlementCash Boolean @default(true)\n defaultSettlementCashCheck Boolean @default(false)\n /// \u062D\u062F\u0627\u0642\u0644 \u0633\u0641\u0627\u0631\u0634: \u062A\u0639\u062F\u0627\u062F \u0637\u0627\u0642\u0647 \u0627\u0632 \u0647\u0631 \u0645\u062D\u0635\u0648\u0644 (\xA7\u06F1\u06F9)\n minOrderRollsPerProduct Int @default(1)\n /// \u0646\u0645\u0627\u06CC\u0634 \u0642\u06CC\u0645\u062A \u0639\u0645\u0648\u0645\u06CC \u062F\u0631 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF (\u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u062E\u0627\u0645\u0648\u0634)\n showCatalogPublicPrice Boolean @default(false)\n /// \u0627\u062C\u0627\u0632\u0647 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u062A\u0648\u0633\u0637 \u0648\u0627\u0633\u0637\u0647 (\xA7\u06F1\u06F9)\n allowAgentPricing Boolean @default(false)\n /// \u06A9\u0641 \u0642\u06CC\u0645\u062A \u0648\u0627\u062D\u062F \u0628\u0631\u0627\u06CC \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0648\u0627\u0633\u0637\u0647 (\u0631\u06CC\u0627\u0644) \u2014 \u0627\u062E\u062A\u06CC\u0627\u0631\u06CC\n agentMinUnitPrice Int?\n smsOrderRegistered Boolean @default(true)\n smsPricingReady Boolean @default(true)\n smsPaymentReminder Boolean @default(true)\n smsCheckReview Boolean @default(true)\n smsShippingUpdate Boolean @default(true)\n supportPhone String?\n supportEmail String?\n supportWhatsapp String?\n supportTelegram String?\n supportInstagram String?\n /// \u062A\u0635\u0627\u0648\u06CC\u0631 \u062F\u0633\u062A\u0647\u200C\u0647\u0627\u06CC \u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: { trousers: dataUrl, summer: dataUrl, ... }\n categoryImagesJson Json?\n /// \u062A\u0639\u0627\u0631\u06CC\u0641 \u062F\u0633\u062A\u0647\u200C\u0647\u0627 (\u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644). \u0627\u06AF\u0631 \u062E\u0627\u0644\u06CC \u0628\u0627\u0634\u062F \u0627\u0632 \u0645\u0642\u0627\u062F\u06CC\u0631 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u062F \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0645\u06CC\u200C\u0634\u0648\u062F.\n categoryDefsJson Json?\n updatedAt DateTime @updatedAt\n}\n\n/// \u0628\u0646\u0631\u0647\u0627\u06CC \u0642\u0627\u0628\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u062E\u0634\u200C\u0647\u0627\u06CC \u0627\u067E \u06A9\u0627\u0631\u0628\u0631\nmodel AppBanner {\n id String @id @default(cuid())\n slot String\n title String\n subtitle String?\n ctaLabel String?\n ctaLink String?\n /// \u0644\u06CC\u0646\u06A9 \u06A9\u0644\u06CC\u06A9 \u0631\u0648\u06CC \u062A\u0635\u0648\u06CC\u0631 \u0628\u0646\u0631 (\u0645\u0633\u062A\u0642\u0644 \u0627\u0632 \u0644\u06CC\u0646\u06A9 \u062F\u06A9\u0645\u0647)\n bannerLink String?\n imageUrl String?\n displayOrder Int @default(0)\n isActive Boolean @default(true)\n showTitle Boolean @default(true)\n showSubtitle Boolean @default(true)\n showCta Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@index([slot, isActive, displayOrder])\n}\n\nmodel AdminNotification {\n id String @id @default(cuid())\n title String\n body String\n tone NotificationTone? @default(info)\n link String?\n isRead Boolean @default(false)\n sentAt DateTime @default(now())\n}\n\nmodel CustomerNotification {\n id String @id @default(cuid())\n customerId String\n orderId String?\n event String\n title String\n body String\n tone NotificationTone? @default(info)\n link String?\n isRead Boolean @default(false)\n smsSent Boolean @default(false)\n sentAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n order Order? @relation(fields: [orderId], references: [id], onDelete: SetNull)\n\n @@index([customerId, isRead])\n @@index([sentAt])\n}\n\nmodel InternalMessage {\n id String @id @default(cuid())\n senderName String\n subject String\n preview String\n link String?\n isRead Boolean @default(false)\n sentAt DateTime @default(now())\n}\n\nmodel MeetingInteraction {\n id String @id @default(cuid())\n customerId String\n agentId String\n type InteractionType @default(in_person)\n title String\n description String?\n subject String?\n content String?\n date String\n time String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customer Customer @relation("MeetingCustomer", fields: [customerId], references: [id], onDelete: Cascade)\n agent Customer @relation("MeetingAgent", fields: [agentId], references: [id], onDelete: Cascade)\n\n @@index([customerId])\n @@index([agentId])\n @@index([date])\n}\n\nmodel Reminder {\n id String @id @default(cuid())\n ownerId String\n customerId String\n title String\n description String?\n note String?\n date String\n time String\n interactionType InteractionType @default(note)\n completed Boolean @default(false)\n completedAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n owner Customer @relation("ReminderOwner", fields: [ownerId], references: [id], onDelete: Cascade)\n customer Customer @relation("ReminderCustomer", fields: [customerId], references: [id], onDelete: Cascade)\n\n @@index([ownerId, completed])\n @@index([customerId])\n @@index([date])\n}\n\nmodel ProductFavorite {\n id String @id @default(cuid())\n customerId String\n productId String\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Cascade)\n\n @@unique([customerId, productId])\n @@index([customerId])\n}\n\nmodel CustomerLevelDef {\n id String @id @default(cuid())\n code String @unique\n label String\n sortOrder Int @default(0)\n criteriaJson Json?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n benefits LevelBenefit[]\n customers Customer[]\n}\n\nmodel LevelBenefit {\n id String @id @default(cuid())\n levelId String\n title String\n description String?\n\n level CustomerLevelDef @relation(fields: [levelId], references: [id], onDelete: Cascade)\n\n @@index([levelId])\n}\n\nmodel CatalogRequest {\n id String @id @default(cuid())\n customerId String\n status CatalogRequestStatus @default(new)\n note String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n items CatalogRequestItem[]\n\n @@index([customerId])\n @@index([status])\n}\n\nmodel CatalogRequestItem {\n id String @id @default(cuid())\n requestId String\n productId String\n quantity Int @default(1)\n holderType CatalogItemHolderType @default(warehouse)\n holderCustomerId String?\n\n request CatalogRequest @relation(fields: [requestId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Restrict)\n movements CatalogItemMovement[]\n\n @@index([requestId])\n @@index([productId])\n}\n\nmodel CatalogItemMovement {\n id String @id @default(cuid())\n itemId String\n fromHolder String\n toHolder String\n note String?\n movedAt DateTime @default(now())\n\n item CatalogRequestItem @relation(fields: [itemId], references: [id], onDelete: Cascade)\n\n @@index([itemId])\n}\n\nmodel ProductSuggestion {\n id String @id @default(cuid())\n customerId String\n productId String\n note String?\n createdByAdminId String?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Cascade)\n\n @@index([customerId, isActive])\n @@index([productId])\n}\n\n/// \u06CC\u06A9 \u0631\u062F\u06CC\u0641 \u0628\u0631\u0627\u06CC \u062A\u0639\u0631\u0641\u0647\u060C \u0645\u0648\u062C\u0648\u062F\u06CC \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648\u0627\u0631\u06CC\u0632 \u067E\u06CC\u0627\u0645\u06A9\nmodel SmsWallet {\n id String @id @default("default")\n balanceToman Int @default(0)\n pricePerPart Int @default(250)\n blocked Boolean @default(false)\n cardNumber String @default("6219861941033817")\n sheba String @default("IR805606118280056043604401")\n accountName String @default("\u062D\u0633\u06CC\u0646 \u0645\u0646\u062A\u0638\u0631")\n yellowThreshold Int @default(10000)\n redThreshold Int @default(1000)\n updatedAt DateTime @updatedAt\n}\n\nmodel SmsUsage {\n id String @id @default(cuid())\n parts Int\n costToman Int\n createdAt DateTime @default(now())\n\n @@index([createdAt])\n}\n\nmodel SmsTopUp {\n id String @id @default(cuid())\n amountToman Int\n note String?\n createdAt DateTime @default(now())\n}\n', + "inlineSchemaHash": "871fb11be2bb388e7c10271ba153fef83ae63d9463090ec1bde90da7acd73b3d", "copyEngine": true }; var fs = require("fs"); @@ -7017,7 +7006,7 @@ var require_client = __commonJS({ config.dirname = path.join(process.cwd(), alternativePath); config.isBundled = true; } - config.runtimeDataModel = JSON.parse('{"models":{"Company":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"slug","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"logoUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"maxMeteragePerInvoice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062E\u0627\u0644\u06CC \u06CC\u0639\u0646\u06CC \u0627\u0632 \u062A\u0646\u0638\u06CC\u0645\u0627\u062A \u0633\u06CC\u0633\u062A\u0645 \u0627\u0631\u062B \u0645\u06CC\u200C\u0628\u0631\u062F"},{"name":"cashInvoiceValidityHours","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":8,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceValidUntilHour","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"bankAccounts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"BankAccount","nativeType":null,"relationName":"BankAccountToCompany","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"products","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CompanyToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CompanyToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CompanyToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"BankAccount":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bankName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accountHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accountNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cardNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"iban","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"BankAccountToCompany","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"cashReceipts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CashPaymentReceipt","nativeType":null,"relationName":"BankAccountToCashPaymentReceipt","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Product":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"minMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":30,"isGenerated":false,"isUpdatedAt":false},{"name":"orderMultiplier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":10,"isGenerated":false,"isUpdatedAt":false},{"name":"basePrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0642\u06CC\u0645\u062A \u0647\u0631 \u0645\u062A\u0631 (\u062A\u0648\u0645\u0627\u0646) \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF / \u067E\u06CC\u0634\u200C\u0641\u0627\u06A9\u062A\u0648\u0631"},{"name":"stock","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"usageCategory","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"other","isGenerated":false,"isUpdatedAt":false,"documentation":"\u0641\u06CC\u0644\u062F\u0647\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF \u0645\u0648\u06A9\u0627\u067E (\u0627\u067E \u06A9\u0627\u0631\u0628\u0631)"},{"name":"season","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"all_season","isGenerated":false,"isUpdatedAt":false},{"name":"widthCm","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"composition","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"weightGrams","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"weaveType","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"colorsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tagsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"imageUrlsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subtitle","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"rollMeters","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":50,"isGenerated":false,"isUpdatedAt":false},{"name":"isNew","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"brandId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToProduct","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"brand","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Brand","nativeType":null,"relationName":"BrandToProduct","relationFromFields":["brandId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"cartItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CartItem","nativeType":null,"relationName":"CartItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orderItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderItem","nativeType":null,"relationName":"OrderItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"favorites","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductFavorite","nativeType":null,"relationName":"ProductToProductFavorite","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"catalogRequestItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogRequestItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"productSuggestions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductSuggestion","nativeType":null,"relationName":"ProductToProductSuggestion","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["companyId","code"]],"uniqueIndexes":[{"name":null,"fields":["companyId","code"]}],"isGenerated":false},"Customer":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"firstName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"lastName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"nationalId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"customerType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CustomerType","nativeType":null,"default":"wholesale","isGenerated":false,"isUpdatedAt":false},{"name":"appRole","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"AppUserRole","nativeType":null,"default":"customer","isGenerated":false,"isUpdatedAt":false,"documentation":"\u0646\u0642\u0634 \u062F\u0631 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: \u0645\u0634\u062A\u0631\u06CC \u0639\u0627\u062F\u06CC \u06CC\u0627 \u0648\u0627\u0633\u0637\u0647"},{"name":"agentCode","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"businessName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"nextLevelLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"pointsToNext","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelProgress","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"assignedAgentId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarLetter","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarColor","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"address","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0622\u062F\u0631\u0633 \u0648\u0627\u0633\u0637\u0647 (\u062F\u0631 \u067E\u0631\u0648\u0641\u0627\u06CC\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631)"},{"name":"companyId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelDefId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToCustomer","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"levelDef","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerLevelDef","nativeType":null,"relationName":"CustomerToCustomerLevelDef","relationFromFields":["levelDefId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"assignedAgent","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"AgentCustomers","relationFromFields":["assignedAgentId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"agentCustomers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"AgentCustomers","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"carts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Cart","nativeType":null,"relationName":"CartToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CustomerToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"notifications","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerNotification","nativeType":null,"relationName":"CustomerToCustomerNotification","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"meetings","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"MeetingInteraction","nativeType":null,"relationName":"MeetingCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"meetingsAsAgent","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"MeetingInteraction","nativeType":null,"relationName":"MeetingAgent","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"reminders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Reminder","nativeType":null,"relationName":"ReminderOwner","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"remindersAbout","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Reminder","nativeType":null,"relationName":"ReminderCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"favorites","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductFavorite","nativeType":null,"relationName":"CustomerToProductFavorite","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"catalogRequests","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequest","nativeType":null,"relationName":"CatalogRequestToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"productSuggestions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductSuggestion","nativeType":null,"relationName":"CustomerToProductSuggestion","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customerBrands","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerBrand","nativeType":null,"relationName":"CustomerToCustomerBrand","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"addresses","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerAddress","nativeType":null,"relationName":"CustomerToCustomerAddress","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerAddress":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"label","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"text","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isDefault","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerAddress","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"AdminUser":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"fullName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"email","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"passwordHash","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"role","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"AdminRole","nativeType":null,"default":"admin","isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"lastLoginAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OtpChallenge":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"firstName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"lastName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRegister","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"attempts","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"expiresAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Cart":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CartToCustomer","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CartItem","nativeType":null,"relationName":"CartToCartItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CartItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"cartId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"catalogCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"meterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cart","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Cart","nativeType":null,"relationName":"CartToCartItem","relationFromFields":["cartId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CartItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["cartId","productId"]],"uniqueIndexes":[{"name":null,"fields":["cartId","productId"]}],"isGenerated":false},"Order":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"settlementType","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"SettlementType","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkMode","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CheckRegistrationMode","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"OrderStatus","nativeType":null,"default":"awaiting_review","isGenerated":false,"isUpdatedAt":false},{"name":"totalMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"totalAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"shippingCost","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"totalDiscount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"finalAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkRassDays","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkRassDate","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceExpiresAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cashReminderSentAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0632\u0645\u0627\u0646 \u0627\u0631\u0633\u0627\u0644 \u06CC\u0627\u062F\u0622\u0648\u0631\u06CC \u067E\u0627\u06CC\u0627\u0646 \u0645\u0647\u0644\u062A \u067E\u0631\u062F\u0627\u062E\u062A \u062A\u0627 \u062F\u0648\u0628\u0627\u0631\u0647 \u0627\u0631\u0633\u0627\u0644 \u0646\u0634\u0648\u062F"},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToOrder","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToOrder","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderItem","nativeType":null,"relationName":"OrderToOrderItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"checks","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Check","nativeType":null,"relationName":"CheckToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"cashReceipt","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CashPaymentReceipt","nativeType":null,"relationName":"CashPaymentReceiptToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"shipment","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Shipment","nativeType":null,"relationName":"OrderToShipment","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"statusHistory","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatusHistory","nativeType":null,"relationName":"OrderToOrderStatusHistory","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"notifications","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerNotification","nativeType":null,"relationName":"CustomerNotificationToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OrderItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"catalogCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productCode","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"requestedMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"confirmedMeterage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitDiscount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"lineTotal","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToOrderItem","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"OrderItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OrderStatusHistory":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"fromStatus","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatus","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"toStatus","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatus","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"changedBy","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"reason","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"changedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToOrderStatusHistory","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Check":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"row","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"amount","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"dueDate","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"sayadId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerNationalId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerFirstName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerLastName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bankName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"branchName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"frontImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"backImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"mode","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CheckRegistrationMode","nativeType":null,"default":"full","isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CheckStatus","nativeType":null,"default":"pending_review","isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CheckToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CashPaymentReceipt":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"amount","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"paidAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"transferDate","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"transferTime","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"trackingNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"destinationAccountId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"receiptImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expiresAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CashPaymentStatus","nativeType":null,"default":"pending_review","isGenerated":false,"isUpdatedAt":false},{"name":"submittedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CashPaymentReceiptToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"destinationAccount","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"BankAccount","nativeType":null,"relationName":"BankAccountToCashPaymentReceipt","relationFromFields":["destinationAccountId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Shipment":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"carrier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"trackingNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"meterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"ShipmentStatus","nativeType":null,"default":"preparing","isGenerated":false,"isUpdatedAt":false},{"name":"shippedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"deliveredAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToShipment","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SystemSettings":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"default","isGenerated":false,"isUpdatedAt":false},{"name":"maxMeteragePerInvoice","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":5000,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceValidityHours","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":8,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCheck","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCash","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"minOrderRollsPerProduct","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062D\u062F\u0627\u0642\u0644 \u0633\u0641\u0627\u0631\u0634: \u062A\u0639\u062F\u0627\u062F \u0637\u0627\u0642\u0647 \u0627\u0632 \u0647\u0631 \u0645\u062D\u0635\u0648\u0644 (\xA7\u06F1\u06F9)"},{"name":"showCatalogPublicPrice","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0646\u0645\u0627\u06CC\u0634 \u0642\u06CC\u0645\u062A \u0639\u0645\u0648\u0645\u06CC \u062F\u0631 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF (\u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u062E\u0627\u0645\u0648\u0634)"},{"name":"allowAgentPricing","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0627\u062C\u0627\u0632\u0647 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u062A\u0648\u0633\u0637 \u0648\u0627\u0633\u0637\u0647 (\xA7\u06F1\u06F9)"},{"name":"agentMinUnitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u06A9\u0641 \u0642\u06CC\u0645\u062A \u0648\u0627\u062D\u062F \u0628\u0631\u0627\u06CC \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0648\u0627\u0633\u0637\u0647 (\u0631\u06CC\u0627\u0644) \u2014 \u0627\u062E\u062A\u06CC\u0627\u0631\u06CC"},{"name":"smsOrderRegistered","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsPricingReady","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsPaymentReminder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsCheckReview","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsShippingUpdate","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"supportPhone","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportEmail","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"categoryImagesJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062A\u0635\u0627\u0648\u06CC\u0631 \u062F\u0633\u062A\u0647\u200C\u0647\u0627\u06CC \u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: { trousers: dataUrl, summer: dataUrl, ... }"},{"name":"categoryDefsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062A\u0639\u0627\u0631\u06CC\u0641 \u062F\u0633\u062A\u0647\u200C\u0647\u0627 (\u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644). \u0627\u06AF\u0631 \u062E\u0627\u0644\u06CC \u0628\u0627\u0634\u062F \u0627\u0632 \u0645\u0642\u0627\u062F\u06CC\u0631 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u062F \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0645\u06CC\u200C\u0634\u0648\u062F."},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"AppBanner":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"slot","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subtitle","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ctaLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ctaLink","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"imageUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showTitle","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showSubtitle","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showCta","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false,"documentation":"\u0628\u0646\u0631\u0647\u0627\u06CC \u0642\u0627\u0628\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u062E\u0634\u200C\u0647\u0627\u06CC \u0627\u067E \u06A9\u0627\u0631\u0628\u0631"},"AdminNotification":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"body","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tone","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"NotificationTone","nativeType":null,"default":"info","isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerNotification":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"event","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"body","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tone","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"NotificationTone","nativeType":null,"default":"info","isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"smsSent","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerNotification","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CustomerNotificationToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"InternalMessage":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"senderName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subject","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"preview","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"MeetingInteraction":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"agentId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"type","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"InteractionType","nativeType":null,"default":"in_person","isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subject","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"content","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"date","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"time","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"MeetingCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"agent","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"MeetingAgent","relationFromFields":["agentId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Reminder":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"ownerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"date","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"time","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"interactionType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"InteractionType","nativeType":null,"default":"note","isGenerated":false,"isUpdatedAt":false},{"name":"completed","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"completedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"owner","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"ReminderOwner","relationFromFields":["ownerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"ReminderCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"ProductFavorite":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToProductFavorite","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"ProductToProductFavorite","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["customerId","productId"]],"uniqueIndexes":[{"name":null,"fields":["customerId","productId"]}],"isGenerated":false},"Brand":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"slug","kind":"scalar","isList":false,"isRequired":false,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerBrand","nativeType":null,"relationName":"BrandToCustomerBrand","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"products","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"BrandToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerBrand":{"dbName":null,"schema":null,"fields":[{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"brandId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerBrand","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"brand","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Brand","nativeType":null,"relationName":"BrandToCustomerBrand","relationFromFields":["brandId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":{"name":null,"fields":["customerId","brandId"]},"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerLevelDef":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"label","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"sortOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"criteriaJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"benefits","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"LevelBenefit","nativeType":null,"relationName":"CustomerLevelDefToLevelBenefit","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerLevelDef","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"LevelBenefit":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"levelId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"level","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerLevelDef","nativeType":null,"relationName":"CustomerLevelDefToLevelBenefit","relationFromFields":["levelId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogRequest":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CatalogRequestStatus","nativeType":null,"default":"new","isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CatalogRequestToCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogRequestToCatalogRequestItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogRequestItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"requestId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"quantity","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1,"isGenerated":false,"isUpdatedAt":false},{"name":"holderType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CatalogItemHolderType","nativeType":null,"default":"warehouse","isGenerated":false,"isUpdatedAt":false},{"name":"holderCustomerId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"request","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequest","nativeType":null,"relationName":"CatalogRequestToCatalogRequestItem","relationFromFields":["requestId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CatalogRequestItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"movements","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogItemMovement","nativeType":null,"relationName":"CatalogItemMovementToCatalogRequestItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogItemMovement":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"itemId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"fromHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"toHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"movedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"item","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogItemMovementToCatalogRequestItem","relationFromFields":["itemId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"ProductSuggestion":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdByAdminId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToProductSuggestion","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"ProductToProductSuggestion","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SmsWallet":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"default","isGenerated":false,"isUpdatedAt":false},{"name":"balanceToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"pricePerPart","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":250,"isGenerated":false,"isUpdatedAt":false},{"name":"blocked","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"cardNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"6219861941033817","isGenerated":false,"isUpdatedAt":false},{"name":"sheba","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"IR805606118280056043604401","isGenerated":false,"isUpdatedAt":false},{"name":"accountName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"\u062D\u0633\u06CC\u0646 \u0645\u0646\u062A\u0638\u0631","isGenerated":false,"isUpdatedAt":false},{"name":"yellowThreshold","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":10000,"isGenerated":false,"isUpdatedAt":false},{"name":"redThreshold","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1000,"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false,"documentation":"\u06CC\u06A9 \u0631\u062F\u06CC\u0641 \u0628\u0631\u0627\u06CC \u062A\u0639\u0631\u0641\u0647\u060C \u0645\u0648\u062C\u0648\u062F\u06CC \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648\u0627\u0631\u06CC\u0632 \u067E\u06CC\u0627\u0645\u06A9"},"SmsUsage":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"parts","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"costToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SmsTopUp":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"amountToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false}},"enums":{"SettlementType":{"values":[{"name":"cash","dbName":null},{"name":"check","dbName":null}],"dbName":null},"CheckRegistrationMode":{"values":[{"name":"full","dbName":null},{"name":"brief","dbName":null}],"dbName":null},"OrderStatus":{"values":[{"name":"cart","dbName":null},{"name":"awaiting_settlement","dbName":null},{"name":"cash_in_progress","dbName":null},{"name":"check_in_progress","dbName":null},{"name":"submitted","dbName":null},{"name":"awaiting_review","dbName":null},{"name":"pricing","dbName":null},{"name":"needs_correction","dbName":null},{"name":"awaiting_settlement_fix","dbName":null},{"name":"cash_invoice_issued","dbName":null},{"name":"awaiting_cash_payment","dbName":null},{"name":"cash_payment_submitted","dbName":null},{"name":"awaiting_cash_confirmation","dbName":null},{"name":"cash_confirmed","dbName":null},{"name":"awaiting_check_review","dbName":null},{"name":"check_needs_fix","dbName":null},{"name":"check_rejected","dbName":null},{"name":"checks_approved","dbName":null},{"name":"final_approved","dbName":null},{"name":"preparing","dbName":null},{"name":"ready_to_ship","dbName":null},{"name":"shipped","dbName":null},{"name":"delivered","dbName":null},{"name":"cancelled","dbName":null},{"name":"rejected","dbName":null},{"name":"expired","dbName":null}],"dbName":null},"CheckStatus":{"values":[{"name":"pending_review","dbName":null},{"name":"approved","dbName":null},{"name":"rejected","dbName":null}],"dbName":null},"CashPaymentStatus":{"values":[{"name":"pending_review","dbName":null},{"name":"approved","dbName":null},{"name":"rejected","dbName":null},{"name":"expired","dbName":null}],"dbName":null},"ShipmentStatus":{"values":[{"name":"preparing","dbName":null},{"name":"ready","dbName":null},{"name":"shipped","dbName":null},{"name":"delivered","dbName":null}],"dbName":null},"CustomerType":{"values":[{"name":"wholesale","dbName":null},{"name":"retail","dbName":null}],"dbName":null},"AppUserRole":{"values":[{"name":"customer","dbName":null},{"name":"agent","dbName":null}],"dbName":null},"InteractionType":{"values":[{"name":"in_person","dbName":null},{"name":"call","dbName":null},{"name":"message","dbName":null},{"name":"note","dbName":null}],"dbName":null},"ProductSeason":{"values":[{"name":"summer","dbName":null},{"name":"winter","dbName":null},{"name":"all_season","dbName":null}],"dbName":null},"ProductUsageCategory":{"values":[{"name":"trousers","dbName":null},{"name":"suit","dbName":null},{"name":"shirt","dbName":null},{"name":"other","dbName":null}],"dbName":null},"AdminRole":{"values":[{"name":"admin","dbName":null},{"name":"sales","dbName":null},{"name":"finance","dbName":null},{"name":"warehouse","dbName":null}],"dbName":null},"NotificationTone":{"values":[{"name":"info","dbName":null},{"name":"warning","dbName":null},{"name":"success","dbName":null},{"name":"danger","dbName":null}],"dbName":null},"CatalogRequestStatus":{"values":[{"name":"new","dbName":null},{"name":"approved","dbName":null},{"name":"ready_to_ship","dbName":null},{"name":"delivered","dbName":null},{"name":"returned","dbName":null},{"name":"cancelled","dbName":null}],"dbName":null,"documentation":"\u06AF\u0631\u062F\u0634 \u06A9\u0627\u0644\u06CC\u062A\u0647 \u0641\u06CC\u0632\u06CC\u06A9\u06CC (\xA7\u06F7 \u0633\u0646\u062F)"},"CatalogItemHolderType":{"values":[{"name":"warehouse","dbName":null},{"name":"customer","dbName":null},{"name":"agent","dbName":null}],"dbName":null}},"types":{}}'); + config.runtimeDataModel = JSON.parse('{"models":{"Company":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"slug","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"logoUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"maxMeteragePerInvoice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062E\u0627\u0644\u06CC \u06CC\u0639\u0646\u06CC \u0627\u0632 \u062A\u0646\u0638\u06CC\u0645\u0627\u062A \u0633\u06CC\u0633\u062A\u0645 \u0627\u0631\u062B \u0645\u06CC\u200C\u0628\u0631\u062F"},{"name":"cashInvoiceValidityHours","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":8,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceValidUntilHour","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"bankAccounts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"BankAccount","nativeType":null,"relationName":"BankAccountToCompany","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"products","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CompanyToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CompanyToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CompanyToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"BankAccount":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bankName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accountHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accountNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cardNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"iban","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"BankAccountToCompany","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"cashReceipts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CashPaymentReceipt","nativeType":null,"relationName":"BankAccountToCashPaymentReceipt","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Product":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"specs","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":["Text",[]],"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0645\u0634\u062E\u0635\u0627\u062A \u0622\u0632\u0627\u062F \u0645\u062D\u0635\u0648\u0644 (\u0646\u0645\u0627\u06CC\u0634 \u062F\u0631 specs-extra \u0627\u067E)"},{"name":"minMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":30,"isGenerated":false,"isUpdatedAt":false},{"name":"orderMultiplier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":10,"isGenerated":false,"isUpdatedAt":false},{"name":"basePrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0642\u06CC\u0645\u062A \u0647\u0631 \u0645\u062A\u0631 (\u062A\u0648\u0645\u0627\u0646) \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF / \u067E\u06CC\u0634\u200C\u0641\u0627\u06A9\u062A\u0648\u0631"},{"name":"stock","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"usageCategory","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"other","isGenerated":false,"isUpdatedAt":false,"documentation":"\u0641\u06CC\u0644\u062F\u0647\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF \u0645\u0648\u06A9\u0627\u067E (\u0627\u067E \u06A9\u0627\u0631\u0628\u0631)"},{"name":"season","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"all_season","isGenerated":false,"isUpdatedAt":false},{"name":"widthCm","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"composition","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"weightGrams","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"weaveType","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"colorsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tagsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"imageUrlsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subtitle","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"rollMeters","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":50,"isGenerated":false,"isUpdatedAt":false},{"name":"isNew","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToProduct","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"cartItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CartItem","nativeType":null,"relationName":"CartItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orderItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderItem","nativeType":null,"relationName":"OrderItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"favorites","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductFavorite","nativeType":null,"relationName":"ProductToProductFavorite","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"catalogRequestItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogRequestItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"productSuggestions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductSuggestion","nativeType":null,"relationName":"ProductToProductSuggestion","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["companyId","code"]],"uniqueIndexes":[{"name":null,"fields":["companyId","code"]}],"isGenerated":false},"Customer":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"firstName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"lastName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"nationalId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"customerType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CustomerType","nativeType":null,"default":"wholesale","isGenerated":false,"isUpdatedAt":false},{"name":"appRole","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"AppUserRole","nativeType":null,"default":"customer","isGenerated":false,"isUpdatedAt":false,"documentation":"\u0646\u0642\u0634 \u062F\u0631 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: \u0645\u0634\u062A\u0631\u06CC \u0639\u0627\u062F\u06CC \u06CC\u0627 \u0648\u0627\u0633\u0637\u0647"},{"name":"agentCode","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"businessName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"nextLevelLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"pointsToNext","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelProgress","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"assignedAgentId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarLetter","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarColor","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"address","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0622\u062F\u0631\u0633 \u0648\u0627\u0633\u0637\u0647 (\u062F\u0631 \u067E\u0631\u0648\u0641\u0627\u06CC\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631)"},{"name":"companyId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelDefId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToCustomer","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"levelDef","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerLevelDef","nativeType":null,"relationName":"CustomerToCustomerLevelDef","relationFromFields":["levelDefId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"assignedAgent","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"AgentCustomers","relationFromFields":["assignedAgentId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"agentCustomers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"AgentCustomers","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"carts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Cart","nativeType":null,"relationName":"CartToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CustomerToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"notifications","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerNotification","nativeType":null,"relationName":"CustomerToCustomerNotification","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"meetings","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"MeetingInteraction","nativeType":null,"relationName":"MeetingCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"meetingsAsAgent","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"MeetingInteraction","nativeType":null,"relationName":"MeetingAgent","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"reminders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Reminder","nativeType":null,"relationName":"ReminderOwner","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"remindersAbout","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Reminder","nativeType":null,"relationName":"ReminderCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"favorites","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductFavorite","nativeType":null,"relationName":"CustomerToProductFavorite","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"catalogRequests","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequest","nativeType":null,"relationName":"CatalogRequestToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"productSuggestions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductSuggestion","nativeType":null,"relationName":"CustomerToProductSuggestion","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"addresses","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerAddress","nativeType":null,"relationName":"CustomerToCustomerAddress","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerAddress":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"label","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"text","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isDefault","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerAddress","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"AdminUser":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"fullName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"email","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"passwordHash","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"role","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"AdminRole","nativeType":null,"default":"admin","isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"lastLoginAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OtpChallenge":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"firstName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"lastName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRegister","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"attempts","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"expiresAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Cart":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CartToCustomer","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CartItem","nativeType":null,"relationName":"CartToCartItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CartItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"cartId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"catalogCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"meterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cart","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Cart","nativeType":null,"relationName":"CartToCartItem","relationFromFields":["cartId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CartItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["cartId","productId"]],"uniqueIndexes":[{"name":null,"fields":["cartId","productId"]}],"isGenerated":false},"Order":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"settlementType","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"SettlementType","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkMode","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CheckRegistrationMode","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"OrderStatus","nativeType":null,"default":"awaiting_review","isGenerated":false,"isUpdatedAt":false},{"name":"totalMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"totalAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"shippingCost","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"totalDiscount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"finalAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkRassDays","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkRassDate","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceExpiresAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cashReminderSentAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0632\u0645\u0627\u0646 \u0627\u0631\u0633\u0627\u0644 \u06CC\u0627\u062F\u0622\u0648\u0631\u06CC \u067E\u0627\u06CC\u0627\u0646 \u0645\u0647\u0644\u062A \u067E\u0631\u062F\u0627\u062E\u062A \u062A\u0627 \u062F\u0648\u0628\u0627\u0631\u0647 \u0627\u0631\u0633\u0627\u0644 \u0646\u0634\u0648\u062F"},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToOrder","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToOrder","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderItem","nativeType":null,"relationName":"OrderToOrderItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"checks","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Check","nativeType":null,"relationName":"CheckToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"cashReceipt","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CashPaymentReceipt","nativeType":null,"relationName":"CashPaymentReceiptToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"shipment","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Shipment","nativeType":null,"relationName":"OrderToShipment","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"statusHistory","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatusHistory","nativeType":null,"relationName":"OrderToOrderStatusHistory","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"notifications","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerNotification","nativeType":null,"relationName":"CustomerNotificationToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OrderItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"catalogCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productCode","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"requestedMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"confirmedMeterage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitDiscount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"lineTotal","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToOrderItem","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"OrderItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OrderStatusHistory":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"fromStatus","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatus","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"toStatus","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatus","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"changedBy","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"reason","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"changedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToOrderStatusHistory","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Check":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"row","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"amount","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"dueDate","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"sayadId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerNationalId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerFirstName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerLastName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bankName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"branchName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"frontImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"backImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"mode","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CheckRegistrationMode","nativeType":null,"default":"full","isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CheckStatus","nativeType":null,"default":"pending_review","isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CheckToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CashPaymentReceipt":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"amount","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"paidAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"transferDate","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"transferTime","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"trackingNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"destinationAccountId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"receiptImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expiresAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CashPaymentStatus","nativeType":null,"default":"pending_review","isGenerated":false,"isUpdatedAt":false},{"name":"submittedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CashPaymentReceiptToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"destinationAccount","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"BankAccount","nativeType":null,"relationName":"BankAccountToCashPaymentReceipt","relationFromFields":["destinationAccountId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Shipment":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"carrier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"trackingNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"meterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"ShipmentStatus","nativeType":null,"default":"preparing","isGenerated":false,"isUpdatedAt":false},{"name":"shippedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"deliveredAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToShipment","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SystemSettings":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"default","isGenerated":false,"isUpdatedAt":false},{"name":"maxMeteragePerInvoice","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":5000,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceValidityHours","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":8,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCheck","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCash","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCashCheck","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"minOrderRollsPerProduct","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062D\u062F\u0627\u0642\u0644 \u0633\u0641\u0627\u0631\u0634: \u062A\u0639\u062F\u0627\u062F \u0637\u0627\u0642\u0647 \u0627\u0632 \u0647\u0631 \u0645\u062D\u0635\u0648\u0644 (\xA7\u06F1\u06F9)"},{"name":"showCatalogPublicPrice","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0646\u0645\u0627\u06CC\u0634 \u0642\u06CC\u0645\u062A \u0639\u0645\u0648\u0645\u06CC \u062F\u0631 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF (\u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u062E\u0627\u0645\u0648\u0634)"},{"name":"allowAgentPricing","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0627\u062C\u0627\u0632\u0647 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u062A\u0648\u0633\u0637 \u0648\u0627\u0633\u0637\u0647 (\xA7\u06F1\u06F9)"},{"name":"agentMinUnitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u06A9\u0641 \u0642\u06CC\u0645\u062A \u0648\u0627\u062D\u062F \u0628\u0631\u0627\u06CC \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0648\u0627\u0633\u0637\u0647 (\u0631\u06CC\u0627\u0644) \u2014 \u0627\u062E\u062A\u06CC\u0627\u0631\u06CC"},{"name":"smsOrderRegistered","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsPricingReady","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsPaymentReminder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsCheckReview","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsShippingUpdate","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"supportPhone","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportEmail","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportWhatsapp","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportTelegram","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportInstagram","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"categoryImagesJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062A\u0635\u0627\u0648\u06CC\u0631 \u062F\u0633\u062A\u0647\u200C\u0647\u0627\u06CC \u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: { trousers: dataUrl, summer: dataUrl, ... }"},{"name":"categoryDefsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062A\u0639\u0627\u0631\u06CC\u0641 \u062F\u0633\u062A\u0647\u200C\u0647\u0627 (\u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644). \u0627\u06AF\u0631 \u062E\u0627\u0644\u06CC \u0628\u0627\u0634\u062F \u0627\u0632 \u0645\u0642\u0627\u062F\u06CC\u0631 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u062F \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0645\u06CC\u200C\u0634\u0648\u062F."},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"AppBanner":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"slot","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subtitle","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ctaLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ctaLink","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bannerLink","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0644\u06CC\u0646\u06A9 \u06A9\u0644\u06CC\u06A9 \u0631\u0648\u06CC \u062A\u0635\u0648\u06CC\u0631 \u0628\u0646\u0631 (\u0645\u0633\u062A\u0642\u0644 \u0627\u0632 \u0644\u06CC\u0646\u06A9 \u062F\u06A9\u0645\u0647)"},{"name":"imageUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showTitle","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showSubtitle","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showCta","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false,"documentation":"\u0628\u0646\u0631\u0647\u0627\u06CC \u0642\u0627\u0628\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u062E\u0634\u200C\u0647\u0627\u06CC \u0627\u067E \u06A9\u0627\u0631\u0628\u0631"},"AdminNotification":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"body","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tone","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"NotificationTone","nativeType":null,"default":"info","isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerNotification":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"event","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"body","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tone","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"NotificationTone","nativeType":null,"default":"info","isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"smsSent","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerNotification","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CustomerNotificationToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"InternalMessage":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"senderName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subject","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"preview","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"MeetingInteraction":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"agentId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"type","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"InteractionType","nativeType":null,"default":"in_person","isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subject","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"content","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"date","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"time","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"MeetingCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"agent","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"MeetingAgent","relationFromFields":["agentId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Reminder":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"ownerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"date","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"time","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"interactionType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"InteractionType","nativeType":null,"default":"note","isGenerated":false,"isUpdatedAt":false},{"name":"completed","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"completedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"owner","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"ReminderOwner","relationFromFields":["ownerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"ReminderCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"ProductFavorite":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToProductFavorite","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"ProductToProductFavorite","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["customerId","productId"]],"uniqueIndexes":[{"name":null,"fields":["customerId","productId"]}],"isGenerated":false},"CustomerLevelDef":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"label","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"sortOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"criteriaJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"benefits","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"LevelBenefit","nativeType":null,"relationName":"CustomerLevelDefToLevelBenefit","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerLevelDef","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"LevelBenefit":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"levelId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"level","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerLevelDef","nativeType":null,"relationName":"CustomerLevelDefToLevelBenefit","relationFromFields":["levelId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogRequest":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CatalogRequestStatus","nativeType":null,"default":"new","isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CatalogRequestToCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogRequestToCatalogRequestItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogRequestItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"requestId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"quantity","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1,"isGenerated":false,"isUpdatedAt":false},{"name":"holderType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CatalogItemHolderType","nativeType":null,"default":"warehouse","isGenerated":false,"isUpdatedAt":false},{"name":"holderCustomerId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"request","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequest","nativeType":null,"relationName":"CatalogRequestToCatalogRequestItem","relationFromFields":["requestId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CatalogRequestItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"movements","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogItemMovement","nativeType":null,"relationName":"CatalogItemMovementToCatalogRequestItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogItemMovement":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"itemId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"fromHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"toHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"movedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"item","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogItemMovementToCatalogRequestItem","relationFromFields":["itemId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"ProductSuggestion":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdByAdminId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToProductSuggestion","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"ProductToProductSuggestion","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SmsWallet":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"default","isGenerated":false,"isUpdatedAt":false},{"name":"balanceToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"pricePerPart","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":250,"isGenerated":false,"isUpdatedAt":false},{"name":"blocked","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"cardNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"6219861941033817","isGenerated":false,"isUpdatedAt":false},{"name":"sheba","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"IR805606118280056043604401","isGenerated":false,"isUpdatedAt":false},{"name":"accountName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"\u062D\u0633\u06CC\u0646 \u0645\u0646\u062A\u0638\u0631","isGenerated":false,"isUpdatedAt":false},{"name":"yellowThreshold","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":10000,"isGenerated":false,"isUpdatedAt":false},{"name":"redThreshold","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1000,"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false,"documentation":"\u06CC\u06A9 \u0631\u062F\u06CC\u0641 \u0628\u0631\u0627\u06CC \u062A\u0639\u0631\u0641\u0647\u060C \u0645\u0648\u062C\u0648\u062F\u06CC \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648\u0627\u0631\u06CC\u0632 \u067E\u06CC\u0627\u0645\u06A9"},"SmsUsage":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"parts","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"costToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SmsTopUp":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"amountToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false}},"enums":{"SettlementType":{"values":[{"name":"cash","dbName":null},{"name":"check","dbName":null},{"name":"cash_check","dbName":null}],"dbName":null},"CheckRegistrationMode":{"values":[{"name":"full","dbName":null},{"name":"brief","dbName":null}],"dbName":null},"OrderStatus":{"values":[{"name":"cart","dbName":null},{"name":"awaiting_settlement","dbName":null},{"name":"cash_in_progress","dbName":null},{"name":"check_in_progress","dbName":null},{"name":"submitted","dbName":null},{"name":"awaiting_review","dbName":null},{"name":"pricing","dbName":null},{"name":"needs_correction","dbName":null},{"name":"awaiting_settlement_fix","dbName":null},{"name":"cash_invoice_issued","dbName":null},{"name":"awaiting_cash_payment","dbName":null},{"name":"cash_payment_submitted","dbName":null},{"name":"awaiting_cash_confirmation","dbName":null},{"name":"cash_confirmed","dbName":null},{"name":"awaiting_check_review","dbName":null},{"name":"check_needs_fix","dbName":null},{"name":"check_rejected","dbName":null},{"name":"checks_approved","dbName":null},{"name":"final_approved","dbName":null},{"name":"preparing","dbName":null},{"name":"ready_to_ship","dbName":null},{"name":"shipped","dbName":null},{"name":"delivered","dbName":null},{"name":"cancelled","dbName":null},{"name":"rejected","dbName":null},{"name":"expired","dbName":null}],"dbName":null},"CheckStatus":{"values":[{"name":"pending_review","dbName":null},{"name":"approved","dbName":null},{"name":"rejected","dbName":null}],"dbName":null},"CashPaymentStatus":{"values":[{"name":"pending_review","dbName":null},{"name":"approved","dbName":null},{"name":"rejected","dbName":null},{"name":"expired","dbName":null}],"dbName":null},"ShipmentStatus":{"values":[{"name":"preparing","dbName":null},{"name":"ready","dbName":null},{"name":"shipped","dbName":null},{"name":"delivered","dbName":null}],"dbName":null},"CustomerType":{"values":[{"name":"wholesale","dbName":null},{"name":"retail","dbName":null}],"dbName":null},"AppUserRole":{"values":[{"name":"customer","dbName":null},{"name":"agent","dbName":null}],"dbName":null},"InteractionType":{"values":[{"name":"in_person","dbName":null},{"name":"call","dbName":null},{"name":"message","dbName":null},{"name":"note","dbName":null}],"dbName":null},"ProductSeason":{"values":[{"name":"summer","dbName":null},{"name":"winter","dbName":null},{"name":"all_season","dbName":null}],"dbName":null},"ProductUsageCategory":{"values":[{"name":"trousers","dbName":null},{"name":"suit","dbName":null},{"name":"shirt","dbName":null},{"name":"other","dbName":null}],"dbName":null},"AdminRole":{"values":[{"name":"admin","dbName":null},{"name":"sales","dbName":null},{"name":"finance","dbName":null},{"name":"warehouse","dbName":null}],"dbName":null},"NotificationTone":{"values":[{"name":"info","dbName":null},{"name":"warning","dbName":null},{"name":"success","dbName":null},{"name":"danger","dbName":null}],"dbName":null},"CatalogRequestStatus":{"values":[{"name":"new","dbName":null},{"name":"approved","dbName":null},{"name":"ready_to_ship","dbName":null},{"name":"delivered","dbName":null},{"name":"returned","dbName":null},{"name":"cancelled","dbName":null}],"dbName":null,"documentation":"\u06AF\u0631\u062F\u0634 \u06A9\u0627\u0644\u06CC\u062A\u0647 \u0641\u06CC\u0632\u06CC\u06A9\u06CC (\xA7\u06F7 \u0633\u0646\u062F)"},"CatalogItemHolderType":{"values":[{"name":"warehouse","dbName":null},{"name":"customer","dbName":null},{"name":"agent","dbName":null}],"dbName":null}},"types":{}}'); defineDmmfProperty2(exports2.Prisma, config.runtimeDataModel); config.engineWasm = void 0; config.compilerWasm = void 0; @@ -8739,6 +8728,17 @@ async function main() { }); await prisma.company.createMany({ data: [ + { + id: "company-nademitex", + name: "\u0646\u0627\u062F\u0645\u06CC \u062A\u06A9\u0633", + slug: "nademitex", + description: "\u0634\u0631\u06A9\u062A \u0627\u0635\u0644\u06CC \u2014 \u062F\u0631\u06CC\u0627\u0641\u062A \u062A\u0645\u0627\u0645 \u067E\u0631\u062F\u0627\u062E\u062A\u200C\u0647\u0627\u06CC \u0627\u067E", + isActive: true, + displayOrder: 0, + maxMeteragePerInvoice: null, + cashInvoiceValidityHours: 8, + cashInvoiceValidUntilHour: 17 + }, { id: "company-par", name: "\u0634\u0631\u06A9\u062A \u067E\u064E\u0631", @@ -8767,9 +8767,9 @@ async function main() { data: [ { id: "ba-par-1", - companyId: "company-par", + companyId: "company-nademitex", bankName: "\u0628\u0627\u0646\u06A9 \u0645\u0644\u06CC", - accountHolder: "\u0634\u0631\u06A9\u062A \u067E\u064E\u0631", + accountHolder: "\u0646\u0627\u062F\u0645\u06CC \u062A\u06A9\u0633", accountNumber: "0123456789", cardNumber: "6037-9912-3456-7890", iban: "IR120170000000012345678901", @@ -8778,9 +8778,9 @@ async function main() { }, { id: "ba-par-2", - companyId: "company-par", + companyId: "company-nademitex", bankName: "\u0628\u0627\u0646\u06A9 \u0635\u0627\u062F\u0631\u0627\u062A", - accountHolder: "\u0634\u0631\u06A9\u062A \u067E\u064E\u0631", + accountHolder: "\u0646\u0627\u062F\u0645\u06CC \u062A\u06A9\u0633", accountNumber: "9876543210", cardNumber: "6037-6912-3456-7891", iban: "IR620190000000098765432101", @@ -8789,9 +8789,9 @@ async function main() { }, { id: "ba-fam-1", - companyId: "company-fam-baft", + companyId: "company-nademitex", bankName: "\u0628\u0627\u0646\u06A9 \u0645\u0644\u062A", - accountHolder: "\u0641\u0627\u0645\u200C\u0628\u0627\u0641\u062A", + accountHolder: "\u0646\u0627\u062F\u0645\u06CC \u062A\u06A9\u0633", accountNumber: "1122334455", cardNumber: "6104-3378-9012-3456", iban: "IR450120000000011223344556", diff --git a/runtime/server.cjs b/runtime/server.cjs index f697e5a..2fe5903 100644 --- a/runtime/server.cjs +++ b/runtime/server.cjs @@ -121771,6 +121771,7 @@ var require_client = __commonJS({ code: "code", color: "color", description: "description", + specs: "specs", minMeterage: "minMeterage", orderMultiplier: "orderMultiplier", basePrice: "basePrice", @@ -121788,7 +121789,6 @@ var require_client = __commonJS({ subtitle: "subtitle", rollMeters: "rollMeters", isNew: "isNew", - brandId: "brandId", createdAt: "createdAt", updatedAt: "updatedAt" }; @@ -121975,6 +121975,7 @@ var require_client = __commonJS({ cashInvoiceValidityHours: "cashInvoiceValidityHours", defaultSettlementCheck: "defaultSettlementCheck", defaultSettlementCash: "defaultSettlementCash", + defaultSettlementCashCheck: "defaultSettlementCashCheck", minOrderRollsPerProduct: "minOrderRollsPerProduct", showCatalogPublicPrice: "showCatalogPublicPrice", allowAgentPricing: "allowAgentPricing", @@ -121986,6 +121987,9 @@ var require_client = __commonJS({ smsShippingUpdate: "smsShippingUpdate", supportPhone: "supportPhone", supportEmail: "supportEmail", + supportWhatsapp: "supportWhatsapp", + supportTelegram: "supportTelegram", + supportInstagram: "supportInstagram", categoryImagesJson: "categoryImagesJson", categoryDefsJson: "categoryDefsJson", updatedAt: "updatedAt" @@ -121997,6 +122001,7 @@ var require_client = __commonJS({ subtitle: "subtitle", ctaLabel: "ctaLabel", ctaLink: "ctaLink", + bannerLink: "bannerLink", imageUrl: "imageUrl", displayOrder: "displayOrder", isActive: "isActive", @@ -122072,21 +122077,6 @@ var require_client = __commonJS({ productId: "productId", createdAt: "createdAt" }; - exports2.Prisma.BrandScalarFieldEnum = { - id: "id", - name: "name", - slug: "slug", - description: "description", - isActive: "isActive", - displayOrder: "displayOrder", - createdAt: "createdAt", - updatedAt: "updatedAt" - }; - exports2.Prisma.CustomerBrandScalarFieldEnum = { - customerId: "customerId", - brandId: "brandId", - createdAt: "createdAt" - }; exports2.Prisma.CustomerLevelDefScalarFieldEnum = { id: "id", code: "code", @@ -122183,7 +122173,8 @@ var require_client = __commonJS({ }; exports2.SettlementType = exports2.$Enums.SettlementType = { cash: "cash", - check: "check" + check: "check", + cash_check: "cash_check" }; exports2.CheckRegistrationMode = exports2.$Enums.CheckRegistrationMode = { full: "full", @@ -122308,8 +122299,6 @@ var require_client = __commonJS({ MeetingInteraction: "MeetingInteraction", Reminder: "Reminder", ProductFavorite: "ProductFavorite", - Brand: "Brand", - CustomerBrand: "CustomerBrand", CustomerLevelDef: "CustomerLevelDef", LevelBenefit: "LevelBenefit", CatalogRequest: "CatalogRequest", @@ -122368,8 +122357,8 @@ var require_client = __commonJS({ } } }, - "inlineSchema": 'generator client {\n provider = "prisma-client-js"\n binaryTargets = ["native", "debian-openssl-3.0.x"]\n}\n\ndatasource db {\n provider = "postgresql"\n url = env("DATABASE_URL")\n}\n\nenum SettlementType {\n cash\n check\n}\n\nenum CheckRegistrationMode {\n full\n brief\n}\n\nenum OrderStatus {\n cart\n awaiting_settlement\n cash_in_progress\n check_in_progress\n submitted\n awaiting_review\n pricing\n needs_correction\n awaiting_settlement_fix\n cash_invoice_issued\n awaiting_cash_payment\n cash_payment_submitted\n awaiting_cash_confirmation\n cash_confirmed\n awaiting_check_review\n check_needs_fix\n check_rejected\n checks_approved\n final_approved\n preparing\n ready_to_ship\n shipped\n delivered\n cancelled\n rejected\n expired\n}\n\nenum CheckStatus {\n pending_review\n approved\n rejected\n}\n\nenum CashPaymentStatus {\n pending_review\n approved\n rejected\n expired\n}\n\nenum ShipmentStatus {\n preparing\n ready\n shipped\n delivered\n}\n\nenum CustomerType {\n wholesale\n retail\n}\n\nenum AppUserRole {\n customer\n agent\n}\n\nenum InteractionType {\n in_person\n call\n message\n note\n}\n\nenum ProductSeason {\n summer\n winter\n all_season\n}\n\nenum ProductUsageCategory {\n trousers\n suit\n shirt\n other\n}\n\nenum AdminRole {\n admin\n sales\n finance\n warehouse\n}\n\nenum NotificationTone {\n info\n warning\n success\n danger\n}\n\n/// \u06AF\u0631\u062F\u0634 \u06A9\u0627\u0644\u06CC\u062A\u0647 \u0641\u06CC\u0632\u06CC\u06A9\u06CC (\xA7\u06F7 \u0633\u0646\u062F)\nenum CatalogRequestStatus {\n new\n approved\n ready_to_ship\n delivered\n returned\n cancelled\n}\n\nenum CatalogItemHolderType {\n warehouse\n customer\n agent\n}\n\nmodel Company {\n id String @id @default(cuid())\n name String\n slug String @unique\n description String?\n logoUrl String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n /// \u062E\u0627\u0644\u06CC \u06CC\u0639\u0646\u06CC \u0627\u0632 \u062A\u0646\u0638\u06CC\u0645\u0627\u062A \u0633\u06CC\u0633\u062A\u0645 \u0627\u0631\u062B \u0645\u06CC\u200C\u0628\u0631\u062F\n maxMeteragePerInvoice Int?\n cashInvoiceValidityHours Int @default(8)\n cashInvoiceValidUntilHour Int?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n bankAccounts BankAccount[]\n products Product[]\n orders Order[]\n customers Customer[]\n}\n\nmodel BankAccount {\n id String @id @default(cuid())\n companyId String\n bankName String\n accountHolder String\n accountNumber String\n cardNumber String\n iban String\n notes String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company @relation(fields: [companyId], references: [id], onDelete: Cascade)\n cashReceipts CashPaymentReceipt[]\n\n @@index([companyId])\n}\n\nmodel Product {\n id String @id @default(cuid())\n companyId String\n name String\n code String\n color String\n description String?\n minMeterage Float @default(30)\n orderMultiplier Float @default(10)\n /// \u0642\u06CC\u0645\u062A \u0647\u0631 \u0645\u062A\u0631 (\u062A\u0648\u0645\u0627\u0646) \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF / \u067E\u06CC\u0634\u200C\u0641\u0627\u06A9\u062A\u0648\u0631\n basePrice Float?\n stock Float?\n isActive Boolean @default(true)\n /// \u0641\u06CC\u0644\u062F\u0647\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF \u0645\u0648\u06A9\u0627\u067E (\u0627\u067E \u06A9\u0627\u0631\u0628\u0631)\n usageCategory String @default("other")\n season String @default("all_season")\n widthCm Float?\n composition String?\n weightGrams Float?\n weaveType String?\n colorsJson Json?\n tagsJson Json?\n imageUrlsJson Json?\n subtitle String?\n rollMeters Float @default(50)\n isNew Boolean @default(false)\n brandId String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company @relation(fields: [companyId], references: [id], onDelete: Cascade)\n brand Brand? @relation(fields: [brandId], references: [id], onDelete: SetNull)\n cartItems CartItem[]\n orderItems OrderItem[]\n favorites ProductFavorite[]\n catalogRequestItems CatalogRequestItem[]\n productSuggestions ProductSuggestion[]\n\n @@unique([companyId, code])\n @@index([companyId])\n @@index([brandId])\n @@index([usageCategory])\n @@index([season])\n}\n\nmodel Customer {\n id String @id @default(cuid())\n firstName String\n lastName String\n phone String @unique\n nationalId String?\n customerType CustomerType @default(wholesale)\n /// \u0646\u0642\u0634 \u062F\u0631 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: \u0645\u0634\u062A\u0631\u06CC \u0639\u0627\u062F\u06CC \u06CC\u0627 \u0648\u0627\u0633\u0637\u0647\n appRole AppUserRole @default(customer)\n agentCode String?\n businessName String?\n levelLabel String?\n nextLevelLabel String?\n pointsToNext Int?\n levelProgress Int? @default(0)\n assignedAgentId String?\n avatarLetter String?\n avatarColor String?\n avatarUrl String?\n /// \u0622\u062F\u0631\u0633 \u0648\u0627\u0633\u0637\u0647 (\u062F\u0631 \u067E\u0631\u0648\u0641\u0627\u06CC\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631)\n address String?\n companyId String?\n levelDefId String?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company? @relation(fields: [companyId], references: [id], onDelete: SetNull)\n levelDef CustomerLevelDef? @relation(fields: [levelDefId], references: [id], onDelete: SetNull)\n assignedAgent Customer? @relation("AgentCustomers", fields: [assignedAgentId], references: [id], onDelete: SetNull)\n agentCustomers Customer[] @relation("AgentCustomers")\n carts Cart[]\n orders Order[]\n notifications CustomerNotification[]\n meetings MeetingInteraction[] @relation("MeetingCustomer")\n meetingsAsAgent MeetingInteraction[] @relation("MeetingAgent")\n reminders Reminder[] @relation("ReminderOwner")\n remindersAbout Reminder[] @relation("ReminderCustomer")\n favorites ProductFavorite[]\n catalogRequests CatalogRequest[]\n productSuggestions ProductSuggestion[]\n customerBrands CustomerBrand[]\n addresses CustomerAddress[]\n\n @@index([companyId])\n @@index([appRole])\n @@index([assignedAgentId])\n @@index([agentCode])\n @@index([levelDefId])\n}\n\nmodel CustomerAddress {\n id String @id @default(cuid())\n customerId String\n label String?\n text String\n isDefault Boolean @default(false)\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n\n @@index([customerId])\n}\n\nmodel AdminUser {\n id String @id @default(cuid())\n fullName String\n phone String @unique\n email String @unique\n passwordHash String\n role AdminRole @default(admin)\n isActive Boolean @default(true)\n lastLoginAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel OtpChallenge {\n id String @id @default(cuid())\n phone String\n code String\n firstName String?\n lastName String?\n isRegister Boolean @default(false)\n attempts Int @default(0)\n expiresAt DateTime\n createdAt DateTime @default(now())\n\n @@index([phone])\n}\n\nmodel Cart {\n id String @id @default(cuid())\n userId String\n companyId String?\n notes String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n user Customer @relation(fields: [userId], references: [id], onDelete: Cascade)\n items CartItem[]\n\n @@index([userId])\n}\n\nmodel CartItem {\n id String @id @default(cuid())\n cartId String\n productId String\n catalogCode String\n productName String\n productCode String\n color String\n meterage Float\n unitPrice Float?\n notes String?\n companyId String\n companyName String\n\n cart Cart @relation(fields: [cartId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Restrict)\n\n @@unique([cartId, productId])\n @@index([cartId])\n}\n\nmodel Order {\n id String @id @default(cuid())\n orderNumber String @unique\n userId String\n companyId String\n companyName String\n // \u0631\u0648\u0634 \u062A\u0633\u0648\u06CC\u0647 \u0628\u0639\u062F \u0627\u0632 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0627\u062F\u0645\u06CC\u0646 \u062A\u0648\u0633\u0637 \u0645\u0634\u062A\u0631\u06CC \u0627\u0646\u062A\u062E\u0627\u0628 \u0645\u06CC\u200C\u0634\u0648\u062F\n settlementType SettlementType?\n checkMode CheckRegistrationMode?\n status OrderStatus @default(awaiting_review)\n totalMeterage Float @default(0)\n totalAmount Float?\n shippingCost Float?\n totalDiscount Float?\n finalAmount Float?\n notes String?\n checkRassDays Int?\n checkRassDate DateTime?\n cashInvoiceExpiresAt DateTime?\n /// \u0632\u0645\u0627\u0646 \u0627\u0631\u0633\u0627\u0644 \u06CC\u0627\u062F\u0622\u0648\u0631\u06CC \u067E\u0627\u06CC\u0627\u0646 \u0645\u0647\u0644\u062A \u067E\u0631\u062F\u0627\u062E\u062A \u062A\u0627 \u062F\u0648\u0628\u0627\u0631\u0647 \u0627\u0631\u0633\u0627\u0644 \u0646\u0634\u0648\u062F\n cashReminderSentAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n user Customer @relation(fields: [userId], references: [id], onDelete: Restrict)\n company Company @relation(fields: [companyId], references: [id], onDelete: Restrict)\n items OrderItem[]\n checks Check[]\n cashReceipt CashPaymentReceipt?\n shipment Shipment?\n statusHistory OrderStatusHistory[]\n notifications CustomerNotification[]\n\n @@index([userId])\n @@index([companyId])\n @@index([status])\n @@index([createdAt])\n @@index([status, cashInvoiceExpiresAt])\n}\n\nmodel OrderItem {\n id String @id @default(cuid())\n orderId String\n productId String?\n catalogCode String\n productName String\n productCode String?\n color String\n requestedMeterage Float\n confirmedMeterage Float?\n unitPrice Float?\n unitDiscount Float? @default(0)\n lineTotal Float?\n notes String?\n companyId String\n companyName String\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n product Product? @relation(fields: [productId], references: [id], onDelete: SetNull)\n\n @@index([orderId])\n @@index([companyId])\n}\n\nmodel OrderStatusHistory {\n id String @id @default(cuid())\n orderId String\n fromStatus OrderStatus?\n toStatus OrderStatus\n changedBy String\n note String?\n reason String?\n changedAt DateTime @default(now())\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n\n @@index([orderId])\n}\n\nmodel Check {\n id String @id @default(cuid())\n orderId String\n row Int\n amount Float\n dueDate DateTime\n sayadId String?\n checkNumber String?\n ownerNationalId String?\n ownerFirstName String?\n ownerLastName String?\n bankName String?\n branchName String?\n frontImage String?\n backImage String?\n notes String?\n mode CheckRegistrationMode @default(full)\n status CheckStatus @default(pending_review)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n\n @@index([orderId])\n @@index([dueDate])\n}\n\nmodel CashPaymentReceipt {\n id String @id @default(cuid())\n orderId String @unique\n amount Float\n paidAmount Float?\n transferDate DateTime?\n transferTime String?\n trackingNumber String?\n destinationAccountId String?\n receiptImage String?\n notes String?\n expiresAt DateTime?\n status CashPaymentStatus @default(pending_review)\n submittedAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n destinationAccount BankAccount? @relation(fields: [destinationAccountId], references: [id], onDelete: SetNull)\n}\n\nmodel Shipment {\n id String @id @default(cuid())\n orderId String @unique\n carrier String\n trackingNumber String?\n meterage Float\n status ShipmentStatus @default(preparing)\n shippedAt DateTime?\n deliveredAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n}\n\nmodel SystemSettings {\n id String @id @default("default")\n maxMeteragePerInvoice Int @default(5000)\n cashInvoiceValidityHours Int @default(8)\n defaultSettlementCheck Boolean @default(true)\n defaultSettlementCash Boolean @default(true)\n /// \u062D\u062F\u0627\u0642\u0644 \u0633\u0641\u0627\u0631\u0634: \u062A\u0639\u062F\u0627\u062F \u0637\u0627\u0642\u0647 \u0627\u0632 \u0647\u0631 \u0645\u062D\u0635\u0648\u0644 (\xA7\u06F1\u06F9)\n minOrderRollsPerProduct Int @default(1)\n /// \u0646\u0645\u0627\u06CC\u0634 \u0642\u06CC\u0645\u062A \u0639\u0645\u0648\u0645\u06CC \u062F\u0631 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF (\u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u062E\u0627\u0645\u0648\u0634)\n showCatalogPublicPrice Boolean @default(false)\n /// \u0627\u062C\u0627\u0632\u0647 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u062A\u0648\u0633\u0637 \u0648\u0627\u0633\u0637\u0647 (\xA7\u06F1\u06F9)\n allowAgentPricing Boolean @default(false)\n /// \u06A9\u0641 \u0642\u06CC\u0645\u062A \u0648\u0627\u062D\u062F \u0628\u0631\u0627\u06CC \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0648\u0627\u0633\u0637\u0647 (\u0631\u06CC\u0627\u0644) \u2014 \u0627\u062E\u062A\u06CC\u0627\u0631\u06CC\n agentMinUnitPrice Int?\n smsOrderRegistered Boolean @default(true)\n smsPricingReady Boolean @default(true)\n smsPaymentReminder Boolean @default(true)\n smsCheckReview Boolean @default(true)\n smsShippingUpdate Boolean @default(true)\n supportPhone String?\n supportEmail String?\n /// \u062A\u0635\u0627\u0648\u06CC\u0631 \u062F\u0633\u062A\u0647\u200C\u0647\u0627\u06CC \u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: { trousers: dataUrl, summer: dataUrl, ... }\n categoryImagesJson Json?\n /// \u062A\u0639\u0627\u0631\u06CC\u0641 \u062F\u0633\u062A\u0647\u200C\u0647\u0627 (\u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644). \u0627\u06AF\u0631 \u062E\u0627\u0644\u06CC \u0628\u0627\u0634\u062F \u0627\u0632 \u0645\u0642\u0627\u062F\u06CC\u0631 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u062F \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0645\u06CC\u200C\u0634\u0648\u062F.\n categoryDefsJson Json?\n updatedAt DateTime @updatedAt\n}\n\n/// \u0628\u0646\u0631\u0647\u0627\u06CC \u0642\u0627\u0628\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u062E\u0634\u200C\u0647\u0627\u06CC \u0627\u067E \u06A9\u0627\u0631\u0628\u0631\nmodel AppBanner {\n id String @id @default(cuid())\n slot String\n title String\n subtitle String?\n ctaLabel String?\n ctaLink String?\n imageUrl String?\n displayOrder Int @default(0)\n isActive Boolean @default(true)\n showTitle Boolean @default(true)\n showSubtitle Boolean @default(true)\n showCta Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@index([slot, isActive, displayOrder])\n}\n\nmodel AdminNotification {\n id String @id @default(cuid())\n title String\n body String\n tone NotificationTone? @default(info)\n link String?\n isRead Boolean @default(false)\n sentAt DateTime @default(now())\n}\n\nmodel CustomerNotification {\n id String @id @default(cuid())\n customerId String\n orderId String?\n event String\n title String\n body String\n tone NotificationTone? @default(info)\n link String?\n isRead Boolean @default(false)\n smsSent Boolean @default(false)\n sentAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n order Order? @relation(fields: [orderId], references: [id], onDelete: SetNull)\n\n @@index([customerId, isRead])\n @@index([sentAt])\n}\n\nmodel InternalMessage {\n id String @id @default(cuid())\n senderName String\n subject String\n preview String\n link String?\n isRead Boolean @default(false)\n sentAt DateTime @default(now())\n}\n\nmodel MeetingInteraction {\n id String @id @default(cuid())\n customerId String\n agentId String\n type InteractionType @default(in_person)\n title String\n description String?\n subject String?\n content String?\n date String\n time String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customer Customer @relation("MeetingCustomer", fields: [customerId], references: [id], onDelete: Cascade)\n agent Customer @relation("MeetingAgent", fields: [agentId], references: [id], onDelete: Cascade)\n\n @@index([customerId])\n @@index([agentId])\n @@index([date])\n}\n\nmodel Reminder {\n id String @id @default(cuid())\n ownerId String\n customerId String\n title String\n description String?\n note String?\n date String\n time String\n interactionType InteractionType @default(note)\n completed Boolean @default(false)\n completedAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n owner Customer @relation("ReminderOwner", fields: [ownerId], references: [id], onDelete: Cascade)\n customer Customer @relation("ReminderCustomer", fields: [customerId], references: [id], onDelete: Cascade)\n\n @@index([ownerId, completed])\n @@index([customerId])\n @@index([date])\n}\n\nmodel ProductFavorite {\n id String @id @default(cuid())\n customerId String\n productId String\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Cascade)\n\n @@unique([customerId, productId])\n @@index([customerId])\n}\n\nmodel Brand {\n id String @id @default(cuid())\n name String\n slug String? @unique\n description String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customers CustomerBrand[]\n products Product[]\n}\n\nmodel CustomerBrand {\n customerId String\n brandId String\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n brand Brand @relation(fields: [brandId], references: [id], onDelete: Cascade)\n\n @@id([customerId, brandId])\n @@index([brandId])\n}\n\nmodel CustomerLevelDef {\n id String @id @default(cuid())\n code String @unique\n label String\n sortOrder Int @default(0)\n criteriaJson Json?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n benefits LevelBenefit[]\n customers Customer[]\n}\n\nmodel LevelBenefit {\n id String @id @default(cuid())\n levelId String\n title String\n description String?\n\n level CustomerLevelDef @relation(fields: [levelId], references: [id], onDelete: Cascade)\n\n @@index([levelId])\n}\n\nmodel CatalogRequest {\n id String @id @default(cuid())\n customerId String\n status CatalogRequestStatus @default(new)\n note String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n items CatalogRequestItem[]\n\n @@index([customerId])\n @@index([status])\n}\n\nmodel CatalogRequestItem {\n id String @id @default(cuid())\n requestId String\n productId String\n quantity Int @default(1)\n holderType CatalogItemHolderType @default(warehouse)\n holderCustomerId String?\n\n request CatalogRequest @relation(fields: [requestId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Restrict)\n movements CatalogItemMovement[]\n\n @@index([requestId])\n @@index([productId])\n}\n\nmodel CatalogItemMovement {\n id String @id @default(cuid())\n itemId String\n fromHolder String\n toHolder String\n note String?\n movedAt DateTime @default(now())\n\n item CatalogRequestItem @relation(fields: [itemId], references: [id], onDelete: Cascade)\n\n @@index([itemId])\n}\n\nmodel ProductSuggestion {\n id String @id @default(cuid())\n customerId String\n productId String\n note String?\n createdByAdminId String?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Cascade)\n\n @@index([customerId, isActive])\n @@index([productId])\n}\n\n/// \u06CC\u06A9 \u0631\u062F\u06CC\u0641 \u0628\u0631\u0627\u06CC \u062A\u0639\u0631\u0641\u0647\u060C \u0645\u0648\u062C\u0648\u062F\u06CC \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648\u0627\u0631\u06CC\u0632 \u067E\u06CC\u0627\u0645\u06A9\nmodel SmsWallet {\n id String @id @default("default")\n balanceToman Int @default(0)\n pricePerPart Int @default(250)\n blocked Boolean @default(false)\n cardNumber String @default("6219861941033817")\n sheba String @default("IR805606118280056043604401")\n accountName String @default("\u062D\u0633\u06CC\u0646 \u0645\u0646\u062A\u0638\u0631")\n yellowThreshold Int @default(10000)\n redThreshold Int @default(1000)\n updatedAt DateTime @updatedAt\n}\n\nmodel SmsUsage {\n id String @id @default(cuid())\n parts Int\n costToman Int\n createdAt DateTime @default(now())\n\n @@index([createdAt])\n}\n\nmodel SmsTopUp {\n id String @id @default(cuid())\n amountToman Int\n note String?\n createdAt DateTime @default(now())\n}\n', - "inlineSchemaHash": "48064e922b4134bc3d97fe88086bf6d05956866842d76d13ab14a7dc55970aed", + "inlineSchema": 'generator client {\n provider = "prisma-client-js"\n binaryTargets = ["native", "debian-openssl-3.0.x"]\n}\n\ndatasource db {\n provider = "postgresql"\n url = env("DATABASE_URL")\n}\n\nenum SettlementType {\n cash\n check\n cash_check\n}\n\nenum CheckRegistrationMode {\n full\n brief\n}\n\nenum OrderStatus {\n cart\n awaiting_settlement\n cash_in_progress\n check_in_progress\n submitted\n awaiting_review\n pricing\n needs_correction\n awaiting_settlement_fix\n cash_invoice_issued\n awaiting_cash_payment\n cash_payment_submitted\n awaiting_cash_confirmation\n cash_confirmed\n awaiting_check_review\n check_needs_fix\n check_rejected\n checks_approved\n final_approved\n preparing\n ready_to_ship\n shipped\n delivered\n cancelled\n rejected\n expired\n}\n\nenum CheckStatus {\n pending_review\n approved\n rejected\n}\n\nenum CashPaymentStatus {\n pending_review\n approved\n rejected\n expired\n}\n\nenum ShipmentStatus {\n preparing\n ready\n shipped\n delivered\n}\n\nenum CustomerType {\n wholesale\n retail\n}\n\nenum AppUserRole {\n customer\n agent\n}\n\nenum InteractionType {\n in_person\n call\n message\n note\n}\n\nenum ProductSeason {\n summer\n winter\n all_season\n}\n\nenum ProductUsageCategory {\n trousers\n suit\n shirt\n other\n}\n\nenum AdminRole {\n admin\n sales\n finance\n warehouse\n}\n\nenum NotificationTone {\n info\n warning\n success\n danger\n}\n\n/// \u06AF\u0631\u062F\u0634 \u06A9\u0627\u0644\u06CC\u062A\u0647 \u0641\u06CC\u0632\u06CC\u06A9\u06CC (\xA7\u06F7 \u0633\u0646\u062F)\nenum CatalogRequestStatus {\n new\n approved\n ready_to_ship\n delivered\n returned\n cancelled\n}\n\nenum CatalogItemHolderType {\n warehouse\n customer\n agent\n}\n\nmodel Company {\n id String @id @default(cuid())\n name String\n slug String @unique\n description String?\n logoUrl String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n /// \u062E\u0627\u0644\u06CC \u06CC\u0639\u0646\u06CC \u0627\u0632 \u062A\u0646\u0638\u06CC\u0645\u0627\u062A \u0633\u06CC\u0633\u062A\u0645 \u0627\u0631\u062B \u0645\u06CC\u200C\u0628\u0631\u062F\n maxMeteragePerInvoice Int?\n cashInvoiceValidityHours Int @default(8)\n cashInvoiceValidUntilHour Int?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n bankAccounts BankAccount[]\n products Product[]\n orders Order[]\n customers Customer[]\n}\n\nmodel BankAccount {\n id String @id @default(cuid())\n companyId String\n bankName String\n accountHolder String\n accountNumber String\n cardNumber String\n iban String\n notes String?\n isActive Boolean @default(true)\n displayOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company @relation(fields: [companyId], references: [id], onDelete: Cascade)\n cashReceipts CashPaymentReceipt[]\n\n @@index([companyId])\n}\n\nmodel Product {\n id String @id @default(cuid())\n companyId String\n name String\n code String\n color String\n description String?\n /// \u0645\u0634\u062E\u0635\u0627\u062A \u0622\u0632\u0627\u062F \u0645\u062D\u0635\u0648\u0644 (\u0646\u0645\u0627\u06CC\u0634 \u062F\u0631 specs-extra \u0627\u067E)\n specs String? @db.Text\n minMeterage Float @default(30)\n orderMultiplier Float @default(10)\n /// \u0642\u06CC\u0645\u062A \u0647\u0631 \u0645\u062A\u0631 (\u062A\u0648\u0645\u0627\u0646) \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF / \u067E\u06CC\u0634\u200C\u0641\u0627\u06A9\u062A\u0648\u0631\n basePrice Float?\n stock Float?\n isActive Boolean @default(true)\n /// \u0641\u06CC\u0644\u062F\u0647\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF \u0645\u0648\u06A9\u0627\u067E (\u0627\u067E \u06A9\u0627\u0631\u0628\u0631)\n usageCategory String @default("other")\n season String @default("all_season")\n widthCm Float?\n composition String?\n weightGrams Float?\n weaveType String?\n colorsJson Json?\n tagsJson Json?\n imageUrlsJson Json?\n subtitle String?\n rollMeters Float @default(50)\n isNew Boolean @default(false)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company @relation(fields: [companyId], references: [id], onDelete: Cascade)\n cartItems CartItem[]\n orderItems OrderItem[]\n favorites ProductFavorite[]\n catalogRequestItems CatalogRequestItem[]\n productSuggestions ProductSuggestion[]\n\n @@unique([companyId, code])\n @@index([companyId])\n @@index([usageCategory])\n @@index([season])\n}\n\nmodel Customer {\n id String @id @default(cuid())\n firstName String\n lastName String\n phone String @unique\n nationalId String?\n customerType CustomerType @default(wholesale)\n /// \u0646\u0642\u0634 \u062F\u0631 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: \u0645\u0634\u062A\u0631\u06CC \u0639\u0627\u062F\u06CC \u06CC\u0627 \u0648\u0627\u0633\u0637\u0647\n appRole AppUserRole @default(customer)\n agentCode String?\n businessName String?\n levelLabel String?\n nextLevelLabel String?\n pointsToNext Int?\n levelProgress Int? @default(0)\n assignedAgentId String?\n avatarLetter String?\n avatarColor String?\n avatarUrl String?\n /// \u0622\u062F\u0631\u0633 \u0648\u0627\u0633\u0637\u0647 (\u062F\u0631 \u067E\u0631\u0648\u0641\u0627\u06CC\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631)\n address String?\n companyId String?\n levelDefId String?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n company Company? @relation(fields: [companyId], references: [id], onDelete: SetNull)\n levelDef CustomerLevelDef? @relation(fields: [levelDefId], references: [id], onDelete: SetNull)\n assignedAgent Customer? @relation("AgentCustomers", fields: [assignedAgentId], references: [id], onDelete: SetNull)\n agentCustomers Customer[] @relation("AgentCustomers")\n carts Cart[]\n orders Order[]\n notifications CustomerNotification[]\n meetings MeetingInteraction[] @relation("MeetingCustomer")\n meetingsAsAgent MeetingInteraction[] @relation("MeetingAgent")\n reminders Reminder[] @relation("ReminderOwner")\n remindersAbout Reminder[] @relation("ReminderCustomer")\n favorites ProductFavorite[]\n catalogRequests CatalogRequest[]\n productSuggestions ProductSuggestion[]\n addresses CustomerAddress[]\n\n @@index([companyId])\n @@index([appRole])\n @@index([assignedAgentId])\n @@index([agentCode])\n @@index([levelDefId])\n}\n\nmodel CustomerAddress {\n id String @id @default(cuid())\n customerId String\n label String?\n text String\n isDefault Boolean @default(false)\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n\n @@index([customerId])\n}\n\nmodel AdminUser {\n id String @id @default(cuid())\n fullName String\n phone String @unique\n email String @unique\n passwordHash String\n role AdminRole @default(admin)\n isActive Boolean @default(true)\n lastLoginAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel OtpChallenge {\n id String @id @default(cuid())\n phone String\n code String\n firstName String?\n lastName String?\n isRegister Boolean @default(false)\n attempts Int @default(0)\n expiresAt DateTime\n createdAt DateTime @default(now())\n\n @@index([phone])\n}\n\nmodel Cart {\n id String @id @default(cuid())\n userId String\n companyId String?\n notes String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n user Customer @relation(fields: [userId], references: [id], onDelete: Cascade)\n items CartItem[]\n\n @@index([userId])\n}\n\nmodel CartItem {\n id String @id @default(cuid())\n cartId String\n productId String\n catalogCode String\n productName String\n productCode String\n color String\n meterage Float\n unitPrice Float?\n notes String?\n companyId String\n companyName String\n\n cart Cart @relation(fields: [cartId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Restrict)\n\n @@unique([cartId, productId])\n @@index([cartId])\n}\n\nmodel Order {\n id String @id @default(cuid())\n orderNumber String @unique\n userId String\n companyId String\n companyName String\n // \u0631\u0648\u0634 \u062A\u0633\u0648\u06CC\u0647 \u0628\u0639\u062F \u0627\u0632 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0627\u062F\u0645\u06CC\u0646 \u062A\u0648\u0633\u0637 \u0645\u0634\u062A\u0631\u06CC \u0627\u0646\u062A\u062E\u0627\u0628 \u0645\u06CC\u200C\u0634\u0648\u062F\n settlementType SettlementType?\n checkMode CheckRegistrationMode?\n status OrderStatus @default(awaiting_review)\n totalMeterage Float @default(0)\n totalAmount Float?\n shippingCost Float?\n totalDiscount Float?\n finalAmount Float?\n notes String?\n checkRassDays Int?\n checkRassDate DateTime?\n cashInvoiceExpiresAt DateTime?\n /// \u0632\u0645\u0627\u0646 \u0627\u0631\u0633\u0627\u0644 \u06CC\u0627\u062F\u0622\u0648\u0631\u06CC \u067E\u0627\u06CC\u0627\u0646 \u0645\u0647\u0644\u062A \u067E\u0631\u062F\u0627\u062E\u062A \u062A\u0627 \u062F\u0648\u0628\u0627\u0631\u0647 \u0627\u0631\u0633\u0627\u0644 \u0646\u0634\u0648\u062F\n cashReminderSentAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n user Customer @relation(fields: [userId], references: [id], onDelete: Restrict)\n company Company @relation(fields: [companyId], references: [id], onDelete: Restrict)\n items OrderItem[]\n checks Check[]\n cashReceipt CashPaymentReceipt?\n shipment Shipment?\n statusHistory OrderStatusHistory[]\n notifications CustomerNotification[]\n\n @@index([userId])\n @@index([companyId])\n @@index([status])\n @@index([createdAt])\n @@index([status, cashInvoiceExpiresAt])\n}\n\nmodel OrderItem {\n id String @id @default(cuid())\n orderId String\n productId String?\n catalogCode String\n productName String\n productCode String?\n color String\n requestedMeterage Float\n confirmedMeterage Float?\n unitPrice Float?\n unitDiscount Float? @default(0)\n lineTotal Float?\n notes String?\n companyId String\n companyName String\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n product Product? @relation(fields: [productId], references: [id], onDelete: SetNull)\n\n @@index([orderId])\n @@index([companyId])\n}\n\nmodel OrderStatusHistory {\n id String @id @default(cuid())\n orderId String\n fromStatus OrderStatus?\n toStatus OrderStatus\n changedBy String\n note String?\n reason String?\n changedAt DateTime @default(now())\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n\n @@index([orderId])\n}\n\nmodel Check {\n id String @id @default(cuid())\n orderId String\n row Int\n amount Float\n dueDate DateTime\n sayadId String?\n checkNumber String?\n ownerNationalId String?\n ownerFirstName String?\n ownerLastName String?\n bankName String?\n branchName String?\n frontImage String?\n backImage String?\n notes String?\n mode CheckRegistrationMode @default(full)\n status CheckStatus @default(pending_review)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n\n @@index([orderId])\n @@index([dueDate])\n}\n\nmodel CashPaymentReceipt {\n id String @id @default(cuid())\n orderId String @unique\n amount Float\n paidAmount Float?\n transferDate DateTime?\n transferTime String?\n trackingNumber String?\n destinationAccountId String?\n receiptImage String?\n notes String?\n expiresAt DateTime?\n status CashPaymentStatus @default(pending_review)\n submittedAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n destinationAccount BankAccount? @relation(fields: [destinationAccountId], references: [id], onDelete: SetNull)\n}\n\nmodel Shipment {\n id String @id @default(cuid())\n orderId String @unique\n carrier String\n trackingNumber String?\n meterage Float\n status ShipmentStatus @default(preparing)\n shippedAt DateTime?\n deliveredAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n order Order @relation(fields: [orderId], references: [id], onDelete: Cascade)\n}\n\nmodel SystemSettings {\n id String @id @default("default")\n maxMeteragePerInvoice Int @default(5000)\n cashInvoiceValidityHours Int @default(8)\n defaultSettlementCheck Boolean @default(true)\n defaultSettlementCash Boolean @default(true)\n defaultSettlementCashCheck Boolean @default(false)\n /// \u062D\u062F\u0627\u0642\u0644 \u0633\u0641\u0627\u0631\u0634: \u062A\u0639\u062F\u0627\u062F \u0637\u0627\u0642\u0647 \u0627\u0632 \u0647\u0631 \u0645\u062D\u0635\u0648\u0644 (\xA7\u06F1\u06F9)\n minOrderRollsPerProduct Int @default(1)\n /// \u0646\u0645\u0627\u06CC\u0634 \u0642\u06CC\u0645\u062A \u0639\u0645\u0648\u0645\u06CC \u062F\u0631 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF (\u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u062E\u0627\u0645\u0648\u0634)\n showCatalogPublicPrice Boolean @default(false)\n /// \u0627\u062C\u0627\u0632\u0647 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u062A\u0648\u0633\u0637 \u0648\u0627\u0633\u0637\u0647 (\xA7\u06F1\u06F9)\n allowAgentPricing Boolean @default(false)\n /// \u06A9\u0641 \u0642\u06CC\u0645\u062A \u0648\u0627\u062D\u062F \u0628\u0631\u0627\u06CC \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0648\u0627\u0633\u0637\u0647 (\u0631\u06CC\u0627\u0644) \u2014 \u0627\u062E\u062A\u06CC\u0627\u0631\u06CC\n agentMinUnitPrice Int?\n smsOrderRegistered Boolean @default(true)\n smsPricingReady Boolean @default(true)\n smsPaymentReminder Boolean @default(true)\n smsCheckReview Boolean @default(true)\n smsShippingUpdate Boolean @default(true)\n supportPhone String?\n supportEmail String?\n supportWhatsapp String?\n supportTelegram String?\n supportInstagram String?\n /// \u062A\u0635\u0627\u0648\u06CC\u0631 \u062F\u0633\u062A\u0647\u200C\u0647\u0627\u06CC \u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: { trousers: dataUrl, summer: dataUrl, ... }\n categoryImagesJson Json?\n /// \u062A\u0639\u0627\u0631\u06CC\u0641 \u062F\u0633\u062A\u0647\u200C\u0647\u0627 (\u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644). \u0627\u06AF\u0631 \u062E\u0627\u0644\u06CC \u0628\u0627\u0634\u062F \u0627\u0632 \u0645\u0642\u0627\u062F\u06CC\u0631 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u062F \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0645\u06CC\u200C\u0634\u0648\u062F.\n categoryDefsJson Json?\n updatedAt DateTime @updatedAt\n}\n\n/// \u0628\u0646\u0631\u0647\u0627\u06CC \u0642\u0627\u0628\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u062E\u0634\u200C\u0647\u0627\u06CC \u0627\u067E \u06A9\u0627\u0631\u0628\u0631\nmodel AppBanner {\n id String @id @default(cuid())\n slot String\n title String\n subtitle String?\n ctaLabel String?\n ctaLink String?\n /// \u0644\u06CC\u0646\u06A9 \u06A9\u0644\u06CC\u06A9 \u0631\u0648\u06CC \u062A\u0635\u0648\u06CC\u0631 \u0628\u0646\u0631 (\u0645\u0633\u062A\u0642\u0644 \u0627\u0632 \u0644\u06CC\u0646\u06A9 \u062F\u06A9\u0645\u0647)\n bannerLink String?\n imageUrl String?\n displayOrder Int @default(0)\n isActive Boolean @default(true)\n showTitle Boolean @default(true)\n showSubtitle Boolean @default(true)\n showCta Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@index([slot, isActive, displayOrder])\n}\n\nmodel AdminNotification {\n id String @id @default(cuid())\n title String\n body String\n tone NotificationTone? @default(info)\n link String?\n isRead Boolean @default(false)\n sentAt DateTime @default(now())\n}\n\nmodel CustomerNotification {\n id String @id @default(cuid())\n customerId String\n orderId String?\n event String\n title String\n body String\n tone NotificationTone? @default(info)\n link String?\n isRead Boolean @default(false)\n smsSent Boolean @default(false)\n sentAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n order Order? @relation(fields: [orderId], references: [id], onDelete: SetNull)\n\n @@index([customerId, isRead])\n @@index([sentAt])\n}\n\nmodel InternalMessage {\n id String @id @default(cuid())\n senderName String\n subject String\n preview String\n link String?\n isRead Boolean @default(false)\n sentAt DateTime @default(now())\n}\n\nmodel MeetingInteraction {\n id String @id @default(cuid())\n customerId String\n agentId String\n type InteractionType @default(in_person)\n title String\n description String?\n subject String?\n content String?\n date String\n time String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customer Customer @relation("MeetingCustomer", fields: [customerId], references: [id], onDelete: Cascade)\n agent Customer @relation("MeetingAgent", fields: [agentId], references: [id], onDelete: Cascade)\n\n @@index([customerId])\n @@index([agentId])\n @@index([date])\n}\n\nmodel Reminder {\n id String @id @default(cuid())\n ownerId String\n customerId String\n title String\n description String?\n note String?\n date String\n time String\n interactionType InteractionType @default(note)\n completed Boolean @default(false)\n completedAt DateTime?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n owner Customer @relation("ReminderOwner", fields: [ownerId], references: [id], onDelete: Cascade)\n customer Customer @relation("ReminderCustomer", fields: [customerId], references: [id], onDelete: Cascade)\n\n @@index([ownerId, completed])\n @@index([customerId])\n @@index([date])\n}\n\nmodel ProductFavorite {\n id String @id @default(cuid())\n customerId String\n productId String\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Cascade)\n\n @@unique([customerId, productId])\n @@index([customerId])\n}\n\nmodel CustomerLevelDef {\n id String @id @default(cuid())\n code String @unique\n label String\n sortOrder Int @default(0)\n criteriaJson Json?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n benefits LevelBenefit[]\n customers Customer[]\n}\n\nmodel LevelBenefit {\n id String @id @default(cuid())\n levelId String\n title String\n description String?\n\n level CustomerLevelDef @relation(fields: [levelId], references: [id], onDelete: Cascade)\n\n @@index([levelId])\n}\n\nmodel CatalogRequest {\n id String @id @default(cuid())\n customerId String\n status CatalogRequestStatus @default(new)\n note String?\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n items CatalogRequestItem[]\n\n @@index([customerId])\n @@index([status])\n}\n\nmodel CatalogRequestItem {\n id String @id @default(cuid())\n requestId String\n productId String\n quantity Int @default(1)\n holderType CatalogItemHolderType @default(warehouse)\n holderCustomerId String?\n\n request CatalogRequest @relation(fields: [requestId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Restrict)\n movements CatalogItemMovement[]\n\n @@index([requestId])\n @@index([productId])\n}\n\nmodel CatalogItemMovement {\n id String @id @default(cuid())\n itemId String\n fromHolder String\n toHolder String\n note String?\n movedAt DateTime @default(now())\n\n item CatalogRequestItem @relation(fields: [itemId], references: [id], onDelete: Cascade)\n\n @@index([itemId])\n}\n\nmodel ProductSuggestion {\n id String @id @default(cuid())\n customerId String\n productId String\n note String?\n createdByAdminId String?\n isActive Boolean @default(true)\n createdAt DateTime @default(now())\n\n customer Customer @relation(fields: [customerId], references: [id], onDelete: Cascade)\n product Product @relation(fields: [productId], references: [id], onDelete: Cascade)\n\n @@index([customerId, isActive])\n @@index([productId])\n}\n\n/// \u06CC\u06A9 \u0631\u062F\u06CC\u0641 \u0628\u0631\u0627\u06CC \u062A\u0639\u0631\u0641\u0647\u060C \u0645\u0648\u062C\u0648\u062F\u06CC \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648\u0627\u0631\u06CC\u0632 \u067E\u06CC\u0627\u0645\u06A9\nmodel SmsWallet {\n id String @id @default("default")\n balanceToman Int @default(0)\n pricePerPart Int @default(250)\n blocked Boolean @default(false)\n cardNumber String @default("6219861941033817")\n sheba String @default("IR805606118280056043604401")\n accountName String @default("\u062D\u0633\u06CC\u0646 \u0645\u0646\u062A\u0638\u0631")\n yellowThreshold Int @default(10000)\n redThreshold Int @default(1000)\n updatedAt DateTime @updatedAt\n}\n\nmodel SmsUsage {\n id String @id @default(cuid())\n parts Int\n costToman Int\n createdAt DateTime @default(now())\n\n @@index([createdAt])\n}\n\nmodel SmsTopUp {\n id String @id @default(cuid())\n amountToman Int\n note String?\n createdAt DateTime @default(now())\n}\n', + "inlineSchemaHash": "871fb11be2bb388e7c10271ba153fef83ae63d9463090ec1bde90da7acd73b3d", "copyEngine": true }; var fs = require("fs"); @@ -122385,7 +122374,7 @@ var require_client = __commonJS({ config.dirname = path.join(process.cwd(), alternativePath); config.isBundled = true; } - config.runtimeDataModel = JSON.parse('{"models":{"Company":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"slug","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"logoUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"maxMeteragePerInvoice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062E\u0627\u0644\u06CC \u06CC\u0639\u0646\u06CC \u0627\u0632 \u062A\u0646\u0638\u06CC\u0645\u0627\u062A \u0633\u06CC\u0633\u062A\u0645 \u0627\u0631\u062B \u0645\u06CC\u200C\u0628\u0631\u062F"},{"name":"cashInvoiceValidityHours","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":8,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceValidUntilHour","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"bankAccounts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"BankAccount","nativeType":null,"relationName":"BankAccountToCompany","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"products","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CompanyToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CompanyToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CompanyToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"BankAccount":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bankName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accountHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accountNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cardNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"iban","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"BankAccountToCompany","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"cashReceipts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CashPaymentReceipt","nativeType":null,"relationName":"BankAccountToCashPaymentReceipt","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Product":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"minMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":30,"isGenerated":false,"isUpdatedAt":false},{"name":"orderMultiplier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":10,"isGenerated":false,"isUpdatedAt":false},{"name":"basePrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0642\u06CC\u0645\u062A \u0647\u0631 \u0645\u062A\u0631 (\u062A\u0648\u0645\u0627\u0646) \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF / \u067E\u06CC\u0634\u200C\u0641\u0627\u06A9\u062A\u0648\u0631"},{"name":"stock","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"usageCategory","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"other","isGenerated":false,"isUpdatedAt":false,"documentation":"\u0641\u06CC\u0644\u062F\u0647\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF \u0645\u0648\u06A9\u0627\u067E (\u0627\u067E \u06A9\u0627\u0631\u0628\u0631)"},{"name":"season","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"all_season","isGenerated":false,"isUpdatedAt":false},{"name":"widthCm","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"composition","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"weightGrams","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"weaveType","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"colorsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tagsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"imageUrlsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subtitle","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"rollMeters","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":50,"isGenerated":false,"isUpdatedAt":false},{"name":"isNew","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"brandId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToProduct","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"brand","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Brand","nativeType":null,"relationName":"BrandToProduct","relationFromFields":["brandId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"cartItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CartItem","nativeType":null,"relationName":"CartItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orderItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderItem","nativeType":null,"relationName":"OrderItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"favorites","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductFavorite","nativeType":null,"relationName":"ProductToProductFavorite","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"catalogRequestItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogRequestItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"productSuggestions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductSuggestion","nativeType":null,"relationName":"ProductToProductSuggestion","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["companyId","code"]],"uniqueIndexes":[{"name":null,"fields":["companyId","code"]}],"isGenerated":false},"Customer":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"firstName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"lastName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"nationalId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"customerType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CustomerType","nativeType":null,"default":"wholesale","isGenerated":false,"isUpdatedAt":false},{"name":"appRole","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"AppUserRole","nativeType":null,"default":"customer","isGenerated":false,"isUpdatedAt":false,"documentation":"\u0646\u0642\u0634 \u062F\u0631 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: \u0645\u0634\u062A\u0631\u06CC \u0639\u0627\u062F\u06CC \u06CC\u0627 \u0648\u0627\u0633\u0637\u0647"},{"name":"agentCode","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"businessName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"nextLevelLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"pointsToNext","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelProgress","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"assignedAgentId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarLetter","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarColor","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"address","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0622\u062F\u0631\u0633 \u0648\u0627\u0633\u0637\u0647 (\u062F\u0631 \u067E\u0631\u0648\u0641\u0627\u06CC\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631)"},{"name":"companyId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelDefId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToCustomer","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"levelDef","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerLevelDef","nativeType":null,"relationName":"CustomerToCustomerLevelDef","relationFromFields":["levelDefId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"assignedAgent","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"AgentCustomers","relationFromFields":["assignedAgentId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"agentCustomers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"AgentCustomers","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"carts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Cart","nativeType":null,"relationName":"CartToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CustomerToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"notifications","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerNotification","nativeType":null,"relationName":"CustomerToCustomerNotification","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"meetings","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"MeetingInteraction","nativeType":null,"relationName":"MeetingCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"meetingsAsAgent","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"MeetingInteraction","nativeType":null,"relationName":"MeetingAgent","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"reminders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Reminder","nativeType":null,"relationName":"ReminderOwner","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"remindersAbout","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Reminder","nativeType":null,"relationName":"ReminderCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"favorites","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductFavorite","nativeType":null,"relationName":"CustomerToProductFavorite","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"catalogRequests","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequest","nativeType":null,"relationName":"CatalogRequestToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"productSuggestions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductSuggestion","nativeType":null,"relationName":"CustomerToProductSuggestion","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customerBrands","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerBrand","nativeType":null,"relationName":"CustomerToCustomerBrand","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"addresses","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerAddress","nativeType":null,"relationName":"CustomerToCustomerAddress","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerAddress":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"label","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"text","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isDefault","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerAddress","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"AdminUser":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"fullName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"email","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"passwordHash","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"role","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"AdminRole","nativeType":null,"default":"admin","isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"lastLoginAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OtpChallenge":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"firstName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"lastName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRegister","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"attempts","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"expiresAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Cart":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CartToCustomer","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CartItem","nativeType":null,"relationName":"CartToCartItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CartItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"cartId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"catalogCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"meterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cart","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Cart","nativeType":null,"relationName":"CartToCartItem","relationFromFields":["cartId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CartItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["cartId","productId"]],"uniqueIndexes":[{"name":null,"fields":["cartId","productId"]}],"isGenerated":false},"Order":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"settlementType","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"SettlementType","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkMode","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CheckRegistrationMode","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"OrderStatus","nativeType":null,"default":"awaiting_review","isGenerated":false,"isUpdatedAt":false},{"name":"totalMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"totalAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"shippingCost","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"totalDiscount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"finalAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkRassDays","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkRassDate","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceExpiresAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cashReminderSentAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0632\u0645\u0627\u0646 \u0627\u0631\u0633\u0627\u0644 \u06CC\u0627\u062F\u0622\u0648\u0631\u06CC \u067E\u0627\u06CC\u0627\u0646 \u0645\u0647\u0644\u062A \u067E\u0631\u062F\u0627\u062E\u062A \u062A\u0627 \u062F\u0648\u0628\u0627\u0631\u0647 \u0627\u0631\u0633\u0627\u0644 \u0646\u0634\u0648\u062F"},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToOrder","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToOrder","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderItem","nativeType":null,"relationName":"OrderToOrderItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"checks","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Check","nativeType":null,"relationName":"CheckToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"cashReceipt","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CashPaymentReceipt","nativeType":null,"relationName":"CashPaymentReceiptToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"shipment","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Shipment","nativeType":null,"relationName":"OrderToShipment","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"statusHistory","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatusHistory","nativeType":null,"relationName":"OrderToOrderStatusHistory","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"notifications","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerNotification","nativeType":null,"relationName":"CustomerNotificationToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OrderItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"catalogCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productCode","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"requestedMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"confirmedMeterage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitDiscount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"lineTotal","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToOrderItem","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"OrderItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OrderStatusHistory":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"fromStatus","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatus","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"toStatus","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatus","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"changedBy","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"reason","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"changedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToOrderStatusHistory","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Check":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"row","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"amount","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"dueDate","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"sayadId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerNationalId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerFirstName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerLastName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bankName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"branchName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"frontImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"backImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"mode","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CheckRegistrationMode","nativeType":null,"default":"full","isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CheckStatus","nativeType":null,"default":"pending_review","isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CheckToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CashPaymentReceipt":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"amount","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"paidAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"transferDate","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"transferTime","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"trackingNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"destinationAccountId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"receiptImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expiresAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CashPaymentStatus","nativeType":null,"default":"pending_review","isGenerated":false,"isUpdatedAt":false},{"name":"submittedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CashPaymentReceiptToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"destinationAccount","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"BankAccount","nativeType":null,"relationName":"BankAccountToCashPaymentReceipt","relationFromFields":["destinationAccountId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Shipment":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"carrier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"trackingNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"meterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"ShipmentStatus","nativeType":null,"default":"preparing","isGenerated":false,"isUpdatedAt":false},{"name":"shippedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"deliveredAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToShipment","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SystemSettings":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"default","isGenerated":false,"isUpdatedAt":false},{"name":"maxMeteragePerInvoice","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":5000,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceValidityHours","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":8,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCheck","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCash","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"minOrderRollsPerProduct","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062D\u062F\u0627\u0642\u0644 \u0633\u0641\u0627\u0631\u0634: \u062A\u0639\u062F\u0627\u062F \u0637\u0627\u0642\u0647 \u0627\u0632 \u0647\u0631 \u0645\u062D\u0635\u0648\u0644 (\xA7\u06F1\u06F9)"},{"name":"showCatalogPublicPrice","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0646\u0645\u0627\u06CC\u0634 \u0642\u06CC\u0645\u062A \u0639\u0645\u0648\u0645\u06CC \u062F\u0631 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF (\u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u062E\u0627\u0645\u0648\u0634)"},{"name":"allowAgentPricing","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0627\u062C\u0627\u0632\u0647 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u062A\u0648\u0633\u0637 \u0648\u0627\u0633\u0637\u0647 (\xA7\u06F1\u06F9)"},{"name":"agentMinUnitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u06A9\u0641 \u0642\u06CC\u0645\u062A \u0648\u0627\u062D\u062F \u0628\u0631\u0627\u06CC \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0648\u0627\u0633\u0637\u0647 (\u0631\u06CC\u0627\u0644) \u2014 \u0627\u062E\u062A\u06CC\u0627\u0631\u06CC"},{"name":"smsOrderRegistered","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsPricingReady","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsPaymentReminder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsCheckReview","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsShippingUpdate","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"supportPhone","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportEmail","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"categoryImagesJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062A\u0635\u0627\u0648\u06CC\u0631 \u062F\u0633\u062A\u0647\u200C\u0647\u0627\u06CC \u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: { trousers: dataUrl, summer: dataUrl, ... }"},{"name":"categoryDefsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062A\u0639\u0627\u0631\u06CC\u0641 \u062F\u0633\u062A\u0647\u200C\u0647\u0627 (\u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644). \u0627\u06AF\u0631 \u062E\u0627\u0644\u06CC \u0628\u0627\u0634\u062F \u0627\u0632 \u0645\u0642\u0627\u062F\u06CC\u0631 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u062F \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0645\u06CC\u200C\u0634\u0648\u062F."},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"AppBanner":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"slot","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subtitle","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ctaLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ctaLink","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"imageUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showTitle","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showSubtitle","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showCta","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false,"documentation":"\u0628\u0646\u0631\u0647\u0627\u06CC \u0642\u0627\u0628\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u062E\u0634\u200C\u0647\u0627\u06CC \u0627\u067E \u06A9\u0627\u0631\u0628\u0631"},"AdminNotification":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"body","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tone","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"NotificationTone","nativeType":null,"default":"info","isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerNotification":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"event","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"body","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tone","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"NotificationTone","nativeType":null,"default":"info","isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"smsSent","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerNotification","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CustomerNotificationToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"InternalMessage":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"senderName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subject","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"preview","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"MeetingInteraction":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"agentId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"type","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"InteractionType","nativeType":null,"default":"in_person","isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subject","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"content","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"date","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"time","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"MeetingCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"agent","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"MeetingAgent","relationFromFields":["agentId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Reminder":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"ownerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"date","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"time","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"interactionType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"InteractionType","nativeType":null,"default":"note","isGenerated":false,"isUpdatedAt":false},{"name":"completed","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"completedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"owner","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"ReminderOwner","relationFromFields":["ownerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"ReminderCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"ProductFavorite":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToProductFavorite","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"ProductToProductFavorite","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["customerId","productId"]],"uniqueIndexes":[{"name":null,"fields":["customerId","productId"]}],"isGenerated":false},"Brand":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"slug","kind":"scalar","isList":false,"isRequired":false,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerBrand","nativeType":null,"relationName":"BrandToCustomerBrand","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"products","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"BrandToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerBrand":{"dbName":null,"schema":null,"fields":[{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"brandId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerBrand","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"brand","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Brand","nativeType":null,"relationName":"BrandToCustomerBrand","relationFromFields":["brandId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":{"name":null,"fields":["customerId","brandId"]},"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerLevelDef":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"label","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"sortOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"criteriaJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"benefits","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"LevelBenefit","nativeType":null,"relationName":"CustomerLevelDefToLevelBenefit","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerLevelDef","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"LevelBenefit":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"levelId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"level","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerLevelDef","nativeType":null,"relationName":"CustomerLevelDefToLevelBenefit","relationFromFields":["levelId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogRequest":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CatalogRequestStatus","nativeType":null,"default":"new","isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CatalogRequestToCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogRequestToCatalogRequestItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogRequestItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"requestId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"quantity","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1,"isGenerated":false,"isUpdatedAt":false},{"name":"holderType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CatalogItemHolderType","nativeType":null,"default":"warehouse","isGenerated":false,"isUpdatedAt":false},{"name":"holderCustomerId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"request","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequest","nativeType":null,"relationName":"CatalogRequestToCatalogRequestItem","relationFromFields":["requestId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CatalogRequestItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"movements","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogItemMovement","nativeType":null,"relationName":"CatalogItemMovementToCatalogRequestItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogItemMovement":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"itemId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"fromHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"toHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"movedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"item","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogItemMovementToCatalogRequestItem","relationFromFields":["itemId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"ProductSuggestion":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdByAdminId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToProductSuggestion","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"ProductToProductSuggestion","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SmsWallet":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"default","isGenerated":false,"isUpdatedAt":false},{"name":"balanceToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"pricePerPart","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":250,"isGenerated":false,"isUpdatedAt":false},{"name":"blocked","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"cardNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"6219861941033817","isGenerated":false,"isUpdatedAt":false},{"name":"sheba","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"IR805606118280056043604401","isGenerated":false,"isUpdatedAt":false},{"name":"accountName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"\u062D\u0633\u06CC\u0646 \u0645\u0646\u062A\u0638\u0631","isGenerated":false,"isUpdatedAt":false},{"name":"yellowThreshold","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":10000,"isGenerated":false,"isUpdatedAt":false},{"name":"redThreshold","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1000,"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false,"documentation":"\u06CC\u06A9 \u0631\u062F\u06CC\u0641 \u0628\u0631\u0627\u06CC \u062A\u0639\u0631\u0641\u0647\u060C \u0645\u0648\u062C\u0648\u062F\u06CC \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648\u0627\u0631\u06CC\u0632 \u067E\u06CC\u0627\u0645\u06A9"},"SmsUsage":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"parts","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"costToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SmsTopUp":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"amountToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false}},"enums":{"SettlementType":{"values":[{"name":"cash","dbName":null},{"name":"check","dbName":null}],"dbName":null},"CheckRegistrationMode":{"values":[{"name":"full","dbName":null},{"name":"brief","dbName":null}],"dbName":null},"OrderStatus":{"values":[{"name":"cart","dbName":null},{"name":"awaiting_settlement","dbName":null},{"name":"cash_in_progress","dbName":null},{"name":"check_in_progress","dbName":null},{"name":"submitted","dbName":null},{"name":"awaiting_review","dbName":null},{"name":"pricing","dbName":null},{"name":"needs_correction","dbName":null},{"name":"awaiting_settlement_fix","dbName":null},{"name":"cash_invoice_issued","dbName":null},{"name":"awaiting_cash_payment","dbName":null},{"name":"cash_payment_submitted","dbName":null},{"name":"awaiting_cash_confirmation","dbName":null},{"name":"cash_confirmed","dbName":null},{"name":"awaiting_check_review","dbName":null},{"name":"check_needs_fix","dbName":null},{"name":"check_rejected","dbName":null},{"name":"checks_approved","dbName":null},{"name":"final_approved","dbName":null},{"name":"preparing","dbName":null},{"name":"ready_to_ship","dbName":null},{"name":"shipped","dbName":null},{"name":"delivered","dbName":null},{"name":"cancelled","dbName":null},{"name":"rejected","dbName":null},{"name":"expired","dbName":null}],"dbName":null},"CheckStatus":{"values":[{"name":"pending_review","dbName":null},{"name":"approved","dbName":null},{"name":"rejected","dbName":null}],"dbName":null},"CashPaymentStatus":{"values":[{"name":"pending_review","dbName":null},{"name":"approved","dbName":null},{"name":"rejected","dbName":null},{"name":"expired","dbName":null}],"dbName":null},"ShipmentStatus":{"values":[{"name":"preparing","dbName":null},{"name":"ready","dbName":null},{"name":"shipped","dbName":null},{"name":"delivered","dbName":null}],"dbName":null},"CustomerType":{"values":[{"name":"wholesale","dbName":null},{"name":"retail","dbName":null}],"dbName":null},"AppUserRole":{"values":[{"name":"customer","dbName":null},{"name":"agent","dbName":null}],"dbName":null},"InteractionType":{"values":[{"name":"in_person","dbName":null},{"name":"call","dbName":null},{"name":"message","dbName":null},{"name":"note","dbName":null}],"dbName":null},"ProductSeason":{"values":[{"name":"summer","dbName":null},{"name":"winter","dbName":null},{"name":"all_season","dbName":null}],"dbName":null},"ProductUsageCategory":{"values":[{"name":"trousers","dbName":null},{"name":"suit","dbName":null},{"name":"shirt","dbName":null},{"name":"other","dbName":null}],"dbName":null},"AdminRole":{"values":[{"name":"admin","dbName":null},{"name":"sales","dbName":null},{"name":"finance","dbName":null},{"name":"warehouse","dbName":null}],"dbName":null},"NotificationTone":{"values":[{"name":"info","dbName":null},{"name":"warning","dbName":null},{"name":"success","dbName":null},{"name":"danger","dbName":null}],"dbName":null},"CatalogRequestStatus":{"values":[{"name":"new","dbName":null},{"name":"approved","dbName":null},{"name":"ready_to_ship","dbName":null},{"name":"delivered","dbName":null},{"name":"returned","dbName":null},{"name":"cancelled","dbName":null}],"dbName":null,"documentation":"\u06AF\u0631\u062F\u0634 \u06A9\u0627\u0644\u06CC\u062A\u0647 \u0641\u06CC\u0632\u06CC\u06A9\u06CC (\xA7\u06F7 \u0633\u0646\u062F)"},"CatalogItemHolderType":{"values":[{"name":"warehouse","dbName":null},{"name":"customer","dbName":null},{"name":"agent","dbName":null}],"dbName":null}},"types":{}}'); + config.runtimeDataModel = JSON.parse('{"models":{"Company":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"slug","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"logoUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"maxMeteragePerInvoice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062E\u0627\u0644\u06CC \u06CC\u0639\u0646\u06CC \u0627\u0632 \u062A\u0646\u0638\u06CC\u0645\u0627\u062A \u0633\u06CC\u0633\u062A\u0645 \u0627\u0631\u062B \u0645\u06CC\u200C\u0628\u0631\u062F"},{"name":"cashInvoiceValidityHours","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":8,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceValidUntilHour","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"bankAccounts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"BankAccount","nativeType":null,"relationName":"BankAccountToCompany","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"products","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CompanyToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CompanyToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CompanyToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"BankAccount":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bankName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accountHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"accountNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cardNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"iban","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"BankAccountToCompany","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"cashReceipts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CashPaymentReceipt","nativeType":null,"relationName":"BankAccountToCashPaymentReceipt","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Product":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"name","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"specs","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":["Text",[]],"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0645\u0634\u062E\u0635\u0627\u062A \u0622\u0632\u0627\u062F \u0645\u062D\u0635\u0648\u0644 (\u0646\u0645\u0627\u06CC\u0634 \u062F\u0631 specs-extra \u0627\u067E)"},{"name":"minMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":30,"isGenerated":false,"isUpdatedAt":false},{"name":"orderMultiplier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":10,"isGenerated":false,"isUpdatedAt":false},{"name":"basePrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0642\u06CC\u0645\u062A \u0647\u0631 \u0645\u062A\u0631 (\u062A\u0648\u0645\u0627\u0646) \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF / \u067E\u06CC\u0634\u200C\u0641\u0627\u06A9\u062A\u0648\u0631"},{"name":"stock","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"usageCategory","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"other","isGenerated":false,"isUpdatedAt":false,"documentation":"\u0641\u06CC\u0644\u062F\u0647\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF \u0645\u0648\u06A9\u0627\u067E (\u0627\u067E \u06A9\u0627\u0631\u0628\u0631)"},{"name":"season","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"all_season","isGenerated":false,"isUpdatedAt":false},{"name":"widthCm","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"composition","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"weightGrams","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"weaveType","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"colorsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tagsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"imageUrlsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subtitle","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"rollMeters","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":50,"isGenerated":false,"isUpdatedAt":false},{"name":"isNew","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToProduct","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"cartItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CartItem","nativeType":null,"relationName":"CartItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orderItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderItem","nativeType":null,"relationName":"OrderItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"favorites","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductFavorite","nativeType":null,"relationName":"ProductToProductFavorite","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"catalogRequestItems","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogRequestItemToProduct","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"productSuggestions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductSuggestion","nativeType":null,"relationName":"ProductToProductSuggestion","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["companyId","code"]],"uniqueIndexes":[{"name":null,"fields":["companyId","code"]}],"isGenerated":false},"Customer":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"firstName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"lastName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"nationalId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"customerType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CustomerType","nativeType":null,"default":"wholesale","isGenerated":false,"isUpdatedAt":false},{"name":"appRole","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"AppUserRole","nativeType":null,"default":"customer","isGenerated":false,"isUpdatedAt":false,"documentation":"\u0646\u0642\u0634 \u062F\u0631 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: \u0645\u0634\u062A\u0631\u06CC \u0639\u0627\u062F\u06CC \u06CC\u0627 \u0648\u0627\u0633\u0637\u0647"},{"name":"agentCode","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"businessName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"nextLevelLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"pointsToNext","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelProgress","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"assignedAgentId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarLetter","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarColor","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"avatarUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"address","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0622\u062F\u0631\u0633 \u0648\u0627\u0633\u0637\u0647 (\u062F\u0631 \u067E\u0631\u0648\u0641\u0627\u06CC\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631)"},{"name":"companyId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"levelDefId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"company","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToCustomer","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"levelDef","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerLevelDef","nativeType":null,"relationName":"CustomerToCustomerLevelDef","relationFromFields":["levelDefId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"assignedAgent","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"AgentCustomers","relationFromFields":["assignedAgentId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false},{"name":"agentCustomers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"AgentCustomers","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"carts","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Cart","nativeType":null,"relationName":"CartToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"orders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CustomerToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"notifications","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerNotification","nativeType":null,"relationName":"CustomerToCustomerNotification","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"meetings","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"MeetingInteraction","nativeType":null,"relationName":"MeetingCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"meetingsAsAgent","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"MeetingInteraction","nativeType":null,"relationName":"MeetingAgent","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"reminders","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Reminder","nativeType":null,"relationName":"ReminderOwner","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"remindersAbout","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Reminder","nativeType":null,"relationName":"ReminderCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"favorites","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductFavorite","nativeType":null,"relationName":"CustomerToProductFavorite","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"catalogRequests","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequest","nativeType":null,"relationName":"CatalogRequestToCustomer","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"productSuggestions","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"ProductSuggestion","nativeType":null,"relationName":"CustomerToProductSuggestion","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"addresses","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerAddress","nativeType":null,"relationName":"CustomerToCustomerAddress","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerAddress":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"label","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"text","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isDefault","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerAddress","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"AdminUser":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"fullName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"email","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"passwordHash","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"role","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"AdminRole","nativeType":null,"default":"admin","isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"lastLoginAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OtpChallenge":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"phone","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"firstName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"lastName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRegister","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"attempts","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"expiresAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Cart":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CartToCustomer","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CartItem","nativeType":null,"relationName":"CartToCartItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CartItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"cartId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"catalogCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"meterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cart","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Cart","nativeType":null,"relationName":"CartToCartItem","relationFromFields":["cartId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CartItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["cartId","productId"]],"uniqueIndexes":[{"name":null,"fields":["cartId","productId"]}],"isGenerated":false},"Order":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"userId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"settlementType","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"SettlementType","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkMode","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CheckRegistrationMode","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"OrderStatus","nativeType":null,"default":"awaiting_review","isGenerated":false,"isUpdatedAt":false},{"name":"totalMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"totalAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"shippingCost","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"totalDiscount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"finalAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkRassDays","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkRassDate","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceExpiresAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"cashReminderSentAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0632\u0645\u0627\u0646 \u0627\u0631\u0633\u0627\u0644 \u06CC\u0627\u062F\u0622\u0648\u0631\u06CC \u067E\u0627\u06CC\u0627\u0646 \u0645\u0647\u0644\u062A \u067E\u0631\u062F\u0627\u062E\u062A \u062A\u0627 \u062F\u0648\u0628\u0627\u0631\u0647 \u0627\u0631\u0633\u0627\u0644 \u0646\u0634\u0648\u062F"},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"user","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToOrder","relationFromFields":["userId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"company","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Company","nativeType":null,"relationName":"CompanyToOrder","relationFromFields":["companyId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderItem","nativeType":null,"relationName":"OrderToOrderItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"checks","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Check","nativeType":null,"relationName":"CheckToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"cashReceipt","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CashPaymentReceipt","nativeType":null,"relationName":"CashPaymentReceiptToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"shipment","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Shipment","nativeType":null,"relationName":"OrderToShipment","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"statusHistory","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatusHistory","nativeType":null,"relationName":"OrderToOrderStatusHistory","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"notifications","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerNotification","nativeType":null,"relationName":"CustomerNotificationToOrder","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OrderItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"catalogCode","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productCode","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"color","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"requestedMeterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"confirmedMeterage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"unitDiscount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Float","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"lineTotal","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"companyName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToOrderItem","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"OrderItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"OrderStatusHistory":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"fromStatus","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatus","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"toStatus","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"OrderStatus","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"changedBy","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"reason","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"changedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToOrderStatusHistory","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Check":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"row","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"amount","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"dueDate","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"sayadId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"checkNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerNationalId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerFirstName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ownerLastName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bankName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"branchName","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"frontImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"backImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"mode","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CheckRegistrationMode","nativeType":null,"default":"full","isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CheckStatus","nativeType":null,"default":"pending_review","isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CheckToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CashPaymentReceipt":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"amount","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"paidAmount","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"transferDate","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"transferTime","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"trackingNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"destinationAccountId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"receiptImage","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"notes","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"expiresAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CashPaymentStatus","nativeType":null,"default":"pending_review","isGenerated":false,"isUpdatedAt":false},{"name":"submittedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CashPaymentReceiptToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"destinationAccount","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"BankAccount","nativeType":null,"relationName":"BankAccountToCashPaymentReceipt","relationFromFields":["destinationAccountId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Shipment":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"carrier","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"trackingNumber","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"meterage","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Float","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"ShipmentStatus","nativeType":null,"default":"preparing","isGenerated":false,"isUpdatedAt":false},{"name":"shippedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"deliveredAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"order","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"OrderToShipment","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SystemSettings":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"default","isGenerated":false,"isUpdatedAt":false},{"name":"maxMeteragePerInvoice","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":5000,"isGenerated":false,"isUpdatedAt":false},{"name":"cashInvoiceValidityHours","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":8,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCheck","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCash","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"defaultSettlementCashCheck","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"minOrderRollsPerProduct","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062D\u062F\u0627\u0642\u0644 \u0633\u0641\u0627\u0631\u0634: \u062A\u0639\u062F\u0627\u062F \u0637\u0627\u0642\u0647 \u0627\u0632 \u0647\u0631 \u0645\u062D\u0635\u0648\u0644 (\xA7\u06F1\u06F9)"},{"name":"showCatalogPublicPrice","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0646\u0645\u0627\u06CC\u0634 \u0642\u06CC\u0645\u062A \u0639\u0645\u0648\u0645\u06CC \u062F\u0631 \u06A9\u0627\u062A\u0627\u0644\u0648\u06AF (\u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u062E\u0627\u0645\u0648\u0634)"},{"name":"allowAgentPricing","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0627\u062C\u0627\u0632\u0647 \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u062A\u0648\u0633\u0637 \u0648\u0627\u0633\u0637\u0647 (\xA7\u06F1\u06F9)"},{"name":"agentMinUnitPrice","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u06A9\u0641 \u0642\u06CC\u0645\u062A \u0648\u0627\u062D\u062F \u0628\u0631\u0627\u06CC \u0642\u06CC\u0645\u062A\u200C\u06AF\u0630\u0627\u0631\u06CC \u0648\u0627\u0633\u0637\u0647 (\u0631\u06CC\u0627\u0644) \u2014 \u0627\u062E\u062A\u06CC\u0627\u0631\u06CC"},{"name":"smsOrderRegistered","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsPricingReady","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsPaymentReminder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsCheckReview","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"smsShippingUpdate","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"supportPhone","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportEmail","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportWhatsapp","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportTelegram","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"supportInstagram","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"categoryImagesJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062A\u0635\u0627\u0648\u06CC\u0631 \u062F\u0633\u062A\u0647\u200C\u0647\u0627\u06CC \u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644 \u0627\u067E \u06A9\u0627\u0631\u0628\u0631: { trousers: dataUrl, summer: dataUrl, ... }"},{"name":"categoryDefsJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u062A\u0639\u0627\u0631\u06CC\u0641 \u062F\u0633\u062A\u0647\u200C\u0647\u0627 (\u06A9\u0627\u0631\u0628\u0631\u062F/\u0641\u0635\u0644). \u0627\u06AF\u0631 \u062E\u0627\u0644\u06CC \u0628\u0627\u0634\u062F \u0627\u0632 \u0645\u0642\u0627\u062F\u06CC\u0631 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u062F \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0645\u06CC\u200C\u0634\u0648\u062F."},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"AppBanner":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"slot","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subtitle","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ctaLabel","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"ctaLink","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"bannerLink","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false,"documentation":"\u0644\u06CC\u0646\u06A9 \u06A9\u0644\u06CC\u06A9 \u0631\u0648\u06CC \u062A\u0635\u0648\u06CC\u0631 \u0628\u0646\u0631 (\u0645\u0633\u062A\u0642\u0644 \u0627\u0632 \u0644\u06CC\u0646\u06A9 \u062F\u06A9\u0645\u0647)"},{"name":"imageUrl","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"displayOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showTitle","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showSubtitle","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"showCta","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false,"documentation":"\u0628\u0646\u0631\u0647\u0627\u06CC \u0642\u0627\u0628\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u062E\u0634\u200C\u0647\u0627\u06CC \u0627\u067E \u06A9\u0627\u0631\u0628\u0631"},"AdminNotification":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"body","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tone","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"NotificationTone","nativeType":null,"default":"info","isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CustomerNotification":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"orderId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"event","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"body","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"tone","kind":"enum","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"NotificationTone","nativeType":null,"default":"info","isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"smsSent","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerNotification","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"order","kind":"object","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Order","nativeType":null,"relationName":"CustomerNotificationToOrder","relationFromFields":["orderId"],"relationToFields":["id"],"relationOnDelete":"SetNull","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"InternalMessage":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"senderName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subject","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"preview","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"link","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isRead","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"sentAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"MeetingInteraction":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"agentId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"type","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"InteractionType","nativeType":null,"default":"in_person","isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"subject","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"content","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"date","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"time","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"MeetingCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"agent","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"MeetingAgent","relationFromFields":["agentId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"Reminder":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"ownerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"date","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"time","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"interactionType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"InteractionType","nativeType":null,"default":"note","isGenerated":false,"isUpdatedAt":false},{"name":"completed","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"completedAt","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"owner","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"ReminderOwner","relationFromFields":["ownerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"ReminderCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"ProductFavorite":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToProductFavorite","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"ProductToProductFavorite","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[["customerId","productId"]],"uniqueIndexes":[{"name":null,"fields":["customerId","productId"]}],"isGenerated":false},"CustomerLevelDef":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"code","kind":"scalar","isList":false,"isRequired":true,"isUnique":true,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"label","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"sortOrder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"criteriaJson","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Json","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"benefits","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"LevelBenefit","nativeType":null,"relationName":"CustomerLevelDefToLevelBenefit","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false},{"name":"customers","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToCustomerLevelDef","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"LevelBenefit":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"levelId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"title","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"description","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"level","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CustomerLevelDef","nativeType":null,"relationName":"CustomerLevelDefToLevelBenefit","relationFromFields":["levelId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogRequest":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"status","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CatalogRequestStatus","nativeType":null,"default":"new","isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CatalogRequestToCustomer","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"items","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogRequestToCatalogRequestItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogRequestItem":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"requestId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"quantity","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1,"isGenerated":false,"isUpdatedAt":false},{"name":"holderType","kind":"enum","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"CatalogItemHolderType","nativeType":null,"default":"warehouse","isGenerated":false,"isUpdatedAt":false},{"name":"holderCustomerId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"request","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequest","nativeType":null,"relationName":"CatalogRequestToCatalogRequestItem","relationFromFields":["requestId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"CatalogRequestItemToProduct","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Restrict","isGenerated":false,"isUpdatedAt":false},{"name":"movements","kind":"object","isList":true,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogItemMovement","nativeType":null,"relationName":"CatalogItemMovementToCatalogRequestItem","relationFromFields":[],"relationToFields":[],"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"CatalogItemMovement":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"itemId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"fromHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"toHolder","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"movedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"item","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"CatalogRequestItem","nativeType":null,"relationName":"CatalogItemMovementToCatalogRequestItem","relationFromFields":["itemId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"ProductSuggestion":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"customerId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"productId","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":true,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdByAdminId","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"isActive","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":true,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false},{"name":"customer","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Customer","nativeType":null,"relationName":"CustomerToProductSuggestion","relationFromFields":["customerId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false},{"name":"product","kind":"object","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Product","nativeType":null,"relationName":"ProductToProductSuggestion","relationFromFields":["productId"],"relationToFields":["id"],"relationOnDelete":"Cascade","isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SmsWallet":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"default","isGenerated":false,"isUpdatedAt":false},{"name":"balanceToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":0,"isGenerated":false,"isUpdatedAt":false},{"name":"pricePerPart","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":250,"isGenerated":false,"isUpdatedAt":false},{"name":"blocked","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Boolean","nativeType":null,"default":false,"isGenerated":false,"isUpdatedAt":false},{"name":"cardNumber","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"6219861941033817","isGenerated":false,"isUpdatedAt":false},{"name":"sheba","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"IR805606118280056043604401","isGenerated":false,"isUpdatedAt":false},{"name":"accountName","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":"\u062D\u0633\u06CC\u0646 \u0645\u0646\u062A\u0638\u0631","isGenerated":false,"isUpdatedAt":false},{"name":"yellowThreshold","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":10000,"isGenerated":false,"isUpdatedAt":false},{"name":"redThreshold","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"Int","nativeType":null,"default":1000,"isGenerated":false,"isUpdatedAt":false},{"name":"updatedAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"DateTime","nativeType":null,"isGenerated":false,"isUpdatedAt":true}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false,"documentation":"\u06CC\u06A9 \u0631\u062F\u06CC\u0641 \u0628\u0631\u0627\u06CC \u062A\u0639\u0631\u0641\u0647\u060C \u0645\u0648\u062C\u0648\u062F\u06CC \u0648 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648\u0627\u0631\u06CC\u0632 \u067E\u06CC\u0627\u0645\u06A9"},"SmsUsage":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"parts","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"costToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false},"SmsTopUp":{"dbName":null,"schema":null,"fields":[{"name":"id","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":true,"isReadOnly":false,"hasDefaultValue":true,"type":"String","nativeType":null,"default":{"name":"cuid","args":[1]},"isGenerated":false,"isUpdatedAt":false},{"name":"amountToman","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"Int","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"note","kind":"scalar","isList":false,"isRequired":false,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":false,"type":"String","nativeType":null,"isGenerated":false,"isUpdatedAt":false},{"name":"createdAt","kind":"scalar","isList":false,"isRequired":true,"isUnique":false,"isId":false,"isReadOnly":false,"hasDefaultValue":true,"type":"DateTime","nativeType":null,"default":{"name":"now","args":[]},"isGenerated":false,"isUpdatedAt":false}],"primaryKey":null,"uniqueFields":[],"uniqueIndexes":[],"isGenerated":false}},"enums":{"SettlementType":{"values":[{"name":"cash","dbName":null},{"name":"check","dbName":null},{"name":"cash_check","dbName":null}],"dbName":null},"CheckRegistrationMode":{"values":[{"name":"full","dbName":null},{"name":"brief","dbName":null}],"dbName":null},"OrderStatus":{"values":[{"name":"cart","dbName":null},{"name":"awaiting_settlement","dbName":null},{"name":"cash_in_progress","dbName":null},{"name":"check_in_progress","dbName":null},{"name":"submitted","dbName":null},{"name":"awaiting_review","dbName":null},{"name":"pricing","dbName":null},{"name":"needs_correction","dbName":null},{"name":"awaiting_settlement_fix","dbName":null},{"name":"cash_invoice_issued","dbName":null},{"name":"awaiting_cash_payment","dbName":null},{"name":"cash_payment_submitted","dbName":null},{"name":"awaiting_cash_confirmation","dbName":null},{"name":"cash_confirmed","dbName":null},{"name":"awaiting_check_review","dbName":null},{"name":"check_needs_fix","dbName":null},{"name":"check_rejected","dbName":null},{"name":"checks_approved","dbName":null},{"name":"final_approved","dbName":null},{"name":"preparing","dbName":null},{"name":"ready_to_ship","dbName":null},{"name":"shipped","dbName":null},{"name":"delivered","dbName":null},{"name":"cancelled","dbName":null},{"name":"rejected","dbName":null},{"name":"expired","dbName":null}],"dbName":null},"CheckStatus":{"values":[{"name":"pending_review","dbName":null},{"name":"approved","dbName":null},{"name":"rejected","dbName":null}],"dbName":null},"CashPaymentStatus":{"values":[{"name":"pending_review","dbName":null},{"name":"approved","dbName":null},{"name":"rejected","dbName":null},{"name":"expired","dbName":null}],"dbName":null},"ShipmentStatus":{"values":[{"name":"preparing","dbName":null},{"name":"ready","dbName":null},{"name":"shipped","dbName":null},{"name":"delivered","dbName":null}],"dbName":null},"CustomerType":{"values":[{"name":"wholesale","dbName":null},{"name":"retail","dbName":null}],"dbName":null},"AppUserRole":{"values":[{"name":"customer","dbName":null},{"name":"agent","dbName":null}],"dbName":null},"InteractionType":{"values":[{"name":"in_person","dbName":null},{"name":"call","dbName":null},{"name":"message","dbName":null},{"name":"note","dbName":null}],"dbName":null},"ProductSeason":{"values":[{"name":"summer","dbName":null},{"name":"winter","dbName":null},{"name":"all_season","dbName":null}],"dbName":null},"ProductUsageCategory":{"values":[{"name":"trousers","dbName":null},{"name":"suit","dbName":null},{"name":"shirt","dbName":null},{"name":"other","dbName":null}],"dbName":null},"AdminRole":{"values":[{"name":"admin","dbName":null},{"name":"sales","dbName":null},{"name":"finance","dbName":null},{"name":"warehouse","dbName":null}],"dbName":null},"NotificationTone":{"values":[{"name":"info","dbName":null},{"name":"warning","dbName":null},{"name":"success","dbName":null},{"name":"danger","dbName":null}],"dbName":null},"CatalogRequestStatus":{"values":[{"name":"new","dbName":null},{"name":"approved","dbName":null},{"name":"ready_to_ship","dbName":null},{"name":"delivered","dbName":null},{"name":"returned","dbName":null},{"name":"cancelled","dbName":null}],"dbName":null,"documentation":"\u06AF\u0631\u062F\u0634 \u06A9\u0627\u0644\u06CC\u062A\u0647 \u0641\u06CC\u0632\u06CC\u06A9\u06CC (\xA7\u06F7 \u0633\u0646\u062F)"},"CatalogItemHolderType":{"values":[{"name":"warehouse","dbName":null},{"name":"customer","dbName":null},{"name":"agent","dbName":null}],"dbName":null}},"types":{}}'); defineDmmfProperty2(exports2.Prisma, config.runtimeDataModel); config.engineWasm = void 0; config.compilerWasm = void 0; @@ -131134,6 +131123,54 @@ var require_jwt_auth_guard = __commonJS({ } }); +// dist/companies/default-company.js +var require_default_company = __commonJS({ + "dist/companies/default-company.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.PAYMENT_RECIPIENT_COMPANY_SLUG = void 0; + exports2.findPaymentRecipientCompany = findPaymentRecipientCompany; + exports2.requirePaymentRecipientCompany = requirePaymentRecipientCompany; + exports2.resolveProductCompanyId = resolveProductCompanyId; + exports2.isPaymentRecipientCompany = isPaymentRecipientCompany; + var common_12 = require_common(); + exports2.PAYMENT_RECIPIENT_COMPANY_SLUG = "nademitex"; + async function findPaymentRecipientCompany(prisma) { + return prisma.company.findFirst({ + where: { slug: exports2.PAYMENT_RECIPIENT_COMPANY_SLUG, isActive: true } + }); + } + __name(findPaymentRecipientCompany, "findPaymentRecipientCompany"); + async function requirePaymentRecipientCompany(prisma) { + const company = await findPaymentRecipientCompany(prisma); + if (!company) { + throw new common_12.NotFoundException("\u0634\u0631\u06A9\u062A \u0627\u0635\u0644\u06CC (\u0646\u0627\u062F\u0645\u06CC \u062A\u06A9\u0633) \u062F\u0631 \u0633\u06CC\u0633\u062A\u0645 \u062A\u0639\u0631\u06CC\u0641 \u0646\u0634\u062F\u0647 \u0627\u0633\u062A. \u0644\u0637\u0641\u0627\u064B \u0628\u0627 \u067E\u0634\u062A\u06CC\u0628\u0627\u0646\u06CC \u062A\u0645\u0627\u0633 \u0628\u06AF\u06CC\u0631\u06CC\u062F."); + } + return company; + } + __name(requirePaymentRecipientCompany, "requirePaymentRecipientCompany"); + async function resolveProductCompanyId(prisma, companyId) { + const trimmed = companyId?.trim(); + if (trimmed) { + const row = await prisma.company.findUnique({ where: { id: trimmed } }); + if (!row) { + throw new common_12.BadRequestException("\u0634\u0631\u06A9\u062A \u0627\u0646\u062A\u062E\u0627\u0628\u200C\u0634\u062F\u0647 \u0645\u0639\u062A\u0628\u0631 \u0646\u06CC\u0633\u062A"); + } + if (!row.isActive) { + throw new common_12.BadRequestException("\u0634\u0631\u06A9\u062A \u0627\u0646\u062A\u062E\u0627\u0628\u200C\u0634\u062F\u0647 \u063A\u06CC\u0631\u0641\u0639\u0627\u0644 \u0627\u0633\u062A"); + } + return row.id; + } + return (await requirePaymentRecipientCompany(prisma)).id; + } + __name(resolveProductCompanyId, "resolveProductCompanyId"); + function isPaymentRecipientCompany(company) { + return company.slug === exports2.PAYMENT_RECIPIENT_COMPANY_SLUG; + } + __name(isPaymentRecipientCompany, "isPaymentRecipientCompany"); + } +}); + // dist/common/utils/meterage.js var require_meterage = __commonJS({ "dist/common/utils/meterage.js"(exports2) { @@ -131169,6 +131206,7 @@ var require_companies_service = __commonJS({ Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CompaniesService = void 0; var common_12 = require_common(); + var default_company_1 = require_default_company(); var client_1 = require_default2(); var prisma_service_1 = require_prisma_service(); var meterage_1 = require_meterage(); @@ -131293,8 +131331,15 @@ var require_companies_service = __commonJS({ }); return this.mapCompany(company); } + async listPaymentBankAccounts() { + const recipient = await (0, default_company_1.requirePaymentRecipientCompany)(this.prisma); + return this.listBankAccountsForCompany(recipient.id); + } async listBankAccounts(companyId) { await this.ensureCompany(companyId); + return this.listPaymentBankAccounts(); + } + async listBankAccountsForCompany(companyId) { const accounts = await this.prisma.bankAccount.findMany({ where: { companyId }, orderBy: { displayOrder: "asc" } @@ -131302,10 +131347,14 @@ var require_companies_service = __commonJS({ return accounts.map((a) => this.mapBankAccount(a)); } async createBankAccount(companyId, dto) { - await this.ensureCompany(companyId); + const company = await this.ensureCompany(companyId); + if (!(0, default_company_1.isPaymentRecipientCompany)(company)) { + throw new common_12.BadRequestException("\u062D\u0633\u0627\u0628 \u0628\u0627\u0646\u06A9\u06CC \u0641\u0642\u0637 \u0628\u0631\u0627\u06CC \u0634\u0631\u06A9\u062A \u0646\u0627\u062F\u0645\u06CC \u062A\u06A9\u0633 (\u062F\u0631\u06CC\u0627\u0641\u062A\u200C\u06A9\u0646\u0646\u062F\u0647 \u067E\u0631\u062F\u0627\u062E\u062A) \u062B\u0628\u062A \u0645\u06CC\u200C\u0634\u0648\u062F."); + } + const recipient = await (0, default_company_1.requirePaymentRecipientCompany)(this.prisma); const account = await this.prisma.bankAccount.create({ data: { - companyId, + companyId: recipient.id, bankName: dto.bankName.trim(), accountHolder: dto.accountHolder.trim(), accountNumber: dto.accountNumber.trim(), @@ -131360,6 +131409,7 @@ var require_companies_service = __commonJS({ id: company.id, name: company.name, slug: company.slug, + isPaymentRecipient: (0, default_company_1.isPaymentRecipientCompany)(company), description: company.description ?? "", logoUrl: company.logoUrl, logo: company.logoUrl ?? void 0, @@ -131715,6 +131765,9 @@ var require_companies_controller = __commonJS({ findPublic() { return this.companiesService.findAll(true); } + listPaymentBankAccounts() { + return this.companiesService.listPaymentBankAccounts(); + } findOne(id) { return this.companiesService.findOne(id); } @@ -131750,6 +131803,13 @@ var require_companies_controller = __commonJS({ __metadata2("design:paramtypes", []), __metadata2("design:returntype", void 0) ], CompaniesController.prototype, "findPublic", null); + __decorate2([ + (0, auth_decorators_1.Public)(), + (0, common_12.Get)("payment/bank-accounts"), + __metadata2("design:type", Function), + __metadata2("design:paramtypes", []), + __metadata2("design:returntype", void 0) + ], CompaniesController.prototype, "listPaymentBankAccounts", null); __decorate2([ (0, auth_decorators_1.AuthType)("any"), (0, common_12.Get)(":id"), @@ -131891,10 +131951,57 @@ var require_product_color_json_dto = __commonJS({ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ProductColorJsonItemDto = void 0; + exports2.ProductColorJsonItemDto = exports2.IsColorsJsonConstraint = void 0; + exports2.IsColorsJson = IsColorsJson; exports2.transformColorsJson = transformColorsJson; exports2.serializeColorsJsonForDb = serializeColorsJsonForDb; var class_validator_1 = require_cjs(); + var IsColorsJsonConstraint = class IsColorsJsonConstraint { + static { + __name(this, "IsColorsJsonConstraint"); + } + validate(value) { + if (value === void 0 || value === null) + return true; + if (!Array.isArray(value)) + return false; + for (const item of value) { + if (!(item instanceof ProductColorJsonItemDto)) + return false; + if (!item.name?.trim()) + return false; + if (item.imageUrl !== void 0 && item.imageUrl !== null && typeof item.imageUrl !== "string") { + return false; + } + if (item.imageUrls !== void 0 && item.imageUrls !== null) { + if (!Array.isArray(item.imageUrls)) + return false; + if (!item.imageUrls.every((u) => typeof u === "string")) + return false; + } + } + return true; + } + defaultMessage() { + return "\u0641\u0631\u0645\u062A colorsJson \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A"; + } + }; + exports2.IsColorsJsonConstraint = IsColorsJsonConstraint; + exports2.IsColorsJsonConstraint = IsColorsJsonConstraint = __decorate2([ + (0, class_validator_1.ValidatorConstraint)({ name: "isColorsJson", async: false }) + ], IsColorsJsonConstraint); + function IsColorsJson(validationOptions) { + return /* @__PURE__ */ __name(function register(object, propertyName) { + (0, class_validator_1.registerDecorator)({ + target: object.constructor, + propertyName, + options: validationOptions, + constraints: [], + validator: IsColorsJsonConstraint + }); + }, "register"); + } + __name(IsColorsJson, "IsColorsJson"); var ProductColorJsonItemDto = class { static { __name(this, "ProductColorJsonItemDto"); @@ -131943,7 +132050,7 @@ var require_product_color_json_dto = __commonJS({ if (typeof item === "string") { const name = item.trim(); if (name) - out.push({ name }); + out.push(Object.assign(new ProductColorJsonItemDto(), { name })); continue; } if (item && typeof item === "object") { @@ -131953,11 +132060,11 @@ var require_product_color_json_dto = __commonJS({ continue; const imageUrls = Array.isArray(raw2.imageUrls) ? raw2.imageUrls.filter((u) => typeof u === "string" && u.trim().length > 0).map((u) => u.trim()) : void 0; const imageUrl = typeof raw2.imageUrl === "string" && raw2.imageUrl.trim() ? raw2.imageUrl.trim() : void 0; - out.push({ + out.push(Object.assign(new ProductColorJsonItemDto(), { name, imageUrl, imageUrls: imageUrls?.length ? imageUrls : imageUrl ? [imageUrl] : void 0 - }); + })); } } return out; @@ -132098,10 +132205,10 @@ var require_products_service = __commonJS({ var prisma_service_1 = require_prisma_service(); var product_color_json_dto_1 = require_product_color_json_dto(); var category_defs_1 = require_category_defs(); + var default_company_1 = require_default_company(); var color_entries_1 = require_color_entries(); var productInclude = { - company: { select: { name: true } }, - brand: { select: { id: true, name: true } } + company: { select: { name: true } } }; var ProductsService = class ProductsService { static { @@ -132189,16 +132296,16 @@ var require_products_service = __commonJS({ const code = (dto.code || dto.productCode || "").trim(); if (!code) throw new common_12.ConflictException("\u06A9\u062F \u0645\u062D\u0635\u0648\u0644 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A"); - const brandId = await this.resolveBrandId(dto.brandId ?? null); + const companyId = await (0, default_company_1.resolveProductCompanyId)(this.prisma, dto.companyId); try { const product = await this.prisma.product.create({ data: { - companyId: dto.companyId, - brandId, + companyId, name: dto.name.trim(), code, color: dto.color.trim(), description: dto.description?.trim() || null, + specs: dto.specs?.trim() || null, minMeterage: dto.minMeterage ?? 30, orderMultiplier: dto.orderMultiplier ?? dto.orderStep ?? 10, basePrice: this.pickNumber(dto.basePrice, dto.price), @@ -132230,16 +132337,18 @@ var require_products_service = __commonJS({ async update(id, dto, preservedColorsJson) { await this.ensure(id); const code = dto.code !== void 0 ? dto.code.trim() : dto.productCode !== void 0 ? dto.productCode.trim() : void 0; - const brandId = await this.resolveBrandId(dto.brandId); try { const product = await this.prisma.product.update({ where: { id }, data: { - ...brandId !== void 0 ? { brandId } : {}, + ...dto.companyId !== void 0 ? { + companyId: await (0, default_company_1.resolveProductCompanyId)(this.prisma, dto.companyId) + } : {}, name: dto.name?.trim(), code, color: dto.color?.trim(), description: dto.description === void 0 ? void 0 : dto.description?.trim() || null, + specs: dto.specs === void 0 ? void 0 : dto.specs?.trim() || null, minMeterage: dto.minMeterage, orderMultiplier: dto.orderMultiplier !== void 0 ? dto.orderMultiplier : dto.orderStep, basePrice: dto.basePrice !== void 0 ? dto.basePrice : dto.price !== void 0 ? dto.price : void 0, @@ -132277,6 +132386,27 @@ var require_products_service = __commonJS({ }); return this.map(product); } + async remove(id) { + await this.ensure(id); + const catalogRequestCount = await this.prisma.catalogRequestItem.count({ + where: { productId: id } + }); + if (catalogRequestCount > 0) { + throw new common_12.ConflictException("\u0627\u06CC\u0646 \u0645\u062D\u0635\u0648\u0644 \u062F\u0631 \u062F\u0631\u062E\u0648\u0627\u0633\u062A \u06A9\u0627\u0644\u06CC\u062A\u0647 \u062B\u0628\u062A \u0634\u062F\u0647 \u0648 \u0642\u0627\u0628\u0644 \u062D\u0630\u0641 \u0646\u06CC\u0633\u062A."); + } + try { + await this.prisma.$transaction([ + this.prisma.cartItem.deleteMany({ where: { productId: id } }), + this.prisma.product.delete({ where: { id } }) + ]); + } catch (e) { + if (e instanceof client_1.Prisma.PrismaClientKnownRequestError && e.code === "P2003") { + throw new common_12.ConflictException("\u0627\u06CC\u0646 \u0645\u062D\u0635\u0648\u0644 \u0628\u0647 \u062F\u0627\u062F\u0647\u200C\u0647\u0627\u06CC \u062F\u06CC\u06AF\u0631 \u0648\u0627\u0628\u0633\u062A\u0647 \u0627\u0633\u062A \u0648 \u0642\u0627\u0628\u0644 \u062D\u0630\u0641 \u0646\u06CC\u0633\u062A."); + } + throw e; + } + return { ok: true }; + } async listFavoriteIds(customerId) { const rows = await this.prisma.productFavorite.findMany({ where: { customerId }, @@ -132320,17 +132450,6 @@ var require_products_service = __commonJS({ throw new common_12.NotFoundException("\u0645\u062D\u0635\u0648\u0644 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F"); return product; } - async resolveBrandId(brandId) { - if (brandId === void 0) - return void 0; - const id = brandId?.trim() || null; - if (!id) - return null; - const brand = await this.prisma.brand.findUnique({ where: { id } }); - if (!brand) - throw new common_12.BadRequestException("\u0628\u0631\u0646\u062F \u06CC\u0627\u0641\u062A \u0646\u0634\u062F"); - return id; - } map(product, hidePrice = false) { const colorEntries = (0, color_entries_1.parseColorEntries)(product.colorsJson, product.color); const colors = colorEntries.map((entry) => entry.name); @@ -132345,13 +132464,12 @@ var require_products_service = __commonJS({ companyName: product.company.name, catalogCode: product.code, catalogName: product.name, - brandId: product.brand?.id ?? null, - brandName: product.brand?.name ?? null, name: product.name, code: product.code, productCode: product.code, color: product.color, description: product.description ?? void 0, + specs: product.specs?.trim() ? product.specs : void 0, minMeterage: product.minMeterage, orderMultiplier: product.orderMultiplier, orderStep: product.orderMultiplier, @@ -132412,12 +132530,12 @@ var require_product_dto = __commonJS({ __name(this, "CreateProductDto"); } companyId; - brandId; name; code; productCode; color; description; + specs; minMeterage; orderMultiplier; orderStep; @@ -132441,14 +132559,10 @@ var require_product_dto = __commonJS({ }; exports2.CreateProductDto = CreateProductDto; __decorate2([ + (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), __metadata2("design:type", String) ], CreateProductDto.prototype, "companyId", void 0); - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_validator_1.IsString)(), - __metadata2("design:type", Object) - ], CreateProductDto.prototype, "brandId", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.MinLength)(1), @@ -132474,6 +132588,11 @@ var require_product_dto = __commonJS({ (0, class_validator_1.IsString)(), __metadata2("design:type", String) ], CreateProductDto.prototype, "description", void 0); + __decorate2([ + (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsString)(), + __metadata2("design:type", String) + ], CreateProductDto.prototype, "specs", void 0); __decorate2([ (0, class_validator_1.IsOptional)(), (0, class_transformer_1.Type)(() => Number), @@ -132583,8 +132702,7 @@ var require_product_dto = __commonJS({ (0, class_validator_1.IsOptional)(), (0, class_transformer_1.Transform)(({ value }) => (0, product_color_json_dto_1.transformColorsJson)(value)), (0, class_validator_1.IsArray)(), - (0, class_validator_1.ValidateNested)({ each: true }), - (0, class_transformer_1.Type)(() => product_color_json_dto_1.ProductColorJsonItemDto), + (0, product_color_json_dto_1.IsColorsJson)(), __metadata2("design:type", Array) ], CreateProductDto.prototype, "colorsJson", void 0); __decorate2([ @@ -132595,21 +132713,28 @@ var require_product_dto = __commonJS({ ], CreateProductDto.prototype, "imageUrlsJson", void 0); __decorate2([ (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsArray)(), + (0, class_validator_1.IsString)({ each: true }), __metadata2("design:type", Array) ], CreateProductDto.prototype, "tagsJson", void 0); var UpdateProductDto = class extends (0, mapped_types_1.PartialType)((0, mapped_types_1.OmitType)(CreateProductDto, ["companyId"])) { static { __name(this, "UpdateProductDto"); } + companyId; colorsJson; }; exports2.UpdateProductDto = UpdateProductDto; + __decorate2([ + (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsString)(), + __metadata2("design:type", String) + ], UpdateProductDto.prototype, "companyId", void 0); __decorate2([ (0, class_validator_1.IsOptional)(), (0, class_transformer_1.Transform)(({ value }) => (0, product_color_json_dto_1.transformColorsJson)(value)), (0, class_validator_1.IsArray)(), - (0, class_validator_1.ValidateNested)({ each: true }), - (0, class_transformer_1.Type)(() => product_color_json_dto_1.ProductColorJsonItemDto), + (0, product_color_json_dto_1.IsColorsJson)(), __metadata2("design:type", Array) ], UpdateProductDto.prototype, "colorsJson", void 0); var SetProductActiveDto = class { @@ -132694,6 +132819,9 @@ var require_products_controller = __commonJS({ setActive(id, dto) { return this.productsService.setActive(id, dto.isActive); } + remove(id) { + return this.productsService.remove(id); + } }; exports2.ProductsController = ProductsController; __decorate2([ @@ -132780,6 +132908,14 @@ var require_products_controller = __commonJS({ __metadata2("design:paramtypes", [String, product_dto_1.SetProductActiveDto]), __metadata2("design:returntype", void 0) ], ProductsController.prototype, "setActive", null); + __decorate2([ + (0, auth_decorators_1.AuthType)("admin"), + (0, common_12.Delete)(":id"), + __param2(0, (0, common_12.Param)("id")), + __metadata2("design:type", Function), + __metadata2("design:paramtypes", [String]), + __metadata2("design:returntype", void 0) + ], ProductsController.prototype, "remove", null); exports2.ProductsController = ProductsController = __decorate2([ (0, common_12.Controller)("products"), __metadata2("design:paramtypes", [products_service_1.ProductsService]) @@ -133928,6 +134064,25 @@ var require_check_rass = __commonJS({ } }); +// dist/common/utils/settlement-type.js +var require_settlement_type = __commonJS({ + "dist/common/utils/settlement-type.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.usesCashReceiptPhase = usesCashReceiptPhase; + exports2.usesCheckSettlement = usesCheckSettlement; + var client_1 = require_default2(); + function usesCashReceiptPhase(type) { + return type === client_1.SettlementType.cash || type === client_1.SettlementType.cash_check; + } + __name(usesCashReceiptPhase, "usesCashReceiptPhase"); + function usesCheckSettlement(type) { + return type === client_1.SettlementType.check || type === client_1.SettlementType.cash_check; + } + __name(usesCheckSettlement, "usesCheckSettlement"); + } +}); + // dist/common/utils/cash-expiry.js var require_cash_expiry = __commonJS({ "dist/common/utils/cash-expiry.js"(exports2) { @@ -134083,6 +134238,7 @@ var require_order_transitions = __commonJS({ ], awaiting_cash_confirmation: [ client_1.OrderStatus.cash_confirmed, + client_1.OrderStatus.check_in_progress, client_1.OrderStatus.awaiting_cash_payment ], cash_confirmed: [client_1.OrderStatus.final_approved], @@ -134539,6 +134695,7 @@ var require_orders_service = __commonJS({ var prisma_service_1 = require_prisma_service(); var order_number_1 = require_order_number(); var check_rass_1 = require_check_rass(); + var settlement_type_1 = require_settlement_type(); var cash_expiry_1 = require_cash_expiry(); var order_status_1 = require_order_status(); var order_transitions_1 = require_order_transitions(); @@ -134691,17 +134848,19 @@ var require_orders_service = __commonJS({ if (order.status !== client_1.OrderStatus.awaiting_settlement) { throw new common_12.BadRequestException("\u0627\u0646\u062A\u062E\u0627\u0628 \u0631\u0648\u0634 \u062A\u0633\u0648\u06CC\u0647 \u0641\u0642\u0637 \u067E\u0633 \u0627\u0632 \u0635\u062F\u0648\u0631 \u0641\u0627\u06A9\u062A\u0648\u0631 \u062A\u0648\u0633\u0637 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0627\u0645\u06A9\u0627\u0646\u200C\u067E\u0630\u06CC\u0631 \u0627\u0633\u062A"); } - const isCash = dto.settlementType === client_1.SettlementType.cash; - const nextStatus = isCash ? client_1.OrderStatus.awaiting_cash_payment : client_1.OrderStatus.check_in_progress; + const cashFirst = (0, settlement_type_1.usesCashReceiptPhase)(dto.settlementType); + const checkOnly = dto.settlementType === client_1.SettlementType.check; + const nextStatus = cashFirst ? client_1.OrderStatus.awaiting_cash_payment : client_1.OrderStatus.check_in_progress; (0, order_transitions_1.assertTransition)(order.status, nextStatus); - const cashCompanies = isCash ? await this.companiesForOrder(order) : []; + const cashCompanies = cashFirst ? await this.companiesForOrder(order) : []; + const settlementNote = dto.settlementType === client_1.SettlementType.cash ? "\u0645\u0634\u062A\u0631\u06CC \u062A\u0633\u0648\u06CC\u0647 \u0646\u0642\u062F\u06CC \u0631\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0631\u062F" : dto.settlementType === client_1.SettlementType.cash_check ? "\u0645\u0634\u062A\u0631\u06CC \u062A\u0633\u0648\u06CC\u0647 \u0646\u0642\u062F\u06CC-\u0686\u06A9\u06CC \u0631\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0631\u062F" : "\u0645\u0634\u062A\u0631\u06CC \u062A\u0633\u0648\u06CC\u0647 \u0686\u06A9\u06CC \u0631\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0631\u062F"; await this.prisma.$transaction(async (tx) => { await tx.order.update({ where: { id }, data: { settlementType: dto.settlementType, - checkMode: isCash ? null : dto.checkMode ?? client_1.CheckRegistrationMode.full, - cashInvoiceExpiresAt: isCash ? (0, cash_expiry_1.earliestCashInvoiceExpiry)(cashCompanies) : null, + checkMode: checkOnly ? dto.checkMode ?? client_1.CheckRegistrationMode.full : null, + cashInvoiceExpiresAt: cashFirst ? (0, cash_expiry_1.earliestCashInvoiceExpiry)(cashCompanies) : null, cashReminderSentAt: null, status: nextStatus } @@ -134712,7 +134871,7 @@ var require_orders_service = __commonJS({ fromStatus: order.status, toStatus: nextStatus, changedBy: "customer", - note: isCash ? "\u0645\u0634\u062A\u0631\u06CC \u062A\u0633\u0648\u06CC\u0647 \u0646\u0642\u062F\u06CC \u0631\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0631\u062F" : "\u0645\u0634\u062A\u0631\u06CC \u062A\u0633\u0648\u06CC\u0647 \u0686\u06A9\u06CC \u0631\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0631\u062F" + note: settlementNote } }); }); @@ -134941,7 +135100,7 @@ var require_orders_service = __commonJS({ if (order.userId !== userId) { throw new common_12.ForbiddenException("\u062F\u0633\u062A\u0631\u0633\u06CC \u0628\u0647 \u0627\u06CC\u0646 \u0633\u0641\u0627\u0631\u0634 \u0645\u062C\u0627\u0632 \u0646\u06CC\u0633\u062A"); } - if (order.settlementType !== client_1.SettlementType.check) { + if (!(0, settlement_type_1.usesCheckSettlement)(order.settlementType)) { throw new common_12.BadRequestException("\u0627\u06CC\u0646 \u0633\u0641\u0627\u0631\u0634 \u062A\u0633\u0648\u06CC\u0647 \u0686\u06A9\u06CC \u0646\u06CC\u0633\u062A"); } if (!CHECK_EDITABLE_STATUSES.includes(order.status)) { @@ -136535,6 +136694,8 @@ var require_cash_payments_service = __commonJS({ var prisma_service_1 = require_prisma_service(); var name_1 = require_name(); var notifications_service_1 = require_notifications_service(); + var default_company_1 = require_default_company(); + var settlement_type_1 = require_settlement_type(); var RECEIPT_SUBMITTABLE_STATUSES = [ client_1.OrderStatus.cash_in_progress, client_1.OrderStatus.cash_invoice_issued, @@ -136562,7 +136723,7 @@ var require_cash_payments_service = __commonJS({ if (order.userId !== userId) { throw new common_12.ForbiddenException("\u062F\u0633\u062A\u0631\u0633\u06CC \u0628\u0647 \u0627\u06CC\u0646 \u0633\u0641\u0627\u0631\u0634 \u0645\u062C\u0627\u0632 \u0646\u06CC\u0633\u062A"); } - if (order.settlementType !== client_1.SettlementType.cash) { + if (!(0, settlement_type_1.usesCashReceiptPhase)(order.settlementType)) { throw new common_12.BadRequestException("\u0627\u06CC\u0646 \u0633\u0641\u0627\u0631\u0634 \u062A\u0633\u0648\u06CC\u0647 \u0646\u0642\u062F\u06CC \u0646\u06CC\u0633\u062A"); } if (!RECEIPT_SUBMITTABLE_STATUSES.includes(order.status)) { @@ -136571,16 +136732,11 @@ var require_cash_payments_service = __commonJS({ if (order.cashInvoiceExpiresAt && order.cashInvoiceExpiresAt.getTime() < Date.now()) { throw new common_12.BadRequestException("\u0645\u0647\u0644\u062A \u067E\u0631\u062F\u0627\u062E\u062A \u0641\u0627\u06A9\u062A\u0648\u0631 \u0646\u0642\u062F\u06CC \u0628\u0647 \u067E\u0627\u06CC\u0627\u0646 \u0631\u0633\u06CC\u062F\u0647 \u0627\u0633\u062A"); } - const companyIds = [ - ...new Set([ - order.companyId, - ...order.items.map((item) => item.companyId).filter(Boolean) - ].filter(Boolean)) - ]; + const paymentRecipient = await (0, default_company_1.requirePaymentRecipientCompany)(this.prisma); const account = await this.prisma.bankAccount.findFirst({ where: { id: dto.destinationAccountId, - companyId: { in: companyIds }, + companyId: paymentRecipient.id, isActive: true } }); @@ -136659,7 +136815,7 @@ var require_cash_payments_service = __commonJS({ }); let nextStatus = null; if (dto.status === client_1.CashPaymentStatus.approved) { - nextStatus = client_1.OrderStatus.cash_confirmed; + nextStatus = receipt.order.settlementType === client_1.SettlementType.cash_check ? client_1.OrderStatus.check_in_progress : client_1.OrderStatus.cash_confirmed; } else if (dto.status === client_1.CashPaymentStatus.rejected) { nextStatus = client_1.OrderStatus.awaiting_cash_payment; } else if (dto.status === client_1.CashPaymentStatus.expired) { @@ -136668,7 +136824,12 @@ var require_cash_payments_service = __commonJS({ if (nextStatus && nextStatus !== receipt.order.status) { await tx.order.update({ where: { id: receipt.orderId }, - data: { status: nextStatus } + data: { + status: nextStatus, + ...nextStatus === client_1.OrderStatus.check_in_progress && receipt.order.settlementType === client_1.SettlementType.cash_check ? { + checkMode: receipt.order.checkMode ?? client_1.CheckRegistrationMode.full + } : {} + } }); await tx.orderStatusHistory.create({ data: { @@ -137835,7 +137996,13 @@ var require_settings_service = __commonJS({ const settings = await this.ensureDefaults(); return { supportPhone: settings.supportPhone, - supportEmail: settings.supportEmail + supportEmail: settings.supportEmail, + supportWhatsapp: settings.supportWhatsapp, + supportTelegram: settings.supportTelegram, + supportInstagram: settings.supportInstagram, + defaultSettlementCash: settings.defaultSettlementCash, + defaultSettlementCheck: settings.defaultSettlementCheck, + defaultSettlementCashCheck: settings.defaultSettlementCashCheck ?? false }; } async update(dto) { @@ -137852,6 +138019,7 @@ var require_settings_service = __commonJS({ cashInvoiceValidityHours: dto.cashInvoiceValidityHours, defaultSettlementCheck: dto.defaultSettlementCheck, defaultSettlementCash: dto.defaultSettlementCash, + defaultSettlementCashCheck: dto.defaultSettlementCashCheck, minOrderRollsPerProduct: dto.minOrderRollsPerProduct, showCatalogPublicPrice: dto.showCatalogPublicPrice, allowAgentPricing: dto.allowAgentPricing, @@ -137863,6 +138031,9 @@ var require_settings_service = __commonJS({ smsShippingUpdate: dto.smsShippingUpdate, supportPhone: dto.supportPhone === void 0 ? void 0 : dto.supportPhone?.trim() || null, supportEmail: dto.supportEmail === void 0 ? void 0 : dto.supportEmail?.trim() || null, + supportWhatsapp: dto.supportWhatsapp === void 0 ? void 0 : dto.supportWhatsapp?.trim() || null, + supportTelegram: dto.supportTelegram === void 0 ? void 0 : dto.supportTelegram?.trim() || null, + supportInstagram: dto.supportInstagram === void 0 ? void 0 : dto.supportInstagram?.trim() || null, categoryDefsJson: nextDefs, categoryImagesJson: dto.categoryImagesJson === void 0 ? void 0 : this.normalizeCategoryImages(dto.categoryImagesJson, effectiveDefs) } @@ -137884,6 +138055,7 @@ var require_settings_service = __commonJS({ cashInvoiceValidityHours: settings.cashInvoiceValidityHours, defaultSettlementCheck: settings.defaultSettlementCheck, defaultSettlementCash: settings.defaultSettlementCash, + defaultSettlementCashCheck: settings.defaultSettlementCashCheck ?? false, minOrderRollsPerProduct: settings.minOrderRollsPerProduct ?? 1, showCatalogPublicPrice: settings.showCatalogPublicPrice ?? false, allowAgentPricing: settings.allowAgentPricing ?? false, @@ -137895,6 +138067,9 @@ var require_settings_service = __commonJS({ smsShippingUpdate: settings.smsShippingUpdate, supportPhone: settings.supportPhone, supportEmail: settings.supportEmail, + supportWhatsapp: settings.supportWhatsapp ?? null, + supportTelegram: settings.supportTelegram ?? null, + supportInstagram: settings.supportInstagram ?? null, categoryImagesJson: (0, category_defs_1.asImageMap)(settings.categoryImagesJson), categoryDefsJson: defs, updatedAt: settings.updatedAt.toISOString() @@ -137971,6 +138146,7 @@ var require_settings_dto = __commonJS({ cashInvoiceValidityHours; defaultSettlementCheck; defaultSettlementCash; + defaultSettlementCashCheck; smsOrderRegistered; smsPricingReady; smsPaymentReminder; @@ -137982,6 +138158,9 @@ var require_settings_dto = __commonJS({ agentMinUnitPrice; supportPhone; supportEmail; + supportWhatsapp; + supportTelegram; + supportInstagram; categoryImagesJson; categoryDefsJson; }; @@ -138010,6 +138189,11 @@ var require_settings_dto = __commonJS({ (0, class_validator_1.IsBoolean)(), __metadata2("design:type", Boolean) ], UpdateSettingsDto.prototype, "defaultSettlementCash", void 0); + __decorate2([ + (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsBoolean)(), + __metadata2("design:type", Boolean) + ], UpdateSettingsDto.prototype, "defaultSettlementCashCheck", void 0); __decorate2([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsBoolean)(), @@ -138069,6 +138253,21 @@ var require_settings_dto = __commonJS({ (0, class_validator_1.IsString)(), __metadata2("design:type", Object) ], UpdateSettingsDto.prototype, "supportEmail", void 0); + __decorate2([ + (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsString)(), + __metadata2("design:type", Object) + ], UpdateSettingsDto.prototype, "supportWhatsapp", void 0); + __decorate2([ + (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsString)(), + __metadata2("design:type", Object) + ], UpdateSettingsDto.prototype, "supportTelegram", void 0); + __decorate2([ + (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsString)(), + __metadata2("design:type", Object) + ], UpdateSettingsDto.prototype, "supportInstagram", void 0); __decorate2([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsObject)(), @@ -138644,6 +138843,36 @@ var require_carts_module = __commonJS({ } }); +// dist/catalog-requests/catalog-request-date.util.js +var require_catalog_request_date_util = __commonJS({ + "dist/catalog-requests/catalog-request-date.util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.dayRangeForRegisteredOn = dayRangeForRegisteredOn; + var common_12 = require_common(); + var TEHRAN_DAY_START = /^(\d{4})-(\d{2})-(\d{2})$/; + function dayRangeForRegisteredOn(registeredOn) { + const m = registeredOn.trim().match(TEHRAN_DAY_START); + if (!m) { + throw new common_12.BadRequestException("\u0641\u0631\u0645\u062A \u062A\u0627\u0631\u06CC\u062E \u062B\u0628\u062A \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A"); + } + const y = Number(m[1]); + const mo = Number(m[2]); + const d = Number(m[3]); + if (mo < 1 || mo > 12 || d < 1 || d > 31) { + throw new common_12.BadRequestException("\u0641\u0631\u0645\u062A \u062A\u0627\u0631\u06CC\u062E \u062B\u0628\u062A \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A"); + } + const gte = /* @__PURE__ */ new Date(`${m[1]}-${m[2]}-${m[3]}T00:00:00+03:30`); + const lt = new Date(gte.getTime() + 24 * 60 * 60 * 1e3); + if (Number.isNaN(gte.getTime()) || Number.isNaN(lt.getTime())) { + throw new common_12.BadRequestException("\u0641\u0631\u0645\u062A \u062A\u0627\u0631\u06CC\u062E \u062B\u0628\u062A \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A"); + } + return { gte, lt }; + } + __name(dayRangeForRegisteredOn, "dayRangeForRegisteredOn"); + } +}); + // dist/catalog-requests/catalog-requests.service.js var require_catalog_requests_service = __commonJS({ "dist/catalog-requests/catalog-requests.service.js"(exports2) { @@ -138661,6 +138890,7 @@ var require_catalog_requests_service = __commonJS({ exports2.CatalogRequestsService = void 0; var common_12 = require_common(); var prisma_service_1 = require_prisma_service(); + var catalog_request_date_util_1 = require_catalog_request_date_util(); var STATUS_FLOW = [ "new", "approved", @@ -138677,9 +138907,13 @@ var require_catalog_requests_service = __commonJS({ constructor(prisma) { this.prisma = prisma; } - async listAdmin(status) { + async listAdmin(status, registeredOn) { + const createdAt = registeredOn?.trim() ? (0, catalog_request_date_util_1.dayRangeForRegisteredOn)(registeredOn.trim()) : void 0; const rows = await this.prisma.catalogRequest.findMany({ - where: status ? { status } : void 0, + where: { + ...status ? { status } : {}, + ...createdAt ? { createdAt: { gte: createdAt.gte, lt: createdAt.lt } } : {} + }, orderBy: { createdAt: "desc" }, include: { customer: { @@ -139009,8 +139243,8 @@ var require_catalog_requests_controller = __commonJS({ constructor(service) { this.service = service; } - adminList(status) { - return this.service.listAdmin(status); + adminList(status, registeredOn) { + return this.service.listAdmin(status, registeredOn); } adminGet(id) { return this.service.get(id); @@ -139040,8 +139274,9 @@ var require_catalog_requests_controller = __commonJS({ (0, auth_decorators_1.Roles)("admin", "sales", "warehouse"), (0, common_12.Get)("admin/catalog-requests"), __param2(0, (0, common_12.Query)("status")), + __param2(1, (0, common_12.Query)("registeredOn")), __metadata2("design:type", Function), - __metadata2("design:paramtypes", [String]), + __metadata2("design:paramtypes", [String, String]), __metadata2("design:returntype", void 0) ], CatalogRequestsController.prototype, "adminList", null); __decorate2([ @@ -139137,369 +139372,6 @@ var require_catalog_requests_module = __commonJS({ } }); -// dist/brands/brands.service.js -var require_brands_service = __commonJS({ - "dist/brands/brands.service.js"(exports2) { - "use strict"; - var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; - }; - var __metadata2 = exports2 && exports2.__metadata || function(k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.BrandsService = void 0; - var common_12 = require_common(); - var prisma_service_1 = require_prisma_service(); - var BrandsService = class BrandsService { - static { - __name(this, "BrandsService"); - } - prisma; - constructor(prisma) { - this.prisma = prisma; - } - async list(activeOnly) { - const rows = await this.prisma.brand.findMany({ - where: activeOnly ? { isActive: true } : void 0, - orderBy: [{ displayOrder: "asc" }, { name: "asc" }], - include: { _count: { select: { products: true } } } - }); - return rows.map((b) => ({ - id: b.id, - name: b.name, - slug: b.slug ?? void 0, - description: b.description ?? void 0, - isActive: b.isActive, - displayOrder: b.displayOrder, - productsCount: b._count.products, - createdAt: b.createdAt.toISOString(), - updatedAt: b.updatedAt.toISOString() - })); - } - async create(dto) { - const brand = await this.prisma.brand.create({ - data: { - name: dto.name.trim(), - slug: dto.slug?.trim() || null, - description: dto.description?.trim() || null, - displayOrder: dto.displayOrder ?? 0, - isActive: dto.isActive ?? true - } - }); - return this.map(brand); - } - async update(id, dto) { - await this.ensure(id); - const brand = await this.prisma.brand.update({ - where: { id }, - data: { - name: dto.name?.trim(), - slug: dto.slug === void 0 ? void 0 : dto.slug?.trim() || null, - description: dto.description === void 0 ? void 0 : dto.description?.trim() || null, - displayOrder: dto.displayOrder, - isActive: dto.isActive - } - }); - return this.map(brand); - } - async setCustomerBrands(customerId, brandIds) { - const customer = await this.prisma.customer.findUnique({ - where: { id: customerId } - }); - if (!customer) - throw new common_12.NotFoundException("\u0645\u0634\u062A\u0631\u06CC \u06CC\u0627\u0641\u062A \u0646\u0634\u062F"); - await this.prisma.customerBrand.deleteMany({ where: { customerId } }); - if (brandIds.length) { - await this.prisma.customerBrand.createMany({ - data: brandIds.map((brandId) => ({ customerId, brandId })), - skipDuplicates: true - }); - } - return this.listCustomerBrands(customerId); - } - async listCustomerBrands(customerId) { - const rows = await this.prisma.customerBrand.findMany({ - where: { customerId }, - include: { brand: true } - }); - return rows.map((r) => this.map(r.brand)); - } - async ensure(id) { - const row = await this.prisma.brand.findUnique({ where: { id } }); - if (!row) - throw new common_12.NotFoundException("\u0628\u0631\u0646\u062F \u06CC\u0627\u0641\u062A \u0646\u0634\u062F"); - return row; - } - map(b) { - return { - id: b.id, - name: b.name, - slug: b.slug ?? void 0, - description: b.description ?? void 0, - isActive: b.isActive, - displayOrder: b.displayOrder, - createdAt: b.createdAt.toISOString(), - updatedAt: b.updatedAt.toISOString() - }; - } - }; - exports2.BrandsService = BrandsService; - exports2.BrandsService = BrandsService = __decorate2([ - (0, common_12.Injectable)(), - __metadata2("design:paramtypes", [prisma_service_1.PrismaService]) - ], BrandsService); - } -}); - -// dist/brands/dto/brand.dto.js -var require_brand_dto = __commonJS({ - "dist/brands/dto/brand.dto.js"(exports2) { - "use strict"; - var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; - }; - var __metadata2 = exports2 && exports2.__metadata || function(k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SetCustomerBrandsDto = exports2.UpdateBrandDto = exports2.CreateBrandDto = void 0; - var class_validator_1 = require_cjs(); - var class_transformer_1 = require_cjs2(); - var CreateBrandDto = class { - static { - __name(this, "CreateBrandDto"); - } - name; - slug; - description; - displayOrder; - isActive; - }; - exports2.CreateBrandDto = CreateBrandDto; - __decorate2([ - (0, class_validator_1.IsString)(), - (0, class_validator_1.MinLength)(1), - __metadata2("design:type", String) - ], CreateBrandDto.prototype, "name", void 0); - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_validator_1.IsString)(), - __metadata2("design:type", String) - ], CreateBrandDto.prototype, "slug", void 0); - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_validator_1.IsString)(), - __metadata2("design:type", String) - ], CreateBrandDto.prototype, "description", void 0); - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_transformer_1.Type)(() => Number), - (0, class_validator_1.IsInt)(), - (0, class_validator_1.Min)(0), - __metadata2("design:type", Number) - ], CreateBrandDto.prototype, "displayOrder", void 0); - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_validator_1.IsBoolean)(), - __metadata2("design:type", Boolean) - ], CreateBrandDto.prototype, "isActive", void 0); - var UpdateBrandDto = class { - static { - __name(this, "UpdateBrandDto"); - } - name; - slug; - description; - displayOrder; - isActive; - }; - exports2.UpdateBrandDto = UpdateBrandDto; - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_validator_1.IsString)(), - (0, class_validator_1.MinLength)(1), - __metadata2("design:type", String) - ], UpdateBrandDto.prototype, "name", void 0); - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_validator_1.IsString)(), - __metadata2("design:type", Object) - ], UpdateBrandDto.prototype, "slug", void 0); - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_validator_1.IsString)(), - __metadata2("design:type", Object) - ], UpdateBrandDto.prototype, "description", void 0); - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_transformer_1.Type)(() => Number), - (0, class_validator_1.IsInt)(), - (0, class_validator_1.Min)(0), - __metadata2("design:type", Number) - ], UpdateBrandDto.prototype, "displayOrder", void 0); - __decorate2([ - (0, class_validator_1.IsOptional)(), - (0, class_validator_1.IsBoolean)(), - __metadata2("design:type", Boolean) - ], UpdateBrandDto.prototype, "isActive", void 0); - var SetCustomerBrandsDto = class { - static { - __name(this, "SetCustomerBrandsDto"); - } - brands; - }; - exports2.SetCustomerBrandsDto = SetCustomerBrandsDto; - } -}); - -// dist/brands/brands.controller.js -var require_brands_controller = __commonJS({ - "dist/brands/brands.controller.js"(exports2) { - "use strict"; - var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; - }; - var __metadata2 = exports2 && exports2.__metadata || function(k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); - }; - var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { - return function(target, key) { - decorator(target, key, paramIndex); - }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.BrandsController = void 0; - var common_12 = require_common(); - var brands_service_1 = require_brands_service(); - var auth_decorators_1 = require_auth_decorators(); - var brand_dto_1 = require_brand_dto(); - var class_validator_1 = require_cjs(); - var SetBrandsBody = class { - static { - __name(this, "SetBrandsBody"); - } - brandIds; - }; - __decorate2([ - (0, class_validator_1.IsArray)(), - (0, class_validator_1.IsString)({ each: true }), - __metadata2("design:type", Array) - ], SetBrandsBody.prototype, "brandIds", void 0); - var BrandsController = class BrandsController { - static { - __name(this, "BrandsController"); - } - brandsService; - constructor(brandsService) { - this.brandsService = brandsService; - } - list(activeOnly) { - return this.brandsService.list(activeOnly === "true"); - } - create(dto) { - return this.brandsService.create(dto); - } - update(id, dto) { - return this.brandsService.update(id, dto); - } - customerBrands(customerId) { - return this.brandsService.listCustomerBrands(customerId); - } - setCustomerBrands(customerId, body) { - return this.brandsService.setCustomerBrands(customerId, body.brandIds ?? []); - } - }; - exports2.BrandsController = BrandsController; - __decorate2([ - (0, auth_decorators_1.AuthType)("admin"), - (0, common_12.Get)("admin/brands"), - __param2(0, (0, common_12.Query)("activeOnly")), - __metadata2("design:type", Function), - __metadata2("design:paramtypes", [String]), - __metadata2("design:returntype", void 0) - ], BrandsController.prototype, "list", null); - __decorate2([ - (0, auth_decorators_1.AuthType)("admin"), - (0, common_12.Post)("admin/brands"), - __param2(0, (0, common_12.Body)()), - __metadata2("design:type", Function), - __metadata2("design:paramtypes", [brand_dto_1.CreateBrandDto]), - __metadata2("design:returntype", void 0) - ], BrandsController.prototype, "create", null); - __decorate2([ - (0, auth_decorators_1.AuthType)("admin"), - (0, common_12.Patch)("admin/brands/:id"), - __param2(0, (0, common_12.Param)("id")), - __param2(1, (0, common_12.Body)()), - __metadata2("design:type", Function), - __metadata2("design:paramtypes", [String, brand_dto_1.UpdateBrandDto]), - __metadata2("design:returntype", void 0) - ], BrandsController.prototype, "update", null); - __decorate2([ - (0, auth_decorators_1.AuthType)("admin"), - (0, common_12.Get)("admin/customers/:customerId/brands"), - __param2(0, (0, common_12.Param)("customerId")), - __metadata2("design:type", Function), - __metadata2("design:paramtypes", [String]), - __metadata2("design:returntype", void 0) - ], BrandsController.prototype, "customerBrands", null); - __decorate2([ - (0, auth_decorators_1.AuthType)("admin"), - (0, common_12.Post)("admin/customers/:customerId/brands"), - __param2(0, (0, common_12.Param)("customerId")), - __param2(1, (0, common_12.Body)()), - __metadata2("design:type", Function), - __metadata2("design:paramtypes", [String, SetBrandsBody]), - __metadata2("design:returntype", void 0) - ], BrandsController.prototype, "setCustomerBrands", null); - exports2.BrandsController = BrandsController = __decorate2([ - (0, common_12.Controller)(), - __metadata2("design:paramtypes", [brands_service_1.BrandsService]) - ], BrandsController); - } -}); - -// dist/brands/brands.module.js -var require_brands_module = __commonJS({ - "dist/brands/brands.module.js"(exports2) { - "use strict"; - var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.BrandsModule = void 0; - var common_12 = require_common(); - var brands_controller_1 = require_brands_controller(); - var brands_service_1 = require_brands_service(); - var BrandsModule = class BrandsModule { - static { - __name(this, "BrandsModule"); - } - }; - exports2.BrandsModule = BrandsModule; - exports2.BrandsModule = BrandsModule = __decorate2([ - (0, common_12.Module)({ - controllers: [brands_controller_1.BrandsController], - providers: [brands_service_1.BrandsService], - exports: [brands_service_1.BrandsService] - }) - ], BrandsModule); - } -}); - // dist/levels/levels.service.js var require_levels_service = __commonJS({ "dist/levels/levels.service.js"(exports2) { @@ -139869,6 +139741,7 @@ var require_suggestions_service = __commonJS({ color: true, subtitle: true, isNew: true, + isActive: true, colorsJson: true, imageUrlsJson: true, widthCm: true, @@ -139992,6 +139865,7 @@ var require_suggestions_service = __commonJS({ widthCm: r.product.widthCm ?? void 0, composition: r.product.composition?.trim() || void 0, isNew: r.product.isNew, + productIsActive: r.product.isActive, note: r.note ?? void 0, isActive: r.isActive, createdAt: r.createdAt.toISOString() @@ -140166,6 +140040,39 @@ var require_suggestions_module = __commonJS({ } }); +// dist/banners/banner-link.util.js +var require_banner_link_util = __commonJS({ + "dist/banners/banner-link.util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { value: true }); + exports2.normalizeBannerLink = normalizeBannerLink; + var common_12 = require_common(); + function normalizeBannerLink(value) { + if (value == null || value === "") + return null; + const link = value.trim(); + if (!link) + return null; + if (link.startsWith("/")) { + if (!/^\/[^\s]*$/.test(link)) { + throw new common_12.BadRequestException("\u0644\u06CC\u0646\u06A9 \u0628\u0646\u0631 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A"); + } + return link; + } + try { + const url = new URL(link); + if (url.protocol !== "http:" && url.protocol !== "https:") { + throw new Error("invalid protocol"); + } + return link; + } catch { + throw new common_12.BadRequestException("\u0644\u06CC\u0646\u06A9 \u0628\u0646\u0631 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A"); + } + } + __name(normalizeBannerLink, "normalizeBannerLink"); + } +}); + // dist/banners/banners.service.js var require_banners_service = __commonJS({ "dist/banners/banners.service.js"(exports2) { @@ -140183,6 +140090,7 @@ var require_banners_service = __commonJS({ exports2.BannersService = void 0; var common_12 = require_common(); var prisma_service_1 = require_prisma_service(); + var banner_link_util_1 = require_banner_link_util(); var ALLOWED_SLOTS = /* @__PURE__ */ new Set(["home_hero", "products_hero", "categories_hero"]); var BannersService = class BannersService { static { @@ -140211,6 +140119,7 @@ var require_banners_service = __commonJS({ subtitle: dto.subtitle?.trim() || null, ctaLabel: dto.ctaLabel?.trim() || null, ctaLink: dto.ctaLink?.trim() || null, + bannerLink: (0, banner_link_util_1.normalizeBannerLink)(dto.bannerLink), imageUrl: this.normalizeImage(dto.imageUrl), displayOrder: dto.displayOrder ?? 0, isActive: dto.isActive ?? true, @@ -140231,6 +140140,7 @@ var require_banners_service = __commonJS({ subtitle: dto.subtitle === void 0 ? void 0 : dto.subtitle?.trim() || null, ctaLabel: dto.ctaLabel === void 0 ? void 0 : dto.ctaLabel?.trim() || null, ctaLink: dto.ctaLink === void 0 ? void 0 : dto.ctaLink?.trim() || null, + bannerLink: dto.bannerLink === void 0 ? void 0 : (0, banner_link_util_1.normalizeBannerLink)(dto.bannerLink), imageUrl: dto.imageUrl === void 0 ? void 0 : this.normalizeImage(dto.imageUrl), displayOrder: dto.displayOrder, isActive: dto.isActive, @@ -140279,6 +140189,7 @@ var require_banners_service = __commonJS({ subtitle: row.subtitle ?? "", ctaLabel: row.ctaLabel ?? "", ctaLink: row.ctaLink ?? "", + bannerLink: row.bannerLink ?? "", imageUrl: row.imageUrl ?? "", displayOrder: row.displayOrder, isActive: row.isActive, @@ -140324,6 +140235,7 @@ var require_banner_dto = __commonJS({ subtitle; ctaLabel; ctaLink; + bannerLink; imageUrl; displayOrder; isActive; @@ -140357,6 +140269,11 @@ var require_banner_dto = __commonJS({ (0, class_validator_1.IsString)(), __metadata2("design:type", Object) ], CreateBannerDto.prototype, "ctaLink", void 0); + __decorate2([ + (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsString)(), + __metadata2("design:type", Object) + ], CreateBannerDto.prototype, "bannerLink", void 0); __decorate2([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), @@ -140398,6 +140315,7 @@ var require_banner_dto = __commonJS({ subtitle; ctaLabel; ctaLink; + bannerLink; imageUrl; displayOrder; isActive; @@ -140433,6 +140351,11 @@ var require_banner_dto = __commonJS({ (0, class_validator_1.IsString)(), __metadata2("design:type", Object) ], UpdateBannerDto.prototype, "ctaLink", void 0); + __decorate2([ + (0, class_validator_1.IsOptional)(), + (0, class_validator_1.IsString)(), + __metadata2("design:type", Object) + ], UpdateBannerDto.prototype, "bannerLink", void 0); __decorate2([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), @@ -141244,7 +141167,6 @@ var require_app_module = __commonJS({ var notifications_module_1 = require_notifications_module(); var agent_module_1 = require_agent_module(); var catalog_requests_module_1 = require_catalog_requests_module(); - var brands_module_1 = require_brands_module(); var levels_module_1 = require_levels_module(); var suggestions_module_1 = require_suggestions_module(); var banners_module_1 = require_banners_module(); @@ -141277,7 +141199,6 @@ var require_app_module = __commonJS({ notifications_module_1.NotificationsModule, agent_module_1.AgentModule, catalog_requests_module_1.CatalogRequestsModule, - brands_module_1.BrandsModule, levels_module_1.LevelsModule, suggestions_module_1.SuggestionsModule, banners_module_1.BannersModule, diff --git a/src/app.module.ts b/src/app.module.ts index edf6bd0..9a51e4d 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -19,7 +19,6 @@ import { CartsModule } from './carts/carts.module'; import { NotificationsModule } from './notifications/notifications.module'; import { AgentModule } from './agent/agent.module'; import { CatalogRequestsModule } from './catalog-requests/catalog-requests.module'; -import { BrandsModule } from './brands/brands.module'; import { LevelsModule } from './levels/levels.module'; import { SuggestionsModule } from './suggestions/suggestions.module'; import { BannersModule } from './banners/banners.module'; @@ -46,7 +45,6 @@ import { InternalMessagesModule } from './internal-messages/internal-messages.mo NotificationsModule, AgentModule, CatalogRequestsModule, - BrandsModule, LevelsModule, SuggestionsModule, BannersModule, diff --git a/src/banners/banner-link.util.spec.ts b/src/banners/banner-link.util.spec.ts new file mode 100644 index 0000000..442fa02 --- /dev/null +++ b/src/banners/banner-link.util.spec.ts @@ -0,0 +1,27 @@ +import { BadRequestException } from '@nestjs/common'; +import { normalizeBannerLink } from './banner-link.util'; + +describe('normalizeBannerLink', () => { + it('allows empty values', () => { + expect(normalizeBannerLink(null)).toBeNull(); + expect(normalizeBannerLink('')).toBeNull(); + expect(normalizeBannerLink(' ')).toBeNull(); + }); + + it('accepts internal paths', () => { + expect(normalizeBannerLink('/categories')).toBe('/categories'); + expect(normalizeBannerLink(' /products?q=1 ')).toBe('/products?q=1'); + }); + + it('accepts http(s) URLs', () => { + expect(normalizeBannerLink('https://example.com/path')).toBe( + 'https://example.com/path', + ); + }); + + it('rejects invalid links', () => { + expect(() => normalizeBannerLink('ftp://x.com')).toThrow(BadRequestException); + expect(() => normalizeBannerLink('not a url')).toThrow(BadRequestException); + expect(() => normalizeBannerLink('/bad path')).toThrow(BadRequestException); + }); +}); diff --git a/src/banners/banner-link.util.ts b/src/banners/banner-link.util.ts new file mode 100644 index 0000000..37f71ad --- /dev/null +++ b/src/banners/banner-link.util.ts @@ -0,0 +1,23 @@ +import { BadRequestException } from '@nestjs/common'; + +/** مسیر داخلی (`/…`) یا URL با http/https */ +export function normalizeBannerLink(value?: string | null): string | null { + if (value == null || value === '') return null; + const link = value.trim(); + if (!link) return null; + if (link.startsWith('/')) { + if (!/^\/[^\s]*$/.test(link)) { + throw new BadRequestException('لینک بنر نامعتبر است'); + } + return link; + } + try { + const url = new URL(link); + if (url.protocol !== 'http:' && url.protocol !== 'https:') { + throw new Error('invalid protocol'); + } + return link; + } catch { + throw new BadRequestException('لینک بنر نامعتبر است'); + } +} diff --git a/src/banners/banners.service.ts b/src/banners/banners.service.ts index c6d0d40..edf395b 100644 --- a/src/banners/banners.service.ts +++ b/src/banners/banners.service.ts @@ -1,5 +1,6 @@ import { BadRequestException, Injectable, NotFoundException } from '@nestjs/common'; import { PrismaService } from '../prisma/prisma.service'; +import { normalizeBannerLink } from './banner-link.util'; import { CreateBannerDto, UpdateBannerDto } from './dto/banner.dto'; const ALLOWED_SLOTS = new Set(['home_hero', 'products_hero', 'categories_hero']); @@ -28,6 +29,7 @@ export class BannersService { subtitle: dto.subtitle?.trim() || null, ctaLabel: dto.ctaLabel?.trim() || null, ctaLink: dto.ctaLink?.trim() || null, + bannerLink: normalizeBannerLink(dto.bannerLink), imageUrl: this.normalizeImage(dto.imageUrl), displayOrder: dto.displayOrder ?? 0, isActive: dto.isActive ?? true, @@ -52,6 +54,10 @@ export class BannersService { dto.ctaLabel === undefined ? undefined : dto.ctaLabel?.trim() || null, ctaLink: dto.ctaLink === undefined ? undefined : dto.ctaLink?.trim() || null, + bannerLink: + dto.bannerLink === undefined + ? undefined + : normalizeBannerLink(dto.bannerLink), imageUrl: dto.imageUrl === undefined ? undefined @@ -109,6 +115,7 @@ export class BannersService { subtitle: string | null; ctaLabel: string | null; ctaLink: string | null; + bannerLink: string | null; imageUrl: string | null; displayOrder: number; isActive: boolean; @@ -125,6 +132,7 @@ export class BannersService { subtitle: row.subtitle ?? '', ctaLabel: row.ctaLabel ?? '', ctaLink: row.ctaLink ?? '', + bannerLink: row.bannerLink ?? '', imageUrl: row.imageUrl ?? '', displayOrder: row.displayOrder, isActive: row.isActive, diff --git a/src/banners/dto/banner.dto.ts b/src/banners/dto/banner.dto.ts index 5b74603..f3e93d3 100644 --- a/src/banners/dto/banner.dto.ts +++ b/src/banners/dto/banner.dto.ts @@ -29,6 +29,10 @@ export class CreateBannerDto { @IsString() ctaLink?: string | null; + @IsOptional() + @IsString() + bannerLink?: string | null; + @IsOptional() @IsString() imageUrl?: string | null; @@ -79,6 +83,10 @@ export class UpdateBannerDto { @IsString() ctaLink?: string | null; + @IsOptional() + @IsString() + bannerLink?: string | null; + @IsOptional() @IsString() imageUrl?: string | null; diff --git a/src/brands/brands.controller.ts b/src/brands/brands.controller.ts deleted file mode 100644 index 9eafdbf..0000000 --- a/src/brands/brands.controller.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { Body, Controller, Get, Param, Patch, Post, Query } from '@nestjs/common'; -import { BrandsService } from './brands.service'; -import { AuthType } from '../common/decorators/auth.decorators'; -import { CreateBrandDto, UpdateBrandDto } from './dto/brand.dto'; -import { IsArray, IsString } from 'class-validator'; - -class SetBrandsBody { - @IsArray() - @IsString({ each: true }) - brandIds!: string[]; -} - -@Controller() -export class BrandsController { - constructor(private readonly brandsService: BrandsService) {} - - @AuthType('admin') - @Get('admin/brands') - list(@Query('activeOnly') activeOnly?: string) { - return this.brandsService.list(activeOnly === 'true'); - } - - @AuthType('admin') - @Post('admin/brands') - create(@Body() dto: CreateBrandDto) { - return this.brandsService.create(dto); - } - - @AuthType('admin') - @Patch('admin/brands/:id') - update(@Param('id') id: string, @Body() dto: UpdateBrandDto) { - return this.brandsService.update(id, dto); - } - - @AuthType('admin') - @Get('admin/customers/:customerId/brands') - customerBrands(@Param('customerId') customerId: string) { - return this.brandsService.listCustomerBrands(customerId); - } - - @AuthType('admin') - @Post('admin/customers/:customerId/brands') - setCustomerBrands( - @Param('customerId') customerId: string, - @Body() body: SetBrandsBody, - ) { - return this.brandsService.setCustomerBrands(customerId, body.brandIds ?? []); - } -} diff --git a/src/brands/brands.module.ts b/src/brands/brands.module.ts deleted file mode 100644 index eaf5ece..0000000 --- a/src/brands/brands.module.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { Module } from '@nestjs/common'; -import { BrandsController } from './brands.controller'; -import { BrandsService } from './brands.service'; - -@Module({ - controllers: [BrandsController], - providers: [BrandsService], - exports: [BrandsService], -}) -export class BrandsModule {} diff --git a/src/brands/brands.service.ts b/src/brands/brands.service.ts deleted file mode 100644 index 1af8bf2..0000000 --- a/src/brands/brands.service.ts +++ /dev/null @@ -1,112 +0,0 @@ -import { Injectable, NotFoundException } from '@nestjs/common'; -import { PrismaService } from '../prisma/prisma.service'; -import { CreateBrandDto, UpdateBrandDto } from './dto/brand.dto'; - -@Injectable() -export class BrandsService { - constructor(private readonly prisma: PrismaService) {} - - async list(activeOnly?: boolean) { - const rows = await this.prisma.brand.findMany({ - where: activeOnly ? { isActive: true } : undefined, - orderBy: [{ displayOrder: 'asc' }, { name: 'asc' }], - include: { _count: { select: { products: true } } }, - }); - return rows.map((b) => ({ - id: b.id, - name: b.name, - slug: b.slug ?? undefined, - description: b.description ?? undefined, - isActive: b.isActive, - displayOrder: b.displayOrder, - productsCount: b._count.products, - createdAt: b.createdAt.toISOString(), - updatedAt: b.updatedAt.toISOString(), - })); - } - - async create(dto: CreateBrandDto) { - const brand = await this.prisma.brand.create({ - data: { - name: dto.name.trim(), - slug: dto.slug?.trim() || null, - description: dto.description?.trim() || null, - displayOrder: dto.displayOrder ?? 0, - isActive: dto.isActive ?? true, - }, - }); - return this.map(brand); - } - - async update(id: string, dto: UpdateBrandDto) { - await this.ensure(id); - const brand = await this.prisma.brand.update({ - where: { id }, - data: { - name: dto.name?.trim(), - slug: - dto.slug === undefined - ? undefined - : dto.slug?.trim() || null, - description: - dto.description === undefined - ? undefined - : dto.description?.trim() || null, - displayOrder: dto.displayOrder, - isActive: dto.isActive, - }, - }); - return this.map(brand); - } - - async setCustomerBrands(customerId: string, brandIds: string[]) { - const customer = await this.prisma.customer.findUnique({ - where: { id: customerId }, - }); - if (!customer) throw new NotFoundException('مشتری یافت نشد'); - await this.prisma.customerBrand.deleteMany({ where: { customerId } }); - if (brandIds.length) { - await this.prisma.customerBrand.createMany({ - data: brandIds.map((brandId) => ({ customerId, brandId })), - skipDuplicates: true, - }); - } - return this.listCustomerBrands(customerId); - } - - async listCustomerBrands(customerId: string) { - const rows = await this.prisma.customerBrand.findMany({ - where: { customerId }, - include: { brand: true }, - }); - return rows.map((r) => this.map(r.brand)); - } - - private async ensure(id: string) { - const row = await this.prisma.brand.findUnique({ where: { id } }); - if (!row) throw new NotFoundException('برند یافت نشد'); - return row; - } - - private map(b: { - id: string; - name: string; - slug: string | null; - description: string | null; - isActive: boolean; - displayOrder: number; - createdAt: Date; - updatedAt: Date; - }) { - return { - id: b.id, - name: b.name, - slug: b.slug ?? undefined, - description: b.description ?? undefined, - isActive: b.isActive, - displayOrder: b.displayOrder, - createdAt: b.createdAt.toISOString(), - updatedAt: b.updatedAt.toISOString(), - }; - } -} diff --git a/src/brands/dto/brand.dto.ts b/src/brands/dto/brand.dto.ts deleted file mode 100644 index 81dd66a..0000000 --- a/src/brands/dto/brand.dto.ts +++ /dev/null @@ -1,62 +0,0 @@ -import { - IsBoolean, - IsInt, - IsOptional, - IsString, - Min, - MinLength, -} from 'class-validator'; -import { Type } from 'class-transformer'; - -export class CreateBrandDto { - @IsString() - @MinLength(1) - name!: string; - - @IsOptional() - @IsString() - slug?: string; - - @IsOptional() - @IsString() - description?: string; - - @IsOptional() - @Type(() => Number) - @IsInt() - @Min(0) - displayOrder?: number; - - @IsOptional() - @IsBoolean() - isActive?: boolean; -} - -export class UpdateBrandDto { - @IsOptional() - @IsString() - @MinLength(1) - name?: string; - - @IsOptional() - @IsString() - slug?: string | null; - - @IsOptional() - @IsString() - description?: string | null; - - @IsOptional() - @Type(() => Number) - @IsInt() - @Min(0) - displayOrder?: number; - - @IsOptional() - @IsBoolean() - isActive?: boolean; -} - -export class SetCustomerBrandsDto { - brands!: string[]; -} diff --git a/src/cash-payments/cash-payments.service.ts b/src/cash-payments/cash-payments.service.ts index c6a3ae5..c43a267 100644 --- a/src/cash-payments/cash-payments.service.ts +++ b/src/cash-payments/cash-payments.service.ts @@ -4,7 +4,12 @@ import { Injectable, NotFoundException, } from '@nestjs/common'; -import { CashPaymentStatus, OrderStatus, SettlementType } from '@prisma/client'; +import { + CashPaymentStatus, + CheckRegistrationMode, + OrderStatus, + SettlementType, +} from '@prisma/client'; import { PrismaService } from '../prisma/prisma.service'; import { SubmitCashReceiptDto, @@ -12,7 +17,10 @@ import { } from './dto/cash-payment.dto'; import { joinFullName } from '../common/utils/name'; import { NotificationsService } from '../notifications/notifications.service'; - +import { requirePaymentRecipientCompany } from '../companies/default-company'; +import { + usesCashReceiptPhase, +} from '../common/utils/settlement-type'; /** بعد از تأیید پرداخت یا ارسال، رسید جدید نباید وضعیت را به عقب برگرداند. */ const RECEIPT_SUBMITTABLE_STATUSES: OrderStatus[] = [ OrderStatus.cash_in_progress, @@ -42,7 +50,7 @@ export class CashPaymentsService { if (order.userId !== userId) { throw new ForbiddenException('دسترسی به این سفارش مجاز نیست'); } - if (order.settlementType !== SettlementType.cash) { + if (!usesCashReceiptPhase(order.settlementType)) { throw new BadRequestException('این سفارش تسویه نقدی نیست'); } if (!RECEIPT_SUBMITTABLE_STATUSES.includes(order.status)) { @@ -59,18 +67,11 @@ export class CashPaymentsService { ); } - const companyIds = [ - ...new Set( - [ - order.companyId, - ...order.items.map((item) => item.companyId).filter(Boolean), - ].filter(Boolean), - ), - ]; + const paymentRecipient = await requirePaymentRecipientCompany(this.prisma); const account = await this.prisma.bankAccount.findFirst({ where: { id: dto.destinationAccountId, - companyId: { in: companyIds }, + companyId: paymentRecipient.id, isActive: true, }, }); @@ -175,7 +176,10 @@ export class CashPaymentsService { // رد رسید باید مشتری را به مرحله پرداخت برگرداند تا بتواند رسید تازه بفرستد. let nextStatus: OrderStatus | null = null; if (dto.status === CashPaymentStatus.approved) { - nextStatus = OrderStatus.cash_confirmed; + nextStatus = + receipt.order.settlementType === SettlementType.cash_check + ? OrderStatus.check_in_progress + : OrderStatus.cash_confirmed; } else if (dto.status === CashPaymentStatus.rejected) { nextStatus = OrderStatus.awaiting_cash_payment; } else if (dto.status === CashPaymentStatus.expired) { @@ -185,7 +189,16 @@ export class CashPaymentsService { if (nextStatus && nextStatus !== receipt.order.status) { await tx.order.update({ where: { id: receipt.orderId }, - data: { status: nextStatus }, + data: { + status: nextStatus, + ...(nextStatus === OrderStatus.check_in_progress && + receipt.order.settlementType === SettlementType.cash_check + ? { + checkMode: + receipt.order.checkMode ?? CheckRegistrationMode.full, + } + : {}), + }, }); await tx.orderStatusHistory.create({ data: { diff --git a/src/catalog-requests/catalog-request-date.util.spec.ts b/src/catalog-requests/catalog-request-date.util.spec.ts new file mode 100644 index 0000000..c451650 --- /dev/null +++ b/src/catalog-requests/catalog-request-date.util.spec.ts @@ -0,0 +1,16 @@ +import { BadRequestException } from '@nestjs/common'; +import { dayRangeForRegisteredOn } from './catalog-request-date.util'; + +describe('dayRangeForRegisteredOn', () => { + it('builds start/end of civil day in Asia/Tehran', () => { + const { gte, lt } = dayRangeForRegisteredOn('2026-10-01'); + expect(gte.toISOString()).toBe('2026-09-30T20:30:00.000Z'); + expect(lt.toISOString()).toBe('2026-10-01T20:30:00.000Z'); + }); + + it('rejects invalid input', () => { + expect(() => dayRangeForRegisteredOn('01-10-2026')).toThrow( + BadRequestException, + ); + }); +}); diff --git a/src/catalog-requests/catalog-request-date.util.ts b/src/catalog-requests/catalog-request-date.util.ts new file mode 100644 index 0000000..df14089 --- /dev/null +++ b/src/catalog-requests/catalog-request-date.util.ts @@ -0,0 +1,28 @@ +import { BadRequestException } from '@nestjs/common'; + +/** Iran standard time — same civil day as Jalali date picker (`YYYY-MM-DD`). */ +const TEHRAN_DAY_START = /^(\d{4})-(\d{2})-(\d{2})$/; + +/** Calendar day range in Asia/Tehran for `YYYY-MM-DD` (registration date filter). */ +export function dayRangeForRegisteredOn( + registeredOn: string, +): { gte: Date; lt: Date } { + const m = registeredOn.trim().match(TEHRAN_DAY_START); + if (!m) { + throw new BadRequestException('فرمت تاریخ ثبت نامعتبر است'); + } + const y = Number(m[1]); + const mo = Number(m[2]); + const d = Number(m[3]); + if (mo < 1 || mo > 12 || d < 1 || d > 31) { + throw new BadRequestException('فرمت تاریخ ثبت نامعتبر است'); + } + const gte = new Date( + `${m[1]}-${m[2]}-${m[3]}T00:00:00+03:30`, + ); + const lt = new Date(gte.getTime() + 24 * 60 * 60 * 1000); + if (Number.isNaN(gte.getTime()) || Number.isNaN(lt.getTime())) { + throw new BadRequestException('فرمت تاریخ ثبت نامعتبر است'); + } + return { gte, lt }; +} diff --git a/src/catalog-requests/catalog-requests.controller.ts b/src/catalog-requests/catalog-requests.controller.ts index 27eedd6..8fbd886 100644 --- a/src/catalog-requests/catalog-requests.controller.ts +++ b/src/catalog-requests/catalog-requests.controller.ts @@ -26,8 +26,11 @@ export class CatalogRequestsController { @AuthType('admin') @Roles('admin', 'sales', 'warehouse') @Get('admin/catalog-requests') - adminList(@Query('status') status?: CatalogRequestStatus) { - return this.service.listAdmin(status); + adminList( + @Query('status') status?: CatalogRequestStatus, + @Query('registeredOn') registeredOn?: string, + ) { + return this.service.listAdmin(status, registeredOn); } @AuthType('admin') diff --git a/src/catalog-requests/catalog-requests.service.ts b/src/catalog-requests/catalog-requests.service.ts index df2296e..8581f2a 100644 --- a/src/catalog-requests/catalog-requests.service.ts +++ b/src/catalog-requests/catalog-requests.service.ts @@ -13,6 +13,7 @@ import { UpdateCatalogRequestStatusDto, UpdateCatalogItemHolderDto, } from './dto/catalog-request.dto'; +import { dayRangeForRegisteredOn } from './catalog-request-date.util'; const STATUS_FLOW: CatalogRequestStatus[] = [ 'new', @@ -27,9 +28,18 @@ const STATUS_FLOW: CatalogRequestStatus[] = [ export class CatalogRequestsService { constructor(private readonly prisma: PrismaService) {} - async listAdmin(status?: CatalogRequestStatus) { + async listAdmin(status?: CatalogRequestStatus, registeredOn?: string) { + const createdAt = + registeredOn?.trim() + ? dayRangeForRegisteredOn(registeredOn.trim()) + : undefined; const rows = await this.prisma.catalogRequest.findMany({ - where: status ? { status } : undefined, + where: { + ...(status ? { status } : {}), + ...(createdAt + ? { createdAt: { gte: createdAt.gte, lt: createdAt.lt } } + : {}), + }, orderBy: { createdAt: 'desc' }, include: { customer: { diff --git a/src/common/select-option-search.util.spec.ts b/src/common/select-option-search.util.spec.ts new file mode 100644 index 0000000..101ad79 --- /dev/null +++ b/src/common/select-option-search.util.spec.ts @@ -0,0 +1,30 @@ +import { + filterSelectOptionsBySearch, + optionMatchesSelectSearch, +} from './select-option-search.util'; + +describe('select-option-search', () => { + const options = [ + { value: '1', label: 'پارچه مخمل' }, + { value: '2', label: 'كتان سفيد' }, + { value: '3', label: 'ژاکارد' }, + ]; + + it('matches Persian labels case-insensitively', () => { + expect(optionMatchesSelectSearch('پارچه مخمل', 'مخمل')).toBe(true); + expect(optionMatchesSelectSearch('پارچه مخمل', 'MVM')).toBe(false); + }); + + it('normalizes Arabic yeh/kaf and Persian digits', () => { + expect(optionMatchesSelectSearch('کتان سفید', 'سفيد')).toBe(true); + expect(optionMatchesSelectSearch('کتان سفید', 'كتان')).toBe(true); + expect(optionMatchesSelectSearch('کد ۱۲۳', '123')).toBe(true); + }); + + it('filters option list', () => { + expect(filterSelectOptionsBySearch(options, 'كت').map((o) => o.value)).toEqual([ + '2', + ]); + expect(filterSelectOptionsBySearch(options, '')).toHaveLength(3); + }); +}); diff --git a/src/common/select-option-search.util.ts b/src/common/select-option-search.util.ts new file mode 100644 index 0000000..8bff343 --- /dev/null +++ b/src/common/select-option-search.util.ts @@ -0,0 +1,28 @@ +/** Shared with admin/user select components — keep in sync with selectOptionSearch.ts */ +export function normalizeForSelectSearch(text: string): string { + const persianDigits = '۰۱۲۳۴۵۶۷۸۹' + const normalized = text.replace(/[۰-۹]/g, (digit) => + String(persianDigits.indexOf(digit)), + ) + return normalized + .toLowerCase() + .replace(/ي/g, 'ی') + .replace(/ك/g, 'ک') + .normalize('NFKC') + .trim() +} + +export function optionMatchesSelectSearch(label: string, query: string): boolean { + const q = normalizeForSelectSearch(query) + if (!q) return true + return normalizeForSelectSearch(label).includes(q) +} + +export function filterSelectOptionsBySearch( + options: T[], + query: string, +): T[] { + const trimmed = query.trim() + if (!trimmed) return options + return options.filter((option) => optionMatchesSelectSearch(option.label, trimmed)) +} diff --git a/src/common/utils/order-transitions.ts b/src/common/utils/order-transitions.ts index a782999..9d2c037 100644 --- a/src/common/utils/order-transitions.ts +++ b/src/common/utils/order-transitions.ts @@ -25,6 +25,7 @@ export const ORDER_TRANSITIONS: Record = { ], awaiting_cash_confirmation: [ OrderStatus.cash_confirmed, + OrderStatus.check_in_progress, OrderStatus.awaiting_cash_payment, ], cash_confirmed: [OrderStatus.final_approved], diff --git a/src/common/utils/settlement-type.ts b/src/common/utils/settlement-type.ts new file mode 100644 index 0000000..9509876 --- /dev/null +++ b/src/common/utils/settlement-type.ts @@ -0,0 +1,19 @@ +import { SettlementType } from '@prisma/client'; + +/** تسویه‌هایی که ابتدا (یا تنها) مرحله واریز نقدی / رسید دارند. */ +export function usesCashReceiptPhase( + type: SettlementType | null | undefined, +): boolean { + return ( + type === SettlementType.cash || type === SettlementType.cash_check + ); +} + +/** تسویه‌هایی که ثبت و بررسی چک دارند (خالص چکی یا نقدی-چکی پس از تأیید نقدی). */ +export function usesCheckSettlement( + type: SettlementType | null | undefined, +): boolean { + return ( + type === SettlementType.check || type === SettlementType.cash_check + ); +} diff --git a/src/companies/companies.controller.ts b/src/companies/companies.controller.ts index a6ecc2e..2164ce5 100644 --- a/src/companies/companies.controller.ts +++ b/src/companies/companies.controller.ts @@ -35,6 +35,12 @@ export class CompaniesController { return this.companiesService.findAll(true); } + @Public() + @Get('payment/bank-accounts') + listPaymentBankAccounts() { + return this.companiesService.listPaymentBankAccounts(); + } + @AuthType('any') @Get(':id') findOne(@Param('id') id: string) { diff --git a/src/companies/companies.service.ts b/src/companies/companies.service.ts index 687cf27..8c02b83 100644 --- a/src/companies/companies.service.ts +++ b/src/companies/companies.service.ts @@ -1,8 +1,13 @@ import { + BadRequestException, Injectable, NotFoundException, ConflictException, } from '@nestjs/common'; +import { + isPaymentRecipientCompany, + requirePaymentRecipientCompany, +} from './default-company'; import { Prisma } from '@prisma/client'; import { PrismaService } from '../prisma/prisma.service'; import { resolveMaxMeterage } from '../common/utils/meterage'; @@ -146,8 +151,21 @@ export class CompaniesService { return this.mapCompany(company); } + /** حساب‌های واریز پرداخت مشتری — همیشه نادمی تکس */ + async listPaymentBankAccounts() { + const recipient = await requirePaymentRecipientCompany(this.prisma); + return this.listBankAccountsForCompany(recipient.id); + } + + /** + * لیست حساب برای اپ/ادمین: پرداخت همیشه به نادمی تکس است، نه شرکت مالک محصول. + */ async listBankAccounts(companyId: string) { await this.ensureCompany(companyId); + return this.listPaymentBankAccounts(); + } + + private async listBankAccountsForCompany(companyId: string) { const accounts = await this.prisma.bankAccount.findMany({ where: { companyId }, orderBy: { displayOrder: 'asc' }, @@ -156,10 +174,16 @@ export class CompaniesService { } async createBankAccount(companyId: string, dto: CreateBankAccountDto) { - await this.ensureCompany(companyId); + const company = await this.ensureCompany(companyId); + if (!isPaymentRecipientCompany(company)) { + throw new BadRequestException( + 'حساب بانکی فقط برای شرکت نادمی تکس (دریافت‌کننده پرداخت) ثبت می‌شود.', + ); + } + const recipient = await requirePaymentRecipientCompany(this.prisma); const account = await this.prisma.bankAccount.create({ data: { - companyId, + companyId: recipient.id, bankName: dto.bankName.trim(), accountHolder: dto.accountHolder.trim(), accountNumber: dto.accountNumber.trim(), @@ -234,6 +258,7 @@ export class CompaniesService { id: company.id, name: company.name, slug: company.slug, + isPaymentRecipient: isPaymentRecipientCompany(company), description: company.description ?? '', logoUrl: company.logoUrl, logo: company.logoUrl ?? undefined, diff --git a/src/companies/default-company.spec.ts b/src/companies/default-company.spec.ts new file mode 100644 index 0000000..55996b6 --- /dev/null +++ b/src/companies/default-company.spec.ts @@ -0,0 +1,15 @@ +import { + PAYMENT_RECIPIENT_COMPANY_SLUG, + isPaymentRecipientCompany, +} from './default-company'; + +describe('default-company', () => { + it('uses stable slug for payment recipient', () => { + expect(PAYMENT_RECIPIENT_COMPANY_SLUG).toBe('nademitex'); + }); + + it('detects payment recipient by slug', () => { + expect(isPaymentRecipientCompany({ slug: 'nademitex' })).toBe(true); + expect(isPaymentRecipientCompany({ slug: 'par' })).toBe(false); + }); +}); diff --git a/src/companies/default-company.ts b/src/companies/default-company.ts new file mode 100644 index 0000000..19cf13a --- /dev/null +++ b/src/companies/default-company.ts @@ -0,0 +1,52 @@ +import { BadRequestException, NotFoundException } from '@nestjs/common'; +import type { Company, PrismaClient } from '@prisma/client'; + +/** Slug ثابت شرکت اصلی — منبع حقیقت برای دریافت پرداخت و پیش‌فرض محصول */ +export const PAYMENT_RECIPIENT_COMPANY_SLUG = 'nademitex'; + +type PrismaLike = Pick; + +export async function findPaymentRecipientCompany( + prisma: PrismaLike, +): Promise { + return prisma.company.findFirst({ + where: { slug: PAYMENT_RECIPIENT_COMPANY_SLUG, isActive: true }, + }); +} + +export async function requirePaymentRecipientCompany( + prisma: PrismaLike, +): Promise { + const company = await findPaymentRecipientCompany(prisma); + if (!company) { + throw new NotFoundException( + 'شرکت اصلی (نادمی تکس) در سیستم تعریف نشده است. لطفاً با پشتیبانی تماس بگیرید.', + ); + } + return company; +} + +/** شرکت مرتبط با محصول؛ در صورت نبود مقدار معتبر، نادمی تکس */ +export async function resolveProductCompanyId( + prisma: PrismaLike, + companyId?: string | null, +): Promise { + const trimmed = companyId?.trim(); + if (trimmed) { + const row = await prisma.company.findUnique({ where: { id: trimmed } }); + if (!row) { + throw new BadRequestException('شرکت انتخاب‌شده معتبر نیست'); + } + if (!row.isActive) { + throw new BadRequestException('شرکت انتخاب‌شده غیرفعال است'); + } + return row.id; + } + return (await requirePaymentRecipientCompany(prisma)).id; +} + +export function isPaymentRecipientCompany(company: { + slug: string; +}): boolean { + return company.slug === PAYMENT_RECIPIENT_COMPANY_SLUG; +} diff --git a/src/orders/orders.service.ts b/src/orders/orders.service.ts index 72cbbb5..20c32c7 100644 --- a/src/orders/orders.service.ts +++ b/src/orders/orders.service.ts @@ -23,6 +23,10 @@ import { } from './dto/order.dto'; import { generateOrderNumber } from '../common/utils/order-number'; import { calculateCheckRass } from '../common/utils/check-rass'; +import { + usesCashReceiptPhase, + usesCheckSettlement, +} from '../common/utils/settlement-type'; import { earliestCashInvoiceExpiry } from '../common/utils/cash-expiry'; import { resolveAdminStatusFilter, @@ -217,25 +221,34 @@ export class OrdersService { ); } - const isCash = dto.settlementType === SettlementType.cash; - const nextStatus = isCash + const cashFirst = usesCashReceiptPhase(dto.settlementType); + const checkOnly = + dto.settlementType === SettlementType.check; + const nextStatus = cashFirst ? OrderStatus.awaiting_cash_payment : OrderStatus.check_in_progress; assertTransition(order.status, nextStatus); - const cashCompanies = isCash + const cashCompanies = cashFirst ? await this.companiesForOrder(order) : []; + const settlementNote = + dto.settlementType === SettlementType.cash + ? 'مشتری تسویه نقدی را انتخاب کرد' + : dto.settlementType === SettlementType.cash_check + ? 'مشتری تسویه نقدی-چکی را انتخاب کرد' + : 'مشتری تسویه چکی را انتخاب کرد'; + await this.prisma.$transaction(async (tx) => { await tx.order.update({ where: { id }, data: { settlementType: dto.settlementType, - checkMode: isCash - ? null - : (dto.checkMode ?? CheckRegistrationMode.full), - cashInvoiceExpiresAt: isCash + checkMode: checkOnly + ? (dto.checkMode ?? CheckRegistrationMode.full) + : null, + cashInvoiceExpiresAt: cashFirst ? earliestCashInvoiceExpiry(cashCompanies) : null, cashReminderSentAt: null, @@ -248,9 +261,7 @@ export class OrdersService { fromStatus: order.status, toStatus: nextStatus, changedBy: 'customer', - note: isCash - ? 'مشتری تسویه نقدی را انتخاب کرد' - : 'مشتری تسویه چکی را انتخاب کرد', + note: settlementNote, }, }); }); @@ -575,7 +586,7 @@ export class OrdersService { if (order.userId !== userId) { throw new ForbiddenException('دسترسی به این سفارش مجاز نیست'); } - if (order.settlementType !== SettlementType.check) { + if (!usesCheckSettlement(order.settlementType)) { throw new BadRequestException('این سفارش تسویه چکی نیست'); } if (!CHECK_EDITABLE_STATUSES.includes(order.status)) { diff --git a/src/products/color-entries.spec.ts b/src/products/color-entries.spec.ts index 816512b..58c2cc9 100644 --- a/src/products/color-entries.spec.ts +++ b/src/products/color-entries.spec.ts @@ -1,9 +1,16 @@ +import { ValidationPipe } from '@nestjs/common'; +import { plainToInstance } from 'class-transformer'; +import { validate } from 'class-validator'; import { colorVariantImageLists, parseColorEntries, parseGeneralImageUrls, } from './color-entries'; -import { serializeColorsJsonForDb } from './dto/product-color-json.dto'; +import { + ProductColorJsonItemDto, + serializeColorsJsonForDb, +} from './dto/product-color-json.dto'; +import { UpdateProductDto } from './dto/product.dto'; describe('product image separation', () => { it('keeps general images separate from color variant urls', () => { @@ -66,6 +73,50 @@ describe('product image separation', () => { ]); }); + it('accepts colorsJson through Nest ValidationPipe (same as PATCH /products)', async () => { + const pipe = new ValidationPipe({ + whitelist: true, + transform: true, + forbidNonWhitelisted: true, + transformOptions: { enableImplicitConversion: true }, + }); + const body = { + name: 'تست', + color: 'قرمز', + colorsJson: [ + { + name: 'قرمز شرابی', + imageUrl: 'data:image/jpeg;base64,abc', + imageUrls: ['data:image/jpeg;base64,abc'], + }, + ], + }; + const dto = await pipe.transform(body, { + type: 'body', + metatype: UpdateProductDto, + }); + expect(dto.colorsJson?.[0]).toBeInstanceOf(ProductColorJsonItemDto); + }); + + it('accepts colorsJson name/imageUrl/imageUrls under whitelist validation', async () => { + const dto = plainToInstance(UpdateProductDto, { + name: 'تست', + colorsJson: [ + { + name: 'قرمز شرابی', + imageUrl: 'data:image/jpeg;base64,abc', + imageUrls: ['data:image/jpeg;base64,abc'], + }, + ], + }); + const errors = await validate(dto, { + whitelist: true, + forbidNonWhitelisted: true, + }); + expect(errors).toEqual([]); + expect(dto.colorsJson?.[0]).toBeInstanceOf(ProductColorJsonItemDto); + }); + it('does not merge color images into general list when only imageUrlsJson is set', () => { const entries = parseColorEntries([{ name: 'Red', imageUrl: 'https://cdn/r.jpg' }]); expect(parseGeneralImageUrls(['https://cdn/g.jpg'], entries)).toEqual([ diff --git a/src/products/dto/product-color-json.dto.ts b/src/products/dto/product-color-json.dto.ts index 77d37c9..f4fbcd6 100644 --- a/src/products/dto/product-color-json.dto.ts +++ b/src/products/dto/product-color-json.dto.ts @@ -1,4 +1,54 @@ -import { IsArray, IsOptional, IsString, MinLength } from 'class-validator'; +import { + IsArray, + IsOptional, + IsString, + MinLength, + ValidatorConstraint, + ValidatorConstraintInterface, + registerDecorator, + type ValidationOptions, +} from 'class-validator'; + +@ValidatorConstraint({ name: 'isColorsJson', async: false }) +export class IsColorsJsonConstraint implements ValidatorConstraintInterface { + validate(value: unknown): boolean { + if (value === undefined || value === null) return true; + if (!Array.isArray(value)) return false; + for (const item of value) { + if (!(item instanceof ProductColorJsonItemDto)) return false; + if (!item.name?.trim()) return false; + if ( + item.imageUrl !== undefined && + item.imageUrl !== null && + typeof item.imageUrl !== 'string' + ) { + return false; + } + if (item.imageUrls !== undefined && item.imageUrls !== null) { + if (!Array.isArray(item.imageUrls)) return false; + if (!item.imageUrls.every((u) => typeof u === 'string')) return false; + } + } + return true; + } + + defaultMessage(): string { + return 'فرمت colorsJson نامعتبر است'; + } +} + +/** اعتبارسنجی colorsJson بعد از transform — بدون ValidateNested (سازگار با whitelist) */ +export function IsColorsJson(validationOptions?: ValidationOptions) { + return function register(object: object, propertyName: string) { + registerDecorator({ + target: object.constructor, + propertyName, + options: validationOptions, + constraints: [], + validator: IsColorsJsonConstraint, + }); + }; +} export class ProductColorJsonItemDto { @IsString() @@ -38,7 +88,7 @@ export function transformColorsJson(value: unknown): ProductColorJsonItemDto[] | for (const item of value) { if (typeof item === 'string') { const name = item.trim(); - if (name) out.push({ name }); + if (name) out.push(Object.assign(new ProductColorJsonItemDto(), { name })); continue; } if (item && typeof item === 'object') { @@ -54,11 +104,13 @@ export function transformColorsJson(value: unknown): ProductColorJsonItemDto[] | typeof raw.imageUrl === 'string' && raw.imageUrl.trim() ? raw.imageUrl.trim() : undefined; - out.push({ - name, - imageUrl, - imageUrls: imageUrls?.length ? imageUrls : imageUrl ? [imageUrl] : undefined, - }); + out.push( + Object.assign(new ProductColorJsonItemDto(), { + name, + imageUrl, + imageUrls: imageUrls?.length ? imageUrls : imageUrl ? [imageUrl] : undefined, + }), + ); } } return out; diff --git a/src/products/dto/product.dto.ts b/src/products/dto/product.dto.ts index 93a6760..efa4d0d 100644 --- a/src/products/dto/product.dto.ts +++ b/src/products/dto/product.dto.ts @@ -7,21 +7,19 @@ import { IsString, Min, MinLength, - ValidateNested, } from 'class-validator'; import { Transform, Type } from 'class-transformer'; import { + IsColorsJson, ProductColorJsonItemDto, transformColorsJson, } from './product-color-json.dto'; export class CreateProductDto { - @IsString() - companyId!: string; - + /** خالی = شرکت پیش‌فرض (نادمی تکس) */ @IsOptional() @IsString() - brandId?: string | null; + companyId?: string; @IsString() @MinLength(1) @@ -44,6 +42,11 @@ export class CreateProductDto { @IsString() description?: string; + /** مشخصات آزاد — نمایش در specs-extra اپ */ + @IsOptional() + @IsString() + specs?: string; + @IsOptional() @Type(() => Number) @IsNumber() @@ -139,8 +142,7 @@ export class CreateProductDto { @IsOptional() @Transform(({ value }) => transformColorsJson(value)) @IsArray() - @ValidateNested({ each: true }) - @Type(() => ProductColorJsonItemDto) + @IsColorsJson() colorsJson?: ProductColorJsonItemDto[]; @IsOptional() @@ -149,18 +151,23 @@ export class CreateProductDto { imageUrlsJson?: string[]; @IsOptional() + @IsArray() + @IsString({ each: true }) tagsJson?: string[]; } -/** همهٔ فیلدهای Create به‌جز companyId — شامل brandId برای PATCH ادمین */ +/** همهٔ فیلدهای Create به‌جز companyId — companyId در PATCH برای تغییر شرکت محصول */ export class UpdateProductDto extends PartialType( OmitType(CreateProductDto, ['companyId'] as const), ) { + @IsOptional() + @IsString() + companyId?: string; + @IsOptional() @Transform(({ value }) => transformColorsJson(value)) @IsArray() - @ValidateNested({ each: true }) - @Type(() => ProductColorJsonItemDto) + @IsColorsJson() colorsJson?: ProductColorJsonItemDto[]; } diff --git a/src/products/product-availability.spec.ts b/src/products/product-availability.spec.ts new file mode 100644 index 0000000..b12c3bb --- /dev/null +++ b/src/products/product-availability.spec.ts @@ -0,0 +1,20 @@ +import { isProductUnavailableForApp } from './product-availability'; + +describe('isProductUnavailableForApp', () => { + it('treats admin-inactive products as unavailable', () => { + expect(isProductUnavailableForApp({ isActive: false, stock: 10 })).toBe( + true, + ); + }); + + it('keeps active products available when stock is unset or positive', () => { + expect(isProductUnavailableForApp({ isActive: true })).toBe(false); + expect(isProductUnavailableForApp({ isActive: true, stock: 4 })).toBe( + false, + ); + }); + + it('treats zero stock as unavailable', () => { + expect(isProductUnavailableForApp({ isActive: true, stock: 0 })).toBe(true); + }); +}); diff --git a/src/products/product-availability.ts b/src/products/product-availability.ts new file mode 100644 index 0000000..4857f3d --- /dev/null +++ b/src/products/product-availability.ts @@ -0,0 +1,8 @@ +/** App lists keep inactive products; they are shown as unavailable via `isActive`. */ +export function isProductUnavailableForApp(product: { + isActive: boolean; + stock?: number | null; +}): boolean { + if (!product.isActive) return true; + return product.stock != null && product.stock <= 0; +} diff --git a/src/products/products.controller.ts b/src/products/products.controller.ts index a89725d..d146943 100644 --- a/src/products/products.controller.ts +++ b/src/products/products.controller.ts @@ -109,4 +109,10 @@ export class ProductsController { setActive(@Param('id') id: string, @Body() dto: SetProductActiveDto) { return this.productsService.setActive(id, dto.isActive); } + + @AuthType('admin') + @Delete(':id') + remove(@Param('id') id: string) { + return this.productsService.remove(id); + } } diff --git a/src/products/products.service.ts b/src/products/products.service.ts index 0991f66..c1648a6 100644 --- a/src/products/products.service.ts +++ b/src/products/products.service.ts @@ -1,5 +1,4 @@ import { - BadRequestException, ConflictException, Injectable, NotFoundException, @@ -9,6 +8,7 @@ import { PrismaService } from '../prisma/prisma.service'; import { CreateProductDto, UpdateProductDto } from './dto/product.dto'; import { serializeColorsJsonForDb } from './dto/product-color-json.dto'; import { loadCatalogCategories } from '../catalog/category-defs'; +import { resolveProductCompanyId } from '../companies/default-company'; import { colorVariantImageLists, parseColorEntries, @@ -17,7 +17,6 @@ import { const productInclude = { company: { select: { name: true } }, - brand: { select: { id: true, name: true } }, }; @Injectable() @@ -118,17 +117,20 @@ export class ProductsService { async create(dto: CreateProductDto, preservedColorsJson?: unknown) { const code = (dto.code || dto.productCode || '').trim(); if (!code) throw new ConflictException('کد محصول الزامی است'); - const brandId = await this.resolveBrandId(dto.brandId ?? null); + const companyId = await resolveProductCompanyId( + this.prisma, + dto.companyId, + ); try { const product = await this.prisma.product.create({ data: { - companyId: dto.companyId, - brandId, + companyId, name: dto.name.trim(), code, color: dto.color.trim(), description: dto.description?.trim() || null, + specs: dto.specs?.trim() || null, minMeterage: dto.minMeterage ?? 30, orderMultiplier: dto.orderMultiplier ?? dto.orderStep ?? 10, basePrice: this.pickNumber(dto.basePrice, dto.price), @@ -177,13 +179,18 @@ export class ProductsService { : dto.productCode !== undefined ? dto.productCode.trim() : undefined; - const brandId = await this.resolveBrandId(dto.brandId); - try { const product = await this.prisma.product.update({ where: { id }, data: { - ...(brandId !== undefined ? { brandId } : {}), + ...(dto.companyId !== undefined + ? { + companyId: await resolveProductCompanyId( + this.prisma, + dto.companyId, + ), + } + : {}), name: dto.name?.trim(), code, color: dto.color?.trim(), @@ -191,6 +198,8 @@ export class ProductsService { dto.description === undefined ? undefined : dto.description?.trim() || null, + specs: + dto.specs === undefined ? undefined : dto.specs?.trim() || null, minMeterage: dto.minMeterage, orderMultiplier: dto.orderMultiplier !== undefined @@ -268,6 +277,35 @@ export class ProductsService { return this.map(product); } + async remove(id: string) { + await this.ensure(id); + const catalogRequestCount = await this.prisma.catalogRequestItem.count({ + where: { productId: id }, + }); + if (catalogRequestCount > 0) { + throw new ConflictException( + 'این محصول در درخواست کالیته ثبت شده و قابل حذف نیست.', + ); + } + try { + await this.prisma.$transaction([ + this.prisma.cartItem.deleteMany({ where: { productId: id } }), + this.prisma.product.delete({ where: { id } }), + ]); + } catch (e) { + if ( + e instanceof Prisma.PrismaClientKnownRequestError && + e.code === 'P2003' + ) { + throw new ConflictException( + 'این محصول به داده‌های دیگر وابسته است و قابل حذف نیست.', + ); + } + throw e; + } + return { ok: true }; + } + async listFavoriteIds(customerId: string) { const rows = await this.prisma.productFavorite.findMany({ where: { customerId }, @@ -316,17 +354,6 @@ export class ProductsService { return product; } - private async resolveBrandId( - brandId?: string | null, - ): Promise { - if (brandId === undefined) return undefined; - const id = brandId?.trim() || null; - if (!id) return null; - const brand = await this.prisma.brand.findUnique({ where: { id } }); - if (!brand) throw new BadRequestException('برند یافت نشد'); - return id; - } - private map( product: { id: string; @@ -335,6 +362,7 @@ export class ProductsService { code: string; color: string; description: string | null; + specs?: string | null; minMeterage: number; orderMultiplier: number; basePrice: number | null; @@ -343,7 +371,6 @@ export class ProductsService { createdAt: Date; updatedAt: Date; company: { name: string }; - brand?: { id: string; name: string } | null; usageCategory?: string; season?: string; widthCm?: number | null; @@ -381,13 +408,12 @@ export class ProductsService { catalogCode: product.code, /** @deprecated use `name` */ catalogName: product.name, - brandId: product.brand?.id ?? null, - brandName: product.brand?.name ?? null, name: product.name, code: product.code, productCode: product.code, color: product.color, description: product.description ?? undefined, + specs: product.specs?.trim() ? product.specs : undefined, minMeterage: product.minMeterage, orderMultiplier: product.orderMultiplier, orderStep: product.orderMultiplier, diff --git a/src/settings/dto/settings.dto.ts b/src/settings/dto/settings.dto.ts index 9bd67ac..e13c5ac 100644 --- a/src/settings/dto/settings.dto.ts +++ b/src/settings/dto/settings.dto.ts @@ -22,6 +22,10 @@ export class UpdateSettingsDto { @IsBoolean() defaultSettlementCash?: boolean; + @IsOptional() + @IsBoolean() + defaultSettlementCashCheck?: boolean; + @IsOptional() @IsBoolean() smsOrderRegistered?: boolean; @@ -70,6 +74,18 @@ export class UpdateSettingsDto { @IsString() supportEmail?: string | null; + @IsOptional() + @IsString() + supportWhatsapp?: string | null; + + @IsOptional() + @IsString() + supportTelegram?: string | null; + + @IsOptional() + @IsString() + supportInstagram?: string | null; + @IsOptional() @IsObject() categoryImagesJson?: Record; diff --git a/src/settings/settings.service.ts b/src/settings/settings.service.ts index e4de0b2..1d31b6d 100644 --- a/src/settings/settings.service.ts +++ b/src/settings/settings.service.ts @@ -22,6 +22,12 @@ export class SettingsService { return { supportPhone: settings.supportPhone, supportEmail: settings.supportEmail, + supportWhatsapp: settings.supportWhatsapp, + supportTelegram: settings.supportTelegram, + supportInstagram: settings.supportInstagram, + defaultSettlementCash: settings.defaultSettlementCash, + defaultSettlementCheck: settings.defaultSettlementCheck, + defaultSettlementCashCheck: settings.defaultSettlementCashCheck ?? false, }; } @@ -43,6 +49,7 @@ export class SettingsService { cashInvoiceValidityHours: dto.cashInvoiceValidityHours, defaultSettlementCheck: dto.defaultSettlementCheck, defaultSettlementCash: dto.defaultSettlementCash, + defaultSettlementCashCheck: dto.defaultSettlementCashCheck, minOrderRollsPerProduct: dto.minOrderRollsPerProduct, showCatalogPublicPrice: dto.showCatalogPublicPrice, allowAgentPricing: dto.allowAgentPricing, @@ -63,6 +70,18 @@ export class SettingsService { dto.supportEmail === undefined ? undefined : dto.supportEmail?.trim() || null, + supportWhatsapp: + dto.supportWhatsapp === undefined + ? undefined + : dto.supportWhatsapp?.trim() || null, + supportTelegram: + dto.supportTelegram === undefined + ? undefined + : dto.supportTelegram?.trim() || null, + supportInstagram: + dto.supportInstagram === undefined + ? undefined + : dto.supportInstagram?.trim() || null, categoryDefsJson: nextDefs, categoryImagesJson: dto.categoryImagesJson === undefined @@ -87,6 +106,7 @@ export class SettingsService { cashInvoiceValidityHours: number; defaultSettlementCheck: boolean; defaultSettlementCash: boolean; + defaultSettlementCashCheck?: boolean; minOrderRollsPerProduct?: number; showCatalogPublicPrice?: boolean; allowAgentPricing?: boolean; @@ -98,6 +118,9 @@ export class SettingsService { smsShippingUpdate: boolean; supportPhone: string | null; supportEmail: string | null; + supportWhatsapp?: string | null; + supportTelegram?: string | null; + supportInstagram?: string | null; categoryImagesJson?: unknown; categoryDefsJson?: unknown; updatedAt: Date; @@ -109,6 +132,7 @@ export class SettingsService { cashInvoiceValidityHours: settings.cashInvoiceValidityHours, defaultSettlementCheck: settings.defaultSettlementCheck, defaultSettlementCash: settings.defaultSettlementCash, + defaultSettlementCashCheck: settings.defaultSettlementCashCheck ?? false, minOrderRollsPerProduct: settings.minOrderRollsPerProduct ?? 1, showCatalogPublicPrice: settings.showCatalogPublicPrice ?? false, allowAgentPricing: settings.allowAgentPricing ?? false, @@ -120,6 +144,9 @@ export class SettingsService { smsShippingUpdate: settings.smsShippingUpdate, supportPhone: settings.supportPhone, supportEmail: settings.supportEmail, + supportWhatsapp: settings.supportWhatsapp ?? null, + supportTelegram: settings.supportTelegram ?? null, + supportInstagram: settings.supportInstagram ?? null, categoryImagesJson: asImageMap(settings.categoryImagesJson), categoryDefsJson: defs, updatedAt: settings.updatedAt.toISOString(), diff --git a/src/suggestions/suggestions.service.ts b/src/suggestions/suggestions.service.ts index 7257246..ec3a233 100644 --- a/src/suggestions/suggestions.service.ts +++ b/src/suggestions/suggestions.service.ts @@ -15,6 +15,7 @@ const PRODUCT_INCLUDE = { color: true, subtitle: true, isNew: true, + isActive: true, colorsJson: true, imageUrlsJson: true, widthCm: true, @@ -142,6 +143,7 @@ export class SuggestionsService { color: string; subtitle: string | null; isNew: boolean; + isActive: boolean; colorsJson: unknown; imageUrlsJson: unknown; widthCm: number | null; @@ -180,6 +182,7 @@ export class SuggestionsService { widthCm: r.product.widthCm ?? undefined, composition: r.product.composition?.trim() || undefined, isNew: r.product.isNew, + productIsActive: r.product.isActive, note: r.note ?? undefined, isActive: r.isActive, createdAt: r.createdAt.toISOString(),