Kind: Class
Source: Pams/Web/Pams.Web/Client/app/models/sales/job-version.model.ts (line 10)
Part of: Pams
JobVersion is a sales-domain model that represents a version of a job. It manages job-version state related to unitized items and expiration testing through addUnitizedItem() and resetExpirationTest().
Methods
| Method | Signature | Returns |
|---|---|---|
addUnitizedItem | addUnitizedItem() | void |
resetExpirationTest | resetExpirationTest() | void |
Properties
| Property | Type |
|---|---|
VersionID | number |
VersionDate | Date |
IsSelected | boolean |
TypeSelected | boolean |
UserDisplayName | string |
AutoGeneratedSerial | boolean |
DeliveryTerm | DeliveryTerm |
PaymentMethod | PaymentMethod |
Supplier | Supplier |
VersionSerial | number |
JobProcessID | number |
JobVersionPrice | number |
CurrencyID | number |
RateToBaseCurrency | number |
JobVersionPriceInBaseCurrency | number |
PaymentMethodID | number |
DeliveryTermID | number |
JobVersionStatusID | number |
StatusDate | Date |
CreatedByUserID | number |
ModifiedByUserID | number |
ModificationDate | Date |
CurrentJobVersionStatusLogID | number |
DeliveryTimePeriodID | number |
DeliveryTimePeriodCount | number |
IsPartialShipment | boolean |
CurrencyCode | string |
CurrencySymbol | string |
ClientOrderNumber | string |
SupplierOfferNumber | string |
OfferValidationTimePeriodID | number |
OfferValidationTimePeriodCount | number |
IsCurrent | boolean |
SupplierOrderNumber | string |
OrderActivationDate | Date |
OrderDeliveryDate | Date |
OrderDate | Date |
OrderBacklog | number |
Items | JobItem[] |
MileStones | OfferMileStone[] |
JobStatus | number |
CreatedByUserName | string |
JobVersionStatusLabel | string |
commissionBase | string |
JobVersionParentID | number |
CommissionPercentage | number |
AgreedCommissionPercentage | number |
ContractualCommissionPercentage | number |
commissionValidation | number |
SupplierID | number |
Where it refuses work
JobVersionstops the work with an early return whenthis.JobVersionPrice <= 0.JobVersionstops the work with an early return whenthis.Items[0].Description.JobVersionstops the work with an early return whenthis.OrderActivationDate == null || this.DeliveryTimePeriodCount == null || this.Delivery….JobVersionstops the work with an early return whenthis.OrderDeliveryDateCalculated == "".JobVersionstops the work with an early return whendiff < 0.JobVersionstops the work with an early return whenthis.ContractualCommissionPercentage == -1.
Diagram
mermaidgraph LR JobVersion[JobVersion] AddUnitizedItem[addUnitizedItem()] ResetExpirationTest[resetExpirationTest()] UnitizedItems[Unitized item state] ExpirationTest[Expiration test state] JobVersion --> AddUnitizedItem JobVersion --> ResetExpirationTest AddUnitizedItem --> UnitizedItems ResetExpirationTest --> ExpirationTest
Usage
tsimport { JobVersion } from './models/sales/job-version.model';
const jobVersion = new JobVersion();
// Add an item managed by the job version.
jobVersion.addUnitizedItem();
// Clear or reinitialize expiration-test state before editing or validation.
jobVersion.resetExpirationTest();
AI Coding Instructions
- Keep unitized-item changes inside
addUnitizedItem()rather than duplicating its state changes in calling code. - Call
resetExpirationTest()when a workflow needs to clear expiration-test state before recalculation or validation. - Check the model source for initialized properties and required defaults before creating a
JobVersioninstance. - Preserve the model’s existing mutation patterns when adding sales job-version behavior.
Relationships
- IMPORTS →
JobItem - IMPORTS →
OfferMileStone - IMPORTS →
AppSettings - IMPORTS →
JobVersionStatusE - IMPORTS →
JobStatusE - IMPORTS →
JobItemStatusE
Used by
1 reference from 1 file. Each is a place in this repository where the symbol is actually used — go read one rather than trusting an example.
Imported by (1)
TempInq—Pams/Web/Pams.Web/Client/app/models/sales/inquiry.model.ts:17
Was this page helpful?