@merkaly/api 0.8.0 → 0.10.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/app.schemas.d.ts +4 -12
- package/dist/finance/payment/payment.entity.d.ts +3 -3
- package/dist/index.d.ts +3 -4
- package/dist/index.js +3 -4
- package/dist/integration/supplier/product.d.ts +9 -0
- package/dist/inventory/catalog/product/product.entity.d.ts +4 -0
- package/dist/inventory/catalog/variant/index.d.ts +1 -0
- package/dist/inventory/catalog/variant/variant.entity.d.ts +3 -0
- package/dist/inventory/catalog/variant/variant.option.entity.d.ts +16 -0
- package/dist/order/item/index.d.ts +1 -0
- package/dist/order/item/index.js +1 -0
- package/dist/order/{sale/item → item}/item.entity.d.ts +3 -3
- package/dist/order/purchase/index.d.ts +5 -0
- package/dist/order/purchase/index.js +4 -0
- package/dist/order/purchase/{item/request.validator.d.ts → item.request.validator.d.ts} +2 -2
- package/dist/order/purchase/{item/request.validator.js → item.request.validator.js} +1 -1
- package/dist/order/purchase/purchase.entity.d.ts +10 -0
- package/dist/order/purchase/purchase.enum.d.ts +8 -0
- package/dist/order/purchase/purchase.enum.js +14 -0
- package/dist/order/purchase/purchase.transition.d.ts +8 -0
- package/dist/order/purchase/purchase.transition.js +19 -0
- package/dist/order/purchase/request.validator.d.ts +23 -0
- package/dist/order/purchase/{transaction/request.validator.js → request.validator.js} +25 -18
- package/dist/order/sale/index.d.ts +5 -0
- package/dist/order/sale/index.js +4 -0
- package/dist/order/sale/{item/request.validator.d.ts → item.request.validator.d.ts} +2 -2
- package/dist/order/sale/{item/request.validator.js → item.request.validator.js} +1 -1
- package/dist/order/sale/request.validator.d.ts +24 -0
- package/dist/order/sale/{transaction/request.validator.js → request.validator.js} +19 -19
- package/dist/order/sale/sale.entity.d.ts +10 -0
- package/dist/order/sale/sale.enum.d.ts +9 -0
- package/dist/order/sale/sale.enum.js +15 -0
- package/dist/order/sale/sale.transition.d.ts +8 -0
- package/dist/order/sale/sale.transition.js +20 -0
- package/dist/settings/organization/organization.contract.d.ts +2 -0
- package/dist/settings/organization/request.validator.d.ts +2 -0
- package/dist/settings/organization/request.validator.js +16 -0
- package/dist/transaction.entity.d.ts +1 -1
- package/package.json +1 -1
- package/dist/order/purchase/item/index.d.ts +0 -2
- package/dist/order/purchase/item/index.js +0 -1
- package/dist/order/purchase/item/item.entity.d.ts +0 -19
- package/dist/order/purchase/transaction/index.d.ts +0 -4
- package/dist/order/purchase/transaction/index.js +0 -3
- package/dist/order/purchase/transaction/request.validator.d.ts +0 -22
- package/dist/order/purchase/transaction/transaction.entity.d.ts +0 -8
- package/dist/order/purchase/transaction/transaction.enum.d.ts +0 -8
- package/dist/order/purchase/transaction/transaction.enum.js +0 -14
- package/dist/order/purchase/transaction/transaction.transition.d.ts +0 -8
- package/dist/order/purchase/transaction/transaction.transition.js +0 -19
- package/dist/order/sale/item/index.d.ts +0 -2
- package/dist/order/sale/item/index.js +0 -1
- package/dist/order/sale/transaction/index.d.ts +0 -4
- package/dist/order/sale/transaction/index.js +0 -3
- package/dist/order/sale/transaction/request.validator.d.ts +0 -24
- package/dist/order/sale/transaction/transaction.entity.d.ts +0 -8
- package/dist/order/sale/transaction/transaction.enum.d.ts +0 -9
- package/dist/order/sale/transaction/transaction.enum.js +0 -15
- package/dist/order/sale/transaction/transaction.transition.d.ts +0 -8
- package/dist/order/sale/transaction/transaction.transition.js +0 -20
package/dist/app.schemas.d.ts
CHANGED
|
@@ -23,18 +23,10 @@ export declare abstract class AppSchemas {
|
|
|
23
23
|
};
|
|
24
24
|
};
|
|
25
25
|
static get order(): {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
sale: {
|
|
31
|
-
items: string;
|
|
32
|
-
transactions: string;
|
|
33
|
-
};
|
|
34
|
-
service: {
|
|
35
|
-
items: string;
|
|
36
|
-
transactions: string;
|
|
37
|
-
};
|
|
26
|
+
purchaseItems: string;
|
|
27
|
+
purchases: string;
|
|
28
|
+
saleItems: string;
|
|
29
|
+
sales: string;
|
|
38
30
|
};
|
|
39
31
|
static get integration(): {
|
|
40
32
|
suppliers: string;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { OrderPurchaseEntity } from '../../order/purchase';
|
|
2
|
+
import { OrderSaleEntity } from '../../order/sale';
|
|
3
3
|
import { AbstractEntity } from '../../abstract.entity.js';
|
|
4
4
|
import { StatusEntity } from '../../status.plugin.js';
|
|
5
5
|
import { ITransitionable } from '../../transitionable.interface.js';
|
|
6
6
|
import { FinancePaymentMethodEnum, FinancePaymentStatusEnum, FinancePaymentTypeEnum } from './payment.enum.js';
|
|
7
|
-
export type OrderEntity =
|
|
7
|
+
export type OrderEntity = OrderSaleEntity | OrderPurchaseEntity;
|
|
8
8
|
export declare class FinancePaymentEntity extends AbstractEntity implements ITransitionable<FinancePaymentStatusEnum> {
|
|
9
9
|
type: FinancePaymentTypeEnum;
|
|
10
10
|
target: string;
|
package/dist/index.d.ts
CHANGED
|
@@ -21,9 +21,8 @@ export * from './inventory/catalog/brand';
|
|
|
21
21
|
export * from './inventory/catalog/category';
|
|
22
22
|
export * from './inventory/catalog/product';
|
|
23
23
|
export * from './inventory/catalog/variant';
|
|
24
|
-
export * from './order/purchase
|
|
25
|
-
export * from './order/
|
|
26
|
-
export * from './order/
|
|
27
|
-
export * from './order/sale/transaction';
|
|
24
|
+
export * from './order/purchase';
|
|
25
|
+
export * from './order/sale';
|
|
26
|
+
export * from './order/item';
|
|
28
27
|
export * from './settings/organization';
|
|
29
28
|
export type { SaveEntityArgs } from './repository.types';
|
package/dist/index.js
CHANGED
|
@@ -13,8 +13,7 @@ export * from './inventory/catalog/brand/index.js';
|
|
|
13
13
|
export * from './inventory/catalog/category/index.js';
|
|
14
14
|
export * from './inventory/catalog/product/index.js';
|
|
15
15
|
export * from './inventory/catalog/variant/index.js';
|
|
16
|
-
export * from './order/purchase/
|
|
17
|
-
export * from './order/
|
|
18
|
-
export * from './order/
|
|
19
|
-
export * from './order/sale/transaction/index.js';
|
|
16
|
+
export * from './order/purchase/index.js';
|
|
17
|
+
export * from './order/sale/index.js';
|
|
18
|
+
export * from './order/item/index.js';
|
|
20
19
|
export * from './settings/organization/index.js';
|
|
@@ -4,9 +4,18 @@ export interface SupplierProductAsset {
|
|
|
4
4
|
type: AssetType;
|
|
5
5
|
url: string;
|
|
6
6
|
}
|
|
7
|
+
export interface SupplierProductOption {
|
|
8
|
+
name: string;
|
|
9
|
+
value: string;
|
|
10
|
+
label?: string;
|
|
11
|
+
externalNameId: string;
|
|
12
|
+
externalValueId: string;
|
|
13
|
+
}
|
|
7
14
|
export interface SupplierProductVariant {
|
|
8
15
|
externalVariantId: string;
|
|
9
16
|
name: string;
|
|
17
|
+
options: SupplierProductOption[];
|
|
18
|
+
shipsFrom?: SupplierProductOption;
|
|
10
19
|
supplierPrice: number;
|
|
11
20
|
stock: number;
|
|
12
21
|
picture?: string;
|
|
@@ -21,5 +21,9 @@ export declare class CatalogProductEntity extends AbstractEntity {
|
|
|
21
21
|
hashtags: string[];
|
|
22
22
|
readonly picture: AssetEntity;
|
|
23
23
|
readonly assets: AssetEntity[];
|
|
24
|
+
readonly options: {
|
|
25
|
+
name: string;
|
|
26
|
+
values: string[];
|
|
27
|
+
}[];
|
|
24
28
|
readonly variants: CatalogVariantEntity[];
|
|
25
29
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AssetEntity } from '../../../assets/asset';
|
|
2
2
|
import { AbstractEntity } from '../../../abstract.entity.js';
|
|
3
|
+
import { CatalogVariantOptionEntity } from './variant.option.entity.js';
|
|
3
4
|
import type { CatalogProductEntity } from '../product';
|
|
4
5
|
export declare class CatalogVariantEntity extends AbstractEntity {
|
|
5
6
|
product: CatalogProductEntity;
|
|
@@ -8,5 +9,7 @@ export declare class CatalogVariantEntity extends AbstractEntity {
|
|
|
8
9
|
active: boolean;
|
|
9
10
|
picture?: AssetEntity;
|
|
10
11
|
assets: AssetEntity[];
|
|
12
|
+
options: CatalogVariantOptionEntity[];
|
|
13
|
+
shipsFrom?: CatalogVariantOptionEntity;
|
|
11
14
|
externalVariantId?: string;
|
|
12
15
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare class CatalogVariantOptionEntity {
|
|
2
|
+
name: string;
|
|
3
|
+
value: string;
|
|
4
|
+
label?: string;
|
|
5
|
+
externalNameId?: string;
|
|
6
|
+
externalValueId?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare const CatalogVariantOptionSchema: import("mongoose").Schema<CatalogVariantOptionEntity, import("mongoose").Model<CatalogVariantOptionEntity, any, any, any, import("mongoose").Document<unknown, any, CatalogVariantOptionEntity, any, {}> & CatalogVariantOptionEntity & {
|
|
9
|
+
_id: import("mongoose").Types.ObjectId;
|
|
10
|
+
} & {
|
|
11
|
+
__v: number;
|
|
12
|
+
}, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, CatalogVariantOptionEntity, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<CatalogVariantOptionEntity>, {}, import("mongoose").ResolveSchemaOptions<import("mongoose").DefaultSchemaOptions>> & import("mongoose").FlatRecord<CatalogVariantOptionEntity> & {
|
|
13
|
+
_id: import("mongoose").Types.ObjectId;
|
|
14
|
+
} & {
|
|
15
|
+
__v: number;
|
|
16
|
+
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './item.entity';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { CatalogProductEntity } from '
|
|
2
|
-
import { CatalogVariantEntity } from '
|
|
3
|
-
import { AbstractEntity } from '
|
|
1
|
+
import { CatalogProductEntity } from '../../inventory/catalog/product';
|
|
2
|
+
import { CatalogVariantEntity } from '../../inventory/catalog/variant';
|
|
3
|
+
import { AbstractEntity } from '../../abstract.entity.js';
|
|
4
4
|
interface ItemPricing {
|
|
5
5
|
product: number;
|
|
6
6
|
readonly total: number;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AbstractRequestValidator } from '
|
|
2
|
-
import type { ItemEntity } from '
|
|
1
|
+
import { AbstractRequestValidator } from '../../abstract.validator.js';
|
|
2
|
+
import type { ItemEntity } from '../item';
|
|
3
3
|
export declare class PurchaseItemRequestValidator extends AbstractRequestValidator {
|
|
4
4
|
_id?: string;
|
|
5
5
|
product: string;
|
|
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
import * as class_validator_1 from "class-validator";
|
|
12
|
-
import * as abstract_validator_1 from '
|
|
12
|
+
import * as abstract_validator_1 from '../../abstract.validator.js';
|
|
13
13
|
export class PurchaseItemRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
14
14
|
_id;
|
|
15
15
|
product;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ContactVendorEntity } from '../../contact/vendor';
|
|
2
|
+
import { ItemEntity } from '../item';
|
|
3
|
+
import { TransactionEntity } from '../../transaction.entity.js';
|
|
4
|
+
import { OrderPurchaseStatusEnum } from './purchase.enum.js';
|
|
5
|
+
import type { OrderSaleEntity } from '../sale';
|
|
6
|
+
export declare class OrderPurchaseEntity extends TransactionEntity<OrderPurchaseStatusEnum> {
|
|
7
|
+
vendor?: ContactVendorEntity;
|
|
8
|
+
customerOrder?: OrderSaleEntity;
|
|
9
|
+
items: ItemEntity[];
|
|
10
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare enum OrderPurchaseStatusEnum {
|
|
2
|
+
OPEN = "OPEN",
|
|
3
|
+
ORDERED = "ORDERED",
|
|
4
|
+
RECEIVED = "RECEIVED",
|
|
5
|
+
CANCELLED = "CANCELLED"
|
|
6
|
+
}
|
|
7
|
+
export declare const PURCHASE_OPEN_STATUSES: readonly OrderPurchaseStatusEnum[];
|
|
8
|
+
export declare const PURCHASE_INCOMING_STATUSES: readonly OrderPurchaseStatusEnum[];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export var OrderPurchaseStatusEnum;
|
|
2
|
+
(function (OrderPurchaseStatusEnum) {
|
|
3
|
+
OrderPurchaseStatusEnum["OPEN"] = "OPEN";
|
|
4
|
+
OrderPurchaseStatusEnum["ORDERED"] = "ORDERED";
|
|
5
|
+
OrderPurchaseStatusEnum["RECEIVED"] = "RECEIVED";
|
|
6
|
+
OrderPurchaseStatusEnum["CANCELLED"] = "CANCELLED";
|
|
7
|
+
})(OrderPurchaseStatusEnum || (OrderPurchaseStatusEnum = {}));
|
|
8
|
+
export const PURCHASE_OPEN_STATUSES = [
|
|
9
|
+
OrderPurchaseStatusEnum.OPEN,
|
|
10
|
+
OrderPurchaseStatusEnum.ORDERED,
|
|
11
|
+
];
|
|
12
|
+
export const PURCHASE_INCOMING_STATUSES = [
|
|
13
|
+
OrderPurchaseStatusEnum.ORDERED,
|
|
14
|
+
];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractTransition } from '../../abstract.transition.js';
|
|
2
|
+
import { OrderPurchaseStatusEnum as Status } from './purchase.enum.js';
|
|
3
|
+
|
|
4
|
+
export declare class OrderPurchaseTransition extends AbstractTransition<Status, unknown> {
|
|
5
|
+
protected readonly $states: Readonly<Record<Status, readonly Status[]>>;
|
|
6
|
+
constructor(status?: Status);
|
|
7
|
+
readonly initialStates: readonly Status[];
|
|
8
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { AbstractTransition } from '../../abstract.transition.js';
|
|
2
|
+
import * as purchase_enum_1 from './purchase.enum.js';
|
|
3
|
+
|
|
4
|
+
export class OrderPurchaseTransition extends AbstractTransition {
|
|
5
|
+
$states = {
|
|
6
|
+
[purchase_enum_1.OrderPurchaseStatusEnum.OPEN]: [],
|
|
7
|
+
[purchase_enum_1.OrderPurchaseStatusEnum.ORDERED]: [],
|
|
8
|
+
[purchase_enum_1.OrderPurchaseStatusEnum.RECEIVED]: [],
|
|
9
|
+
[purchase_enum_1.OrderPurchaseStatusEnum.CANCELLED]: [],
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
constructor(status = purchase_enum_1.OrderPurchaseStatusEnum.OPEN) {
|
|
13
|
+
super(status);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
get initialStates() {
|
|
17
|
+
return [purchase_enum_1.OrderPurchaseStatusEnum.OPEN];
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { FinancePaymentStatusEnum, FinancePaymentMethodEnum } from '../../finance/payment';
|
|
2
|
+
import { OrderPurchaseStatusEnum } from './purchase.enum.js';
|
|
3
|
+
import { AbstractRequestValidator } from '../../abstract.validator.js';
|
|
4
|
+
import { PurchaseItemRequestValidator } from './item.request.validator.js';
|
|
5
|
+
import type { OrderPurchaseEntity } from './purchase.entity.js';
|
|
6
|
+
export declare class CreatePurchaseRequestValidator extends AbstractRequestValidator {
|
|
7
|
+
items: PurchaseItemRequestValidator[];
|
|
8
|
+
method: FinancePaymentMethodEnum;
|
|
9
|
+
notes?: string;
|
|
10
|
+
vendor?: string;
|
|
11
|
+
customerOrder?: string;
|
|
12
|
+
payment: FinancePaymentStatusEnum;
|
|
13
|
+
status?: OrderPurchaseStatusEnum;
|
|
14
|
+
constructor(order?: OrderPurchaseEntity);
|
|
15
|
+
get total(): {
|
|
16
|
+
units: number;
|
|
17
|
+
price: number;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export declare class UpdatePurchaseRequestValidator extends CreatePurchaseRequestValidator {
|
|
21
|
+
items: PurchaseItemRequestValidator[];
|
|
22
|
+
method: FinancePaymentMethodEnum;
|
|
23
|
+
}
|
|
@@ -10,17 +10,18 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
import * as class_transformer_1 from "class-transformer";
|
|
12
12
|
import * as class_validator_1 from "class-validator";
|
|
13
|
-
import * as payment_enum_1 from '
|
|
14
|
-
import * as
|
|
15
|
-
import * as abstract_validator_1 from '
|
|
16
|
-
import * as
|
|
17
|
-
export class
|
|
13
|
+
import * as payment_enum_1 from '../../finance/payment/index.js';
|
|
14
|
+
import * as purchase_enum_1 from './purchase.enum.js';
|
|
15
|
+
import * as abstract_validator_1 from '../../abstract.validator.js';
|
|
16
|
+
import * as item_request_validator_1 from './item.request.validator.js';
|
|
17
|
+
export class CreatePurchaseRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
18
18
|
items = [];
|
|
19
19
|
method;
|
|
20
20
|
notes;
|
|
21
21
|
vendor;
|
|
22
|
+
customerOrder;
|
|
22
23
|
payment = payment_enum_1.FinancePaymentStatusEnum.PENDING;
|
|
23
|
-
status =
|
|
24
|
+
status = purchase_enum_1.OrderPurchaseStatusEnum.OPEN;
|
|
24
25
|
constructor(order) {
|
|
25
26
|
super();
|
|
26
27
|
if (!order) {
|
|
@@ -29,13 +30,14 @@ export class CreatePurchaseTransactionRequestValidator extends abstract_validato
|
|
|
29
30
|
this.notes = order.notes;
|
|
30
31
|
this.method = order.payment?.method;
|
|
31
32
|
this.vendor = (order.vendor?._id || order.vendor);
|
|
33
|
+
this.customerOrder = (order.customerOrder?._id || order.customerOrder);
|
|
32
34
|
if (order.status !== undefined) {
|
|
33
35
|
this.status = order.status;
|
|
34
36
|
}
|
|
35
37
|
if (order.payment?.status !== undefined) {
|
|
36
38
|
this.payment = order.payment.status;
|
|
37
39
|
}
|
|
38
|
-
this.items = order.items?.map((it) => new
|
|
40
|
+
this.items = order.items?.map((it) => new item_request_validator_1.PurchaseItemRequestValidator(it)) ?? this.items;
|
|
39
41
|
}
|
|
40
42
|
get total() {
|
|
41
43
|
return this.items.reduce((acc, item) => {
|
|
@@ -47,44 +49,49 @@ export class CreatePurchaseTransactionRequestValidator extends abstract_validato
|
|
|
47
49
|
}
|
|
48
50
|
__decorate([
|
|
49
51
|
(0, class_validator_1.IsArray)(),
|
|
50
|
-
(0, class_transformer_1.Type)(() =>
|
|
52
|
+
(0, class_transformer_1.Type)(() => item_request_validator_1.PurchaseItemRequestValidator),
|
|
51
53
|
(0, class_validator_1.ValidateNested)({ each: true }),
|
|
52
54
|
__metadata("design:type", Array)
|
|
53
|
-
],
|
|
55
|
+
], CreatePurchaseRequestValidator.prototype, "items", void 0);
|
|
54
56
|
__decorate([
|
|
55
57
|
(0, class_validator_1.IsEnum)(payment_enum_1.FinancePaymentMethodEnum),
|
|
56
58
|
__metadata("design:type", String)
|
|
57
|
-
],
|
|
59
|
+
], CreatePurchaseRequestValidator.prototype, "method", void 0);
|
|
58
60
|
__decorate([
|
|
59
61
|
(0, class_validator_1.IsString)(),
|
|
60
62
|
(0, class_validator_1.Length)(0, 500),
|
|
61
63
|
(0, class_validator_1.IsOptional)(),
|
|
62
64
|
__metadata("design:type", String)
|
|
63
|
-
],
|
|
65
|
+
], CreatePurchaseRequestValidator.prototype, "notes", void 0);
|
|
64
66
|
__decorate([
|
|
65
67
|
(0, class_validator_1.IsMongoId)(),
|
|
66
68
|
(0, class_validator_1.IsOptional)(),
|
|
67
69
|
__metadata("design:type", String)
|
|
68
|
-
],
|
|
70
|
+
], CreatePurchaseRequestValidator.prototype, "vendor", void 0);
|
|
71
|
+
__decorate([
|
|
72
|
+
(0, class_validator_1.IsMongoId)(),
|
|
73
|
+
(0, class_validator_1.IsOptional)(),
|
|
74
|
+
__metadata("design:type", String)
|
|
75
|
+
], CreatePurchaseRequestValidator.prototype, "customerOrder", void 0);
|
|
69
76
|
__decorate([
|
|
70
77
|
(0, class_validator_1.IsEnum)(payment_enum_1.FinancePaymentStatusEnum),
|
|
71
78
|
(0, class_validator_1.IsDefined)(),
|
|
72
79
|
(0, class_validator_1.IsOptional)(),
|
|
73
80
|
__metadata("design:type", String)
|
|
74
|
-
],
|
|
81
|
+
], CreatePurchaseRequestValidator.prototype, "payment", void 0);
|
|
75
82
|
__decorate([
|
|
76
|
-
(0, class_validator_1.IsEnum)(
|
|
83
|
+
(0, class_validator_1.IsEnum)(purchase_enum_1.OrderPurchaseStatusEnum),
|
|
77
84
|
(0, class_validator_1.IsDefined)(),
|
|
78
85
|
(0, class_validator_1.IsOptional)(),
|
|
79
86
|
__metadata("design:type", Object)
|
|
80
|
-
],
|
|
81
|
-
export class
|
|
87
|
+
], CreatePurchaseRequestValidator.prototype, "status", void 0);
|
|
88
|
+
export class UpdatePurchaseRequestValidator extends CreatePurchaseRequestValidator {
|
|
82
89
|
}
|
|
83
90
|
__decorate([
|
|
84
91
|
(0, class_validator_1.IsOptional)(),
|
|
85
92
|
__metadata("design:type", Array)
|
|
86
|
-
],
|
|
93
|
+
], UpdatePurchaseRequestValidator.prototype, "items", void 0);
|
|
87
94
|
__decorate([
|
|
88
95
|
(0, class_validator_1.IsOptional)(),
|
|
89
96
|
__metadata("design:type", String)
|
|
90
|
-
],
|
|
97
|
+
], UpdatePurchaseRequestValidator.prototype, "method", void 0);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AbstractRequestValidator } from '
|
|
2
|
-
import type { ItemEntity } from '
|
|
1
|
+
import { AbstractRequestValidator } from '../../abstract.validator.js';
|
|
2
|
+
import type { ItemEntity } from '../item';
|
|
3
3
|
export declare class SaleItemRequestValidator extends AbstractRequestValidator {
|
|
4
4
|
_id?: string;
|
|
5
5
|
product: string;
|
|
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
import * as class_validator_1 from "class-validator";
|
|
12
|
-
import * as abstract_validator_1 from '
|
|
12
|
+
import * as abstract_validator_1 from '../../abstract.validator.js';
|
|
13
13
|
export class SaleItemRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
14
14
|
_id;
|
|
15
15
|
product;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { FinancePaymentStatusEnum, FinancePaymentMethodEnum } from '../../finance/payment';
|
|
2
|
+
import { OrderSaleStatusEnum } from './sale.enum.js';
|
|
3
|
+
import { AbstractRequestValidator } from '../../abstract.validator.js';
|
|
4
|
+
import { SaleItemRequestValidator } from './item.request.validator.js';
|
|
5
|
+
import type { OrderSaleEntity } from './sale.entity.js';
|
|
6
|
+
export declare class CreateSaleRequestValidator extends AbstractRequestValidator {
|
|
7
|
+
items: SaleItemRequestValidator[];
|
|
8
|
+
method: FinancePaymentMethodEnum;
|
|
9
|
+
notes?: string;
|
|
10
|
+
customer?: string;
|
|
11
|
+
payment: FinancePaymentStatusEnum;
|
|
12
|
+
status?: OrderSaleStatusEnum;
|
|
13
|
+
constructor(order?: OrderSaleEntity);
|
|
14
|
+
get total(): {
|
|
15
|
+
units: number;
|
|
16
|
+
price: number;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export declare class UpdateSaleRequestValidator extends CreateSaleRequestValidator {
|
|
20
|
+
items: SaleItemRequestValidator[];
|
|
21
|
+
payment: any;
|
|
22
|
+
method: FinancePaymentMethodEnum;
|
|
23
|
+
status: any;
|
|
24
|
+
}
|
|
@@ -10,17 +10,17 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
import * as class_transformer_1 from "class-transformer";
|
|
12
12
|
import * as class_validator_1 from "class-validator";
|
|
13
|
-
import * as payment_enum_1 from '
|
|
14
|
-
import * as
|
|
15
|
-
import * as abstract_validator_1 from '
|
|
16
|
-
import * as
|
|
17
|
-
export class
|
|
13
|
+
import * as payment_enum_1 from '../../finance/payment/index.js';
|
|
14
|
+
import * as sale_enum_1 from './sale.enum.js';
|
|
15
|
+
import * as abstract_validator_1 from '../../abstract.validator.js';
|
|
16
|
+
import * as item_request_validator_1 from './item.request.validator.js';
|
|
17
|
+
export class CreateSaleRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
18
18
|
items = [];
|
|
19
19
|
method;
|
|
20
20
|
notes;
|
|
21
21
|
customer;
|
|
22
22
|
payment = payment_enum_1.FinancePaymentStatusEnum.PENDING;
|
|
23
|
-
status =
|
|
23
|
+
status = sale_enum_1.OrderSaleStatusEnum.OPEN;
|
|
24
24
|
constructor(order) {
|
|
25
25
|
super();
|
|
26
26
|
if (!order) {
|
|
@@ -35,7 +35,7 @@ export class CreateSaleTransactionRequestValidator extends abstract_validator_1.
|
|
|
35
35
|
if (order.payment?.status !== undefined) {
|
|
36
36
|
this.payment = order.payment.status;
|
|
37
37
|
}
|
|
38
|
-
this.items = order.items?.map((it) => new
|
|
38
|
+
this.items = order.items?.map((it) => new item_request_validator_1.SaleItemRequestValidator(it)) ?? this.items;
|
|
39
39
|
}
|
|
40
40
|
get total() {
|
|
41
41
|
return this.items.reduce((acc, item) => {
|
|
@@ -47,51 +47,51 @@ export class CreateSaleTransactionRequestValidator extends abstract_validator_1.
|
|
|
47
47
|
}
|
|
48
48
|
__decorate([
|
|
49
49
|
(0, class_validator_1.IsArray)(),
|
|
50
|
-
(0, class_transformer_1.Type)(() =>
|
|
50
|
+
(0, class_transformer_1.Type)(() => item_request_validator_1.SaleItemRequestValidator),
|
|
51
51
|
(0, class_validator_1.ValidateNested)({ each: true }),
|
|
52
52
|
__metadata("design:type", Array)
|
|
53
|
-
],
|
|
53
|
+
], CreateSaleRequestValidator.prototype, "items", void 0);
|
|
54
54
|
__decorate([
|
|
55
55
|
(0, class_validator_1.IsEnum)(payment_enum_1.FinancePaymentMethodEnum),
|
|
56
56
|
__metadata("design:type", String)
|
|
57
|
-
],
|
|
57
|
+
], CreateSaleRequestValidator.prototype, "method", void 0);
|
|
58
58
|
__decorate([
|
|
59
59
|
(0, class_validator_1.IsString)(),
|
|
60
60
|
(0, class_validator_1.Length)(0, 500),
|
|
61
61
|
(0, class_validator_1.IsOptional)(),
|
|
62
62
|
__metadata("design:type", String)
|
|
63
|
-
],
|
|
63
|
+
], CreateSaleRequestValidator.prototype, "notes", void 0);
|
|
64
64
|
__decorate([
|
|
65
65
|
(0, class_validator_1.IsMongoId)(),
|
|
66
66
|
(0, class_validator_1.IsOptional)(),
|
|
67
67
|
__metadata("design:type", String)
|
|
68
|
-
],
|
|
68
|
+
], CreateSaleRequestValidator.prototype, "customer", void 0);
|
|
69
69
|
__decorate([
|
|
70
70
|
(0, class_validator_1.IsEnum)(payment_enum_1.FinancePaymentStatusEnum),
|
|
71
71
|
(0, class_validator_1.IsDefined)(),
|
|
72
72
|
(0, class_validator_1.IsOptional)(),
|
|
73
73
|
__metadata("design:type", String)
|
|
74
|
-
],
|
|
74
|
+
], CreateSaleRequestValidator.prototype, "payment", void 0);
|
|
75
75
|
__decorate([
|
|
76
|
-
(0, class_validator_1.IsEnum)(
|
|
76
|
+
(0, class_validator_1.IsEnum)(sale_enum_1.OrderSaleStatusEnum),
|
|
77
77
|
(0, class_validator_1.IsDefined)(),
|
|
78
78
|
(0, class_validator_1.IsOptional)(),
|
|
79
79
|
__metadata("design:type", Object)
|
|
80
|
-
],
|
|
81
|
-
export class
|
|
80
|
+
], CreateSaleRequestValidator.prototype, "status", void 0);
|
|
81
|
+
export class UpdateSaleRequestValidator extends CreateSaleRequestValidator {
|
|
82
82
|
payment = undefined;
|
|
83
83
|
status = undefined;
|
|
84
84
|
}
|
|
85
85
|
__decorate([
|
|
86
86
|
(0, class_validator_1.IsOptional)(),
|
|
87
87
|
__metadata("design:type", Array)
|
|
88
|
-
],
|
|
88
|
+
], UpdateSaleRequestValidator.prototype, "items", void 0);
|
|
89
89
|
__decorate([
|
|
90
90
|
(0, class_validator_1.ValidateIf)(() => false),
|
|
91
91
|
(0, class_transformer_1.Transform)(() => undefined),
|
|
92
92
|
__metadata("design:type", Object)
|
|
93
|
-
],
|
|
93
|
+
], UpdateSaleRequestValidator.prototype, "payment", void 0);
|
|
94
94
|
__decorate([
|
|
95
95
|
(0, class_validator_1.IsOptional)(),
|
|
96
96
|
__metadata("design:type", String)
|
|
97
|
-
],
|
|
97
|
+
], UpdateSaleRequestValidator.prototype, "method", void 0);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ContactCustomerEntity } from '../../contact/customer';
|
|
2
|
+
import { ItemEntity } from '../item';
|
|
3
|
+
import { TransactionEntity } from '../../transaction.entity.js';
|
|
4
|
+
import { OrderSaleStatusEnum } from './sale.enum.js';
|
|
5
|
+
import type { OrderPurchaseEntity } from '../purchase';
|
|
6
|
+
export declare class OrderSaleEntity extends TransactionEntity<OrderSaleStatusEnum> {
|
|
7
|
+
customer: ContactCustomerEntity;
|
|
8
|
+
items: ItemEntity[];
|
|
9
|
+
readonly purchases: OrderPurchaseEntity[];
|
|
10
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare enum OrderSaleStatusEnum {
|
|
2
|
+
OPEN = "OPEN",
|
|
3
|
+
IN_PROGRESS = "IN_PROGRESS",
|
|
4
|
+
COMPLETED = "COMPLETED",
|
|
5
|
+
CANCELLED = "CANCELLED",
|
|
6
|
+
RETURNED = "RETURNED"
|
|
7
|
+
}
|
|
8
|
+
export declare const SALE_PRE_FULFILLMENT_STATUSES: readonly OrderSaleStatusEnum[];
|
|
9
|
+
export declare const SALE_OPEN_STATUSES: readonly OrderSaleStatusEnum[];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export var OrderSaleStatusEnum;
|
|
2
|
+
(function (OrderSaleStatusEnum) {
|
|
3
|
+
OrderSaleStatusEnum["OPEN"] = "OPEN";
|
|
4
|
+
OrderSaleStatusEnum["IN_PROGRESS"] = "IN_PROGRESS";
|
|
5
|
+
OrderSaleStatusEnum["COMPLETED"] = "COMPLETED";
|
|
6
|
+
OrderSaleStatusEnum["CANCELLED"] = "CANCELLED";
|
|
7
|
+
OrderSaleStatusEnum["RETURNED"] = "RETURNED";
|
|
8
|
+
})(OrderSaleStatusEnum || (OrderSaleStatusEnum = {}));
|
|
9
|
+
export const SALE_PRE_FULFILLMENT_STATUSES = [
|
|
10
|
+
OrderSaleStatusEnum.OPEN,
|
|
11
|
+
];
|
|
12
|
+
export const SALE_OPEN_STATUSES = [
|
|
13
|
+
...SALE_PRE_FULFILLMENT_STATUSES,
|
|
14
|
+
OrderSaleStatusEnum.IN_PROGRESS,
|
|
15
|
+
];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbstractTransition } from '../../abstract.transition.js';
|
|
2
|
+
import { OrderSaleStatusEnum as Status } from './sale.enum.js';
|
|
3
|
+
|
|
4
|
+
export declare class OrderSaleTransition extends AbstractTransition<Status, unknown> {
|
|
5
|
+
protected readonly $states: Readonly<Record<Status, readonly Status[]>>;
|
|
6
|
+
constructor(status?: Status);
|
|
7
|
+
readonly initialStates: readonly Status[];
|
|
8
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AbstractTransition } from '../../abstract.transition.js';
|
|
2
|
+
import * as sale_enum_1 from './sale.enum.js';
|
|
3
|
+
|
|
4
|
+
export class OrderSaleTransition extends AbstractTransition {
|
|
5
|
+
$states = {
|
|
6
|
+
[sale_enum_1.OrderSaleStatusEnum.OPEN]: [],
|
|
7
|
+
[sale_enum_1.OrderSaleStatusEnum.IN_PROGRESS]: [],
|
|
8
|
+
[sale_enum_1.OrderSaleStatusEnum.COMPLETED]: [],
|
|
9
|
+
[sale_enum_1.OrderSaleStatusEnum.CANCELLED]: [],
|
|
10
|
+
[sale_enum_1.OrderSaleStatusEnum.RETURNED]: [],
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
constructor(status = sale_enum_1.OrderSaleStatusEnum.OPEN) {
|
|
14
|
+
super(status);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
get initialStates() {
|
|
18
|
+
return [sale_enum_1.OrderSaleStatusEnum.OPEN];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -18,7 +18,9 @@ export interface SettingsOrganizationContactContract {
|
|
|
18
18
|
website?: string;
|
|
19
19
|
}
|
|
20
20
|
export interface SettingsOrganizationLocalizationContract {
|
|
21
|
+
country?: string;
|
|
21
22
|
currency?: string;
|
|
23
|
+
language?: string;
|
|
22
24
|
}
|
|
23
25
|
export interface SettingsOrganizationIdentityContract {
|
|
24
26
|
legalName?: string;
|
|
@@ -22,7 +22,9 @@ export declare class UpdateOrganizationContactRequestValidator extends AbstractR
|
|
|
22
22
|
constructor(contact?: SettingsOrganizationContactContract);
|
|
23
23
|
}
|
|
24
24
|
export declare class UpdateOrganizationLocalizationRequestValidator extends AbstractRequestValidator {
|
|
25
|
+
country?: string;
|
|
25
26
|
currency?: string;
|
|
27
|
+
language?: string;
|
|
26
28
|
constructor(localization?: SettingsOrganizationLocalizationContract);
|
|
27
29
|
}
|
|
28
30
|
export declare class UpdateOrganizationIdentityRequestValidator extends AbstractRequestValidator {
|
|
@@ -121,18 +121,34 @@ __decorate([
|
|
|
121
121
|
__metadata("design:type", String)
|
|
122
122
|
], UpdateOrganizationContactRequestValidator.prototype, "website", void 0);
|
|
123
123
|
export class UpdateOrganizationLocalizationRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
124
|
+
country;
|
|
124
125
|
currency;
|
|
126
|
+
language;
|
|
125
127
|
constructor(localization) {
|
|
126
128
|
super();
|
|
129
|
+
this.country = localization?.country;
|
|
127
130
|
this.currency = localization?.currency;
|
|
131
|
+
this.language = localization?.language;
|
|
128
132
|
}
|
|
129
133
|
}
|
|
134
|
+
__decorate([
|
|
135
|
+
(0, class_validator_1.IsString)(),
|
|
136
|
+
(0, class_validator_1.Length)(2, 2),
|
|
137
|
+
(0, class_validator_1.IsOptional)(),
|
|
138
|
+
__metadata("design:type", String)
|
|
139
|
+
], UpdateOrganizationLocalizationRequestValidator.prototype, "country", void 0);
|
|
130
140
|
__decorate([
|
|
131
141
|
(0, class_validator_1.IsString)(),
|
|
132
142
|
(0, class_validator_1.Length)(0, 3),
|
|
133
143
|
(0, class_validator_1.IsOptional)(),
|
|
134
144
|
__metadata("design:type", String)
|
|
135
145
|
], UpdateOrganizationLocalizationRequestValidator.prototype, "currency", void 0);
|
|
146
|
+
__decorate([
|
|
147
|
+
(0, class_validator_1.IsString)(),
|
|
148
|
+
(0, class_validator_1.Length)(2, 5),
|
|
149
|
+
(0, class_validator_1.IsOptional)(),
|
|
150
|
+
__metadata("design:type", String)
|
|
151
|
+
], UpdateOrganizationLocalizationRequestValidator.prototype, "language", void 0);
|
|
136
152
|
export class UpdateOrganizationIdentityRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
137
153
|
legalName;
|
|
138
154
|
name;
|
|
@@ -3,7 +3,7 @@ import { FinancePaymentEntity } from './finance/payment';
|
|
|
3
3
|
import { AbstractEntity } from './abstract.entity.js';
|
|
4
4
|
import { StatusEntity } from './status.plugin.js';
|
|
5
5
|
import { ITransitionable } from './transitionable.interface.js';
|
|
6
|
-
import { ItemEntity } from './order/
|
|
6
|
+
import { ItemEntity } from './order/item';
|
|
7
7
|
export interface TransactionCapabilities {
|
|
8
8
|
addItems: boolean;
|
|
9
9
|
editItems: boolean;
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './request.validator.js';
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { CatalogProductEntity } from '../../../inventory/catalog/product';
|
|
2
|
-
import { CatalogVariantEntity } from '../../../inventory/catalog/variant';
|
|
3
|
-
import { AbstractEntity } from '../../../abstract.entity.js';
|
|
4
|
-
interface ItemPricing {
|
|
5
|
-
product: number;
|
|
6
|
-
readonly total: number;
|
|
7
|
-
readonly unit: number;
|
|
8
|
-
variant: number;
|
|
9
|
-
}
|
|
10
|
-
export declare class ItemEntity extends AbstractEntity {
|
|
11
|
-
product?: CatalogProductEntity;
|
|
12
|
-
variant: CatalogVariantEntity;
|
|
13
|
-
quantity: number;
|
|
14
|
-
notes: string;
|
|
15
|
-
price: ItemPricing;
|
|
16
|
-
readonly 'price.unit': number;
|
|
17
|
-
readonly 'price.total': number;
|
|
18
|
-
}
|
|
19
|
-
export {};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { FinancePaymentStatusEnum, FinancePaymentMethodEnum } from '../../../finance/payment';
|
|
2
|
-
import { PurchaseTransactionStatusEnum } from './transaction.enum.js';
|
|
3
|
-
import { AbstractRequestValidator } from '../../../abstract.validator.js';
|
|
4
|
-
import { PurchaseItemRequestValidator } from '../item';
|
|
5
|
-
import type { PurchaseTransactionEntity } from './transaction.entity.js';
|
|
6
|
-
export declare class CreatePurchaseTransactionRequestValidator extends AbstractRequestValidator {
|
|
7
|
-
items: PurchaseItemRequestValidator[];
|
|
8
|
-
method: FinancePaymentMethodEnum;
|
|
9
|
-
notes?: string;
|
|
10
|
-
vendor?: string;
|
|
11
|
-
payment: FinancePaymentStatusEnum;
|
|
12
|
-
status?: PurchaseTransactionStatusEnum;
|
|
13
|
-
constructor(order?: PurchaseTransactionEntity);
|
|
14
|
-
get total(): {
|
|
15
|
-
units: number;
|
|
16
|
-
price: number;
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
export declare class UpdatePurchaseTransactionRequestValidator extends CreatePurchaseTransactionRequestValidator {
|
|
20
|
-
items: PurchaseItemRequestValidator[];
|
|
21
|
-
method: FinancePaymentMethodEnum;
|
|
22
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { ContactVendorEntity } from '../../../contact/vendor';
|
|
2
|
-
import { ItemEntity } from '../../sale/item';
|
|
3
|
-
import { TransactionEntity } from '../../../transaction.entity.js';
|
|
4
|
-
import { PurchaseTransactionStatusEnum } from './transaction.enum.js';
|
|
5
|
-
export declare class PurchaseTransactionEntity extends TransactionEntity<PurchaseTransactionStatusEnum> {
|
|
6
|
-
vendor?: ContactVendorEntity;
|
|
7
|
-
items: ItemEntity[];
|
|
8
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export declare enum PurchaseTransactionStatusEnum {
|
|
2
|
-
OPEN = "OPEN",
|
|
3
|
-
ORDERED = "ORDERED",
|
|
4
|
-
RECEIVED = "RECEIVED",
|
|
5
|
-
CANCELLED = "CANCELLED"
|
|
6
|
-
}
|
|
7
|
-
export declare const PURCHASE_OPEN_TRANSACTION_STATUSES: readonly PurchaseTransactionStatusEnum[];
|
|
8
|
-
export declare const PURCHASE_INCOMING_TRANSACTION_STATUSES: readonly PurchaseTransactionStatusEnum[];
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export var PurchaseTransactionStatusEnum;
|
|
2
|
-
(function (PurchaseTransactionStatusEnum) {
|
|
3
|
-
PurchaseTransactionStatusEnum["OPEN"] = "OPEN";
|
|
4
|
-
PurchaseTransactionStatusEnum["ORDERED"] = "ORDERED";
|
|
5
|
-
PurchaseTransactionStatusEnum["RECEIVED"] = "RECEIVED";
|
|
6
|
-
PurchaseTransactionStatusEnum["CANCELLED"] = "CANCELLED";
|
|
7
|
-
})(PurchaseTransactionStatusEnum || (PurchaseTransactionStatusEnum = {}));
|
|
8
|
-
export const PURCHASE_OPEN_TRANSACTION_STATUSES = [
|
|
9
|
-
PurchaseTransactionStatusEnum.OPEN,
|
|
10
|
-
PurchaseTransactionStatusEnum.ORDERED,
|
|
11
|
-
];
|
|
12
|
-
export const PURCHASE_INCOMING_TRANSACTION_STATUSES = [
|
|
13
|
-
PurchaseTransactionStatusEnum.ORDERED,
|
|
14
|
-
];
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { AbstractTransition } from '../../../abstract.transition.js';
|
|
2
|
-
import { PurchaseTransactionStatusEnum as Status } from './transaction.enum.js';
|
|
3
|
-
|
|
4
|
-
export declare class PurchaseTransactionTransition extends AbstractTransition<Status, unknown> {
|
|
5
|
-
protected readonly $states: Readonly<Record<Status, readonly Status[]>>;
|
|
6
|
-
constructor(status?: Status);
|
|
7
|
-
readonly initialStates: readonly Status[];
|
|
8
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { AbstractTransition } from '../../../abstract.transition.js';
|
|
2
|
-
import * as transaction_enum_1 from './transaction.enum.js';
|
|
3
|
-
|
|
4
|
-
export class PurchaseTransactionTransition extends AbstractTransition {
|
|
5
|
-
$states = {
|
|
6
|
-
[transaction_enum_1.PurchaseTransactionStatusEnum.OPEN]: [],
|
|
7
|
-
[transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED]: [],
|
|
8
|
-
[transaction_enum_1.PurchaseTransactionStatusEnum.RECEIVED]: [],
|
|
9
|
-
[transaction_enum_1.PurchaseTransactionStatusEnum.CANCELLED]: [],
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
constructor(status = transaction_enum_1.PurchaseTransactionStatusEnum.OPEN) {
|
|
13
|
-
super(status);
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
get initialStates() {
|
|
17
|
-
return [transaction_enum_1.PurchaseTransactionStatusEnum.OPEN];
|
|
18
|
-
}
|
|
19
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './request.validator.js';
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { FinancePaymentStatusEnum, FinancePaymentMethodEnum } from '../../../finance/payment';
|
|
2
|
-
import { SaleTransactionStatusEnum } from './transaction.enum.js';
|
|
3
|
-
import { AbstractRequestValidator } from '../../../abstract.validator.js';
|
|
4
|
-
import { SaleItemRequestValidator } from '../item';
|
|
5
|
-
import type { SaleTransactionEntity } from './transaction.entity.js';
|
|
6
|
-
export declare class CreateSaleTransactionRequestValidator extends AbstractRequestValidator {
|
|
7
|
-
items: SaleItemRequestValidator[];
|
|
8
|
-
method: FinancePaymentMethodEnum;
|
|
9
|
-
notes?: string;
|
|
10
|
-
customer?: string;
|
|
11
|
-
payment: FinancePaymentStatusEnum;
|
|
12
|
-
status?: SaleTransactionStatusEnum;
|
|
13
|
-
constructor(order?: SaleTransactionEntity);
|
|
14
|
-
get total(): {
|
|
15
|
-
units: number;
|
|
16
|
-
price: number;
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
export declare class UpdateSaleTransactionRequestValidator extends CreateSaleTransactionRequestValidator {
|
|
20
|
-
items: SaleItemRequestValidator[];
|
|
21
|
-
payment: any;
|
|
22
|
-
method: FinancePaymentMethodEnum;
|
|
23
|
-
status: any;
|
|
24
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { ContactCustomerEntity } from '../../../contact/customer';
|
|
2
|
-
import { ItemEntity } from '../item';
|
|
3
|
-
import { TransactionEntity } from '../../../transaction.entity.js';
|
|
4
|
-
import { SaleTransactionStatusEnum } from './transaction.enum.js';
|
|
5
|
-
export declare class SaleTransactionEntity extends TransactionEntity<SaleTransactionStatusEnum> {
|
|
6
|
-
customer: ContactCustomerEntity;
|
|
7
|
-
items: ItemEntity[];
|
|
8
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export declare enum SaleTransactionStatusEnum {
|
|
2
|
-
OPEN = "OPEN",
|
|
3
|
-
IN_PROGRESS = "IN_PROGRESS",
|
|
4
|
-
COMPLETED = "COMPLETED",
|
|
5
|
-
CANCELLED = "CANCELLED",
|
|
6
|
-
RETURNED = "RETURNED"
|
|
7
|
-
}
|
|
8
|
-
export declare const SALE_PRE_FULFILLMENT_TRANSACTION_STATUSES: readonly SaleTransactionStatusEnum[];
|
|
9
|
-
export declare const SALE_OPEN_TRANSACTION_STATUSES: readonly SaleTransactionStatusEnum[];
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export var SaleTransactionStatusEnum;
|
|
2
|
-
(function (SaleTransactionStatusEnum) {
|
|
3
|
-
SaleTransactionStatusEnum["OPEN"] = "OPEN";
|
|
4
|
-
SaleTransactionStatusEnum["IN_PROGRESS"] = "IN_PROGRESS";
|
|
5
|
-
SaleTransactionStatusEnum["COMPLETED"] = "COMPLETED";
|
|
6
|
-
SaleTransactionStatusEnum["CANCELLED"] = "CANCELLED";
|
|
7
|
-
SaleTransactionStatusEnum["RETURNED"] = "RETURNED";
|
|
8
|
-
})(SaleTransactionStatusEnum || (SaleTransactionStatusEnum = {}));
|
|
9
|
-
export const SALE_PRE_FULFILLMENT_TRANSACTION_STATUSES = [
|
|
10
|
-
SaleTransactionStatusEnum.OPEN,
|
|
11
|
-
];
|
|
12
|
-
export const SALE_OPEN_TRANSACTION_STATUSES = [
|
|
13
|
-
...SALE_PRE_FULFILLMENT_TRANSACTION_STATUSES,
|
|
14
|
-
SaleTransactionStatusEnum.IN_PROGRESS,
|
|
15
|
-
];
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { AbstractTransition } from '../../../abstract.transition.js';
|
|
2
|
-
import { SaleTransactionStatusEnum as Status } from './transaction.enum.js';
|
|
3
|
-
|
|
4
|
-
export declare class SaleTransactionTransition extends AbstractTransition<Status, unknown> {
|
|
5
|
-
protected readonly $states: Readonly<Record<Status, readonly Status[]>>;
|
|
6
|
-
constructor(status?: Status);
|
|
7
|
-
readonly initialStates: readonly Status[];
|
|
8
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { AbstractTransition } from '../../../abstract.transition.js';
|
|
2
|
-
import * as transaction_enum_1 from './transaction.enum.js';
|
|
3
|
-
|
|
4
|
-
export class SaleTransactionTransition extends AbstractTransition {
|
|
5
|
-
$states = {
|
|
6
|
-
[transaction_enum_1.SaleTransactionStatusEnum.OPEN]: [],
|
|
7
|
-
[transaction_enum_1.SaleTransactionStatusEnum.IN_PROGRESS]: [],
|
|
8
|
-
[transaction_enum_1.SaleTransactionStatusEnum.COMPLETED]: [],
|
|
9
|
-
[transaction_enum_1.SaleTransactionStatusEnum.CANCELLED]: [],
|
|
10
|
-
[transaction_enum_1.SaleTransactionStatusEnum.RETURNED]: [],
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
constructor(status = transaction_enum_1.SaleTransactionStatusEnum.OPEN) {
|
|
14
|
-
super(status);
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
get initialStates() {
|
|
18
|
-
return [transaction_enum_1.SaleTransactionStatusEnum.OPEN];
|
|
19
|
-
}
|
|
20
|
-
}
|