types-salon-management 1.0.64 → 1.0.66

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.
Files changed (55) hide show
  1. package/dist/api/checkout-orders/checkout-order.dto.d.ts +5 -0
  2. package/dist/api/checkout-orders/checkout-order.dto.d.ts.map +1 -1
  3. package/dist/api/checkout-orders/checkout-order.requests.d.ts +8 -1
  4. package/dist/api/checkout-orders/checkout-order.requests.d.ts.map +1 -1
  5. package/dist/api/inventory/index.d.ts +4 -0
  6. package/dist/api/inventory/index.d.ts.map +1 -1
  7. package/dist/api/inventory/index.js +4 -0
  8. package/dist/api/inventory/index.js.map +1 -1
  9. package/dist/api/inventory/product.dto.d.ts +2 -2
  10. package/dist/api/inventory/product.dto.d.ts.map +1 -1
  11. package/dist/api/inventory/product.picker.d.ts +26 -0
  12. package/dist/api/inventory/product.picker.d.ts.map +1 -0
  13. package/dist/api/inventory/product.picker.js +3 -0
  14. package/dist/api/inventory/product.picker.js.map +1 -0
  15. package/dist/api/inventory/product.requests.d.ts +2 -2
  16. package/dist/api/inventory/product.requests.d.ts.map +1 -1
  17. package/dist/api/inventory/purchase-order.constants.d.ts +33 -0
  18. package/dist/api/inventory/purchase-order.constants.d.ts.map +1 -0
  19. package/dist/api/inventory/purchase-order.constants.js +29 -0
  20. package/dist/api/inventory/purchase-order.constants.js.map +1 -0
  21. package/dist/api/inventory/purchase-order.dto.d.ts +72 -0
  22. package/dist/api/inventory/purchase-order.dto.d.ts.map +1 -0
  23. package/dist/api/inventory/purchase-order.dto.js +3 -0
  24. package/dist/api/inventory/purchase-order.dto.js.map +1 -0
  25. package/dist/api/inventory/purchase-order.requests.d.ts +66 -0
  26. package/dist/api/inventory/purchase-order.requests.d.ts.map +1 -0
  27. package/dist/api/inventory/purchase-order.requests.js +3 -0
  28. package/dist/api/inventory/purchase-order.requests.js.map +1 -0
  29. package/dist/api/invoices/invoice.dto.d.ts +10 -1
  30. package/dist/api/invoices/invoice.dto.d.ts.map +1 -1
  31. package/dist/api/invoices/invoice.requests.d.ts +22 -1
  32. package/dist/api/invoices/invoice.requests.d.ts.map +1 -1
  33. package/dist/enum/movement-category.d.ts +1 -0
  34. package/dist/enum/movement-category.d.ts.map +1 -1
  35. package/dist/enum/movement-category.js +1 -0
  36. package/dist/enum/movement-category.js.map +1 -1
  37. package/dist/models/stock-level.model.d.ts +2 -2
  38. package/dist/models/stock-level.model.d.ts.map +1 -1
  39. package/dist/models/warehouse-stock-level.model.d.ts +2 -2
  40. package/dist/models/warehouse-stock-level.model.d.ts.map +1 -1
  41. package/package.json +1 -1
  42. package/src/api/checkout-orders/checkout-order.dto.ts +5 -0
  43. package/src/api/checkout-orders/checkout-order.requests.ts +8 -1
  44. package/src/api/inventory/index.ts +4 -0
  45. package/src/api/inventory/product.dto.ts +2 -2
  46. package/src/api/inventory/product.picker.ts +28 -0
  47. package/src/api/inventory/product.requests.ts +2 -2
  48. package/src/api/inventory/purchase-order.constants.ts +44 -0
  49. package/src/api/inventory/purchase-order.dto.ts +82 -0
  50. package/src/api/inventory/purchase-order.requests.ts +85 -0
  51. package/src/api/invoices/invoice.dto.ts +11 -1
  52. package/src/api/invoices/invoice.requests.ts +23 -0
  53. package/src/enum/movement-category.ts +1 -0
  54. package/src/models/stock-level.model.ts +2 -2
  55. package/src/models/warehouse-stock-level.model.ts +2 -2
