@infrab4a/connect-angular 5.4.0-alpha.1 → 5.4.0-alpha.2
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/esm2020/services/order-product-review.service.mjs +21 -51
- package/esm2020/services/types/pending-product-review.type.mjs +1 -1
- package/fesm2015/infrab4a-connect-angular.mjs +20 -54
- package/fesm2015/infrab4a-connect-angular.mjs.map +1 -1
- package/fesm2020/infrab4a-connect-angular.mjs +20 -50
- package/fesm2020/infrab4a-connect-angular.mjs.map +1 -1
- package/package.json +2 -2
- package/services/order-product-review.service.d.ts +2 -5
- package/services/types/pending-product-review.type.d.ts +0 -3
|
@@ -3,77 +3,50 @@ import { OrderFirestoreRepository, OrderStatus, ProductReview, Where, } from '@i
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "@infrab4a/connect";
|
|
5
5
|
export class OrderProductReviewService {
|
|
6
|
-
constructor(orderRepository, productReviewRepository
|
|
6
|
+
constructor(orderRepository, productReviewRepository) {
|
|
7
7
|
this.orderRepository = orderRepository;
|
|
8
8
|
this.productReviewRepository = productReviewRepository;
|
|
9
|
-
this.variantRepository = variantRepository;
|
|
10
9
|
}
|
|
11
10
|
async getPendingReviewsByEmail(email) {
|
|
12
11
|
const products = [];
|
|
13
|
-
const orders = await this.getOrdersByEmail(email);
|
|
14
|
-
if (orders.length) {
|
|
15
|
-
for (const order of orders) {
|
|
16
|
-
const lineItems = order.lineItems.filter((item) => !item.isGift);
|
|
17
|
-
for (const item of lineItems) {
|
|
18
|
-
const productReview = await this.getProductReview(order, item);
|
|
19
|
-
if (productReview?.status != null)
|
|
20
|
-
continue;
|
|
21
|
-
products.push(this.buildProductReview(order, item, productReview));
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return products;
|
|
26
|
-
}
|
|
27
|
-
async getOrdersByEmail(email) {
|
|
28
12
|
const { data: orders } = await this.orderRepository.find({
|
|
29
13
|
filters: {
|
|
30
14
|
user: {
|
|
31
15
|
email: email,
|
|
32
16
|
},
|
|
33
17
|
status: OrderStatus.ENTREGUE,
|
|
34
|
-
createdAt: {
|
|
35
|
-
operator: Where.GTE,
|
|
36
|
-
value: new Date(2024, 0, 0, 0, 0, 0).getTime(),
|
|
37
|
-
},
|
|
38
18
|
},
|
|
39
19
|
orderBy: {
|
|
40
20
|
createdAt: 'desc',
|
|
41
21
|
},
|
|
42
22
|
});
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
},
|
|
62
|
-
})
|
|
63
|
-
.then((res) => res.data.at(0));
|
|
64
|
-
return productReview;
|
|
23
|
+
if (orders.length) {
|
|
24
|
+
for (const order of orders) {
|
|
25
|
+
const lineItems = order.lineItems.filter((item) => !item.isGift);
|
|
26
|
+
for (const item of lineItems) {
|
|
27
|
+
const productReview = await this.productReviewRepository
|
|
28
|
+
.find({
|
|
29
|
+
filters: {
|
|
30
|
+
orderId: order.id,
|
|
31
|
+
productId: item.id,
|
|
32
|
+
status: { operator: Where.ISNULL },
|
|
33
|
+
},
|
|
34
|
+
})
|
|
35
|
+
.then((res) => res.data.at(0));
|
|
36
|
+
products.push(this.buildProductReview(order, item, productReview));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return products;
|
|
65
41
|
}
|
|
66
42
|
buildProductReview(order, item, review) {
|
|
67
43
|
return {
|
|
68
44
|
id: item.id,
|
|
69
|
-
orderId: order.id,
|
|
70
|
-
orderNumber: order.orderNumber,
|
|
71
45
|
isEdition: false,
|
|
72
46
|
name: item.name,
|
|
73
47
|
image: item.image,
|
|
74
48
|
deliveryDate: order.deliveredAt || null,
|
|
75
49
|
evaluationInAnalysis: review ? true : false,
|
|
76
|
-
rating: review ? review.rate : null,
|
|
77
50
|
shopProductSlug: item.slug,
|
|
78
51
|
};
|
|
79
52
|
}
|
|
@@ -93,7 +66,7 @@ export class OrderProductReviewService {
|
|
|
93
66
|
}));
|
|
94
67
|
}
|
|
95
68
|
}
|
|
96
|
-
OrderProductReviewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: OrderProductReviewService, deps: [{ token: 'OrderRepository' }, { token: 'ProductReviewRepository' }
|
|
69
|
+
OrderProductReviewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: OrderProductReviewService, deps: [{ token: 'OrderRepository' }, { token: 'ProductReviewRepository' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
97
70
|
OrderProductReviewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: OrderProductReviewService });
|
|
98
71
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: OrderProductReviewService, decorators: [{
|
|
99
72
|
type: Injectable
|
|
@@ -103,8 +76,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
|
|
|
103
76
|
}] }, { type: undefined, decorators: [{
|
|
104
77
|
type: Inject,
|
|
105
78
|
args: ['ProductReviewRepository']
|
|
106
|
-
}] }, { type: undefined, decorators: [{
|
|
107
|
-
type: Inject,
|
|
108
|
-
args: ['VariantRepository']
|
|
109
79
|
}] }]; } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItcHJvZHVjdC1yZXZpZXcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvb3JkZXItcHJvZHVjdC1yZXZpZXcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBR0wsd0JBQXdCLEVBQ3hCLFdBQVcsRUFDWCxhQUFhLEVBRWIsS0FBSyxHQUNOLE1BQU0sbUJBQW1CLENBQUE7OztBQUsxQixNQUFNLE9BQU8seUJBQXlCO0lBQ3BDLFlBQzhDLGVBQXlDLEVBQ2pDLHVCQUFnRDtRQUR4RCxvQkFBZSxHQUFmLGVBQWUsQ0FBMEI7UUFDakMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtJQUNuRyxDQUFDO0lBRUosS0FBSyxDQUFDLHdCQUF3QixDQUFDLEtBQWE7UUFDMUMsTUFBTSxRQUFRLEdBQTJCLEVBQUUsQ0FBQTtRQUMzQyxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7WUFDdkQsT0FBTyxFQUFFO2dCQUNQLElBQUksRUFBRTtvQkFDSixLQUFLLEVBQUUsS0FBSztpQkFDYjtnQkFDRCxNQUFNLEVBQUUsV0FBVyxDQUFDLFFBQVE7YUFDN0I7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsU0FBUyxFQUFFLE1BQU07YUFDbEI7U0FDRixDQUFDLENBQUE7UUFFRixJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFDakIsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7Z0JBQzFCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtnQkFFaEUsS0FBSyxNQUFNLElBQUksSUFBSSxTQUFTLEVBQUU7b0JBQzVCLE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLHVCQUF1Qjt5QkFDckQsSUFBSSxDQUFDO3dCQUNKLE9BQU8sRUFBRTs0QkFDUCxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUU7NEJBQ2pCLFNBQVMsRUFBRSxJQUFJLENBQUMsRUFBRTs0QkFDbEIsTUFBTSxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUU7eUJBQ25DO3FCQUNGLENBQUM7eUJBQ0QsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO29CQUVoQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUE7aUJBQ25FO2FBQ0Y7U0FDRjtRQUVELE9BQU8sUUFBUSxDQUFBO0lBQ2pCLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxLQUFZLEVBQUUsSUFBYyxFQUFFLE1BQXFCO1FBQzVFLE9BQU87WUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxTQUFTLEVBQUUsS0FBSztZQUNoQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsWUFBWSxFQUFFLEtBQUssQ0FBQyxXQUFXLElBQUksSUFBSTtZQUN2QyxvQkFBb0IsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSztZQUMzQyxlQUFlLEVBQUUsSUFBSSxDQUFDLElBQUk7U0FDM0IsQ0FBQTtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQTJCO1FBQzVDLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FDeEMsYUFBYSxDQUFDLFVBQVUsQ0FBQztZQUN2QixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUU7WUFDdEMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO1lBQ2pCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtZQUNqQixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1lBQ25CLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtZQUN6QixNQUFNLEVBQUUsTUFBTSxDQUFDLE9BQU87WUFDdEIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1lBQ25CLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtZQUN6QixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1NBQ3hCLENBQUMsQ0FDSCxDQUFBO0lBQ0gsQ0FBQzs7c0hBdkVVLHlCQUF5QixrQkFFMUIsaUJBQWlCLGFBQ2pCLHlCQUF5QjswSEFIeEIseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVU7OzBCQUdOLE1BQU07MkJBQUMsaUJBQWlCOzswQkFDeEIsTUFBTTsyQkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgTGluZUl0ZW0sXG4gIE9yZGVyLFxuICBPcmRlckZpcmVzdG9yZVJlcG9zaXRvcnksXG4gIE9yZGVyU3RhdHVzLFxuICBQcm9kdWN0UmV2aWV3LFxuICBQcm9kdWN0UmV2aWV3UmVwb3NpdG9yeSxcbiAgV2hlcmUsXG59IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xuXG5pbXBvcnQgeyBQZW5kaW5nUHJvZHVjdFJldmlldywgUHJvZHVjdFJldmlld0NyZWF0ZSB9IGZyb20gJy4vdHlwZXMnXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPcmRlclByb2R1Y3RSZXZpZXdTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdCgnT3JkZXJSZXBvc2l0b3J5JykgcHJpdmF0ZSByZWFkb25seSBvcmRlclJlcG9zaXRvcnk6IE9yZGVyRmlyZXN0b3JlUmVwb3NpdG9yeSxcbiAgICBASW5qZWN0KCdQcm9kdWN0UmV2aWV3UmVwb3NpdG9yeScpIHByaXZhdGUgcmVhZG9ubHkgcHJvZHVjdFJldmlld1JlcG9zaXRvcnk6IFByb2R1Y3RSZXZpZXdSZXBvc2l0b3J5LFxuICApIHt9XG5cbiAgYXN5bmMgZ2V0UGVuZGluZ1Jldmlld3NCeUVtYWlsKGVtYWlsOiBzdHJpbmcpOiBQcm9taXNlPFBlbmRpbmdQcm9kdWN0UmV2aWV3W10+IHtcbiAgICBjb25zdCBwcm9kdWN0czogUGVuZGluZ1Byb2R1Y3RSZXZpZXdbXSA9IFtdXG4gICAgY29uc3QgeyBkYXRhOiBvcmRlcnMgfSA9IGF3YWl0IHRoaXMub3JkZXJSZXBvc2l0b3J5LmZpbmQoe1xuICAgICAgZmlsdGVyczoge1xuICAgICAgICB1c2VyOiB7XG4gICAgICAgICAgZW1haWw6IGVtYWlsLFxuICAgICAgICB9LFxuICAgICAgICBzdGF0dXM6IE9yZGVyU3RhdHVzLkVOVFJFR1VFLFxuICAgICAgfSxcbiAgICAgIG9yZGVyQnk6IHtcbiAgICAgICAgY3JlYXRlZEF0OiAnZGVzYycsXG4gICAgICB9LFxuICAgIH0pXG5cbiAgICBpZiAob3JkZXJzLmxlbmd0aCkge1xuICAgICAgZm9yIChjb25zdCBvcmRlciBvZiBvcmRlcnMpIHtcbiAgICAgICAgY29uc3QgbGluZUl0ZW1zID0gb3JkZXIubGluZUl0ZW1zLmZpbHRlcigoaXRlbSkgPT4gIWl0ZW0uaXNHaWZ0KVxuXG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBsaW5lSXRlbXMpIHtcbiAgICAgICAgICBjb25zdCBwcm9kdWN0UmV2aWV3ID0gYXdhaXQgdGhpcy5wcm9kdWN0UmV2aWV3UmVwb3NpdG9yeVxuICAgICAgICAgICAgLmZpbmQoe1xuICAgICAgICAgICAgICBmaWx0ZXJzOiB7XG4gICAgICAgICAgICAgICAgb3JkZXJJZDogb3JkZXIuaWQsXG4gICAgICAgICAgICAgICAgcHJvZHVjdElkOiBpdGVtLmlkLFxuICAgICAgICAgICAgICAgIHN0YXR1czogeyBvcGVyYXRvcjogV2hlcmUuSVNOVUxMIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4gcmVzLmRhdGEuYXQoMCkpXG5cbiAgICAgICAgICBwcm9kdWN0cy5wdXNoKHRoaXMuYnVpbGRQcm9kdWN0UmV2aWV3KG9yZGVyLCBpdGVtLCBwcm9kdWN0UmV2aWV3KSlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBwcm9kdWN0c1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFByb2R1Y3RSZXZpZXcob3JkZXI6IE9yZGVyLCBpdGVtOiBMaW5lSXRlbSwgcmV2aWV3OiBQcm9kdWN0UmV2aWV3KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiBpdGVtLmlkLFxuICAgICAgaXNFZGl0aW9uOiBmYWxzZSxcbiAgICAgIG5hbWU6IGl0ZW0ubmFtZSxcbiAgICAgIGltYWdlOiBpdGVtLmltYWdlLFxuICAgICAgZGVsaXZlcnlEYXRlOiBvcmRlci5kZWxpdmVyZWRBdCB8fCBudWxsLFxuICAgICAgZXZhbHVhdGlvbkluQW5hbHlzaXM6IHJldmlldyA/IHRydWUgOiBmYWxzZSxcbiAgICAgIHNob3BQcm9kdWN0U2x1ZzogaXRlbS5zbHVnLFxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNyZWF0ZVJldmlldyhyZXZpZXc6IFByb2R1Y3RSZXZpZXdDcmVhdGUpOiBQcm9taXNlPFByb2R1Y3RSZXZpZXc+IHtcbiAgICByZXR1cm4gdGhpcy5wcm9kdWN0UmV2aWV3UmVwb3NpdG9yeS5jcmVhdGUoXG4gICAgICBQcm9kdWN0UmV2aWV3LnRvSW5zdGFuY2Uoe1xuICAgICAgICBwcm9kdWN0SWQ6IHJldmlldy5wcm9kdWN0SWQudG9TdHJpbmcoKSxcbiAgICAgICAgc2hvcDogcmV2aWV3LnNob3AsXG4gICAgICAgIHJhdGU6IHJldmlldy5yYXRlLFxuICAgICAgICBhdXRob3I6IHJldmlldy5hdXRob3IsXG4gICAgICAgIGVtYWlsOiByZXZpZXcuZW1haWwsXG4gICAgICAgIGxvY2F0aW9uOiByZXZpZXcubG9jYXRpb24sXG4gICAgICAgIHJldmlldzogcmV2aWV3LmNvbW1lbnQsXG4gICAgICAgIHRpdGxlOiByZXZpZXcudGl0bGUsXG4gICAgICAgIHBlcnNvbklkOiByZXZpZXcucGVyc29uSWQsXG4gICAgICAgIHBvaW50czogcmV2aWV3LnBvaW50cyxcbiAgICAgICAgb3JkZXJJZDogcmV2aWV3Lm9yZGVySWQsXG4gICAgICB9KSxcbiAgICApXG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVuZGluZy1wcm9kdWN0LXJldmlldy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy90eXBlcy9wZW5kaW5nLXByb2R1Y3QtcmV2aWV3LnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFBlbmRpbmdQcm9kdWN0UmV2aWV3ID0ge1xuICBpZDogc3RyaW5nXG4gIGlzRWRpdGlvbjogYm9vbGVhblxuICBuYW1lOiBzdHJpbmdcbiAgaW1hZ2U6IHN0cmluZ1xuICBkZWxpdmVyeURhdGU6IHN0cmluZ1xuICBldmFsdWF0aW9uSW5BbmFseXNpczogYm9vbGVhblxuICBzaG9wUHJvZHVjdFNsdWc6IHN0cmluZ1xufVxuIl19
|
|
@@ -3076,83 +3076,52 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
|
|
|
3076
3076
|
}], ctorParameters: function () { return [{ type: HomeShopRepositoriesFacade }, { type: ConfigurationFacade }]; } });
|
|
3077
3077
|
|
|
3078
3078
|
class OrderProductReviewService {
|
|
3079
|
-
constructor(orderRepository, productReviewRepository
|
|
3079
|
+
constructor(orderRepository, productReviewRepository) {
|
|
3080
3080
|
this.orderRepository = orderRepository;
|
|
3081
3081
|
this.productReviewRepository = productReviewRepository;
|
|
3082
|
-
this.variantRepository = variantRepository;
|
|
3083
3082
|
}
|
|
3084
3083
|
getPendingReviewsByEmail(email) {
|
|
3085
3084
|
return __awaiter(this, void 0, void 0, function* () {
|
|
3086
3085
|
const products = [];
|
|
3087
|
-
const orders = yield this.getOrdersByEmail(email);
|
|
3088
|
-
if (orders.length) {
|
|
3089
|
-
for (const order of orders) {
|
|
3090
|
-
const lineItems = order.lineItems.filter((item) => !item.isGift);
|
|
3091
|
-
for (const item of lineItems) {
|
|
3092
|
-
const productReview = yield this.getProductReview(order, item);
|
|
3093
|
-
if ((productReview === null || productReview === void 0 ? void 0 : productReview.status) != null)
|
|
3094
|
-
continue;
|
|
3095
|
-
products.push(this.buildProductReview(order, item, productReview));
|
|
3096
|
-
}
|
|
3097
|
-
}
|
|
3098
|
-
}
|
|
3099
|
-
return products;
|
|
3100
|
-
});
|
|
3101
|
-
}
|
|
3102
|
-
getOrdersByEmail(email) {
|
|
3103
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
3104
3086
|
const { data: orders } = yield this.orderRepository.find({
|
|
3105
3087
|
filters: {
|
|
3106
3088
|
user: {
|
|
3107
3089
|
email: email,
|
|
3108
3090
|
},
|
|
3109
3091
|
status: OrderStatus.ENTREGUE,
|
|
3110
|
-
createdAt: {
|
|
3111
|
-
operator: Where.GTE,
|
|
3112
|
-
value: new Date(2024, 0, 0, 0, 0, 0).getTime(),
|
|
3113
|
-
},
|
|
3114
3092
|
},
|
|
3115
3093
|
orderBy: {
|
|
3116
3094
|
createdAt: 'desc',
|
|
3117
3095
|
},
|
|
3118
3096
|
});
|
|
3119
|
-
|
|
3120
|
-
|
|
3121
|
-
|
|
3122
|
-
|
|
3123
|
-
|
|
3124
|
-
|
|
3125
|
-
|
|
3126
|
-
|
|
3127
|
-
|
|
3128
|
-
|
|
3129
|
-
|
|
3130
|
-
|
|
3131
|
-
|
|
3132
|
-
|
|
3133
|
-
|
|
3134
|
-
|
|
3135
|
-
|
|
3136
|
-
|
|
3137
|
-
orderId: { operator: Where.IN, value: [order.id, order.orderNumber].filter(Boolean) },
|
|
3138
|
-
productId: { operator: Where.IN, value: products },
|
|
3139
|
-
},
|
|
3140
|
-
})
|
|
3141
|
-
.then((res) => res.data.at(0));
|
|
3142
|
-
return productReview;
|
|
3097
|
+
if (orders.length) {
|
|
3098
|
+
for (const order of orders) {
|
|
3099
|
+
const lineItems = order.lineItems.filter((item) => !item.isGift);
|
|
3100
|
+
for (const item of lineItems) {
|
|
3101
|
+
const productReview = yield this.productReviewRepository
|
|
3102
|
+
.find({
|
|
3103
|
+
filters: {
|
|
3104
|
+
orderId: order.id,
|
|
3105
|
+
productId: item.id,
|
|
3106
|
+
status: { operator: Where.ISNULL },
|
|
3107
|
+
},
|
|
3108
|
+
})
|
|
3109
|
+
.then((res) => res.data.at(0));
|
|
3110
|
+
products.push(this.buildProductReview(order, item, productReview));
|
|
3111
|
+
}
|
|
3112
|
+
}
|
|
3113
|
+
}
|
|
3114
|
+
return products;
|
|
3143
3115
|
});
|
|
3144
3116
|
}
|
|
3145
3117
|
buildProductReview(order, item, review) {
|
|
3146
3118
|
return {
|
|
3147
3119
|
id: item.id,
|
|
3148
|
-
orderId: order.id,
|
|
3149
|
-
orderNumber: order.orderNumber,
|
|
3150
3120
|
isEdition: false,
|
|
3151
3121
|
name: item.name,
|
|
3152
3122
|
image: item.image,
|
|
3153
3123
|
deliveryDate: order.deliveredAt || null,
|
|
3154
3124
|
evaluationInAnalysis: review ? true : false,
|
|
3155
|
-
rating: review ? review.rate : null,
|
|
3156
3125
|
shopProductSlug: item.slug,
|
|
3157
3126
|
};
|
|
3158
3127
|
}
|
|
@@ -3174,7 +3143,7 @@ class OrderProductReviewService {
|
|
|
3174
3143
|
});
|
|
3175
3144
|
}
|
|
3176
3145
|
}
|
|
3177
|
-
OrderProductReviewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: OrderProductReviewService, deps: [{ token: 'OrderRepository' }, { token: 'ProductReviewRepository' }
|
|
3146
|
+
OrderProductReviewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: OrderProductReviewService, deps: [{ token: 'OrderRepository' }, { token: 'ProductReviewRepository' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3178
3147
|
OrderProductReviewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: OrderProductReviewService });
|
|
3179
3148
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: OrderProductReviewService, decorators: [{
|
|
3180
3149
|
type: Injectable
|
|
@@ -3185,9 +3154,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
|
|
|
3185
3154
|
}] }, { type: undefined, decorators: [{
|
|
3186
3155
|
type: Inject,
|
|
3187
3156
|
args: ['ProductReviewRepository']
|
|
3188
|
-
}] }, { type: undefined, decorators: [{
|
|
3189
|
-
type: Inject,
|
|
3190
|
-
args: ['VariantRepository']
|
|
3191
3157
|
}] }];
|
|
3192
3158
|
} });
|
|
3193
3159
|
|