@merkaly/api 0.5.15 → 0.6.1
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/abstract.repository.d.ts +21 -31
- package/dist/abstract.validator.d.ts +10 -17
- package/dist/abstract.validator.js +54 -64
- package/dist/account/address/index.d.ts +1 -1
- package/dist/account/address/index.js +1 -1
- package/dist/account/address/request.validator.d.ts +16 -0
- package/dist/account/address/{address.validator.js → request.validator.js} +35 -18
- package/dist/account/payment/index.d.ts +1 -1
- package/dist/account/payment/index.js +1 -1
- package/dist/account/payment/request.validator.d.ts +19 -0
- package/dist/account/payment/{payment.validator.js → request.validator.js} +46 -18
- package/dist/account/user/index.d.ts +1 -1
- package/dist/account/user/index.js +1 -1
- package/dist/account/user/request.validator.d.ts +10 -0
- package/dist/account/user/{user.validator.js → request.validator.js} +18 -23
- package/dist/address.validator.d.ts +2 -2
- package/dist/finance/invoice/index.d.ts +1 -1
- package/dist/finance/invoice/index.js +1 -1
- package/dist/finance/invoice/request.validator.d.ts +21 -0
- package/dist/finance/invoice/{invoice.validator.js → request.validator.js} +41 -19
- package/dist/finance/payment/index.d.ts +1 -1
- package/dist/finance/payment/index.js +1 -1
- package/dist/finance/payment/payment.entity.d.ts +6 -6
- package/dist/finance/payment/payment.transition.d.ts +5 -3
- package/dist/finance/payment/payment.transition.js +10 -5
- package/dist/finance/payment/request.validator.d.ts +14 -0
- package/dist/finance/payment/{payment.validator.js → request.validator.js} +24 -12
- package/dist/finance/refund/index.d.ts +1 -1
- package/dist/finance/refund/index.js +1 -1
- package/dist/finance/refund/refund.entity.d.ts +2 -1
- package/dist/finance/refund/refund.transition.d.ts +5 -3
- package/dist/finance/refund/refund.transition.js +8 -14
- package/dist/finance/refund/request.validator.d.ts +16 -0
- package/dist/finance/refund/{refund.validator.js → request.validator.js} +32 -14
- package/dist/inventory/catalog/attribute/request.validator.d.ts +7 -4
- package/dist/inventory/catalog/attribute/request.validator.js +23 -15
- package/dist/inventory/catalog/brand/request.validator.d.ts +8 -5
- package/dist/inventory/catalog/brand/request.validator.js +17 -11
- package/dist/inventory/catalog/category/category.entity.d.ts +3 -1
- package/dist/inventory/catalog/category/request.validator.d.ts +8 -5
- package/dist/inventory/catalog/category/request.validator.js +17 -11
- package/dist/inventory/catalog/collection/request.validator.d.ts +9 -6
- package/dist/inventory/catalog/collection/request.validator.js +21 -14
- package/dist/inventory/catalog/product/product.entity.d.ts +12 -4
- package/dist/inventory/catalog/product/request.validator.d.ts +24 -11
- package/dist/inventory/catalog/product/request.validator.js +74 -44
- package/dist/inventory/catalog/variant/request.validator.d.ts +9 -7
- package/dist/inventory/catalog/variant/request.validator.js +33 -27
- package/dist/inventory/catalog/variant/variant.entity.d.ts +6 -4
- package/dist/inventory/configuration/measurement/index.d.ts +1 -1
- package/dist/inventory/configuration/measurement/index.js +1 -1
- package/dist/inventory/configuration/measurement/request.validator.d.ts +21 -0
- package/dist/inventory/configuration/measurement/{measurement.validator.js → request.validator.js} +57 -49
- package/dist/inventory/stock/balance/balance.entity.d.ts +9 -5
- package/dist/inventory/stock/balance/balance.status.enum.d.ts +6 -0
- package/dist/inventory/stock/balance/balance.status.enum.js +7 -0
- package/dist/inventory/stock/balance/index.d.ts +1 -1
- package/dist/inventory/stock/balance/index.js +1 -1
- package/dist/inventory/stock/transfer/index.d.ts +3 -2
- package/dist/inventory/stock/transfer/index.js +2 -2
- package/dist/inventory/stock/transfer/request.validator.d.ts +24 -0
- package/dist/inventory/stock/transfer/request.validator.js +111 -0
- package/dist/inventory/stock/transfer/transfer.entity.d.ts +9 -16
- package/dist/inventory/stock/transfer/{transfer.status.enum.d.ts → transfer.enum.d.ts} +5 -1
- package/dist/inventory/stock/transfer/{transfer.status.enum.js → transfer.enum.js} +6 -1
- package/dist/inventory/stock/transfer/transfer.item.entity.d.ts +12 -0
- package/dist/inventory/stock/transfer/transfer.transition.d.ts +3 -1
- package/dist/inventory/stock/transfer/transfer.transition.js +13 -6
- package/dist/inventory/stock/warehouse/index.d.ts +1 -1
- package/dist/inventory/stock/warehouse/index.js +1 -1
- package/dist/inventory/stock/warehouse/request.validator.d.ts +14 -0
- package/dist/inventory/stock/warehouse/{warehouse.validator.js → request.validator.js} +40 -44
- package/dist/inventory/stock/warehouse/warehouse.entity.d.ts +2 -2
- package/dist/order/purchase/item/index.d.ts +1 -1
- package/dist/order/purchase/item/index.js +1 -1
- package/dist/order/purchase/item/item.entity.d.ts +18 -11
- package/dist/order/purchase/item/request.validator.d.ts +12 -0
- package/dist/order/{service/item/item.validator.js → purchase/item/request.validator.js} +32 -15
- package/dist/order/purchase/transaction/index.d.ts +1 -1
- package/dist/order/purchase/transaction/index.js +1 -1
- package/dist/order/purchase/transaction/request.validator.d.ts +23 -0
- package/dist/order/purchase/transaction/request.validator.js +97 -0
- package/dist/order/purchase/transaction/transaction.entity.d.ts +3 -4
- package/dist/order/purchase/transaction/transaction.enum.d.ts +0 -1
- package/dist/order/purchase/transaction/transaction.enum.js +0 -3
- package/dist/order/purchase/transaction/transaction.transition.d.ts +2 -0
- package/dist/order/purchase/transaction/transaction.transition.js +10 -3
- package/dist/order/purchase/vendor/index.d.ts +1 -1
- package/dist/order/purchase/vendor/index.js +1 -1
- package/dist/order/purchase/vendor/request.validator.d.ts +16 -0
- package/dist/order/purchase/vendor/{vendor.validator.js → request.validator.js} +30 -28
- package/dist/order/sale/customer/index.d.ts +1 -1
- package/dist/order/sale/customer/index.js +1 -1
- package/dist/order/sale/customer/request.validator.d.ts +18 -0
- package/dist/order/sale/customer/{customer.validator.js → request.validator.js} +34 -30
- package/dist/order/sale/item/index.d.ts +1 -1
- package/dist/order/sale/item/index.js +1 -1
- package/dist/order/sale/item/item.entity.d.ts +18 -16
- package/dist/order/sale/item/request.validator.d.ts +12 -0
- package/dist/order/sale/item/{item.validator.js → request.validator.js} +23 -6
- package/dist/order/sale/transaction/index.d.ts +1 -1
- package/dist/order/sale/transaction/index.js +1 -1
- package/dist/order/sale/transaction/request.validator.d.ts +25 -0
- package/dist/order/sale/transaction/request.validator.js +104 -0
- package/dist/order/sale/transaction/transaction.entity.d.ts +3 -6
- package/dist/order/sale/transaction/transaction.enum.d.ts +0 -3
- package/dist/order/sale/transaction/transaction.enum.js +0 -9
- package/dist/order/sale/transaction/transaction.transition.d.ts +2 -0
- package/dist/order/sale/transaction/transaction.transition.js +11 -5
- package/dist/repository.types.d.ts +2 -2
- package/dist/settings/organization/index.d.ts +0 -1
- package/dist/settings/organization/index.js +0 -1
- package/dist/transaction.entity.d.ts +14 -5
- package/package.json +5 -6
- package/dist/account/address/address.validator.d.ts +0 -15
- package/dist/account/payment/payment.validator.d.ts +0 -14
- package/dist/account/user/user.validator.d.ts +0 -15
- package/dist/finance/invoice/invoice.validator.d.ts +0 -19
- package/dist/finance/payment/payment.validator.d.ts +0 -14
- package/dist/finance/refund/refund.validator.d.ts +0 -14
- package/dist/finance/subscription/index.d.ts +0 -3
- package/dist/finance/subscription/index.js +0 -2
- package/dist/finance/subscription/subscription.entity.d.ts +0 -14
- package/dist/finance/subscription/subscription.enum.d.ts +0 -15
- package/dist/finance/subscription/subscription.enum.js +0 -17
- package/dist/finance/subscription/subscription.validator.d.ts +0 -17
- package/dist/finance/subscription/subscription.validator.js +0 -69
- package/dist/finance/tax/index.d.ts +0 -3
- package/dist/finance/tax/index.js +0 -2
- package/dist/finance/tax/tax.entity.d.ts +0 -10
- package/dist/finance/tax/tax.enum.d.ts +0 -8
- package/dist/finance/tax/tax.enum.js +0 -9
- package/dist/finance/tax/tax.validator.d.ts +0 -15
- package/dist/finance/tax/tax.validator.js +0 -60
- package/dist/inventory/configuration/measurement/measurement.validator.d.ts +0 -20
- package/dist/inventory/stock/balance/balance.validator.d.ts +0 -13
- package/dist/inventory/stock/balance/balance.validator.js +0 -46
- package/dist/inventory/stock/transfer/transfer.validator.d.ts +0 -21
- package/dist/inventory/stock/transfer/transfer.validator.js +0 -101
- package/dist/inventory/stock/warehouse/warehouse.validator.d.ts +0 -19
- package/dist/order/purchase/item/item.validator.d.ts +0 -10
- package/dist/order/purchase/item/item.validator.js +0 -50
- package/dist/order/purchase/transaction/transaction.validator.d.ts +0 -18
- package/dist/order/purchase/transaction/transaction.validator.js +0 -78
- package/dist/order/purchase/vendor/vendor.validator.d.ts +0 -17
- package/dist/order/sale/customer/customer.validator.d.ts +0 -19
- package/dist/order/sale/item/item.validator.d.ts +0 -9
- package/dist/order/sale/payment/index.d.ts +0 -1
- package/dist/order/sale/payment/index.js +0 -1
- package/dist/order/sale/payment/payment.validator.d.ts +0 -7
- package/dist/order/sale/payment/payment.validator.js +0 -31
- package/dist/order/sale/transaction/transaction.validator.d.ts +0 -18
- package/dist/order/sale/transaction/transaction.validator.js +0 -77
- package/dist/order/service/item/index.d.ts +0 -2
- package/dist/order/service/item/index.js +0 -1
- package/dist/order/service/item/item.entity.d.ts +0 -14
- package/dist/order/service/item/item.validator.d.ts +0 -9
- package/dist/order/service/transaction/index.d.ts +0 -4
- package/dist/order/service/transaction/index.js +0 -3
- package/dist/order/service/transaction/transaction.entity.d.ts +0 -9
- package/dist/order/service/transaction/transaction.enum.d.ts +0 -8
- package/dist/order/service/transaction/transaction.enum.js +0 -9
- package/dist/order/service/transaction/transaction.transition.d.ts +0 -6
- package/dist/order/service/transaction/transaction.transition.js +0 -13
- package/dist/order/service/transaction/transaction.validator.d.ts +0 -17
- package/dist/order/service/transaction/transaction.validator.js +0 -76
- package/dist/settings/organization/organization.validator.d.ts +0 -10
- package/dist/settings/organization/organization.validator.js +0 -32
|
@@ -1,17 +1,24 @@
|
|
|
1
1
|
import { CatalogProductEntity } from '../../../inventory/catalog/product';
|
|
2
2
|
import { CatalogVariantEntity } from '../../../inventory/catalog/variant';
|
|
3
|
+
import { StockBalanceEntity } from '../../../inventory/stock/balance';
|
|
3
4
|
import { StockWarehouseEntity } from '../../../inventory/stock/warehouse';
|
|
4
5
|
import { AbstractEntity } from '../../..';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
product: MongoEntity<CatalogProductEntity>;
|
|
8
|
-
variant: MongoEntity<CatalogVariantEntity>;
|
|
9
|
-
warehouse: MongoEntity<StockWarehouseEntity>;
|
|
10
|
-
priceProduct: number;
|
|
11
|
-
priceVariant: number;
|
|
12
|
-
quantity: number;
|
|
13
|
-
notes?: string;
|
|
14
|
-
readonly price: number;
|
|
6
|
+
interface ItemPricing {
|
|
7
|
+
product: number;
|
|
15
8
|
readonly total: number;
|
|
16
|
-
readonly
|
|
9
|
+
readonly unit: number;
|
|
10
|
+
variant: number;
|
|
11
|
+
}
|
|
12
|
+
export declare class ItemEntity extends AbstractEntity {
|
|
13
|
+
product?: CatalogProductEntity;
|
|
14
|
+
variant: CatalogVariantEntity;
|
|
15
|
+
warehouse: StockWarehouseEntity;
|
|
16
|
+
quantity: number;
|
|
17
|
+
notes: string;
|
|
18
|
+
price: ItemPricing;
|
|
19
|
+
readonly 'price.unit': number;
|
|
20
|
+
readonly 'price.total': number;
|
|
21
|
+
readonly balance?: StockBalanceEntity;
|
|
22
|
+
readonly isProcessable: boolean;
|
|
17
23
|
}
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AbstractRequestValidator } from '../../..';
|
|
2
|
+
import type { ItemEntity } from '../../sale/item';
|
|
3
|
+
export declare class PurchaseItemRequestValidator extends AbstractRequestValidator {
|
|
4
|
+
product: string;
|
|
5
|
+
variant: string;
|
|
6
|
+
warehouse?: string;
|
|
7
|
+
quantity: number;
|
|
8
|
+
price: number;
|
|
9
|
+
notes: string;
|
|
10
|
+
constructor(item?: ItemEntity);
|
|
11
|
+
get total(): number;
|
|
12
|
+
}
|
|
@@ -7,45 +7,62 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
-
import * as class_transformer_1 from "class-transformer";
|
|
11
10
|
import * as class_validator_1 from "class-validator";
|
|
12
|
-
|
|
11
|
+
import * as abstract_validator_1 from '../../../index.js';
|
|
12
|
+
export class PurchaseItemRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
13
13
|
product;
|
|
14
14
|
variant;
|
|
15
15
|
warehouse;
|
|
16
16
|
quantity = 1;
|
|
17
17
|
price = 0;
|
|
18
|
-
notes;
|
|
18
|
+
notes = String();
|
|
19
|
+
constructor(item) {
|
|
20
|
+
super();
|
|
21
|
+
if (!item) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
this.product = (item.product?._id || item.product);
|
|
25
|
+
this.variant = (item.variant?._id || item.variant);
|
|
26
|
+
this.warehouse = (item.warehouse?._id || item.warehouse);
|
|
27
|
+
if (item.quantity !== undefined) {
|
|
28
|
+
this.quantity = item.quantity;
|
|
29
|
+
}
|
|
30
|
+
this.price = item.price?.unit || item.get?.('price.unit') || this.price;
|
|
31
|
+
if (item.notes !== undefined) {
|
|
32
|
+
this.notes = item.notes;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
19
35
|
get total() {
|
|
20
|
-
return Math.
|
|
36
|
+
return Math.round(this.quantity * this.price);
|
|
21
37
|
}
|
|
22
38
|
}
|
|
23
39
|
__decorate([
|
|
24
40
|
(0, class_validator_1.IsMongoId)(),
|
|
41
|
+
(0, class_validator_1.IsOptional)(),
|
|
25
42
|
__metadata("design:type", String)
|
|
26
|
-
],
|
|
43
|
+
], PurchaseItemRequestValidator.prototype, "product", void 0);
|
|
27
44
|
__decorate([
|
|
28
45
|
(0, class_validator_1.IsMongoId)(),
|
|
29
46
|
__metadata("design:type", String)
|
|
30
|
-
],
|
|
47
|
+
], PurchaseItemRequestValidator.prototype, "variant", void 0);
|
|
31
48
|
__decorate([
|
|
32
49
|
(0, class_validator_1.IsMongoId)(),
|
|
50
|
+
(0, class_validator_1.IsOptional)(),
|
|
33
51
|
__metadata("design:type", String)
|
|
34
|
-
],
|
|
52
|
+
], PurchaseItemRequestValidator.prototype, "warehouse", void 0);
|
|
35
53
|
__decorate([
|
|
54
|
+
(0, class_validator_1.IsPositive)(),
|
|
36
55
|
(0, class_validator_1.IsInt)(),
|
|
37
|
-
(0, class_validator_1.Min)(1),
|
|
38
56
|
__metadata("design:type", Object)
|
|
39
|
-
],
|
|
57
|
+
], PurchaseItemRequestValidator.prototype, "quantity", void 0);
|
|
40
58
|
__decorate([
|
|
41
|
-
(0,
|
|
42
|
-
(0, class_validator_1.
|
|
43
|
-
(0, class_validator_1.Min)(0),
|
|
59
|
+
(0, class_validator_1.IsPositive)(),
|
|
60
|
+
(0, class_validator_1.IsInt)(),
|
|
44
61
|
__metadata("design:type", Object)
|
|
45
|
-
],
|
|
62
|
+
], PurchaseItemRequestValidator.prototype, "price", void 0);
|
|
46
63
|
__decorate([
|
|
47
64
|
(0, class_validator_1.IsString)(),
|
|
48
65
|
(0, class_validator_1.Length)(0, 500),
|
|
49
66
|
(0, class_validator_1.IsOptional)(),
|
|
50
|
-
__metadata("design:type",
|
|
51
|
-
],
|
|
67
|
+
__metadata("design:type", Object)
|
|
68
|
+
], PurchaseItemRequestValidator.prototype, "notes", void 0);
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { FinancePaymentStatusEnum, FinancePaymentMethodEnum } from '../../../finance/payment';
|
|
2
|
+
import { PurchaseTransactionStatusEnum } from './';
|
|
3
|
+
import { AbstractRequestValidator } from '../../..';
|
|
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
|
+
warehouse?: string;
|
|
12
|
+
payment: FinancePaymentStatusEnum;
|
|
13
|
+
status?: PurchaseTransactionStatusEnum;
|
|
14
|
+
constructor(order?: PurchaseTransactionEntity);
|
|
15
|
+
get total(): {
|
|
16
|
+
units: number;
|
|
17
|
+
price: number;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export declare class UpdatePurchaseTransactionRequestValidator extends CreatePurchaseTransactionRequestValidator {
|
|
21
|
+
items: PurchaseItemRequestValidator[];
|
|
22
|
+
method: FinancePaymentMethodEnum;
|
|
23
|
+
}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import * as class_transformer_1 from "class-transformer";
|
|
11
|
+
import * as class_validator_1 from "class-validator";
|
|
12
|
+
import * as payment_enum_1 from '../../../finance/payment/index.js';
|
|
13
|
+
import * as transaction_enum_1 from './transaction.enum.js';
|
|
14
|
+
import * as abstract_validator_1 from '../../../index.js';
|
|
15
|
+
import * as request_validator_1 from '../item/index.js';
|
|
16
|
+
export class CreatePurchaseTransactionRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
17
|
+
items = [];
|
|
18
|
+
method;
|
|
19
|
+
notes;
|
|
20
|
+
vendor;
|
|
21
|
+
warehouse;
|
|
22
|
+
payment = payment_enum_1.FinancePaymentStatusEnum.PENDING;
|
|
23
|
+
status = transaction_enum_1.PurchaseTransactionStatusEnum.OPEN;
|
|
24
|
+
constructor(order) {
|
|
25
|
+
super();
|
|
26
|
+
if (!order) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
this.notes = order.notes;
|
|
30
|
+
this.method = order.payment?.method;
|
|
31
|
+
this.vendor = (order.vendor?._id || order.vendor);
|
|
32
|
+
if (order.status !== undefined) {
|
|
33
|
+
this.status = order.status;
|
|
34
|
+
}
|
|
35
|
+
if (order.payment?.status !== undefined) {
|
|
36
|
+
this.payment = order.payment.status;
|
|
37
|
+
}
|
|
38
|
+
const [warehouse] = [...new Set(order.items?.map((item) => item.warehouse).filter(Boolean))];
|
|
39
|
+
this.warehouse = (warehouse?._id || warehouse);
|
|
40
|
+
this.items = order.items?.map((it) => new request_validator_1.PurchaseItemRequestValidator(it)) ?? this.items;
|
|
41
|
+
}
|
|
42
|
+
get total() {
|
|
43
|
+
return this.items.reduce((acc, item) => {
|
|
44
|
+
acc.units += item.quantity;
|
|
45
|
+
acc.price += item.quantity * item.price;
|
|
46
|
+
return acc;
|
|
47
|
+
}, { units: 0, price: 0 });
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
__decorate([
|
|
51
|
+
(0, class_validator_1.IsArray)(),
|
|
52
|
+
(0, class_transformer_1.Type)(() => request_validator_1.PurchaseItemRequestValidator),
|
|
53
|
+
(0, class_validator_1.ValidateNested)({ each: true }),
|
|
54
|
+
__metadata("design:type", Array)
|
|
55
|
+
], CreatePurchaseTransactionRequestValidator.prototype, "items", void 0);
|
|
56
|
+
__decorate([
|
|
57
|
+
(0, class_validator_1.IsEnum)(payment_enum_1.FinancePaymentMethodEnum),
|
|
58
|
+
__metadata("design:type", String)
|
|
59
|
+
], CreatePurchaseTransactionRequestValidator.prototype, "method", void 0);
|
|
60
|
+
__decorate([
|
|
61
|
+
(0, class_validator_1.IsString)(),
|
|
62
|
+
(0, class_validator_1.Length)(0, 500),
|
|
63
|
+
(0, class_validator_1.IsOptional)(),
|
|
64
|
+
__metadata("design:type", String)
|
|
65
|
+
], CreatePurchaseTransactionRequestValidator.prototype, "notes", void 0);
|
|
66
|
+
__decorate([
|
|
67
|
+
(0, class_validator_1.IsMongoId)(),
|
|
68
|
+
(0, class_validator_1.IsOptional)(),
|
|
69
|
+
__metadata("design:type", String)
|
|
70
|
+
], CreatePurchaseTransactionRequestValidator.prototype, "vendor", void 0);
|
|
71
|
+
__decorate([
|
|
72
|
+
(0, class_validator_1.IsMongoId)(),
|
|
73
|
+
(0, class_validator_1.IsOptional)(),
|
|
74
|
+
__metadata("design:type", String)
|
|
75
|
+
], CreatePurchaseTransactionRequestValidator.prototype, "warehouse", void 0);
|
|
76
|
+
__decorate([
|
|
77
|
+
(0, class_validator_1.IsEnum)(payment_enum_1.FinancePaymentStatusEnum),
|
|
78
|
+
(0, class_validator_1.IsDefined)(),
|
|
79
|
+
(0, class_validator_1.IsOptional)(),
|
|
80
|
+
__metadata("design:type", String)
|
|
81
|
+
], CreatePurchaseTransactionRequestValidator.prototype, "payment", void 0);
|
|
82
|
+
__decorate([
|
|
83
|
+
(0, class_validator_1.IsEnum)(transaction_enum_1.PurchaseTransactionStatusEnum),
|
|
84
|
+
(0, class_validator_1.IsDefined)(),
|
|
85
|
+
(0, class_validator_1.IsOptional)(),
|
|
86
|
+
__metadata("design:type", Object)
|
|
87
|
+
], CreatePurchaseTransactionRequestValidator.prototype, "status", void 0);
|
|
88
|
+
export class UpdatePurchaseTransactionRequestValidator extends CreatePurchaseTransactionRequestValidator {
|
|
89
|
+
}
|
|
90
|
+
__decorate([
|
|
91
|
+
(0, class_validator_1.IsOptional)(),
|
|
92
|
+
__metadata("design:type", Array)
|
|
93
|
+
], UpdatePurchaseTransactionRequestValidator.prototype, "items", void 0);
|
|
94
|
+
__decorate([
|
|
95
|
+
(0, class_validator_1.IsOptional)(),
|
|
96
|
+
__metadata("design:type", String)
|
|
97
|
+
], UpdatePurchaseTransactionRequestValidator.prototype, "method", void 0);
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
+
import { ItemEntity } from '../../sale/item';
|
|
1
2
|
import { TransactionEntity } from '../../..';
|
|
2
3
|
import { PurchaseTransactionStatusEnum } from './transaction.enum.js';
|
|
3
|
-
import { PurchaseItemEntity } from '../item';
|
|
4
4
|
import { PurchaseVendorEntity } from '../vendor';
|
|
5
|
-
import type { MongoEntity } from '../../..';
|
|
6
5
|
export declare class PurchaseTransactionEntity extends TransactionEntity<PurchaseTransactionStatusEnum> {
|
|
7
|
-
vendor:
|
|
8
|
-
items:
|
|
6
|
+
vendor: PurchaseVendorEntity;
|
|
7
|
+
items: ItemEntity[];
|
|
9
8
|
}
|
|
@@ -2,16 +2,13 @@ export var PurchaseTransactionStatusEnum;
|
|
|
2
2
|
(function (PurchaseTransactionStatusEnum) {
|
|
3
3
|
PurchaseTransactionStatusEnum["OPEN"] = "OPEN";
|
|
4
4
|
PurchaseTransactionStatusEnum["ORDERED"] = "ORDERED";
|
|
5
|
-
PurchaseTransactionStatusEnum["PAUSED"] = "PAUSED";
|
|
6
5
|
PurchaseTransactionStatusEnum["RECEIVED"] = "RECEIVED";
|
|
7
6
|
PurchaseTransactionStatusEnum["CANCELLED"] = "CANCELLED";
|
|
8
7
|
})(PurchaseTransactionStatusEnum || (PurchaseTransactionStatusEnum = {}));
|
|
9
8
|
export const PURCHASE_OPEN_TRANSACTION_STATUSES = [
|
|
10
9
|
PurchaseTransactionStatusEnum.OPEN,
|
|
11
10
|
PurchaseTransactionStatusEnum.ORDERED,
|
|
12
|
-
PurchaseTransactionStatusEnum.PAUSED,
|
|
13
11
|
];
|
|
14
12
|
export const PURCHASE_INCOMING_TRANSACTION_STATUSES = [
|
|
15
13
|
PurchaseTransactionStatusEnum.ORDERED,
|
|
16
|
-
PurchaseTransactionStatusEnum.PAUSED,
|
|
17
14
|
];
|
|
@@ -3,4 +3,6 @@ import { PurchaseTransactionStatusEnum as Status } from './transaction.enum.js';
|
|
|
3
3
|
|
|
4
4
|
export declare class PurchaseTransactionTransition extends AbstractTransition<Status, unknown> {
|
|
5
5
|
protected readonly $states: Readonly<Record<Status, readonly Status[]>>;
|
|
6
|
+
constructor(status?: Status);
|
|
7
|
+
readonly initialStates: readonly Status[];
|
|
6
8
|
}
|
|
@@ -1,12 +1,19 @@
|
|
|
1
|
-
import { AbstractTransition } from '../../../
|
|
1
|
+
import { AbstractTransition } from '../../../index.js';
|
|
2
2
|
import * as transaction_enum_1 from './transaction.enum.js';
|
|
3
3
|
|
|
4
4
|
export class PurchaseTransactionTransition extends AbstractTransition {
|
|
5
5
|
$states = {
|
|
6
6
|
[transaction_enum_1.PurchaseTransactionStatusEnum.OPEN]: [transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED, transaction_enum_1.PurchaseTransactionStatusEnum.RECEIVED, transaction_enum_1.PurchaseTransactionStatusEnum.CANCELLED],
|
|
7
|
-
[transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED]: [transaction_enum_1.PurchaseTransactionStatusEnum.
|
|
8
|
-
[transaction_enum_1.PurchaseTransactionStatusEnum.PAUSED]: [transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED, transaction_enum_1.PurchaseTransactionStatusEnum.CANCELLED],
|
|
7
|
+
[transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED]: [transaction_enum_1.PurchaseTransactionStatusEnum.RECEIVED, transaction_enum_1.PurchaseTransactionStatusEnum.CANCELLED],
|
|
9
8
|
[transaction_enum_1.PurchaseTransactionStatusEnum.RECEIVED]: [],
|
|
10
9
|
[transaction_enum_1.PurchaseTransactionStatusEnum.CANCELLED]: [],
|
|
11
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, transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED, transaction_enum_1.PurchaseTransactionStatusEnum.RECEIVED];
|
|
18
|
+
}
|
|
12
19
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './vendor.entity';
|
|
2
|
-
export * from './
|
|
2
|
+
export * from './request.validator';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './
|
|
1
|
+
export * from './request.validator.js';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { AbstractRequestValidator } from '../../..';
|
|
2
|
+
import type { PurchaseVendorEntity } from './';
|
|
3
|
+
export declare class CreatePurchaseVendorRequestValidator extends AbstractRequestValidator {
|
|
4
|
+
name: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
email?: string;
|
|
7
|
+
logo?: string;
|
|
8
|
+
phone?: string;
|
|
9
|
+
website?: string;
|
|
10
|
+
taxId?: string;
|
|
11
|
+
active?: boolean;
|
|
12
|
+
constructor(vendor?: PurchaseVendorEntity);
|
|
13
|
+
}
|
|
14
|
+
export declare class UpdatePurchaseVendorRequestValidator extends CreatePurchaseVendorRequestValidator {
|
|
15
|
+
name: string;
|
|
16
|
+
}
|
|
@@ -8,25 +8,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
10
|
import * as class_validator_1 from "class-validator";
|
|
11
|
-
import * as abstract_validator_1 from '
|
|
12
|
-
export class
|
|
13
|
-
}
|
|
14
|
-
export class ReadPurchaseVendorValidator extends abstract_validator_1.ReadValidator {
|
|
15
|
-
}
|
|
16
|
-
export class SavePurchaseVendorValidator extends abstract_validator_1.AbstractValidator {
|
|
17
|
-
constructor(entity) {
|
|
18
|
-
super();
|
|
19
|
-
if (!entity)
|
|
20
|
-
return;
|
|
21
|
-
this.name = entity.name;
|
|
22
|
-
this.description = entity.description;
|
|
23
|
-
this.email = entity.email;
|
|
24
|
-
this.logo = entity.logo;
|
|
25
|
-
this.phone = entity.phone;
|
|
26
|
-
this.website = entity.website;
|
|
27
|
-
this.taxId = entity.taxId;
|
|
28
|
-
this.active = entity.active;
|
|
29
|
-
}
|
|
11
|
+
import * as abstract_validator_1 from '../../../index.js';
|
|
12
|
+
export class CreatePurchaseVendorRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
30
13
|
name;
|
|
31
14
|
description;
|
|
32
15
|
email;
|
|
@@ -35,52 +18,71 @@ export class SavePurchaseVendorValidator extends abstract_validator_1.AbstractVa
|
|
|
35
18
|
website;
|
|
36
19
|
taxId;
|
|
37
20
|
active;
|
|
21
|
+
constructor(vendor) {
|
|
22
|
+
super();
|
|
23
|
+
if (!vendor) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
this.name = vendor.name;
|
|
27
|
+
this.description = vendor.description;
|
|
28
|
+
this.email = vendor.email;
|
|
29
|
+
this.logo = vendor.logo;
|
|
30
|
+
this.phone = vendor.phone;
|
|
31
|
+
this.website = vendor.website;
|
|
32
|
+
this.taxId = vendor.taxId;
|
|
33
|
+
this.active = vendor.active;
|
|
34
|
+
}
|
|
38
35
|
}
|
|
39
36
|
__decorate([
|
|
40
37
|
(0, class_validator_1.IsString)(),
|
|
41
38
|
(0, class_validator_1.IsNotEmpty)(),
|
|
42
39
|
(0, class_validator_1.Length)(0, 100),
|
|
43
|
-
(0, class_validator_1.IsOptional)({ groups: ['update'] }),
|
|
44
40
|
__metadata("design:type", String)
|
|
45
|
-
],
|
|
41
|
+
], CreatePurchaseVendorRequestValidator.prototype, "name", void 0);
|
|
46
42
|
__decorate([
|
|
47
43
|
(0, class_validator_1.IsString)(),
|
|
48
44
|
(0, class_validator_1.Length)(0, 1000),
|
|
49
45
|
(0, class_validator_1.IsOptional)(),
|
|
50
46
|
__metadata("design:type", String)
|
|
51
|
-
],
|
|
47
|
+
], CreatePurchaseVendorRequestValidator.prototype, "description", void 0);
|
|
52
48
|
__decorate([
|
|
53
49
|
(0, class_validator_1.IsEmail)(),
|
|
54
50
|
(0, class_validator_1.Length)(0, 254),
|
|
55
51
|
(0, class_validator_1.IsOptional)(),
|
|
56
52
|
__metadata("design:type", String)
|
|
57
|
-
],
|
|
53
|
+
], CreatePurchaseVendorRequestValidator.prototype, "email", void 0);
|
|
58
54
|
__decorate([
|
|
59
55
|
(0, class_validator_1.IsUrl)(),
|
|
60
56
|
(0, class_validator_1.Length)(0, 2048),
|
|
61
57
|
(0, class_validator_1.IsOptional)(),
|
|
62
58
|
__metadata("design:type", String)
|
|
63
|
-
],
|
|
59
|
+
], CreatePurchaseVendorRequestValidator.prototype, "logo", void 0);
|
|
64
60
|
__decorate([
|
|
65
61
|
(0, class_validator_1.IsString)(),
|
|
66
62
|
(0, class_validator_1.Length)(0, 20),
|
|
67
63
|
(0, class_validator_1.IsOptional)(),
|
|
68
64
|
__metadata("design:type", String)
|
|
69
|
-
],
|
|
65
|
+
], CreatePurchaseVendorRequestValidator.prototype, "phone", void 0);
|
|
70
66
|
__decorate([
|
|
71
67
|
(0, class_validator_1.IsString)(),
|
|
72
68
|
(0, class_validator_1.Length)(0, 2048),
|
|
73
69
|
(0, class_validator_1.IsOptional)(),
|
|
74
70
|
__metadata("design:type", String)
|
|
75
|
-
],
|
|
71
|
+
], CreatePurchaseVendorRequestValidator.prototype, "website", void 0);
|
|
76
72
|
__decorate([
|
|
77
73
|
(0, class_validator_1.IsString)(),
|
|
78
74
|
(0, class_validator_1.Length)(0, 20),
|
|
79
75
|
(0, class_validator_1.IsOptional)(),
|
|
80
76
|
__metadata("design:type", String)
|
|
81
|
-
],
|
|
77
|
+
], CreatePurchaseVendorRequestValidator.prototype, "taxId", void 0);
|
|
82
78
|
__decorate([
|
|
83
79
|
(0, class_validator_1.IsBoolean)(),
|
|
84
80
|
(0, class_validator_1.IsOptional)(),
|
|
85
81
|
__metadata("design:type", Boolean)
|
|
86
|
-
],
|
|
82
|
+
], CreatePurchaseVendorRequestValidator.prototype, "active", void 0);
|
|
83
|
+
export class UpdatePurchaseVendorRequestValidator extends CreatePurchaseVendorRequestValidator {
|
|
84
|
+
}
|
|
85
|
+
__decorate([
|
|
86
|
+
(0, class_validator_1.IsOptional)(),
|
|
87
|
+
__metadata("design:type", String)
|
|
88
|
+
], UpdatePurchaseVendorRequestValidator.prototype, "name", void 0);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './customer.enum.js';
|
|
2
|
-
export * from './
|
|
2
|
+
export * from './request.validator.js';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { SaleCustomerTypeEnum } from './';
|
|
2
|
+
import { AbstractRequestValidator } from '../../..';
|
|
3
|
+
import type { SaleCustomerEntity } from './';
|
|
4
|
+
export declare class CreateSaleCustomerRequestValidator extends AbstractRequestValidator {
|
|
5
|
+
name: string;
|
|
6
|
+
type: SaleCustomerTypeEnum;
|
|
7
|
+
description?: string;
|
|
8
|
+
email?: string;
|
|
9
|
+
logo?: string;
|
|
10
|
+
phone?: string;
|
|
11
|
+
website?: string;
|
|
12
|
+
taxId?: string;
|
|
13
|
+
active?: boolean;
|
|
14
|
+
constructor(customer?: SaleCustomerEntity);
|
|
15
|
+
}
|
|
16
|
+
export declare class UpdateSaleCustomerRequestValidator extends CreateSaleCustomerRequestValidator {
|
|
17
|
+
name: string;
|
|
18
|
+
}
|
|
@@ -9,26 +9,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
import * as class_validator_1 from "class-validator";
|
|
11
11
|
import * as customer_enum_1 from './customer.enum.js';
|
|
12
|
-
import * as abstract_validator_1 from '
|
|
13
|
-
export class
|
|
14
|
-
}
|
|
15
|
-
export class ReadSaleCustomerValidator extends abstract_validator_1.ReadValidator {
|
|
16
|
-
}
|
|
17
|
-
export class SaveSaleCustomerValidator extends abstract_validator_1.AbstractValidator {
|
|
18
|
-
constructor(entity) {
|
|
19
|
-
super();
|
|
20
|
-
if (!entity)
|
|
21
|
-
return;
|
|
22
|
-
this.name = entity.name;
|
|
23
|
-
this.type = entity.type;
|
|
24
|
-
this.description = entity.description;
|
|
25
|
-
this.email = entity.email;
|
|
26
|
-
this.phone = entity.phone;
|
|
27
|
-
this.website = entity.website;
|
|
28
|
-
this.logo = entity.logo;
|
|
29
|
-
this.taxId = entity.taxId;
|
|
30
|
-
this.active = entity.active;
|
|
31
|
-
}
|
|
12
|
+
import * as abstract_validator_1 from '../../../index.js';
|
|
13
|
+
export class CreateSaleCustomerRequestValidator extends abstract_validator_1.AbstractRequestValidator {
|
|
32
14
|
name;
|
|
33
15
|
type = customer_enum_1.SaleCustomerTypeEnum.B2C;
|
|
34
16
|
description;
|
|
@@ -38,59 +20,81 @@ export class SaveSaleCustomerValidator extends abstract_validator_1.AbstractVali
|
|
|
38
20
|
website;
|
|
39
21
|
taxId;
|
|
40
22
|
active;
|
|
23
|
+
constructor(customer) {
|
|
24
|
+
super();
|
|
25
|
+
if (!customer) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
this.name = customer.name;
|
|
29
|
+
this.description = customer.description;
|
|
30
|
+
this.email = customer.email;
|
|
31
|
+
this.logo = customer.logo;
|
|
32
|
+
this.phone = customer.phone;
|
|
33
|
+
this.website = customer.website;
|
|
34
|
+
this.taxId = customer.taxId;
|
|
35
|
+
this.active = customer.active;
|
|
36
|
+
if (customer.type !== undefined) {
|
|
37
|
+
this.type = customer.type;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
41
40
|
}
|
|
42
41
|
__decorate([
|
|
43
42
|
(0, class_validator_1.IsString)(),
|
|
44
43
|
(0, class_validator_1.IsNotEmpty)(),
|
|
45
44
|
(0, class_validator_1.Length)(0, 100),
|
|
46
|
-
(0, class_validator_1.IsOptional)({ groups: ['update'] }),
|
|
47
45
|
__metadata("design:type", String)
|
|
48
|
-
],
|
|
46
|
+
], CreateSaleCustomerRequestValidator.prototype, "name", void 0);
|
|
49
47
|
__decorate([
|
|
50
48
|
(0, class_validator_1.IsEnum)(customer_enum_1.SaleCustomerTypeEnum),
|
|
51
49
|
(0, class_validator_1.IsOptional)(),
|
|
52
50
|
__metadata("design:type", String)
|
|
53
|
-
],
|
|
51
|
+
], CreateSaleCustomerRequestValidator.prototype, "type", void 0);
|
|
54
52
|
__decorate([
|
|
55
53
|
(0, class_validator_1.IsString)(),
|
|
56
54
|
(0, class_validator_1.Length)(0, 1000),
|
|
57
55
|
(0, class_validator_1.IsOptional)(),
|
|
58
56
|
__metadata("design:type", String)
|
|
59
|
-
],
|
|
57
|
+
], CreateSaleCustomerRequestValidator.prototype, "description", void 0);
|
|
60
58
|
__decorate([
|
|
61
59
|
(0, class_validator_1.IsEmail)(),
|
|
62
60
|
(0, class_validator_1.Length)(0, 254),
|
|
63
61
|
(0, class_validator_1.IsOptional)(),
|
|
64
62
|
(0, class_validator_1.ValidateIf)((o) => o.email),
|
|
65
63
|
__metadata("design:type", String)
|
|
66
|
-
],
|
|
64
|
+
], CreateSaleCustomerRequestValidator.prototype, "email", void 0);
|
|
67
65
|
__decorate([
|
|
68
66
|
(0, class_validator_1.IsUrl)(),
|
|
69
67
|
(0, class_validator_1.Length)(0, 2048),
|
|
70
68
|
(0, class_validator_1.IsOptional)(),
|
|
71
69
|
(0, class_validator_1.ValidateIf)((o) => o.logo),
|
|
72
70
|
__metadata("design:type", String)
|
|
73
|
-
],
|
|
71
|
+
], CreateSaleCustomerRequestValidator.prototype, "logo", void 0);
|
|
74
72
|
__decorate([
|
|
75
73
|
(0, class_validator_1.IsString)(),
|
|
76
74
|
(0, class_validator_1.Length)(0, 20),
|
|
77
75
|
(0, class_validator_1.IsOptional)(),
|
|
78
76
|
__metadata("design:type", String)
|
|
79
|
-
],
|
|
77
|
+
], CreateSaleCustomerRequestValidator.prototype, "phone", void 0);
|
|
80
78
|
__decorate([
|
|
81
79
|
(0, class_validator_1.IsString)(),
|
|
82
80
|
(0, class_validator_1.Length)(0, 2048),
|
|
83
81
|
(0, class_validator_1.IsOptional)(),
|
|
84
82
|
__metadata("design:type", String)
|
|
85
|
-
],
|
|
83
|
+
], CreateSaleCustomerRequestValidator.prototype, "website", void 0);
|
|
86
84
|
__decorate([
|
|
87
85
|
(0, class_validator_1.IsString)(),
|
|
88
86
|
(0, class_validator_1.Length)(0, 20),
|
|
89
87
|
(0, class_validator_1.IsOptional)(),
|
|
90
88
|
__metadata("design:type", String)
|
|
91
|
-
],
|
|
89
|
+
], CreateSaleCustomerRequestValidator.prototype, "taxId", void 0);
|
|
92
90
|
__decorate([
|
|
93
91
|
(0, class_validator_1.IsBoolean)(),
|
|
94
92
|
(0, class_validator_1.IsOptional)(),
|
|
95
93
|
__metadata("design:type", Boolean)
|
|
96
|
-
],
|
|
94
|
+
], CreateSaleCustomerRequestValidator.prototype, "active", void 0);
|
|
95
|
+
export class UpdateSaleCustomerRequestValidator extends CreateSaleCustomerRequestValidator {
|
|
96
|
+
}
|
|
97
|
+
__decorate([
|
|
98
|
+
(0, class_validator_1.IsOptional)(),
|
|
99
|
+
__metadata("design:type", String)
|
|
100
|
+
], UpdateSaleCustomerRequestValidator.prototype, "name", void 0);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './item.entity';
|
|
2
|
-
export * from './
|
|
2
|
+
export * from './request.validator';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './
|
|
1
|
+
export * from './request.validator.js';
|