@@ -32,12 +32,17 @@ export interface CheckoutOrderPreviewLineDto {
32
32
  durationMinutes: number | null;
33
33
  appointmentId: string | null;
34
34
  appointmentItemId: string | null;
35
+ /** Product line refs */
36
+ productId: string | null;
35
37
  /** Gift card line refs */
36
38
  giftCardProductId: string | null;
37
39
  faceValue: string | null;
38
40
  salePrice: string | null;
39
41
  isGift: boolean | null;
40
42
  customCode: string | null;
43
+ validityValue: number | null;
44
+ validityUnit: string | null;
45
+ validityLabel: string | null;
41
46
  /** True when line discount is blocked (combo-group lines) */
42
47
  lineDiscountDisabled: boolean;
43
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"checkout-order.dto.d.ts","sourceRoot":"","sources":["../../../src/api/checkout-orders/checkout-order.dto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EACV,yBAAyB,EACzB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,yBAAyB,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,YAAY,GAAG,IAAI,CAAC;IACtC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,8CAA8C;IAC9C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gCAAgC;IAChC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,0BAA0B;IAC1B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,6DAA6D;IAC7D,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,2BAA2B,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,sBAAuB,SAAQ,uBAAuB;IACrE,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,gBAAgB,EAAE,YAAY,GAAG,IAAI,CAAC;IACtC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,OAAO,EAAE,uBAAuB,CAAC;CAClC"}
1
+ {"version":3,"file":"checkout-order.dto.d.ts","sourceRoot":"","sources":["../../../src/api/checkout-orders/checkout-order.dto.ts"],"names":[],"mappings":"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"}
@@ -43,12 +43,19 @@ export interface AddAppointmentRowLineRequest {
43
43
  }
44
44
  export interface AddGiftCardLineRequest {
45
45
  kind: typeof AddCheckoutLineKind.GIFT_CARD;
46
- giftCardProductId: string;
46
+ /** Omit or null for custom (ad-hoc) gift cards sold at POS. */
47
+ giftCardProductId?: string | null;
48
+ /** Required when giftCardProductId is omitted — custom gift card display name. */
49
+ itemName?: string;
47
50
  faceValue: string;
48
51
  salePrice: string;
49
52
  isGift: boolean;
50
53
  customCode?: string | null;
51
54
  staffId: string;
55
+ /** Custom gift card expiry — ignored for catalog template lines. */
56
+ validityValue?: number | null;
57
+ validityUnit?: string | null;
58
+ validityLabel?: string | null;
52
59
  }
53
60
  export interface AddCatalogProductLineRequest {
54
61
  kind: typeof AddCheckoutLineKind.CATALOG_PRODUCT;
@@ -1 +1 @@
1
- {"version":3,"file":"checkout-order.requests.d.ts","sourceRoot":"","sources":["../../../src/api/checkout-orders/checkout-order.requests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkout-order.requests.d.ts","sourceRoot":"","sources":["../../../src/api/checkout-orders/checkout-order.requests.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,11 @@ export * from './supplier.requests';
8
8
  export * from './warehouse.dto';
9
9
  export * from './warehouse.requests';
10
10
  export * from './product.dto';
11
+ export * from './product.picker';
11
12
  export * from './product.requests';
12
13
  export * from './stock-movement.dto';
13
14
  export * from './stock-movement.requests';
15
+ export * from './purchase-order.constants';
16
+ export * from './purchase-order.dto';
17
+ export * from './purchase-order.requests';
14
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC"}
@@ -24,7 +24,11 @@ __exportStar(require("./supplier.requests"), exports);
24
24
  __exportStar(require("./warehouse.dto"), exports);
25
25
  __exportStar(require("./warehouse.requests"), exports);
26
26
  __exportStar(require("./product.dto"), exports);
27
+ __exportStar(require("./product.picker"), exports);
27
28
  __exportStar(require("./product.requests"), exports);
28
29
  __exportStar(require("./stock-movement.dto"), exports);
29
30
  __exportStar(require("./stock-movement.requests"), exports);
31
+ __exportStar(require("./purchase-order.constants"), exports);
32
+ __exportStar(require("./purchase-order.dto"), exports);
33
+ __exportStar(require("./purchase-order.requests"), exports);
30
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/inventory/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,yDAAuC;AACvC,8DAA4C;AAC5C,8CAA4B;AAC5B,mDAAiC;AACjC,iDAA+B;AAC/B,sDAAoC;AACpC,kDAAgC;AAChC,uDAAqC;AACrC,gDAA8B;AAC9B,qDAAmC;AACnC,uDAAqC;AACrC,4DAA0C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/inventory/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,yDAAuC;AACvC,8DAA4C;AAC5C,8CAA4B;AAC5B,mDAAiC;AACjC,iDAA+B;AAC/B,sDAAoC;AACpC,kDAAgC;AAChC,uDAAqC;AACrC,gDAA8B;AAC9B,mDAAiC;AACjC,qDAAmC;AACnC,uDAAqC;AACrC,4DAA0C;AAC1C,6DAA2C;AAC3C,uDAAqC;AACrC,4DAA0C"}
@@ -17,8 +17,8 @@ export interface StockPositionDto {
17
17
  locationName: string | null;
18
18
  warehouseName: string | null;
19
19
  onHand: number;
20
- minimumOrderLevel: number;
21
- warningStockLevel: number;
20
+ lowStockLevel: number;
21
+ reorderQuantity: number | null;
22
22
  }
23
23
  /** Present only when taxMode is custom — one row per company location. taxId null = no tax. */
24
24
  export interface ProductLocationTaxDto {
@@ -1 +1 @@
1
- {"version":3,"file":"product.dto.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/product.dto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EACV,uBAAuB,EACvB,aAAa,EACb,cAAc,EACd,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,+FAA+F;AAC/F,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,mEAAmE;AACnE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,cAAc,CAAC;IACxB,aAAa,EAAE,qBAAqB,EAAE,CAAC;IACvC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACrC,KAAK,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAClC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACrC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC/C,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,cAAc,EAAE,gBAAgB,EAAE,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,uBAAuB,CAAC;CACzC;AAED,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9B"}
1
+ {"version":3,"file":"product.dto.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/product.dto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EACV,uBAAuB,EACvB,aAAa,EACb,cAAc,EACd,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,+FAA+F;AAC/F,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,mEAAmE;AACnE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,cAAc,CAAC;IACxB,aAAa,EAAE,qBAAqB,EAAE,CAAC;IACvC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACrC,KAAK,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAClC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACrC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC/C,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,cAAc,EAAE,gBAAgB,EAAE,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,uBAAuB,CAAC;CACzC;AAED,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9B"}
@@ -0,0 +1,26 @@
1
+ import type { PaginatedResult } from '../pagination';
2
+ import type { ProductMasterRefDto } from './product.dto';
3
+ export interface SearchProductPickerQuery {
4
+ search?: string;
5
+ /** Required for POS — scopes on-hand to this location. */
6
+ locationId: string;
7
+ categoryId?: string;
8
+ active?: boolean;
9
+ page?: number;
10
+ pageSize?: number;
11
+ }
12
+ export interface ProductPickerItemDto {
13
+ id: string;
14
+ name: string;
15
+ retailPrice: string | null;
16
+ featuredPhotoUrl: string | null;
17
+ category: ProductMasterRefDto | null;
18
+ unitLabel: string | null;
19
+ barcode: string | null;
20
+ sku: string | null;
21
+ locationOnHand: number;
22
+ lowStockLevel: number;
23
+ reorderQuantity: number | null;
24
+ }
25
+ export type ProductPickerResult = PaginatedResult<ProductPickerItemDto>;
26
+ //# sourceMappingURL=product.picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"product.picker.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/product.picker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzD,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACrC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,MAAM,mBAAmB,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=product.picker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"product.picker.js","sourceRoot":"","sources":["../../../src/api/inventory/product.picker.ts"],"names":[],"mappings":""}
@@ -23,8 +23,8 @@ export interface ProductPhotoInput {
23
23
  export interface StockPositionInput {
24
24
  locationId?: string | null;
25
25
  warehouseId?: string | null;
26
- minimumOrderLevel?: number;
27
- warningStockLevel?: number;
26
+ lowStockLevel?: number;
27
+ reorderQuantity?: number | null;
28
28
  }
29
29
  export interface ProductLocationTaxInput {
30
30
  locationId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"product.requests.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/product.requests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"product.requests.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/product.requests.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ export declare const PurchaseOrderStatus: {
2
+ readonly DRAFT: "draft";
3
+ readonly ORDERED: "ordered";
4
+ readonly PARTIAL: "partial";
5
+ readonly RECEIVED: "received";
6
+ readonly CANCELED: "canceled";
7
+ };
8
+ export type PurchaseOrderStatus = (typeof PurchaseOrderStatus)[keyof typeof PurchaseOrderStatus];
9
+ export declare const PurchaseOrderPaymentStatus: {
10
+ readonly UNPAID: "unpaid";
11
+ readonly PARTIAL: "partial";
12
+ readonly PAID: "paid";
13
+ };
14
+ export type PurchaseOrderPaymentStatus = (typeof PurchaseOrderPaymentStatus)[keyof typeof PurchaseOrderPaymentStatus];
15
+ /** Derived at read — not stored. */
16
+ export declare const PurchaseOrderPaymentDisplayStatus: {
17
+ readonly OVERDUE: "overdue";
18
+ readonly UNPAID: "unpaid";
19
+ readonly PARTIAL: "partial";
20
+ readonly PAID: "paid";
21
+ };
22
+ export type PurchaseOrderPaymentDisplayStatus = (typeof PurchaseOrderPaymentDisplayStatus)[keyof typeof PurchaseOrderPaymentDisplayStatus];
23
+ export declare const PurchaseOrderReceiveCloseAs: {
24
+ readonly PARTIAL: "partial";
25
+ readonly COMPLETED: "completed";
26
+ };
27
+ export type PurchaseOrderReceiveCloseAs = (typeof PurchaseOrderReceiveCloseAs)[keyof typeof PurchaseOrderReceiveCloseAs];
28
+ export declare const PurchaseOrderPrefillMode: {
29
+ readonly LOW: "low";
30
+ readonly REORDER: "reorder";
31
+ };
32
+ export type PurchaseOrderPrefillMode = (typeof PurchaseOrderPrefillMode)[keyof typeof PurchaseOrderPrefillMode];
33
+ //# sourceMappingURL=purchase-order.constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"purchase-order.constants.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/purchase-order.constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB;;;;;;CAMtB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC7B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAEjE,eAAO,MAAM,0BAA0B;;;;CAI7B,CAAC;AAEX,MAAM,MAAM,0BAA0B,GACpC,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,OAAO,0BAA0B,CAAC,CAAC;AAE/E,oCAAoC;AACpC,eAAO,MAAM,iCAAiC;;;;;CAGpC,CAAC;AAEX,MAAM,MAAM,iCAAiC,GAC3C,CAAC,OAAO,iCAAiC,CAAC,CAAC,MAAM,OAAO,iCAAiC,CAAC,CAAC;AAE7F,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,MAAM,MAAM,2BAA2B,GACrC,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,OAAO,2BAA2B,CAAC,CAAC;AAEjF,eAAO,MAAM,wBAAwB;;;CAG3B,CAAC;AAEX,MAAM,MAAM,wBAAwB,GAClC,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PurchaseOrderPrefillMode = exports.PurchaseOrderReceiveCloseAs = exports.PurchaseOrderPaymentDisplayStatus = exports.PurchaseOrderPaymentStatus = exports.PurchaseOrderStatus = void 0;
4
+ exports.PurchaseOrderStatus = {
5
+ DRAFT: 'draft',
6
+ ORDERED: 'ordered',
7
+ PARTIAL: 'partial',
8
+ RECEIVED: 'received',
9
+ CANCELED: 'canceled',
10
+ };
11
+ exports.PurchaseOrderPaymentStatus = {
12
+ UNPAID: 'unpaid',
13
+ PARTIAL: 'partial',
14
+ PAID: 'paid',
15
+ };
16
+ /** Derived at read — not stored. */
17
+ exports.PurchaseOrderPaymentDisplayStatus = {
18
+ ...exports.PurchaseOrderPaymentStatus,
19
+ OVERDUE: 'overdue',
20
+ };
21
+ exports.PurchaseOrderReceiveCloseAs = {
22
+ PARTIAL: 'partial',
23
+ COMPLETED: 'completed',
24
+ };
25
+ exports.PurchaseOrderPrefillMode = {
26
+ LOW: 'low',
27
+ REORDER: 'reorder',
28
+ };
29
+ //# sourceMappingURL=purchase-order.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"purchase-order.constants.js","sourceRoot":"","sources":["../../../src/api/inventory/purchase-order.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG;IACjC,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAKE,QAAA,0BAA0B,GAAG;IACxC,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;CACJ,CAAC;AAKX,oCAAoC;AACvB,QAAA,iCAAiC,GAAG;IAC/C,GAAG,kCAA0B;IAC7B,OAAO,EAAE,SAAS;CACV,CAAC;AAKE,QAAA,2BAA2B,GAAG;IACzC,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;CACd,CAAC;AAKE,QAAA,wBAAwB,GAAG;IACtC,GAAG,EAAE,KAAK;IACV,OAAO,EAAE,SAAS;CACV,CAAC"}
@@ -0,0 +1,72 @@
1
+ import type { AuditActor } from '../audit';
2
+ import type { PurchaseOrderPaymentDisplayStatus, PurchaseOrderStatus } from './purchase-order.constants';
3
+ export interface PurchaseOrderSupplierRefDto {
4
+ id: string;
5
+ name: string;
6
+ email: string | null;
7
+ phoneE164: string | null;
8
+ }
9
+ export interface PurchaseOrderPlaceRefDto {
10
+ locationId: string | null;
11
+ warehouseId: string | null;
12
+ name: string;
13
+ }
14
+ export interface PurchaseOrderLineDto {
15
+ id: string;
16
+ productId: string;
17
+ productName: string;
18
+ featuredPhotoUrl: string | null;
19
+ sortOrder: number;
20
+ orderedQty: number;
21
+ receivedQty: number;
22
+ unitCost: string;
23
+ lineTotal: string;
24
+ }
25
+ export interface PurchaseOrderSummaryDto {
26
+ id: string;
27
+ orderNumber: number;
28
+ status: PurchaseOrderStatus;
29
+ supplier: PurchaseOrderSupplierRefDto;
30
+ place: PurchaseOrderPlaceRefDto;
31
+ orderDate: string;
32
+ expectedDeliveryDate: string | null;
33
+ receivedAt: string | null;
34
+ canceledAt: string | null;
35
+ currencyCode: string;
36
+ subtotal: string;
37
+ totalAmount: string;
38
+ paymentStatus: PurchaseOrderPaymentDisplayStatus | null;
39
+ paidAmount: string;
40
+ dueAmount: string;
41
+ paymentDueDate: string | null;
42
+ paymentTerms: string | null;
43
+ createdAt: string;
44
+ createdBy: AuditActor | null;
45
+ }
46
+ export interface PurchaseOrderDetailDto extends PurchaseOrderSummaryDto {
47
+ lines: PurchaseOrderLineDto[];
48
+ updatedAt: string | null;
49
+ updatedBy: AuditActor | null;
50
+ }
51
+ export interface PurchaseOrderPaymentDto {
52
+ id: string;
53
+ amount: string;
54
+ paidAt: string;
55
+ paymentMethodId: string | null;
56
+ paymentMethodName: string;
57
+ reference: string | null;
58
+ note: string | null;
59
+ createdAt: string;
60
+ createdBy: AuditActor | null;
61
+ }
62
+ export interface PurchaseOrderPrefillLineDto {
63
+ productId: string;
64
+ productName: string;
65
+ featuredPhotoUrl: string | null;
66
+ unitCost: string;
67
+ onHand: number;
68
+ lowStockLevel: number;
69
+ reorderQuantity: number | null;
70
+ suggestedOrderedQty: number;
71
+ }
72
+ //# sourceMappingURL=purchase-order.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"purchase-order.dto.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/purchase-order.dto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EACV,iCAAiC,EAEjC,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,2BAA2B,CAAC;IACtC,KAAK,EAAE,wBAAwB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,iCAAiC,GAAG,IAAI,CAAC;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,sBAAuB,SAAQ,uBAAuB;IACrE,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,mBAAmB,EAAE,MAAM,CAAC;CAC7B"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=purchase-order.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"purchase-order.dto.js","sourceRoot":"","sources":["../../../src/api/inventory/purchase-order.dto.ts"],"names":[],"mappings":""}
@@ -0,0 +1,66 @@
1
+ import type { PaginatedResult } from '../pagination';
2
+ import type { PurchaseOrderPrefillMode, PurchaseOrderReceiveCloseAs, PurchaseOrderStatus } from './purchase-order.constants';
3
+ import type { PurchaseOrderDetailDto, PurchaseOrderPaymentDto, PurchaseOrderPrefillLineDto, PurchaseOrderSummaryDto } from './purchase-order.dto';
4
+ export interface ListPurchaseOrdersQuery {
5
+ page?: number;
6
+ pageSize?: number;
7
+ search?: string;
8
+ status?: PurchaseOrderStatus;
9
+ supplierId?: string;
10
+ locationId?: string;
11
+ warehouseId?: string;
12
+ productId?: string;
13
+ orderDateFrom?: string;
14
+ orderDateTo?: string;
15
+ /** Supplier outstanding report — received orders with outstanding balance. */
16
+ outstandingOnly?: boolean;
17
+ }
18
+ export type PurchaseOrderListResult = PaginatedResult<PurchaseOrderSummaryDto>;
19
+ export interface PurchaseOrderLineInput {
20
+ productId: string;
21
+ orderedQty: number;
22
+ unitCost: string;
23
+ sortOrder?: number;
24
+ }
25
+ export interface CreatePurchaseOrderRequest {
26
+ supplierId: string;
27
+ locationId?: string | null;
28
+ warehouseId?: string | null;
29
+ orderDate: string;
30
+ expectedDeliveryDate?: string | null;
31
+ status?: typeof PurchaseOrderStatus.DRAFT | typeof PurchaseOrderStatus.ORDERED;
32
+ lines: PurchaseOrderLineInput[];
33
+ }
34
+ export interface UpdatePurchaseOrderRequest {
35
+ supplierId?: string;
36
+ locationId?: string | null;
37
+ warehouseId?: string | null;
38
+ orderDate?: string;
39
+ expectedDeliveryDate?: string | null;
40
+ lines?: PurchaseOrderLineInput[];
41
+ }
42
+ export interface ReceivePurchaseOrderLineInput {
43
+ lineId: string;
44
+ quantityReceived: number;
45
+ }
46
+ export interface ReceivePurchaseOrderRequest {
47
+ lines: ReceivePurchaseOrderLineInput[];
48
+ closeAs: PurchaseOrderReceiveCloseAs;
49
+ }
50
+ export interface CreatePurchaseOrderPaymentRequest {
51
+ amount: string;
52
+ paidAt: string;
53
+ paymentMethodId: string;
54
+ reference?: string | null;
55
+ note?: string | null;
56
+ }
57
+ export interface PrefillPurchaseOrdersQuery {
58
+ locationId?: string;
59
+ warehouseId?: string;
60
+ mode: PurchaseOrderPrefillMode;
61
+ supplierId?: string;
62
+ }
63
+ export type PurchaseOrderPrefillResult = PurchaseOrderPrefillLineDto[];
64
+ export type PurchaseOrderDetailResponse = PurchaseOrderDetailDto;
65
+ export type PurchaseOrderPaymentListResult = PurchaseOrderPaymentDto[];
66
+ //# sourceMappingURL=purchase-order.requests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"purchase-order.requests.d.ts","sourceRoot":"","sources":["../../../src/api/inventory/purchase-order.requests.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EACV,wBAAwB,EACxB,2BAA2B,EAC3B,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACvB,2BAA2B,EAC3B,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,MAAM,uBAAuB,GAAG,eAAe,CAAC,uBAAuB,CAAC,CAAC;AAE/E,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,MAAM,CAAC,EAAE,OAAO,mBAAmB,CAAC,KAAK,GAAG,OAAO,mBAAmB,CAAC,OAAO,CAAC;IAC/E,KAAK,EAAE,sBAAsB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,0BAA0B;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,6BAA6B,EAAE,CAAC;IACvC,OAAO,EAAE,2BAA2B,CAAC;CACtC;AAED,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,0BAA0B;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,wBAAwB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,0BAA0B,GAAG,2BAA2B,EAAE,CAAC;AAEvE,MAAM,MAAM,2BAA2B,GAAG,sBAAsB,CAAC;AACjE,MAAM,MAAM,8BAA8B,GAAG,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=purchase-order.requests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"purchase-order.requests.js","sourceRoot":"","sources":["../../../src/api/inventory/purchase-order.requests.ts"],"names":[],"mappings":""}
@@ -56,12 +56,21 @@ export interface ServiceInvoiceItemDto extends InvoiceItemBaseDto {
56
56
  appointmentId: string | null;
57
57
  appointmentItemId: string | null;
58
58
  }
59
+ export interface ProductInvoiceItemDto extends InvoiceItemBaseDto {
60
+ itemType: typeof InvoiceItemType.PRODUCT;
61
+ productId: string;
62
+ productBarcode: string | null;
63
+ productBrandName: string | null;
64
+ productSupplierName: string | null;
65
+ productSku: string | null;
66
+ productUnitLabel: string | null;
67
+ }
59
68
  export interface GiftCardInvoiceItemDto extends InvoiceItemBaseDto {
60
69
  itemType: typeof InvoiceItemType.GIFT_CARD;
61
70
  giftCardProductId: string | null;
62
71
  issuedGiftCard: IssuedGiftCardLineSummaryDto;
63
72
  }
64
- export type InvoiceItemDto = ServiceInvoiceItemDto | GiftCardInvoiceItemDto;
73
+ export type InvoiceItemDto = ServiceInvoiceItemDto | ProductInvoiceItemDto | GiftCardInvoiceItemDto;
65
74
  export interface InvoicePaymentLineDto {
66
75
  id: string;
67
76
  paymentMethodId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"invoice.dto.d.ts","sourceRoot":"","sources":["../../../src/api/invoices/invoice.dto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoice.dto.d.ts","sourceRoot":"","sources":["../../../src/api/invoices/invoice.dto.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,24 @@ export interface ServiceFinalizeLineRequest {
45
45
  appointmentId?: string | null;
46
46
  appointmentItemId?: string | null;
47
47
  }
48
+ export interface ProductFinalizeLineRequest {
49
+ itemType: typeof InvoiceItemType.PRODUCT;
50
+ productId: string;
51
+ itemName: string;
52
+ staffId: string;
53
+ staffName: string;
54
+ quantity: string;
55
+ sortOrder: number;
56
+ unitPrice: string;
57
+ lineDiscountType?: DiscountType | null;
58
+ lineDiscountValue?: string | null;
59
+ productBarcode?: string | null;
60
+ productBrandName?: string | null;
61
+ productSupplierName?: string | null;
62
+ productSku?: string | null;
63
+ productUnitLabel?: string | null;
64
+ preview: FinalizeInvoiceLinePreview;
65
+ }
48
66
  export interface GiftCardFinalizeLineRequest {
49
67
  itemType: typeof InvoiceItemType.GIFT_CARD;
50
68
  giftCardProductId?: string | null;
@@ -59,9 +77,12 @@ export interface GiftCardFinalizeLineRequest {
59
77
  sortOrder: number;
60
78
  imageUrl?: string | null;
61
79
  validityLabel?: string | null;
80
+ /** Custom gift card expiry — used when giftCardProductId is null. */
81
+ validityValue?: number | null;
82
+ validityUnit?: string | null;
62
83
  preview: FinalizeInvoiceLinePreview;
63
84
  }
64
- export type FinalizeInvoiceLineRequest = ServiceFinalizeLineRequest | GiftCardFinalizeLineRequest;
85
+ export type FinalizeInvoiceLineRequest = ServiceFinalizeLineRequest | ProductFinalizeLineRequest | GiftCardFinalizeLineRequest;
65
86
  export interface FinalizeInvoicePaymentRequest {
66
87
  paymentMethodId: string;
67
88
  amount: string;
@@ -1 +1 @@
1
- {"version":3,"file":"invoice.requests.d.ts","sourceRoot":"","sources":["../../../src/api/invoices/invoice.requests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoice.requests.d.ts","sourceRoot":"","sources":["../../../src/api/invoices/invoice.requests.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ export declare enum MovementCategory {
2
2
  Manual = "manual",
3
3
  Opening = "opening",
4
4
  Sale = "sale",
5
+ SaleReversal = "sale_reversal",
5
6
  StockTake = "stockTake",
6
7
  Purchase = "purchase",
7
8
  Transfer = "transfer",
@@ -1 +1 @@
1
- {"version":3,"file":"movement-category.d.ts","sourceRoot":"","sources":["../../src/enum/movement-category.ts"],"names":[],"mappings":"AAAA,oBAAY,gBAAgB;IAC1B,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,UAAU,eAAe;CAC1B"}
1
+ {"version":3,"file":"movement-category.d.ts","sourceRoot":"","sources":["../../src/enum/movement-category.ts"],"names":[],"mappings":"AAAA,oBAAY,gBAAgB;IAC1B,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,YAAY,kBAAkB;IAC9B,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,UAAU,eAAe;CAC1B"}
@@ -6,6 +6,7 @@ var MovementCategory;
6
6
  MovementCategory["Manual"] = "manual";
7
7
  MovementCategory["Opening"] = "opening";
8
8
  MovementCategory["Sale"] = "sale";
9
+ MovementCategory["SaleReversal"] = "sale_reversal";
9
10
  MovementCategory["StockTake"] = "stockTake";
10
11
  MovementCategory["Purchase"] = "purchase";
11
12
  MovementCategory["Transfer"] = "transfer";
@@ -1 +1 @@
1
- {"version":3,"file":"movement-category.js","sourceRoot":"","sources":["../../src/enum/movement-category.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBAQX;AARD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;IACnB,iCAAa,CAAA;IACb,2CAAuB,CAAA;IACvB,yCAAqB,CAAA;IACrB,yCAAqB,CAAA;IACrB,6CAAyB,CAAA;AAC3B,CAAC,EARW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAQ3B"}
1
+ {"version":3,"file":"movement-category.js","sourceRoot":"","sources":["../../src/enum/movement-category.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBASX;AATD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;IACnB,iCAAa,CAAA;IACb,kDAA8B,CAAA;IAC9B,2CAAuB,CAAA;IACvB,yCAAqB,CAAA;IACrB,yCAAqB,CAAA;IACrB,6CAAyB,CAAA;AAC3B,CAAC,EATW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAS3B"}
@@ -2,7 +2,7 @@ import { OutletModel } from "./outlet.model";
2
2
  export interface StockLevelModel {
3
3
  outlet: OutletModel;
4
4
  currentStockCount: number;
5
- minimumOrderLevel: number;
6
- warningStockLevel: number;
5
+ lowStockLevel: number;
6
+ reorderQuantity: number | null;
7
7
  }
8
8
  //# sourceMappingURL=stock-level.model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stock-level.model.d.ts","sourceRoot":"","sources":["../../src/models/stock-level.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAE3C,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAA;CAC5B"}
1
+ {"version":3,"file":"stock-level.model.d.ts","sourceRoot":"","sources":["../../src/models/stock-level.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAE3C,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC"}
@@ -2,7 +2,7 @@ import { WarehouseModel } from "./warehouse.model";
2
2
  export interface WarehouseStockLevelModel {
3
3
  warehouse: WarehouseModel;
4
4
  currentStockCount: number;
5
- minimumOrderLevel: number;
6
- warningStockLevel: number;
5
+ lowStockLevel: number;
6
+ reorderQuantity: number | null;
7
7
  }
8
8
  //# sourceMappingURL=warehouse-stock-level.model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"warehouse-stock-level.model.d.ts","sourceRoot":"","sources":["../../src/models/warehouse-stock-level.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,wBAAwB;IACrC,SAAS,EAAE,cAAc,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"warehouse-stock-level.model.d.ts","sourceRoot":"","sources":["../../src/models/warehouse-stock-level.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,wBAAwB;IACrC,SAAS,EAAE,cAAc,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "types-salon-management",
3
- "version": "1.0.64",
3
+ "version": "1.0.66",
4
4
  "description": "Types for Salon Management",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -37,12 +37,17 @@ export interface CheckoutOrderPreviewLineDto {
37
37
  durationMinutes: number | null;
38
38
  appointmentId: string | null;
39
39
  appointmentItemId: string | null;
40
+ /** Product line refs */
41
+ productId: string | null;
40
42
  /** Gift card line refs */
41
43
  giftCardProductId: string | null;
42
44
  faceValue: string | null;
43
45
  salePrice: string | null;
44
46
  isGift: boolean | null;
45
47
  customCode: string | null;
48
+ validityValue: number | null;
49
+ validityUnit: string | null;
50
+ validityLabel: string | null;
46
51
  /** True when line discount is blocked (combo-group lines) */
47
52
  lineDiscountDisabled: boolean;
48
53
  }
@@ -55,12 +55,19 @@ export interface AddAppointmentRowLineRequest {
55
55
 
56
56
  export interface AddGiftCardLineRequest {
57
57
  kind: typeof AddCheckoutLineKind.GIFT_CARD;
58
- giftCardProductId: string;
58
+ /** Omit or null for custom (ad-hoc) gift cards sold at POS. */
59
+ giftCardProductId?: string | null;
60
+ /** Required when giftCardProductId is omitted — custom gift card display name. */
61
+ itemName?: string;
59
62
  faceValue: string;
60
63
  salePrice: string;
61
64
  isGift: boolean;
62
65
  customCode?: string | null;
63
66
  staffId: string;
67
+ /** Custom gift card expiry — ignored for catalog template lines. */
68
+ validityValue?: number | null;
69
+ validityUnit?: string | null;
70
+ validityLabel?: string | null;
64
71
  }
65
72
 
66
73
  export interface AddCatalogProductLineRequest {
@@ -8,6 +8,10 @@ export * from './supplier.requests';
8
8
  export * from './warehouse.dto';
9
9
  export * from './warehouse.requests';
10
10
  export * from './product.dto';
11
+ export * from './product.picker';
11
12
  export * from './product.requests';
12
13
  export * from './stock-movement.dto';
13
14
  export * from './stock-movement.requests';
15
+ export * from './purchase-order.constants';
16
+ export * from './purchase-order.dto';
17
+ export * from './purchase-order.requests';
@@ -25,8 +25,8 @@ export interface StockPositionDto {
25
25
  locationName: string | null;
26
26
  warehouseName: string | null;
27
27
  onHand: number;
28
- minimumOrderLevel: number;
29
- warningStockLevel: number;
28
+ lowStockLevel: number;
29
+ reorderQuantity: number | null;
30
30
  }
31
31
 
32
32
  /** Present only when taxMode is custom — one row per company location. taxId null = no tax. */
@@ -0,0 +1,28 @@
1
+ import type { PaginatedResult } from '../pagination';
2
+ import type { ProductMasterRefDto } from './product.dto';
3
+
4
+ export interface SearchProductPickerQuery {
5
+ search?: string;
6
+ /** Required for POS — scopes on-hand to this location. */
7
+ locationId: string;
8
+ categoryId?: string;
9
+ active?: boolean;
10
+ page?: number;
11
+ pageSize?: number;
12
+ }
13
+
14
+ export interface ProductPickerItemDto {
15
+ id: string;
16
+ name: string;
17
+ retailPrice: string | null;
18
+ featuredPhotoUrl: string | null;
19
+ category: ProductMasterRefDto | null;
20
+ unitLabel: string | null;
21
+ barcode: string | null;
22
+ sku: string | null;
23
+ locationOnHand: number;
24
+ lowStockLevel: number;
25
+ reorderQuantity: number | null;
26
+ }
27
+
28
+ export type ProductPickerResult = PaginatedResult<ProductPickerItemDto>;
@@ -27,8 +27,8 @@ export interface ProductPhotoInput {
27
27
  export interface StockPositionInput {
28
28
  locationId?: string | null;
29
29
  warehouseId?: string | null;
30
- minimumOrderLevel?: number;
31
- warningStockLevel?: number;
30
+ lowStockLevel?: number;
31
+ reorderQuantity?: number | null;
32
32
  }
33
33
 
34
34
  export interface ProductLocationTaxInput {
@@ -0,0 +1,44 @@
1
+ export const PurchaseOrderStatus = {
2
+ DRAFT: 'draft',
3
+ ORDERED: 'ordered',
4
+ PARTIAL: 'partial',
5
+ RECEIVED: 'received',
6
+ CANCELED: 'canceled',
7
+ } as const;
8
+
9
+ export type PurchaseOrderStatus =
10
+ (typeof PurchaseOrderStatus)[keyof typeof PurchaseOrderStatus];
11
+
12
+ export const PurchaseOrderPaymentStatus = {
13
+ UNPAID: 'unpaid',
14
+ PARTIAL: 'partial',
15
+ PAID: 'paid',
16
+ } as const;
17
+
18
+ export type PurchaseOrderPaymentStatus =
19
+ (typeof PurchaseOrderPaymentStatus)[keyof typeof PurchaseOrderPaymentStatus];
20
+
21
+ /** Derived at read — not stored. */
22
+ export const PurchaseOrderPaymentDisplayStatus = {
23
+ ...PurchaseOrderPaymentStatus,
24
+ OVERDUE: 'overdue',
25
+ } as const;
26
+
27
+ export type PurchaseOrderPaymentDisplayStatus =
28
+ (typeof PurchaseOrderPaymentDisplayStatus)[keyof typeof PurchaseOrderPaymentDisplayStatus];
29
+
30
+ export const PurchaseOrderReceiveCloseAs = {
31
+ PARTIAL: 'partial',
32
+ COMPLETED: 'completed',
33
+ } as const;
34
+
35
+ export type PurchaseOrderReceiveCloseAs =
36
+ (typeof PurchaseOrderReceiveCloseAs)[keyof typeof PurchaseOrderReceiveCloseAs];
37
+
38
+ export const PurchaseOrderPrefillMode = {
39
+ LOW: 'low',
40
+ REORDER: 'reorder',
41
+ } as const;
42
+
43
+ export type PurchaseOrderPrefillMode =
44
+ (typeof PurchaseOrderPrefillMode)[keyof typeof PurchaseOrderPrefillMode];
@@ -0,0 +1,82 @@
1
+ import type { AuditActor } from '../audit';
2
+ import type {
3
+ PurchaseOrderPaymentDisplayStatus,
4
+ PurchaseOrderPaymentStatus,
5
+ PurchaseOrderStatus,
6
+ } from './purchase-order.constants';
7
+
8
+ export interface PurchaseOrderSupplierRefDto {
9
+ id: string;
10
+ name: string;
11
+ email: string | null;
12
+ phoneE164: string | null;
13
+ }
14
+
15
+ export interface PurchaseOrderPlaceRefDto {
16
+ locationId: string | null;
17
+ warehouseId: string | null;
18
+ name: string;
19
+ }
20
+
21
+ export interface PurchaseOrderLineDto {
22
+ id: string;
23
+ productId: string;
24
+ productName: string;
25
+ featuredPhotoUrl: string | null;
26
+ sortOrder: number;
27
+ orderedQty: number;
28
+ receivedQty: number;
29
+ unitCost: string;
30
+ lineTotal: string;
31
+ }
32
+
33
+ export interface PurchaseOrderSummaryDto {
34
+ id: string;
35
+ orderNumber: number;
36
+ status: PurchaseOrderStatus;
37
+ supplier: PurchaseOrderSupplierRefDto;
38
+ place: PurchaseOrderPlaceRefDto;
39
+ orderDate: string;
40
+ expectedDeliveryDate: string | null;
41
+ receivedAt: string | null;
42
+ canceledAt: string | null;
43
+ currencyCode: string;
44
+ subtotal: string;
45
+ totalAmount: string;
46
+ paymentStatus: PurchaseOrderPaymentDisplayStatus | null;
47
+ paidAmount: string;
48
+ dueAmount: string;
49
+ paymentDueDate: string | null;
50
+ paymentTerms: string | null;
51
+ createdAt: string;
52
+ createdBy: AuditActor | null;
53
+ }
54
+
55
+ export interface PurchaseOrderDetailDto extends PurchaseOrderSummaryDto {
56
+ lines: PurchaseOrderLineDto[];
57
+ updatedAt: string | null;
58
+ updatedBy: AuditActor | null;
59
+ }
60
+
61
+ export interface PurchaseOrderPaymentDto {
62
+ id: string;
63
+ amount: string;
64
+ paidAt: string;
65
+ paymentMethodId: string | null;
66
+ paymentMethodName: string;
67
+ reference: string | null;
68
+ note: string | null;
69
+ createdAt: string;
70
+ createdBy: AuditActor | null;
71
+ }
72
+
73
+ export interface PurchaseOrderPrefillLineDto {
74
+ productId: string;
75
+ productName: string;
76
+ featuredPhotoUrl: string | null;
77
+ unitCost: string;
78
+ onHand: number;
79
+ lowStockLevel: number;
80
+ reorderQuantity: number | null;
81
+ suggestedOrderedQty: number;
82
+ }
@@ -0,0 +1,85 @@
1
+ import type { PaginatedResult } from '../pagination';
2
+ import type {
3
+ PurchaseOrderPrefillMode,
4
+ PurchaseOrderReceiveCloseAs,
5
+ PurchaseOrderStatus,
6
+ } from './purchase-order.constants';
7
+ import type {
8
+ PurchaseOrderDetailDto,
9
+ PurchaseOrderPaymentDto,
10
+ PurchaseOrderPrefillLineDto,
11
+ PurchaseOrderSummaryDto,
12
+ } from './purchase-order.dto';
13
+
14
+ export interface ListPurchaseOrdersQuery {
15
+ page?: number;
16
+ pageSize?: number;
17
+ search?: string;
18
+ status?: PurchaseOrderStatus;
19
+ supplierId?: string;
20
+ locationId?: string;
21
+ warehouseId?: string;
22
+ productId?: string;
23
+ orderDateFrom?: string;
24
+ orderDateTo?: string;
25
+ /** Supplier outstanding report — received orders with outstanding balance. */
26
+ outstandingOnly?: boolean;
27
+ }
28
+
29
+ export type PurchaseOrderListResult = PaginatedResult<PurchaseOrderSummaryDto>;
30
+
31
+ export interface PurchaseOrderLineInput {
32
+ productId: string;
33
+ orderedQty: number;
34
+ unitCost: string;
35
+ sortOrder?: number;
36
+ }
37
+
38
+ export interface CreatePurchaseOrderRequest {
39
+ supplierId: string;
40
+ locationId?: string | null;
41
+ warehouseId?: string | null;
42
+ orderDate: string;
43
+ expectedDeliveryDate?: string | null;
44
+ status?: typeof PurchaseOrderStatus.DRAFT | typeof PurchaseOrderStatus.ORDERED;
45
+ lines: PurchaseOrderLineInput[];
46
+ }
47
+
48
+ export interface UpdatePurchaseOrderRequest {
49
+ supplierId?: string;
50
+ locationId?: string | null;
51
+ warehouseId?: string | null;
52
+ orderDate?: string;
53
+ expectedDeliveryDate?: string | null;
54
+ lines?: PurchaseOrderLineInput[];
55
+ }
56
+
57
+ export interface ReceivePurchaseOrderLineInput {
58
+ lineId: string;
59
+ quantityReceived: number;
60
+ }
61
+
62
+ export interface ReceivePurchaseOrderRequest {
63
+ lines: ReceivePurchaseOrderLineInput[];
64
+ closeAs: PurchaseOrderReceiveCloseAs;
65
+ }
66
+
67
+ export interface CreatePurchaseOrderPaymentRequest {
68
+ amount: string;
69
+ paidAt: string;
70
+ paymentMethodId: string;
71
+ reference?: string | null;
72
+ note?: string | null;
73
+ }
74
+
75
+ export interface PrefillPurchaseOrdersQuery {
76
+ locationId?: string;
77
+ warehouseId?: string;
78
+ mode: PurchaseOrderPrefillMode;
79
+ supplierId?: string;
80
+ }
81
+
82
+ export type PurchaseOrderPrefillResult = PurchaseOrderPrefillLineDto[];
83
+
84
+ export type PurchaseOrderDetailResponse = PurchaseOrderDetailDto;
85
+ export type PurchaseOrderPaymentListResult = PurchaseOrderPaymentDto[];
@@ -61,13 +61,23 @@ export interface ServiceInvoiceItemDto extends InvoiceItemBaseDto {
61
61
  appointmentItemId: string | null;
62
62
  }
63
63
 
64
+ export interface ProductInvoiceItemDto extends InvoiceItemBaseDto {
65
+ itemType: typeof InvoiceItemType.PRODUCT;
66
+ productId: string;
67
+ productBarcode: string | null;
68
+ productBrandName: string | null;
69
+ productSupplierName: string | null;
70
+ productSku: string | null;
71
+ productUnitLabel: string | null;
72
+ }
73
+
64
74
  export interface GiftCardInvoiceItemDto extends InvoiceItemBaseDto {
65
75
  itemType: typeof InvoiceItemType.GIFT_CARD;
66
76
  giftCardProductId: string | null;
67
77
  issuedGiftCard: IssuedGiftCardLineSummaryDto;
68
78
  }
69
79
 
70
- export type InvoiceItemDto = ServiceInvoiceItemDto | GiftCardInvoiceItemDto;
80
+ export type InvoiceItemDto = ServiceInvoiceItemDto | ProductInvoiceItemDto | GiftCardInvoiceItemDto;
71
81
 
72
82
  export interface InvoicePaymentLineDto {
73
83
  id: string;
@@ -56,6 +56,25 @@ export interface ServiceFinalizeLineRequest {
56
56
  appointmentItemId?: string | null;
57
57
  }
58
58
 
59
+ export interface ProductFinalizeLineRequest {
60
+ itemType: typeof InvoiceItemType.PRODUCT;
61
+ productId: string;
62
+ itemName: string;
63
+ staffId: string;
64
+ staffName: string;
65
+ quantity: string;
66
+ sortOrder: number;
67
+ unitPrice: string;
68
+ lineDiscountType?: DiscountType | null;
69
+ lineDiscountValue?: string | null;
70
+ productBarcode?: string | null;
71
+ productBrandName?: string | null;
72
+ productSupplierName?: string | null;
73
+ productSku?: string | null;
74
+ productUnitLabel?: string | null;
75
+ preview: FinalizeInvoiceLinePreview;
76
+ }
77
+
59
78
  export interface GiftCardFinalizeLineRequest {
60
79
  itemType: typeof InvoiceItemType.GIFT_CARD;
61
80
  giftCardProductId?: string | null;
@@ -70,11 +89,15 @@ export interface GiftCardFinalizeLineRequest {
70
89
  sortOrder: number;
71
90
  imageUrl?: string | null;
72
91
  validityLabel?: string | null;
92
+ /** Custom gift card expiry — used when giftCardProductId is null. */
93
+ validityValue?: number | null;
94
+ validityUnit?: string | null;
73
95
  preview: FinalizeInvoiceLinePreview;
74
96
  }
75
97
 
76
98
  export type FinalizeInvoiceLineRequest =
77
99
  | ServiceFinalizeLineRequest
100
+ | ProductFinalizeLineRequest
78
101
  | GiftCardFinalizeLineRequest;
79
102
 
80
103
  export interface FinalizeInvoicePaymentRequest {
@@ -2,6 +2,7 @@ export enum MovementCategory {
2
2
  Manual = "manual",
3
3
  Opening = "opening",
4
4
  Sale = "sale",
5
+ SaleReversal = "sale_reversal",
5
6
  StockTake = "stockTake",
6
7
  Purchase = "purchase",
7
8
  Transfer = "transfer",
@@ -3,6 +3,6 @@ import {OutletModel} from "./outlet.model";
3
3
  export interface StockLevelModel {
4
4
  outlet: OutletModel,
5
5
  currentStockCount: number,
6
- minimumOrderLevel: number,
7
- warningStockLevel: number
6
+ lowStockLevel: number,
7
+ reorderQuantity: number | null
8
8
  }
@@ -3,6 +3,6 @@ import {WarehouseModel} from "./warehouse.model";
3
3
  export interface WarehouseStockLevelModel {
4
4
  warehouse: WarehouseModel;
5
5
  currentStockCount: number;
6
- minimumOrderLevel: number;
7
- warningStockLevel: number;
6
+ lowStockLevel: number;
7
+ reorderQuantity: number | null;
8
8
  }