import type { OptionalNullablePartial } from '../tools'; import type { Entity } from './Entity'; import type { EntityPatchRef, EntityRef } from './EntityRef'; export type PositionMetaType = 'commissionreportinposition' | 'commissionreportoutposition' | 'customerorderposition' | 'demandposition' | 'enterposition' | 'internalorderposition' | 'inventoryposition' | 'invoiceposition' | 'lossposition' | 'moveposition' | 'processingorderposition' | 'purchaseorderposition' | 'purchasereturnposition' | 'salesreturnposition' | 'supplyposition'; export type DocumentPositionType = { commissionreportin: 'commissionreportinposition'; commissionreportout: 'commissionreportoutposition'; customerorder: 'customerorderposition'; demand: 'demandposition'; enter: 'enterposition'; internalorder: 'internalorderposition'; inventory: 'inventoryposition'; invoicein: 'invoiceposition'; invoiceout: 'invoiceposition'; loss: 'lossposition'; move: 'moveposition'; processingorder: 'processingorderposition'; purchaseorder: 'purchaseorderposition'; purchasereturn: 'purchasereturnposition'; retaildemand: 'demandposition'; salesreturn: 'salesreturnposition'; retailsalesreturn: 'salesreturnposition'; supply: 'supplyposition'; }; export interface Position extends Entity { /** Кол-во */ quantity: number; /** Цена */ price: number; /** Скидка */ discount: number; /** Ассортимент */ assortment: EntityRef<'product' | 'service' | 'bundle' | 'consignment' | 'variant'>; } export type PositionPatch = Partial & Pick, 'quantity' | 'price'>> & OptionalNullablePartial, 'assortment' | 'discount'>>;