feat: sales activities, forecast products, catalog categories, member cache, procurement filters, and comprehensive tests

New features:
- ActivityController and manager for CW sales activities (CRUD)
- ForecastProductController for opportunity forecast/product lines
- CW member cache with dual-layer (in-memory + Redis) resolution
- Catalog category/subcategory/ecosystem taxonomy module
- Quote statuses type definitions with CW mapping
- User-defined fields (UDF) module with cache and event refresh
- Company sites CW module with serialization
- Procurement manager filters (category, ecosystem, manufacturer, price, stock)
- Opportunity notes CRUD and product line management via CW API
- Opportunity type definitions endpoint

Updates:
- OpportunityController: CW refresh, company hydration, activities, custom fields
- UserController: cwIdentifier field for CW member linking
- CatalogItemController: category/subcategory fields from CW
- PermissionNodes: sales note/product CRUD nodes, subCategories, collectPermissions
- API routes: procurement categories/filters, sales notes/products, opportunity types
- Global events: UDF and member refresh intervals on startup

Tests (414 passing):
- ActivityController, ForecastProductController, OpportunityController unit tests
- UserController cwIdentifier tests
- catalogCategories, companySites, memberCache, procurement module tests
- activityTypes, opportunityTypes, quoteStatuses type tests
- permissionNodes subCategories and getAllPermissionNodes tests
- Updated test setup with redis mock, API method mocks, and builder helpers
This commit is contained in:
2026-03-01 13:19:00 -06:00
parent 883b648d5e
commit d7b374f8ab
96 changed files with 7752 additions and 205 deletions
+169 -1
View File
@@ -28,6 +28,8 @@ export type AggregateCatalogItem = {
export type CatalogItemAvgAggregateOutputType = {
cwCatalogId: number | null
categoryCwId: number | null
subcategoryCwId: number | null
manufactureCwId: number | null
vendorCwId: number | null
price: number | null
@@ -37,6 +39,8 @@ export type CatalogItemAvgAggregateOutputType = {
export type CatalogItemSumAggregateOutputType = {
cwCatalogId: number | null
categoryCwId: number | null
subcategoryCwId: number | null
manufactureCwId: number | null
vendorCwId: number | null
price: number | null
@@ -52,6 +56,10 @@ export type CatalogItemMinAggregateOutputType = {
description: string | null
customerDescription: string | null
internalNotes: string | null
category: string | null
categoryCwId: number | null
subcategory: string | null
subcategoryCwId: number | null
manufacturer: string | null
manufactureCwId: number | null
partNumber: string | null
@@ -76,6 +84,10 @@ export type CatalogItemMaxAggregateOutputType = {
description: string | null
customerDescription: string | null
internalNotes: string | null
category: string | null
categoryCwId: number | null
subcategory: string | null
subcategoryCwId: number | null
manufacturer: string | null
manufactureCwId: number | null
partNumber: string | null
@@ -100,6 +112,10 @@ export type CatalogItemCountAggregateOutputType = {
description: number
customerDescription: number
internalNotes: number
category: number
categoryCwId: number
subcategory: number
subcategoryCwId: number
manufacturer: number
manufactureCwId: number
partNumber: number
@@ -120,6 +136,8 @@ export type CatalogItemCountAggregateOutputType = {
export type CatalogItemAvgAggregateInputType = {
cwCatalogId?: true
categoryCwId?: true
subcategoryCwId?: true
manufactureCwId?: true
vendorCwId?: true
price?: true
@@ -129,6 +147,8 @@ export type CatalogItemAvgAggregateInputType = {
export type CatalogItemSumAggregateInputType = {
cwCatalogId?: true
categoryCwId?: true
subcategoryCwId?: true
manufactureCwId?: true
vendorCwId?: true
price?: true
@@ -144,6 +164,10 @@ export type CatalogItemMinAggregateInputType = {
description?: true
customerDescription?: true
internalNotes?: true
category?: true
categoryCwId?: true
subcategory?: true
subcategoryCwId?: true
manufacturer?: true
manufactureCwId?: true
partNumber?: true
@@ -168,6 +192,10 @@ export type CatalogItemMaxAggregateInputType = {
description?: true
customerDescription?: true
internalNotes?: true
category?: true
categoryCwId?: true
subcategory?: true
subcategoryCwId?: true
manufacturer?: true
manufactureCwId?: true
partNumber?: true
@@ -192,6 +220,10 @@ export type CatalogItemCountAggregateInputType = {
description?: true
customerDescription?: true
internalNotes?: true
category?: true
categoryCwId?: true
subcategory?: true
subcategoryCwId?: true
manufacturer?: true
manufactureCwId?: true
partNumber?: true
@@ -303,6 +335,10 @@ export type CatalogItemGroupByOutputType = {
description: string | null
customerDescription: string | null
internalNotes: string | null
category: string | null
categoryCwId: number | null
subcategory: string | null
subcategoryCwId: number | null
manufacturer: string | null
manufactureCwId: number | null
partNumber: string | null
@@ -350,6 +386,10 @@ export type CatalogItemWhereInput = {
description?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
customerDescription?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
internalNotes?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
category?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
categoryCwId?: Prisma.IntNullableFilter<"CatalogItem"> | number | null
subcategory?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
subcategoryCwId?: Prisma.IntNullableFilter<"CatalogItem"> | number | null
manufacturer?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
manufactureCwId?: Prisma.IntNullableFilter<"CatalogItem"> | number | null
partNumber?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
@@ -376,6 +416,10 @@ export type CatalogItemOrderByWithRelationInput = {
description?: Prisma.SortOrderInput | Prisma.SortOrder
customerDescription?: Prisma.SortOrderInput | Prisma.SortOrder
internalNotes?: Prisma.SortOrderInput | Prisma.SortOrder
category?: Prisma.SortOrderInput | Prisma.SortOrder
categoryCwId?: Prisma.SortOrderInput | Prisma.SortOrder
subcategory?: Prisma.SortOrderInput | Prisma.SortOrder
subcategoryCwId?: Prisma.SortOrderInput | Prisma.SortOrder
manufacturer?: Prisma.SortOrderInput | Prisma.SortOrder
manufactureCwId?: Prisma.SortOrderInput | Prisma.SortOrder
partNumber?: Prisma.SortOrderInput | Prisma.SortOrder
@@ -405,6 +449,10 @@ export type CatalogItemWhereUniqueInput = Prisma.AtLeast<{
description?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
customerDescription?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
internalNotes?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
category?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
categoryCwId?: Prisma.IntNullableFilter<"CatalogItem"> | number | null
subcategory?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
subcategoryCwId?: Prisma.IntNullableFilter<"CatalogItem"> | number | null
manufacturer?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
manufactureCwId?: Prisma.IntNullableFilter<"CatalogItem"> | number | null
partNumber?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
@@ -431,6 +479,10 @@ export type CatalogItemOrderByWithAggregationInput = {
description?: Prisma.SortOrderInput | Prisma.SortOrder
customerDescription?: Prisma.SortOrderInput | Prisma.SortOrder
internalNotes?: Prisma.SortOrderInput | Prisma.SortOrder
category?: Prisma.SortOrderInput | Prisma.SortOrder
categoryCwId?: Prisma.SortOrderInput | Prisma.SortOrder
subcategory?: Prisma.SortOrderInput | Prisma.SortOrder
subcategoryCwId?: Prisma.SortOrderInput | Prisma.SortOrder
manufacturer?: Prisma.SortOrderInput | Prisma.SortOrder
manufactureCwId?: Prisma.SortOrderInput | Prisma.SortOrder
partNumber?: Prisma.SortOrderInput | Prisma.SortOrder
@@ -463,6 +515,10 @@ export type CatalogItemScalarWhereWithAggregatesInput = {
description?: Prisma.StringNullableWithAggregatesFilter<"CatalogItem"> | string | null
customerDescription?: Prisma.StringNullableWithAggregatesFilter<"CatalogItem"> | string | null
internalNotes?: Prisma.StringNullableWithAggregatesFilter<"CatalogItem"> | string | null
category?: Prisma.StringNullableWithAggregatesFilter<"CatalogItem"> | string | null
categoryCwId?: Prisma.IntNullableWithAggregatesFilter<"CatalogItem"> | number | null
subcategory?: Prisma.StringNullableWithAggregatesFilter<"CatalogItem"> | string | null
subcategoryCwId?: Prisma.IntNullableWithAggregatesFilter<"CatalogItem"> | number | null
manufacturer?: Prisma.StringNullableWithAggregatesFilter<"CatalogItem"> | string | null
manufactureCwId?: Prisma.IntNullableWithAggregatesFilter<"CatalogItem"> | number | null
partNumber?: Prisma.StringNullableWithAggregatesFilter<"CatalogItem"> | string | null
@@ -487,6 +543,10 @@ export type CatalogItemCreateInput = {
description?: string | null
customerDescription?: string | null
internalNotes?: string | null
category?: string | null
categoryCwId?: number | null
subcategory?: string | null
subcategoryCwId?: number | null
manufacturer?: string | null
manufactureCwId?: number | null
partNumber?: string | null
@@ -513,6 +573,10 @@ export type CatalogItemUncheckedCreateInput = {
description?: string | null
customerDescription?: string | null
internalNotes?: string | null
category?: string | null
categoryCwId?: number | null
subcategory?: string | null
subcategoryCwId?: number | null
manufacturer?: string | null
manufactureCwId?: number | null
partNumber?: string | null
@@ -539,6 +603,10 @@ export type CatalogItemUpdateInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -565,6 +633,10 @@ export type CatalogItemUncheckedUpdateInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -591,6 +663,10 @@ export type CatalogItemCreateManyInput = {
description?: string | null
customerDescription?: string | null
internalNotes?: string | null
category?: string | null
categoryCwId?: number | null
subcategory?: string | null
subcategoryCwId?: number | null
manufacturer?: string | null
manufactureCwId?: number | null
partNumber?: string | null
@@ -615,6 +691,10 @@ export type CatalogItemUpdateManyMutationInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -639,6 +719,10 @@ export type CatalogItemUncheckedUpdateManyInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -673,6 +757,10 @@ export type CatalogItemCountOrderByAggregateInput = {
description?: Prisma.SortOrder
customerDescription?: Prisma.SortOrder
internalNotes?: Prisma.SortOrder
category?: Prisma.SortOrder
categoryCwId?: Prisma.SortOrder
subcategory?: Prisma.SortOrder
subcategoryCwId?: Prisma.SortOrder
manufacturer?: Prisma.SortOrder
manufactureCwId?: Prisma.SortOrder
partNumber?: Prisma.SortOrder
@@ -691,6 +779,8 @@ export type CatalogItemCountOrderByAggregateInput = {
export type CatalogItemAvgOrderByAggregateInput = {
cwCatalogId?: Prisma.SortOrder
categoryCwId?: Prisma.SortOrder
subcategoryCwId?: Prisma.SortOrder
manufactureCwId?: Prisma.SortOrder
vendorCwId?: Prisma.SortOrder
price?: Prisma.SortOrder
@@ -706,6 +796,10 @@ export type CatalogItemMaxOrderByAggregateInput = {
description?: Prisma.SortOrder
customerDescription?: Prisma.SortOrder
internalNotes?: Prisma.SortOrder
category?: Prisma.SortOrder
categoryCwId?: Prisma.SortOrder
subcategory?: Prisma.SortOrder
subcategoryCwId?: Prisma.SortOrder
manufacturer?: Prisma.SortOrder
manufactureCwId?: Prisma.SortOrder
partNumber?: Prisma.SortOrder
@@ -730,6 +824,10 @@ export type CatalogItemMinOrderByAggregateInput = {
description?: Prisma.SortOrder
customerDescription?: Prisma.SortOrder
internalNotes?: Prisma.SortOrder
category?: Prisma.SortOrder
categoryCwId?: Prisma.SortOrder
subcategory?: Prisma.SortOrder
subcategoryCwId?: Prisma.SortOrder
manufacturer?: Prisma.SortOrder
manufactureCwId?: Prisma.SortOrder
partNumber?: Prisma.SortOrder
@@ -748,6 +846,8 @@ export type CatalogItemMinOrderByAggregateInput = {
export type CatalogItemSumOrderByAggregateInput = {
cwCatalogId?: Prisma.SortOrder
categoryCwId?: Prisma.SortOrder
subcategoryCwId?: Prisma.SortOrder
manufactureCwId?: Prisma.SortOrder
vendorCwId?: Prisma.SortOrder
price?: Prisma.SortOrder
@@ -855,6 +955,10 @@ export type CatalogItemCreateWithoutLinkedToInput = {
description?: string | null
customerDescription?: string | null
internalNotes?: string | null
category?: string | null
categoryCwId?: number | null
subcategory?: string | null
subcategoryCwId?: number | null
manufacturer?: string | null
manufactureCwId?: number | null
partNumber?: string | null
@@ -880,6 +984,10 @@ export type CatalogItemUncheckedCreateWithoutLinkedToInput = {
description?: string | null
customerDescription?: string | null
internalNotes?: string | null
category?: string | null
categoryCwId?: number | null
subcategory?: string | null
subcategoryCwId?: number | null
manufacturer?: string | null
manufactureCwId?: number | null
partNumber?: string | null
@@ -910,6 +1018,10 @@ export type CatalogItemCreateWithoutLinkedItemsInput = {
description?: string | null
customerDescription?: string | null
internalNotes?: string | null
category?: string | null
categoryCwId?: number | null
subcategory?: string | null
subcategoryCwId?: number | null
manufacturer?: string | null
manufactureCwId?: number | null
partNumber?: string | null
@@ -935,6 +1047,10 @@ export type CatalogItemUncheckedCreateWithoutLinkedItemsInput = {
description?: string | null
customerDescription?: string | null
internalNotes?: string | null
category?: string | null
categoryCwId?: number | null
subcategory?: string | null
subcategoryCwId?: number | null
manufacturer?: string | null
manufactureCwId?: number | null
partNumber?: string | null
@@ -984,6 +1100,10 @@ export type CatalogItemScalarWhereInput = {
description?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
customerDescription?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
internalNotes?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
category?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
categoryCwId?: Prisma.IntNullableFilter<"CatalogItem"> | number | null
subcategory?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
subcategoryCwId?: Prisma.IntNullableFilter<"CatalogItem"> | number | null
manufacturer?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
manufactureCwId?: Prisma.IntNullableFilter<"CatalogItem"> | number | null
partNumber?: Prisma.StringNullableFilter<"CatalogItem"> | string | null
@@ -1024,6 +1144,10 @@ export type CatalogItemUpdateWithoutLinkedToInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -1049,6 +1173,10 @@ export type CatalogItemUncheckedUpdateWithoutLinkedToInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -1074,6 +1202,10 @@ export type CatalogItemUncheckedUpdateManyWithoutLinkedToInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -1098,6 +1230,10 @@ export type CatalogItemUpdateWithoutLinkedItemsInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -1123,6 +1259,10 @@ export type CatalogItemUncheckedUpdateWithoutLinkedItemsInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -1148,6 +1288,10 @@ export type CatalogItemUncheckedUpdateManyWithoutLinkedItemsInput = {
description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customerDescription?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
internalNotes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
category?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
categoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
subcategory?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
subcategoryCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
manufacturer?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
manufactureCwId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
partNumber?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
@@ -1212,6 +1356,10 @@ export type CatalogItemSelect<ExtArgs extends runtime.Types.Extensions.InternalA
description?: boolean
customerDescription?: boolean
internalNotes?: boolean
category?: boolean
categoryCwId?: boolean
subcategory?: boolean
subcategoryCwId?: boolean
manufacturer?: boolean
manufactureCwId?: boolean
partNumber?: boolean
@@ -1239,6 +1387,10 @@ export type CatalogItemSelectCreateManyAndReturn<ExtArgs extends runtime.Types.E
description?: boolean
customerDescription?: boolean
internalNotes?: boolean
category?: boolean
categoryCwId?: boolean
subcategory?: boolean
subcategoryCwId?: boolean
manufacturer?: boolean
manufactureCwId?: boolean
partNumber?: boolean
@@ -1263,6 +1415,10 @@ export type CatalogItemSelectUpdateManyAndReturn<ExtArgs extends runtime.Types.E
description?: boolean
customerDescription?: boolean
internalNotes?: boolean
category?: boolean
categoryCwId?: boolean
subcategory?: boolean
subcategoryCwId?: boolean
manufacturer?: boolean
manufactureCwId?: boolean
partNumber?: boolean
@@ -1287,6 +1443,10 @@ export type CatalogItemSelectScalar = {
description?: boolean
customerDescription?: boolean
internalNotes?: boolean
category?: boolean
categoryCwId?: boolean
subcategory?: boolean
subcategoryCwId?: boolean
manufacturer?: boolean
manufactureCwId?: boolean
partNumber?: boolean
@@ -1303,7 +1463,7 @@ export type CatalogItemSelectScalar = {
updatedAt?: boolean
}
export type CatalogItemOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "cwCatalogId" | "identifier" | "name" | "description" | "customerDescription" | "internalNotes" | "manufacturer" | "manufactureCwId" | "partNumber" | "vendorName" | "vendorSku" | "vendorCwId" | "price" | "cost" | "inactive" | "salesTaxable" | "onHand" | "cwLastUpdated" | "createdAt" | "updatedAt", ExtArgs["result"]["catalogItem"]>
export type CatalogItemOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "cwCatalogId" | "identifier" | "name" | "description" | "customerDescription" | "internalNotes" | "category" | "categoryCwId" | "subcategory" | "subcategoryCwId" | "manufacturer" | "manufactureCwId" | "partNumber" | "vendorName" | "vendorSku" | "vendorCwId" | "price" | "cost" | "inactive" | "salesTaxable" | "onHand" | "cwLastUpdated" | "createdAt" | "updatedAt", ExtArgs["result"]["catalogItem"]>
export type CatalogItemInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
linkedItems?: boolean | Prisma.CatalogItem$linkedItemsArgs<ExtArgs>
linkedTo?: boolean | Prisma.CatalogItem$linkedToArgs<ExtArgs>
@@ -1326,6 +1486,10 @@ export type $CatalogItemPayload<ExtArgs extends runtime.Types.Extensions.Interna
description: string | null
customerDescription: string | null
internalNotes: string | null
category: string | null
categoryCwId: number | null
subcategory: string | null
subcategoryCwId: number | null
manufacturer: string | null
manufactureCwId: number | null
partNumber: string | null
@@ -1772,6 +1936,10 @@ export interface CatalogItemFieldRefs {
readonly description: Prisma.FieldRef<"CatalogItem", 'String'>
readonly customerDescription: Prisma.FieldRef<"CatalogItem", 'String'>
readonly internalNotes: Prisma.FieldRef<"CatalogItem", 'String'>
readonly category: Prisma.FieldRef<"CatalogItem", 'String'>
readonly categoryCwId: Prisma.FieldRef<"CatalogItem", 'Int'>
readonly subcategory: Prisma.FieldRef<"CatalogItem", 'String'>
readonly subcategoryCwId: Prisma.FieldRef<"CatalogItem", 'Int'>
readonly manufacturer: Prisma.FieldRef<"CatalogItem", 'String'>
readonly manufactureCwId: Prisma.FieldRef<"CatalogItem", 'Int'>
readonly partNumber: Prisma.FieldRef<"CatalogItem", 'String'>