@mj-biz-apps/orders-core-entities-server 5.5.0 → 5.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AccountingBridge.d.ts +6 -7
- package/dist/AccountingBridge.d.ts.map +1 -1
- package/dist/AccountingBridge.js +10 -13
- package/dist/AccountingBridge.js.map +1 -1
- package/dist/AdvanceOrderStateOperation.d.ts.map +1 -1
- package/dist/AdvanceOrderStateOperation.js +3 -14
- package/dist/AdvanceOrderStateOperation.js.map +1 -1
- package/dist/BundleEngine.d.ts.map +1 -1
- package/dist/BundleEngine.js +6 -10
- package/dist/BundleEngine.js.map +1 -1
- package/dist/CheckoutSessionService.d.ts.map +1 -1
- package/dist/CheckoutSessionService.js +8 -21
- package/dist/CheckoutSessionService.js.map +1 -1
- package/dist/EntitlementEngine.d.ts.map +1 -1
- package/dist/EntitlementEngine.js +35 -40
- package/dist/EntitlementEngine.js.map +1 -1
- package/dist/FulfillOrderLinesOperation.d.ts +1 -1
- package/dist/FulfillOrderLinesOperation.d.ts.map +1 -1
- package/dist/FulfillOrderLinesOperation.js +7 -16
- package/dist/FulfillOrderLinesOperation.js.map +1 -1
- package/dist/GLAccountResolver.d.ts +1 -1
- package/dist/GLAccountResolver.d.ts.map +1 -1
- package/dist/GLAccountResolver.js +4 -37
- package/dist/GLAccountResolver.js.map +1 -1
- package/dist/GetFulfillmentQueueOperation.d.ts.map +1 -1
- package/dist/GetFulfillmentQueueOperation.js +7 -19
- package/dist/GetFulfillmentQueueOperation.js.map +1 -1
- package/dist/GiftCardEngine.d.ts.map +1 -1
- package/dist/GiftCardEngine.js +6 -20
- package/dist/GiftCardEngine.js.map +1 -1
- package/dist/OrderEntityServer.d.ts +32 -0
- package/dist/OrderEntityServer.d.ts.map +1 -1
- package/dist/OrderEntityServer.js +90 -24
- package/dist/OrderEntityServer.js.map +1 -1
- package/dist/OrderJournalEntryFactory.d.ts +1 -1
- package/dist/OrderJournalEntryFactory.d.ts.map +1 -1
- package/dist/OrderJournalEntryFactory.js +45 -22
- package/dist/OrderJournalEntryFactory.js.map +1 -1
- package/dist/OrderLineEntityServer.d.ts.map +1 -1
- package/dist/OrderLineEntityServer.js +4 -12
- package/dist/OrderLineEntityServer.js.map +1 -1
- package/dist/OrderRollupBehavior.d.ts +76 -0
- package/dist/OrderRollupBehavior.d.ts.map +1 -0
- package/dist/OrderRollupBehavior.js +72 -0
- package/dist/OrderRollupBehavior.js.map +1 -0
- package/dist/PreviewPriceOperation.d.ts.map +1 -1
- package/dist/PreviewPriceOperation.js +4 -10
- package/dist/PreviewPriceOperation.js.map +1 -1
- package/dist/ProductPriceEntityServer.d.ts.map +1 -1
- package/dist/ProductPriceEntityServer.js +28 -22
- package/dist/ProductPriceEntityServer.js.map +1 -1
- package/dist/SubscriptionBehavior.d.ts +17 -0
- package/dist/SubscriptionBehavior.d.ts.map +1 -1
- package/dist/SubscriptionBehavior.js +56 -0
- package/dist/SubscriptionBehavior.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/package.json +3 -4
|
@@ -42,6 +42,8 @@
|
|
|
42
42
|
*/
|
|
43
43
|
import { RunView } from '@memberjunction/core';
|
|
44
44
|
import { MJGlobal } from '@memberjunction/global';
|
|
45
|
+
import { LoadOrdersEngine, OrdersEngine, } from '@mj-biz-apps/orders-entities';
|
|
46
|
+
import { ResolveRevenueRecognitionTypeID } from './SubscriptionBehavior.js';
|
|
45
47
|
import { GL_ROLE, GLAccountResolutionError } from './GLAccountResolver.js';
|
|
46
48
|
import { RevenueRecognitionDriver } from './RevenueRecognition.js';
|
|
47
49
|
import { GIFT_CARD_PRODUCT_TYPE_CODE } from './GiftCardBehavior.js';
|
|
@@ -105,14 +107,17 @@ export class OrderJournalEntryFactory {
|
|
|
105
107
|
return drafts;
|
|
106
108
|
}
|
|
107
109
|
async buildLineDrafts(order, line, products, revRecTypes, dimensions, effectiveDate, asOf, giftCardTypeIDs, term, recognitionMonths) {
|
|
108
|
-
const product = products.get(line.ProductID);
|
|
110
|
+
const product = products.get(line.ProductID.toLowerCase());
|
|
109
111
|
if (!product) {
|
|
110
112
|
throw new Error(`Order line ${line.ID} references product ${line.ProductID}, which was not found.`);
|
|
111
113
|
}
|
|
112
|
-
const
|
|
114
|
+
const typeDefault = OrdersEngine.Instance.ProductTypeByID(product.ProductTypeID)?.DefaultRevenueRecognitionTypeID;
|
|
115
|
+
const revRecID = ResolveRevenueRecognitionTypeID(product.RevenueRecognitionTypeID, typeDefault);
|
|
116
|
+
const revRec = revRecID ? revRecTypes.get(revRecID.toLowerCase()) : undefined;
|
|
113
117
|
if (!revRec) {
|
|
114
|
-
throw new Error(`Product '${product.Name}' has no valid revenue recognition type
|
|
115
|
-
|
|
118
|
+
throw new Error(`Product '${product.Name}' has no valid revenue recognition type` +
|
|
119
|
+
(revRecID ? ` (${revRecID})` : '') +
|
|
120
|
+
` — cannot determine whether its revenue is earned at booking or over time.`);
|
|
116
121
|
}
|
|
117
122
|
// The line's company is the denormalized stamp of the product's company (plan D6).
|
|
118
123
|
const companyID = line.CompanyID ?? product.CompanyID;
|
|
@@ -349,15 +354,22 @@ export class OrderJournalEntryFactory {
|
|
|
349
354
|
return isoDate(order.OrderDate ? new Date(order.OrderDate) : new Date());
|
|
350
355
|
}
|
|
351
356
|
async loadProducts(productIDs) {
|
|
352
|
-
|
|
353
|
-
const
|
|
354
|
-
const
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
357
|
+
await LoadOrdersEngine(this._provider, this._contextUser);
|
|
358
|
+
const out = new Map();
|
|
359
|
+
for (const id of productIDs) {
|
|
360
|
+
const p = OrdersEngine.Instance.ProductByID(id);
|
|
361
|
+
if (!p)
|
|
362
|
+
continue;
|
|
363
|
+
out.set(p.ID.toLowerCase(), {
|
|
364
|
+
ID: p.ID,
|
|
365
|
+
CompanyID: p.CompanyID,
|
|
366
|
+
ProductCategoryID: p.ProductCategoryID ?? null,
|
|
367
|
+
ProductTypeID: p.ProductTypeID,
|
|
368
|
+
RevenueRecognitionTypeID: p.RevenueRecognitionTypeID,
|
|
369
|
+
Name: p.Name,
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
return out;
|
|
361
373
|
}
|
|
362
374
|
/**
|
|
363
375
|
* ProductType IDs whose Code marks them a gift card.
|
|
@@ -366,23 +378,34 @@ export class OrderJournalEntryFactory {
|
|
|
366
378
|
* not seeded metadata with stable keys. One query for the whole draft build, not one per line.
|
|
367
379
|
*/
|
|
368
380
|
async loadGiftCardTypeIDs() {
|
|
369
|
-
|
|
370
|
-
const
|
|
371
|
-
|
|
372
|
-
ExtraFilter: `Code = '${GIFT_CARD_PRODUCT_TYPE_CODE}'`,
|
|
373
|
-
Fields: ['ID'],
|
|
374
|
-
ResultType: 'simple',
|
|
375
|
-
}, this._contextUser);
|
|
376
|
-
return new Set((result?.Results ?? []).map((r) => r.ID));
|
|
381
|
+
await LoadOrdersEngine(this._provider, this._contextUser);
|
|
382
|
+
const type = OrdersEngine.Instance.ProductTypeByCode(GIFT_CARD_PRODUCT_TYPE_CODE);
|
|
383
|
+
return new Set(type ? [type.ID] : []);
|
|
377
384
|
}
|
|
378
385
|
async loadRevRecTypes() {
|
|
386
|
+
await LoadOrdersEngine(this._provider, this._contextUser);
|
|
387
|
+
const cached = OrdersEngine.Instance.RevenueRecognitionTypes;
|
|
388
|
+
if (cached.length > 0) {
|
|
389
|
+
return new Map(cached.map((t) => [
|
|
390
|
+
t.ID.toLowerCase(),
|
|
391
|
+
{
|
|
392
|
+
ID: t.ID,
|
|
393
|
+
Code: t.Code,
|
|
394
|
+
DriverClass: t.DriverClass,
|
|
395
|
+
IsDeferred: !!t.IsDeferred,
|
|
396
|
+
},
|
|
397
|
+
]));
|
|
398
|
+
}
|
|
379
399
|
const rv = new RunView(this._provider);
|
|
380
400
|
const result = await rv.RunView({
|
|
381
401
|
EntityName: 'MJ_BizApps_Orders: Revenue Recognition Types',
|
|
382
402
|
Fields: ['ID', 'Code', 'DriverClass', 'IsDeferred'],
|
|
383
403
|
ResultType: 'simple',
|
|
384
404
|
}, this._contextUser);
|
|
385
|
-
|
|
405
|
+
if (!result?.Success) {
|
|
406
|
+
throw new Error(`Could not load revenue recognition types${result?.ErrorMessage ? `: ${result.ErrorMessage}` : '.'}`);
|
|
407
|
+
}
|
|
408
|
+
return new Map((result.Results ?? []).map((t) => [t.ID.toLowerCase(), t]));
|
|
386
409
|
}
|
|
387
410
|
/** Plan D31 — the line's dimension tags ride onto every JE line it produces. */
|
|
388
411
|
async loadLineDimensions(lineIDs) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrderJournalEntryFactory.js","sourceRoot":"","sources":["../src/OrderJournalEntryFactory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrderJournalEntryFactory.js","sourceRoot":"","sources":["../src/OrderJournalEntryFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrderLineEntityServer.d.ts","sourceRoot":"","sources":["../src/OrderLineEntityServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EAEH,iBAAiB,EAMjB,gBAAgB,EACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,
|
|
1
|
+
{"version":3,"file":"OrderLineEntityServer.d.ts","sourceRoot":"","sources":["../src/OrderLineEntityServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EAEH,iBAAiB,EAMjB,gBAAgB,EACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAA2D,eAAe,EAAgB,MAAM,8BAA8B,CAAC;AAUtI,qBACa,qBAAsB,SAAQ,eAAe;IACtD;;;;;;;;;;;;OAYG;IACI,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEpD;;;;;;OAMG;IACH,IAAoB,0BAA0B,IAAI,OAAO,CAExD;IAEqB,aAAa,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAuBhE,yFAAyF;IAClF,iBAAiB,UAAS;IAEjC;;;;OAIG;YACW,0BAA0B;IA2BxC;;;;;;;;;;;;;OAaG;IACU,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtB,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;YAW3D,gBAAgB;IAwC9B,OAAO,CAAC,2BAA2B;IAKnC,kDAAkD;YACpC,uBAAuB;IAOrC,OAAO,CAAC,aAAa;CAkExB;AAED,0FAA0F;AAC1F,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
|
|
@@ -37,11 +37,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
37
37
|
*/
|
|
38
38
|
import { BaseEntity, RunView, ValidationErrorInfo, ValidationErrorType, } from '@memberjunction/core';
|
|
39
39
|
import { RegisterClass } from '@memberjunction/global';
|
|
40
|
-
import { IsBooked, LineGross, NetAfterDiscount, OrderLineEntity } from '@mj-biz-apps/orders-entities';
|
|
40
|
+
import { IsBooked, LineGross, LoadOrdersEngine, NetAfterDiscount, OrderLineEntity, OrdersEngine } from '@mj-biz-apps/orders-entities';
|
|
41
41
|
import { ORDER_HEADER_ENTITY } from './entity-names.js';
|
|
42
42
|
import { RequireUUID } from './sql-guards.js';
|
|
43
43
|
const ORDER_LINE_ENTITY = 'MJ_BizApps_Orders: Order Lines';
|
|
44
|
-
const PRODUCT_ENTITY = 'MJ_BizApps_Orders: Products';
|
|
45
44
|
function money(value) {
|
|
46
45
|
return Math.round((value + Number.EPSILON) * 100) / 100;
|
|
47
46
|
}
|
|
@@ -175,17 +174,10 @@ let OrderLineEntityServer = class OrderLineEntityServer extends OrderLineEntity
|
|
|
175
174
|
async stampCompanyFromProduct() {
|
|
176
175
|
if (!this.ProductID)
|
|
177
176
|
return;
|
|
178
|
-
|
|
179
|
-
const
|
|
180
|
-
|
|
181
|
-
ExtraFilter: `ID='${this.ProductID}'`,
|
|
182
|
-
Fields: ['ID', 'CompanyID'],
|
|
183
|
-
ResultType: 'simple',
|
|
184
|
-
}, this.ContextCurrentUser);
|
|
185
|
-
const product = result?.Results?.[0];
|
|
186
|
-
if (product?.CompanyID) {
|
|
177
|
+
await LoadOrdersEngine(this.ProviderToUse, this.ContextCurrentUser);
|
|
178
|
+
const product = OrdersEngine.Instance.ProductByID(this.ProductID);
|
|
179
|
+
if (product?.CompanyID)
|
|
187
180
|
this.CompanyID = product.CompanyID;
|
|
188
|
-
}
|
|
189
181
|
}
|
|
190
182
|
computeTotals() {
|
|
191
183
|
// ROUND THE DISCOUNT TO ITS COLUMN'S SCALE FIRST, and store the rounded value.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrderLineEntityServer.js","sourceRoot":"","sources":["../src/OrderLineEntityServer.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EACH,UAAU,EAIV,OAAO,EACP,mBAAmB,EACnB,mBAAmB,GAEtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"OrderLineEntityServer.js","sourceRoot":"","sources":["../src/OrderLineEntityServer.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EACH,UAAU,EAIV,OAAO,EACP,mBAAmB,EACnB,mBAAmB,GAEtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACtI,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,iBAAiB,GAAG,gCAAgC,CAAC;AAE3D,SAAS,KAAK,CAAC,KAAa;IACxB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;AAC5D,CAAC;AAGM,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,eAAe;IAAnD;;QACH;;;;;;;;;;;;WAYG;QACI,2BAAsB,GAAkB,IAAI,CAAC;QAoCpD,yFAAyF;QAClF,sBAAiB,GAAG,KAAK,CAAC;IAuLrC,CAAC;IA1NG;;;;;;OAMG;IACH,IAAoB,0BAA0B;QAC1C,OAAO,KAAK,CAAC;IACjB,CAAC;IAEe,KAAK,CAAC,aAAa;QAC/B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,aAAa,EAAE,CAAC;QAE3C,qFAAqF;QACrF,uEAAuE;QACvE,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACjD,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,UAAU,EACV,uFAAuF;gBACnF,kDAAkD,EACtD,IAAI,CAAC,QAAQ,EACb,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;QACN,CAAC;QAED,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;QAE9C,OAAO,MAAM,CAAC;IAClB,CAAC;IAKD;;;;OAIG;IACK,KAAK,CAAC,0BAA0B,CAAC,MAAwB;QAC7D,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,iBAAiB;YAAE,OAAO;QAE1E,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,aAA4C,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B;YACI,UAAU,EAAE,mBAAmB;YAC/B,WAAW,EAAE,OAAO,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,GAAG;YACvE,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC;YACxB,UAAU,EAAE,QAAQ;SACvB,EACD,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;QAC5C,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO;QAEzC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,eAAe,EACf,4GAA4G,EAC5G,IAAI,CAAC,aAAa,EAClB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;IACN,CAAC;IAED;;;;;;;;;;;;;OAaG;IACI,KAAK,CAAC,cAAc;QACvB,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACrC,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;IAEe,KAAK,CAAC,IAAI,CAAC,OAA2B;QAClD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,OAA2B;QACtD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,OAAO;QACX,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;QAChD,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,OAAO;QACX,CAAC;QAED,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC;QAED,8EAA8E;QAC9E,2FAA2F;QAC3F,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC;QAC7B,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC;QACnD,CAAC;QAED,uEAAuE;QACvE,wEAAwE;QACxE,sEAAsE;QACtE,4EAA4E;QAC5E,IAAI,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,EAAE,CAAC;YAClE,OAAO;QACX,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CACX,kCAAkC,IAAI,CAAC,SAAS,CAAC,UAAU,oBAAoB,IAAI,CAAC,UAAU,IAAI;oBAC9F,CAAC,GAAG,CAAC,YAAY,EAAE,eAAe,IAAI,eAAe,CAAC,CAC7D,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;IAEO,2BAA2B,CAAC,GAAe;QAC/C,MAAM,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,sBAAsB,CAAC;QAC1D,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,kDAAkD;IAC1C,KAAK,CAAC,uBAAuB;QACjC,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC5B,MAAM,gBAAgB,CAAC,IAAI,CAAC,aAAsB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC7E,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClE,IAAI,OAAO,EAAE,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAC/D,CAAC;IAEO,aAAa;QACjB,+EAA+E;QAC/E,EAAE;QACF,8FAA8F;QAC9F,0FAA0F;QAC1F,4DAA4D;QAC5D,EAAE;QACF,oFAAoF;QACpF,4FAA4F;QAC5F,4FAA4F;QAC5F,2FAA2F;QAC3F,uFAAuF;QACvF,wCAAwC;QACxC,EAAE;QACF,2FAA2F;QAC3F,4FAA4F;QAC5F,kDAAkD;QAClD,4DAA4D;QAC5D,EAAE;QACF,6EAA6E;QAC7E,6EAA6E;QAC7E,6EAA6E;QAC7E,6EAA6E;QAC7E,8EAA8E;QAC9E,8CAA8C;QAC9C,EAAE;QACF,4EAA4E;QAC5E,6EAA6E;QAC7E,0EAA0E;QAC1E,4EAA4E;QAC5E,2EAA2E;QAC3E,yEAAyE;QACzE,yCAAyC;QACzC,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO;QAEhC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC5D,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;YAAE,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QAE5D,6CAA6C;QAC7C,EAAE;QACF,4FAA4F;QAC5F,uFAAuF;QACvF,6FAA6F;QAC7F,0FAA0F;QAC1F,0FAA0F;QAC1F,kFAAkF;QAClF,EAAE;QACF,yFAAyF;QACzF,kDAAkD;QAClD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;YACxB,OAAO;QACX,CAAC;QAED,4FAA4F;QAC5F,wFAAwF;QACxF,sCAAsC;QACtC,MAAM,GAAG,GAAG,gBAAgB,CACxB,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,sBAAsB,CAAC,EACrE,GAAG,EACH,IAAI,CAAC,cAAc,IAAI,CAAC,CAC3B,CAAC;QACF,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC;IACtF,CAAC;CACJ,CAAA;AA1OY,qBAAqB;IADjC,aAAa,CAAC,UAAU,EAAE,iBAAiB,CAAC;GAChC,qBAAqB,CA0OjC;;AAED,0FAA0F;AAC1F,MAAM,UAAU,yBAAyB;IACrC,sBAAsB;AAC1B,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which OrderHeader columns the database owns, and who wins when memory disagrees with the row.
|
|
3
|
+
*
|
|
4
|
+
* WHAT A ROLLUP IS HERE. `TotalGross`, `AmountPaid`, `Balance` and `FulfillmentStatus` are
|
|
5
|
+
* maintained by `__mj_BizAppsOrders.spRecalcOrderHeaderTotals`, which the OrderLine and PaymentLine
|
|
6
|
+
* triggers fire. No caller authors them. They are cross-table aggregates a computed column cannot
|
|
7
|
+
* express (D41), which is why they are stored rather than derived per reader — and why a process
|
|
8
|
+
* that writes lines has to go back and ask what the aggregate became.
|
|
9
|
+
*
|
|
10
|
+
* THE DIRECTION MATTERS, AND GETTING IT BACKWARDS IS THE BUG. An order header is written BEFORE its
|
|
11
|
+
* lines exist, so at that moment `Balance` is legitimately NULL and the in-memory value is not a
|
|
12
|
+
* stale copy of something better — it is the absence of an answer. Once the lines land, the ROW is
|
|
13
|
+
* the only thing that knows. Preferring the entity's own value there is how a freshly-confirmed $895
|
|
14
|
+
* order reported a NULL balance, displayed it as a dash, and then erased the stored total on the
|
|
15
|
+
* next save (bc-aidp-next-golive#186).
|
|
16
|
+
*
|
|
17
|
+
* So the row wins, unconditionally, whenever it has anything to say. Memory is a fallback for one
|
|
18
|
+
* case only: the read came back empty because there is no row yet.
|
|
19
|
+
*
|
|
20
|
+
* CONNECTS TO:
|
|
21
|
+
* CODE: OrderEntityServer.refreshRolledUpTotals · spRecalcOrderHeaderTotals
|
|
22
|
+
* SQL: migrations/V202609021530__v0.1.x__Repair_OrderHeader_Rollups.sql
|
|
23
|
+
*/
|
|
24
|
+
/**
|
|
25
|
+
* The rollup columns, in the order they appear on the table.
|
|
26
|
+
*
|
|
27
|
+
* Read as a set by the entity server — to reset the fields before writing them, and as the `Fields`
|
|
28
|
+
* list of the read that fetches them — so adding a trigger-maintained column here is the whole
|
|
29
|
+
* change on the TypeScript side.
|
|
30
|
+
*/
|
|
31
|
+
export declare const ORDER_ROLLUP_FIELDS: readonly ["TotalGross", "AmountPaid", "Balance", "FulfillmentStatus"];
|
|
32
|
+
/** One of the rollup column names. */
|
|
33
|
+
export type OrderRollupField = (typeof ORDER_ROLLUP_FIELDS)[number];
|
|
34
|
+
/**
|
|
35
|
+
* The rollup columns as some source holds them. Every one is optional and nullable because both
|
|
36
|
+
* sources are partial: a row read can come back empty, and an unsaved entity has no totals at all.
|
|
37
|
+
*/
|
|
38
|
+
export type OrderRollups = {
|
|
39
|
+
TotalGross?: number | null;
|
|
40
|
+
AmountPaid?: number | null;
|
|
41
|
+
Balance?: number | null;
|
|
42
|
+
FulfillmentStatus?: string | null;
|
|
43
|
+
};
|
|
44
|
+
/** Resolved rollups — every column present, `null` meaning "not computed yet". */
|
|
45
|
+
export type ResolvedOrderRollups = {
|
|
46
|
+
TotalGross: number | null;
|
|
47
|
+
AmountPaid: number | null;
|
|
48
|
+
Balance: number | null;
|
|
49
|
+
FulfillmentStatus: string | null;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Settle each rollup column between the database row and what the entity currently holds.
|
|
53
|
+
*
|
|
54
|
+
* `row` is authoritative for any column it reports, INCLUDING a null one — a row that says the
|
|
55
|
+
* balance is null is telling us the trigger has not run yet, which is a different and more current
|
|
56
|
+
* fact than an entity's leftover guess. `current` is consulted only for columns the row did not
|
|
57
|
+
* report at all, which happens when the read found no row.
|
|
58
|
+
*
|
|
59
|
+
* @param row - What the database returned, or null/undefined when the read found nothing.
|
|
60
|
+
* @param current - The entity's present values, used only to fill columns the row omitted.
|
|
61
|
+
* @returns Every rollup column, resolved.
|
|
62
|
+
*
|
|
63
|
+
* @example
|
|
64
|
+
* ```typescript
|
|
65
|
+
* // The row has computed the total; the entity's pre-line NULL loses.
|
|
66
|
+
* MergeOrderRollups({ TotalGross: 895, AmountPaid: 0, Balance: 895, FulfillmentStatus: 'Pending' },
|
|
67
|
+
* { TotalGross: null, Balance: null })
|
|
68
|
+
* // → { TotalGross: 895, AmountPaid: 0, Balance: 895, FulfillmentStatus: 'Pending' }
|
|
69
|
+
*
|
|
70
|
+
* // No row came back — keep what we have rather than inventing nulls.
|
|
71
|
+
* MergeOrderRollups(null, { TotalGross: 240, AmountPaid: 0, Balance: 240 })
|
|
72
|
+
* // → { TotalGross: 240, AmountPaid: 0, Balance: 240, FulfillmentStatus: null }
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export declare function MergeOrderRollups(row: OrderRollups | null | undefined, current: OrderRollups): ResolvedOrderRollups;
|
|
76
|
+
//# sourceMappingURL=OrderRollupBehavior.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrderRollupBehavior.d.ts","sourceRoot":"","sources":["../src/OrderRollupBehavior.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,uEAAwE,CAAC;AAEzG,sCAAsC;AACtC,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF,kFAAkF;AAClF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAC7B,GAAG,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EACpC,OAAO,EAAE,YAAY,GACtB,oBAAoB,CAgBtB"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which OrderHeader columns the database owns, and who wins when memory disagrees with the row.
|
|
3
|
+
*
|
|
4
|
+
* WHAT A ROLLUP IS HERE. `TotalGross`, `AmountPaid`, `Balance` and `FulfillmentStatus` are
|
|
5
|
+
* maintained by `__mj_BizAppsOrders.spRecalcOrderHeaderTotals`, which the OrderLine and PaymentLine
|
|
6
|
+
* triggers fire. No caller authors them. They are cross-table aggregates a computed column cannot
|
|
7
|
+
* express (D41), which is why they are stored rather than derived per reader — and why a process
|
|
8
|
+
* that writes lines has to go back and ask what the aggregate became.
|
|
9
|
+
*
|
|
10
|
+
* THE DIRECTION MATTERS, AND GETTING IT BACKWARDS IS THE BUG. An order header is written BEFORE its
|
|
11
|
+
* lines exist, so at that moment `Balance` is legitimately NULL and the in-memory value is not a
|
|
12
|
+
* stale copy of something better — it is the absence of an answer. Once the lines land, the ROW is
|
|
13
|
+
* the only thing that knows. Preferring the entity's own value there is how a freshly-confirmed $895
|
|
14
|
+
* order reported a NULL balance, displayed it as a dash, and then erased the stored total on the
|
|
15
|
+
* next save (bc-aidp-next-golive#186).
|
|
16
|
+
*
|
|
17
|
+
* So the row wins, unconditionally, whenever it has anything to say. Memory is a fallback for one
|
|
18
|
+
* case only: the read came back empty because there is no row yet.
|
|
19
|
+
*
|
|
20
|
+
* CONNECTS TO:
|
|
21
|
+
* CODE: OrderEntityServer.refreshRolledUpTotals · spRecalcOrderHeaderTotals
|
|
22
|
+
* SQL: migrations/V202609021530__v0.1.x__Repair_OrderHeader_Rollups.sql
|
|
23
|
+
*/
|
|
24
|
+
/**
|
|
25
|
+
* The rollup columns, in the order they appear on the table.
|
|
26
|
+
*
|
|
27
|
+
* Read as a set by the entity server — to reset the fields before writing them, and as the `Fields`
|
|
28
|
+
* list of the read that fetches them — so adding a trigger-maintained column here is the whole
|
|
29
|
+
* change on the TypeScript side.
|
|
30
|
+
*/
|
|
31
|
+
export const ORDER_ROLLUP_FIELDS = ['TotalGross', 'AmountPaid', 'Balance', 'FulfillmentStatus'];
|
|
32
|
+
/**
|
|
33
|
+
* Settle each rollup column between the database row and what the entity currently holds.
|
|
34
|
+
*
|
|
35
|
+
* `row` is authoritative for any column it reports, INCLUDING a null one — a row that says the
|
|
36
|
+
* balance is null is telling us the trigger has not run yet, which is a different and more current
|
|
37
|
+
* fact than an entity's leftover guess. `current` is consulted only for columns the row did not
|
|
38
|
+
* report at all, which happens when the read found no row.
|
|
39
|
+
*
|
|
40
|
+
* @param row - What the database returned, or null/undefined when the read found nothing.
|
|
41
|
+
* @param current - The entity's present values, used only to fill columns the row omitted.
|
|
42
|
+
* @returns Every rollup column, resolved.
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* // The row has computed the total; the entity's pre-line NULL loses.
|
|
47
|
+
* MergeOrderRollups({ TotalGross: 895, AmountPaid: 0, Balance: 895, FulfillmentStatus: 'Pending' },
|
|
48
|
+
* { TotalGross: null, Balance: null })
|
|
49
|
+
* // → { TotalGross: 895, AmountPaid: 0, Balance: 895, FulfillmentStatus: 'Pending' }
|
|
50
|
+
*
|
|
51
|
+
* // No row came back — keep what we have rather than inventing nulls.
|
|
52
|
+
* MergeOrderRollups(null, { TotalGross: 240, AmountPaid: 0, Balance: 240 })
|
|
53
|
+
* // → { TotalGross: 240, AmountPaid: 0, Balance: 240, FulfillmentStatus: null }
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
export function MergeOrderRollups(row, current) {
|
|
57
|
+
const resolve = (field) => {
|
|
58
|
+
const fromRow = row?.[field];
|
|
59
|
+
// `in` rather than a null check: the row reporting null is an answer, not a gap.
|
|
60
|
+
if (row && field in row && fromRow !== undefined) {
|
|
61
|
+
return fromRow;
|
|
62
|
+
}
|
|
63
|
+
return (current[field] ?? null);
|
|
64
|
+
};
|
|
65
|
+
return {
|
|
66
|
+
TotalGross: resolve('TotalGross'),
|
|
67
|
+
AmountPaid: resolve('AmountPaid'),
|
|
68
|
+
Balance: resolve('Balance'),
|
|
69
|
+
FulfillmentStatus: resolve('FulfillmentStatus'),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=OrderRollupBehavior.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrderRollupBehavior.js","sourceRoot":"","sources":["../src/OrderRollupBehavior.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,mBAAmB,CAAU,CAAC;AAwBzG;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,iBAAiB,CAC7B,GAAoC,EACpC,OAAqB;IAErB,MAAM,OAAO,GAAG,CAA6B,KAAQ,EAA2B,EAAE;QAC9E,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QAC7B,iFAAiF;QACjF,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/C,OAAO,OAAkC,CAAC;QAC9C,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAA4B,CAAC;IAC/D,CAAC,CAAC;IAEF,OAAO;QACH,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC;QACjC,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC;QACjC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC;QAC3B,iBAAiB,EAAE,OAAO,CAAC,mBAAmB,CAAC;KAClD,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreviewPriceOperation.d.ts","sourceRoot":"","sources":["../src/PreviewPriceOperation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EACH,sBAAsB,EACtB,iBAAiB,EAKjB,QAAQ,EACX,MAAM,sBAAsB,CAAC;AAQ9B,MAAM,WAAW,iBAAiB;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,qFAAqF;IACrF,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,6FAA6F;IAC7F,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,mCAAmC;AACnC,MAAM,WAAW,gBAAgB;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACnC;AAED,qBACa,qBAAsB,SAAQ,sBAAsB,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;IAC7F,YAAY,SAAyB;cAE5B,eAAe,CAC3B,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,EAAE,QAAQ,GACf,OAAO,CAAC,kBAAkB,CAAC;YA2GhB,WAAW;
|
|
1
|
+
{"version":3,"file":"PreviewPriceOperation.d.ts","sourceRoot":"","sources":["../src/PreviewPriceOperation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EACH,sBAAsB,EACtB,iBAAiB,EAKjB,QAAQ,EACX,MAAM,sBAAsB,CAAC;AAQ9B,MAAM,WAAW,iBAAiB;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,qFAAqF;IACrF,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,6FAA6F;IAC7F,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,mCAAmC;AACnC,MAAM,WAAW,gBAAgB;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACnC;AAED,qBACa,qBAAsB,SAAQ,sBAAsB,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;IAC7F,YAAY,SAAyB;cAE5B,eAAe,CAC3B,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,EAAE,QAAQ,GACf,OAAO,CAAC,kBAAkB,CAAC;YA2GhB,WAAW;YAUX,iBAAiB;CAclC;AAED,8FAA8F;AAC9F,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
|
|
@@ -23,7 +23,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
23
23
|
*/
|
|
24
24
|
import { BaseRemotableOperation, LogError, Metadata, RunView, } from '@memberjunction/core';
|
|
25
25
|
import { RegisterClass } from '@memberjunction/global';
|
|
26
|
-
import { OrderPricingService, PriceResolutionError, ResolvePriceListForCustomer } from '@mj-biz-apps/orders-entities';
|
|
26
|
+
import { LoadOrdersEngine, OrderPricingService, OrdersEngine, PriceResolutionError, ResolvePriceListForCustomer } from '@mj-biz-apps/orders-entities';
|
|
27
27
|
import { RequireOptionalUUID, RequireUUID } from './sql-guards.js';
|
|
28
28
|
const ORDER_LINE_ENTITY = 'MJ_BizApps_Orders: Order Lines';
|
|
29
29
|
let PreviewPriceOperation = class PreviewPriceOperation extends BaseRemotableOperation {
|
|
@@ -128,15 +128,9 @@ let PreviewPriceOperation = class PreviewPriceOperation extends BaseRemotableOpe
|
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
async loadProduct(provider, user, id) {
|
|
131
|
-
|
|
132
|
-
const
|
|
133
|
-
|
|
134
|
-
ExtraFilter: `ID = '${id}'`,
|
|
135
|
-
Fields: ['Name', 'ProductCategoryID', 'CompanyID'],
|
|
136
|
-
ResultType: 'simple',
|
|
137
|
-
BypassCache: true,
|
|
138
|
-
}, user);
|
|
139
|
-
return res?.Results?.[0] ?? null;
|
|
131
|
+
await LoadOrdersEngine(provider, user);
|
|
132
|
+
const p = OrdersEngine.Instance.ProductByID(id);
|
|
133
|
+
return p ? { Name: p.Name, ProductCategoryID: p.ProductCategoryID ?? null, CompanyID: p.CompanyID } : null;
|
|
140
134
|
}
|
|
141
135
|
async loadPriceListName(provider, user, id) {
|
|
142
136
|
const rv = new RunView(provider);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreviewPriceOperation.js","sourceRoot":"","sources":["../src/PreviewPriceOperation.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EACH,sBAAsB,EAGtB,QAAQ,EACR,QAAQ,EACR,OAAO,GAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"PreviewPriceOperation.js","sourceRoot":"","sources":["../src/PreviewPriceOperation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductPriceEntityServer.d.ts","sourceRoot":"","sources":["../src/ProductPriceEntityServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,
|
|
1
|
+
{"version":3,"file":"ProductPriceEntityServer.d.ts","sourceRoot":"","sources":["../src/ProductPriceEntityServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,EAAmC,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEzF,OAAO,EAAkC,iCAAiC,EAAE,MAAM,8BAA8B,CAAC;AAqCjH,qBACa,wBAAyB,SAAQ,iCAAiC;IAC3E,oFAAoF;IACpF,IAAoB,0BAA0B,IAAI,OAAO,CAExD;IAEqB,aAAa,IAAI,OAAO,CAAC,gBAAgB,CAAC;CA6CnE"}
|
|
@@ -30,9 +30,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
30
30
|
* PURE: ./PricingBehavior.ts (PickPriceRule — the reader this protects)
|
|
31
31
|
* DOC: plans/archive/pricing-schema.md
|
|
32
32
|
*/
|
|
33
|
-
import { BaseEntity,
|
|
33
|
+
import { BaseEntity, ValidationErrorInfo } from '@memberjunction/core';
|
|
34
34
|
import { RegisterClass } from '@memberjunction/global';
|
|
35
|
-
import { mjBizAppsOrdersProductPriceEntity } from '@mj-biz-apps/orders-entities';
|
|
35
|
+
import { LoadOrdersEngine, OrdersEngine, mjBizAppsOrdersProductPriceEntity } from '@mj-biz-apps/orders-entities';
|
|
36
36
|
const PRODUCT_PRICE_ENTITY = 'MJ_BizApps_Orders: Product Prices';
|
|
37
37
|
/** Do two [min,max] bands overlap? Null bounds are open. */
|
|
38
38
|
function bandsOverlap(aMin, aMax, bMin, bMax) {
|
|
@@ -59,30 +59,36 @@ let ProductPriceEntityServer = class ProductPriceEntityServer extends mjBizAppsO
|
|
|
59
59
|
const result = await super.ValidateAsync();
|
|
60
60
|
if (this.Status !== 'Active')
|
|
61
61
|
return result; // an inactive rule collides with nothing
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
const
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
62
|
+
const productCategoryID = this.Get('ProductCategoryID');
|
|
63
|
+
if (!this.ProductID && !productCategoryID)
|
|
64
|
+
return result;
|
|
65
|
+
await LoadOrdersEngine(this.ProviderToUse, this.ContextCurrentUser);
|
|
66
|
+
const listKey = (this.PriceListID ?? '').toLowerCase();
|
|
67
|
+
const fee = String(this.FeeType);
|
|
68
|
+
const priority = Number(this.Priority);
|
|
69
|
+
const catKey = (productCategoryID ?? '').toLowerCase();
|
|
70
|
+
const productKey = (this.ProductID ?? '').toLowerCase();
|
|
71
|
+
const siblings = OrdersEngine.Instance.ProductPrices.filter((o) => {
|
|
72
|
+
if (this.IsSaved && o.ID === this.ID)
|
|
73
|
+
return false;
|
|
74
|
+
if (o.Status !== 'Active')
|
|
75
|
+
return false;
|
|
76
|
+
if (String(o.FeeType) !== fee)
|
|
77
|
+
return false;
|
|
78
|
+
if (Number(o.Priority) !== priority)
|
|
79
|
+
return false;
|
|
80
|
+
if ((o.PriceListID ?? '').toLowerCase() !== listKey)
|
|
81
|
+
return false;
|
|
82
|
+
if (this.ProductID)
|
|
83
|
+
return (o.ProductID ?? '').toLowerCase() === productKey;
|
|
84
|
+
return (o.ProductCategoryID ?? '').toLowerCase() === catKey;
|
|
85
|
+
});
|
|
86
|
+
const clash = siblings.find((o) => bandsOverlap(this.MinQuantity, this.MaxQuantity, o.MinQuantity, o.MaxQuantity) &&
|
|
81
87
|
windowsOverlap(this.EffectiveFrom, this.EffectiveTo, o.EffectiveFrom, o.EffectiveTo));
|
|
82
88
|
if (clash) {
|
|
83
89
|
result.Success = false;
|
|
84
90
|
result.Errors.push(new ValidationErrorInfo('ProductPriceEntityServer.ValidateAsync', `This price rule collides with an existing one: both have priority ${this.Priority}, overlapping ` +
|
|
85
|
-
`quantity bands and overlapping effective windows for the same product, price list and fee ` +
|
|
91
|
+
`quantity bands and overlapping effective windows for the same product or category, price list and fee ` +
|
|
86
92
|
`type. The other is ${clash.Description?.trim() || clash.ID}. Pricing resolves by highest ` +
|
|
87
93
|
`priority and refuses to break a tie, so an order using either quantity would fail. Give one ` +
|
|
88
94
|
`of them a different priority, narrow a quantity band, or separate the date windows.`, null));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductPriceEntityServer.js","sourceRoot":"","sources":["../src/ProductPriceEntityServer.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"ProductPriceEntityServer.js","sourceRoot":"","sources":["../src/ProductPriceEntityServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -192,6 +192,23 @@ export declare class SubscriptionBehavior {
|
|
|
192
192
|
explanation: string;
|
|
193
193
|
};
|
|
194
194
|
}
|
|
195
|
+
/** Map a subscription-type entity (or a cache row) onto the rules bag `Decide` reads. */
|
|
196
|
+
export declare function SubscriptionTypeRulesFrom(row: SubscriptionTypeRules): SubscriptionTypeRules;
|
|
197
|
+
/**
|
|
198
|
+
* Which subscription type a product actually uses at confirm.
|
|
199
|
+
*
|
|
200
|
+
* `Product.SubscriptionTypeID` wins when set. Otherwise the product type's
|
|
201
|
+
* `DefaultSubscriptionTypeID` (Membership → Annual Rolling, etc.). Null means
|
|
202
|
+
* the line is not a subscription — no term, no service period from this path.
|
|
203
|
+
*/
|
|
204
|
+
export declare function ResolveSubscriptionTypeID(productSubscriptionTypeID: string | null | undefined, typeDefaultSubscriptionTypeID: string | null | undefined): string | null;
|
|
205
|
+
/**
|
|
206
|
+
* Which revenue-recognition type a product actually uses at booking.
|
|
207
|
+
*
|
|
208
|
+
* `Product.RevenueRecognitionTypeID` wins when set. Otherwise the product type's
|
|
209
|
+
* `DefaultRevenueRecognitionTypeID`. Null means confirm cannot tell upfront vs over time.
|
|
210
|
+
*/
|
|
211
|
+
export declare function ResolveRevenueRecognitionTypeID(productRevenueRecognitionTypeID: string | null | undefined, typeDefaultRevenueRecognitionTypeID: string | null | undefined): string | null;
|
|
195
212
|
/** Tree-shaking anchor — the base behaviour must be registered before booking runs. */
|
|
196
213
|
export declare function LoadSubscriptionBehavior(): void;
|
|
197
214
|
//# sourceMappingURL=SubscriptionBehavior.d.ts.map
|