30b408e0db
- Add POST /v1/sales/opportunities/:identifier/products with field-level permission gating - Add CWForecastItemCreate type for forecast item creation - Store product display order locally (productSequence Int[] on Opportunity) - Rewrite resequenceProducts to be local-only (no CW PUT, stable IDs) - Remove reorderProducts CW util (PUT regenerated IDs & broke procurement) - Update fetchProducts to apply local ordering with CW sequenceNumber fallback - Add productSequence to OpportunityController.toJson() - Update API_ROUTES.md, PERMISSIONS.md, PermissionNodes.ts
313 lines
8.5 KiB
TypeScript
313 lines
8.5 KiB
TypeScript
|
|
/* !!! This is code generated by Prisma. Do not edit directly. !!! */
|
|
/* eslint-disable */
|
|
// biome-ignore-all lint: generated file
|
|
// @ts-nocheck
|
|
/*
|
|
* WARNING: This is an internal file that is subject to change!
|
|
*
|
|
* 🛑 Under no circumstances should you import this file directly! 🛑
|
|
*
|
|
* All exports from this file are wrapped under a `Prisma` namespace object in the browser.ts file.
|
|
* While this enables partial backward compatibility, it is not part of the stable public API.
|
|
*
|
|
* If you are looking for your Models, Enums, and Input Types, please import them from the respective
|
|
* model files in the `model` directory!
|
|
*/
|
|
|
|
import * as runtime from "@prisma/client/runtime/index-browser"
|
|
|
|
export type * from '../models.ts'
|
|
export type * from './prismaNamespace.ts'
|
|
|
|
export const Decimal = runtime.Decimal
|
|
|
|
|
|
export const NullTypes = {
|
|
DbNull: runtime.NullTypes.DbNull as (new (secret: never) => typeof runtime.DbNull),
|
|
JsonNull: runtime.NullTypes.JsonNull as (new (secret: never) => typeof runtime.JsonNull),
|
|
AnyNull: runtime.NullTypes.AnyNull as (new (secret: never) => typeof runtime.AnyNull),
|
|
}
|
|
/**
|
|
* Helper for filtering JSON entries that have `null` on the database (empty on the db)
|
|
*
|
|
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
|
|
*/
|
|
export const DbNull = runtime.DbNull
|
|
|
|
/**
|
|
* Helper for filtering JSON entries that have JSON `null` values (not empty on the db)
|
|
*
|
|
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
|
|
*/
|
|
export const JsonNull = runtime.JsonNull
|
|
|
|
/**
|
|
* Helper for filtering JSON entries that are `Prisma.DbNull` or `Prisma.JsonNull`
|
|
*
|
|
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
|
|
*/
|
|
export const AnyNull = runtime.AnyNull
|
|
|
|
|
|
export const ModelName = {
|
|
Session: 'Session',
|
|
User: 'User',
|
|
Role: 'Role',
|
|
UnifiSite: 'UnifiSite',
|
|
Company: 'Company',
|
|
CatalogItem: 'CatalogItem',
|
|
Opportunity: 'Opportunity',
|
|
CredentialType: 'CredentialType',
|
|
SecureValue: 'SecureValue',
|
|
Credential: 'Credential'
|
|
} as const
|
|
|
|
export type ModelName = (typeof ModelName)[keyof typeof ModelName]
|
|
|
|
/*
|
|
* Enums
|
|
*/
|
|
|
|
export const TransactionIsolationLevel = runtime.makeStrictEnum({
|
|
ReadUncommitted: 'ReadUncommitted',
|
|
ReadCommitted: 'ReadCommitted',
|
|
RepeatableRead: 'RepeatableRead',
|
|
Serializable: 'Serializable'
|
|
} as const)
|
|
|
|
export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel]
|
|
|
|
|
|
export const SessionScalarFieldEnum = {
|
|
id: 'id',
|
|
sessionKey: 'sessionKey',
|
|
userId: 'userId',
|
|
expires: 'expires',
|
|
refreshTokenGenerated: 'refreshTokenGenerated',
|
|
refreshedAt: 'refreshedAt',
|
|
invalidatedAt: 'invalidatedAt'
|
|
} as const
|
|
|
|
export type SessionScalarFieldEnum = (typeof SessionScalarFieldEnum)[keyof typeof SessionScalarFieldEnum]
|
|
|
|
|
|
export const UserScalarFieldEnum = {
|
|
id: 'id',
|
|
permissions: 'permissions',
|
|
login: 'login',
|
|
name: 'name',
|
|
email: 'email',
|
|
emailVerified: 'emailVerified',
|
|
image: 'image',
|
|
cwIdentifier: 'cwIdentifier',
|
|
userId: 'userId',
|
|
token: 'token',
|
|
createdAt: 'createdAt',
|
|
updatedAt: 'updatedAt'
|
|
} as const
|
|
|
|
export type UserScalarFieldEnum = (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum]
|
|
|
|
|
|
export const RoleScalarFieldEnum = {
|
|
id: 'id',
|
|
title: 'title',
|
|
moniker: 'moniker',
|
|
permissions: 'permissions',
|
|
createdAt: 'createdAt',
|
|
updatedAt: 'updatedAt'
|
|
} as const
|
|
|
|
export type RoleScalarFieldEnum = (typeof RoleScalarFieldEnum)[keyof typeof RoleScalarFieldEnum]
|
|
|
|
|
|
export const UnifiSiteScalarFieldEnum = {
|
|
id: 'id',
|
|
name: 'name',
|
|
siteId: 'siteId',
|
|
companyId: 'companyId',
|
|
createdAt: 'createdAt',
|
|
updatedAt: 'updatedAt'
|
|
} as const
|
|
|
|
export type UnifiSiteScalarFieldEnum = (typeof UnifiSiteScalarFieldEnum)[keyof typeof UnifiSiteScalarFieldEnum]
|
|
|
|
|
|
export const CompanyScalarFieldEnum = {
|
|
id: 'id',
|
|
name: 'name',
|
|
cw_CompanyId: 'cw_CompanyId',
|
|
cw_Identifier: 'cw_Identifier',
|
|
createdAt: 'createdAt',
|
|
updatedAt: 'updatedAt'
|
|
} as const
|
|
|
|
export type CompanyScalarFieldEnum = (typeof CompanyScalarFieldEnum)[keyof typeof CompanyScalarFieldEnum]
|
|
|
|
|
|
export const CatalogItemScalarFieldEnum = {
|
|
id: 'id',
|
|
cwCatalogId: 'cwCatalogId',
|
|
identifier: 'identifier',
|
|
name: 'name',
|
|
description: 'description',
|
|
customerDescription: 'customerDescription',
|
|
internalNotes: 'internalNotes',
|
|
category: 'category',
|
|
categoryCwId: 'categoryCwId',
|
|
subcategory: 'subcategory',
|
|
subcategoryCwId: 'subcategoryCwId',
|
|
manufacturer: 'manufacturer',
|
|
manufactureCwId: 'manufactureCwId',
|
|
partNumber: 'partNumber',
|
|
vendorName: 'vendorName',
|
|
vendorSku: 'vendorSku',
|
|
vendorCwId: 'vendorCwId',
|
|
price: 'price',
|
|
cost: 'cost',
|
|
inactive: 'inactive',
|
|
salesTaxable: 'salesTaxable',
|
|
onHand: 'onHand',
|
|
cwLastUpdated: 'cwLastUpdated',
|
|
createdAt: 'createdAt',
|
|
updatedAt: 'updatedAt'
|
|
} as const
|
|
|
|
export type CatalogItemScalarFieldEnum = (typeof CatalogItemScalarFieldEnum)[keyof typeof CatalogItemScalarFieldEnum]
|
|
|
|
|
|
export const OpportunityScalarFieldEnum = {
|
|
id: 'id',
|
|
cwOpportunityId: 'cwOpportunityId',
|
|
name: 'name',
|
|
notes: 'notes',
|
|
typeName: 'typeName',
|
|
typeCwId: 'typeCwId',
|
|
stageName: 'stageName',
|
|
stageCwId: 'stageCwId',
|
|
statusName: 'statusName',
|
|
statusCwId: 'statusCwId',
|
|
priorityName: 'priorityName',
|
|
priorityCwId: 'priorityCwId',
|
|
ratingName: 'ratingName',
|
|
ratingCwId: 'ratingCwId',
|
|
source: 'source',
|
|
campaignName: 'campaignName',
|
|
campaignCwId: 'campaignCwId',
|
|
primarySalesRepName: 'primarySalesRepName',
|
|
primarySalesRepIdentifier: 'primarySalesRepIdentifier',
|
|
primarySalesRepCwId: 'primarySalesRepCwId',
|
|
secondarySalesRepName: 'secondarySalesRepName',
|
|
secondarySalesRepIdentifier: 'secondarySalesRepIdentifier',
|
|
secondarySalesRepCwId: 'secondarySalesRepCwId',
|
|
companyCwId: 'companyCwId',
|
|
companyName: 'companyName',
|
|
contactCwId: 'contactCwId',
|
|
contactName: 'contactName',
|
|
siteCwId: 'siteCwId',
|
|
siteName: 'siteName',
|
|
customerPO: 'customerPO',
|
|
totalSalesTax: 'totalSalesTax',
|
|
locationName: 'locationName',
|
|
locationCwId: 'locationCwId',
|
|
departmentName: 'departmentName',
|
|
departmentCwId: 'departmentCwId',
|
|
expectedCloseDate: 'expectedCloseDate',
|
|
pipelineChangeDate: 'pipelineChangeDate',
|
|
dateBecameLead: 'dateBecameLead',
|
|
closedDate: 'closedDate',
|
|
closedFlag: 'closedFlag',
|
|
closedByName: 'closedByName',
|
|
closedByCwId: 'closedByCwId',
|
|
companyId: 'companyId',
|
|
productSequence: 'productSequence',
|
|
cwLastUpdated: 'cwLastUpdated',
|
|
createdAt: 'createdAt',
|
|
updatedAt: 'updatedAt'
|
|
} as const
|
|
|
|
export type OpportunityScalarFieldEnum = (typeof OpportunityScalarFieldEnum)[keyof typeof OpportunityScalarFieldEnum]
|
|
|
|
|
|
export const CredentialTypeScalarFieldEnum = {
|
|
id: 'id',
|
|
name: 'name',
|
|
permissionScope: 'permissionScope',
|
|
icon: 'icon',
|
|
fields: 'fields',
|
|
createdAt: 'createdAt',
|
|
updatedAt: 'updatedAt'
|
|
} as const
|
|
|
|
export type CredentialTypeScalarFieldEnum = (typeof CredentialTypeScalarFieldEnum)[keyof typeof CredentialTypeScalarFieldEnum]
|
|
|
|
|
|
export const SecureValueScalarFieldEnum = {
|
|
id: 'id',
|
|
name: 'name',
|
|
content: 'content',
|
|
hash: 'hash',
|
|
credentialId: 'credentialId',
|
|
createdAt: 'createdAt',
|
|
updatedAt: 'updatedAt'
|
|
} as const
|
|
|
|
export type SecureValueScalarFieldEnum = (typeof SecureValueScalarFieldEnum)[keyof typeof SecureValueScalarFieldEnum]
|
|
|
|
|
|
export const CredentialScalarFieldEnum = {
|
|
id: 'id',
|
|
name: 'name',
|
|
notes: 'notes',
|
|
subCredentialOfId: 'subCredentialOfId',
|
|
typeId: 'typeId',
|
|
fields: 'fields',
|
|
companyId: 'companyId',
|
|
createdAt: 'createdAt',
|
|
updatedAt: 'updatedAt'
|
|
} as const
|
|
|
|
export type CredentialScalarFieldEnum = (typeof CredentialScalarFieldEnum)[keyof typeof CredentialScalarFieldEnum]
|
|
|
|
|
|
export const SortOrder = {
|
|
asc: 'asc',
|
|
desc: 'desc'
|
|
} as const
|
|
|
|
export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]
|
|
|
|
|
|
export const JsonNullValueInput = {
|
|
JsonNull: JsonNull
|
|
} as const
|
|
|
|
export type JsonNullValueInput = (typeof JsonNullValueInput)[keyof typeof JsonNullValueInput]
|
|
|
|
|
|
export const QueryMode = {
|
|
default: 'default',
|
|
insensitive: 'insensitive'
|
|
} as const
|
|
|
|
export type QueryMode = (typeof QueryMode)[keyof typeof QueryMode]
|
|
|
|
|
|
export const NullsOrder = {
|
|
first: 'first',
|
|
last: 'last'
|
|
} as const
|
|
|
|
export type NullsOrder = (typeof NullsOrder)[keyof typeof NullsOrder]
|
|
|
|
|
|
export const JsonNullValueFilter = {
|
|
DbNull: DbNull,
|
|
JsonNull: JsonNull,
|
|
AnyNull: AnyNull
|
|
} as const
|
|
|
|
export type JsonNullValueFilter = (typeof JsonNullValueFilter)[keyof typeof JsonNullValueFilter]
|
|
|