aws-service-stack 0.18.429 → 0.18.432
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/_examples/controller/local-task-controller.d.ts +4 -0
- package/dist/_examples/controller/local-task-controller.d.ts.map +1 -1
- package/dist/_examples/controller/local-task-controller.js +39 -1
- package/dist/_examples/controller/local-task-controller.js.map +1 -1
- package/dist/_examples/controller/order/order-config.d.ts.map +1 -1
- package/dist/_examples/controller/order/order-config.js +6 -4
- package/dist/_examples/controller/order/order-config.js.map +1 -1
- package/dist/_examples/model-shared/order.model.d.ts +7 -7
- package/dist/_examples/model-shared/order.model.d.ts.map +1 -1
- package/dist/_examples/model-shared/order.model.js.map +1 -1
- package/dist/_examples/repositories/order/order-es.repo.d.ts +8 -0
- package/dist/_examples/repositories/order/order-es.repo.d.ts.map +1 -0
- package/dist/_examples/repositories/order/order-es.repo.interface.d.ts +5 -0
- package/dist/_examples/repositories/order/order-es.repo.interface.d.ts.map +1 -0
- package/dist/_examples/repositories/order/order-es.repo.interface.js +3 -0
- package/dist/_examples/repositories/order/order-es.repo.interface.js.map +1 -0
- package/dist/_examples/repositories/order/order-es.repo.js +20 -0
- package/dist/_examples/repositories/order/order-es.repo.js.map +1 -0
- package/dist/_examples/repositories/order/order-item-es.repo.d.ts +8 -0
- package/dist/_examples/repositories/order/order-item-es.repo.d.ts.map +1 -0
- package/dist/_examples/repositories/order/order-item-es.repo.interface.d.ts +5 -0
- package/dist/_examples/repositories/order/order-item-es.repo.interface.d.ts.map +1 -0
- package/dist/_examples/repositories/order/order-item-es.repo.interface.js +3 -0
- package/dist/_examples/repositories/order/order-item-es.repo.interface.js.map +1 -0
- package/dist/_examples/repositories/order/order-item-es.repo.js +20 -0
- package/dist/_examples/repositories/order/order-item-es.repo.js.map +1 -0
- package/dist/_examples/service/order/order-item-service-stream.d.ts.map +1 -1
- package/dist/_examples/service/order/order-item-service-stream.js +3 -2
- package/dist/_examples/service/order/order-item-service-stream.js.map +1 -1
- package/dist/_examples/service/order/order-item-service.d.ts +3 -1
- package/dist/_examples/service/order/order-item-service.d.ts.map +1 -1
- package/dist/_examples/service/order/order-item-service.js +4 -2
- package/dist/_examples/service/order/order-item-service.js.map +1 -1
- package/dist/_examples/service/order/order-service-stream.d.ts.map +1 -1
- package/dist/_examples/service/order/order-service-stream.js +3 -2
- package/dist/_examples/service/order/order-service-stream.js.map +1 -1
- package/dist/_examples/service/order/order-service.d.ts +4 -2
- package/dist/_examples/service/order/order-service.d.ts.map +1 -1
- package/dist/_examples/service/order/order-service.js +6 -4
- package/dist/_examples/service/order/order-service.js.map +1 -1
- package/dist/exception/exception-handler.d.ts.map +1 -1
- package/dist/exception/exception-handler.js.map +1 -1
- package/dist/function/cognito/cognito.function.d.ts.map +1 -1
- package/dist/function/cognito/cognito.function.js +10 -9
- package/dist/function/cognito/cognito.function.js.map +1 -1
- package/dist/model/base.model.d.ts +10 -5
- package/dist/model/base.model.d.ts.map +1 -1
- package/dist/model/base.model.js.map +1 -1
- package/dist/model/cognito-user.model.d.ts +3 -2
- package/dist/model/cognito-user.model.d.ts.map +1 -1
- package/dist/model/cognito-user.model.js.map +1 -1
- package/dist/model/date-string.model.d.ts +10 -0
- package/dist/model/date-string.model.d.ts.map +1 -0
- package/dist/model/date-string.model.js +3 -0
- package/dist/model/date-string.model.js.map +1 -0
- package/dist/model/index.d.ts +1 -0
- package/dist/model/index.d.ts.map +1 -1
- package/dist/model/index.js +1 -0
- package/dist/model/index.js.map +1 -1
- package/dist/repositories/base-es.repo.d.ts.map +1 -1
- package/dist/repositories/base-es.repo.js +1 -1
- package/dist/repositories/base-es.repo.js.map +1 -1
- package/dist/service/base.service.d.ts.map +1 -1
- package/dist/service/base.service.js +17 -7
- package/dist/service/base.service.js.map +1 -1
- package/dist/service/crud-operations.d.ts +1 -1
- package/dist/service/crud-operations.d.ts.map +1 -1
- package/dist/service/crud-operations.js +21 -13
- package/dist/service/crud-operations.js.map +1 -1
- package/dist/service/permission.repo.d.ts.map +1 -1
- package/dist/service/permission.repo.js +3 -2
- package/dist/service/permission.repo.js.map +1 -1
- package/dist/utils/date.util.d.ts +17 -4
- package/dist/utils/date.util.d.ts.map +1 -1
- package/dist/utils/date.util.js +83 -5
- package/dist/utils/date.util.js.map +1 -1
- package/dist/utils/dynamodb.utils.d.ts.map +1 -1
- package/dist/utils/dynamodb.utils.js +29 -12
- package/dist/utils/dynamodb.utils.js.map +1 -1
- package/dist/utils/http/http.util.d.ts +3 -1
- package/dist/utils/http/http.util.d.ts.map +1 -1
- package/dist/utils/http/http.util.js +15 -30
- package/dist/utils/http/http.util.js.map +1 -1
- package/dist/utils/opensearch/opensearch.parser.js +1 -1
- package/dist/utils/opensearch/opensearch.parser.js.map +1 -1
- package/dist/utils/opensearch.utils.d.ts.map +1 -1
- package/dist/utils/opensearch.utils.js +11 -8
- package/dist/utils/opensearch.utils.js.map +1 -1
- package/dist/utils/reflection.util.d.ts +1 -11
- package/dist/utils/reflection.util.d.ts.map +1 -1
- package/dist/utils/reflection.util.js +41 -26
- package/dist/utils/reflection.util.js.map +1 -1
- package/package.json +5 -5
|
@@ -2,9 +2,11 @@ import "reflect-metadata";
|
|
|
2
2
|
import "./order-item/order-item-controller";
|
|
3
3
|
import "../service/profile-service";
|
|
4
4
|
import "../service/order/order-item-service";
|
|
5
|
+
import "../service/order/order-service";
|
|
5
6
|
export declare class HelperCDI {
|
|
6
7
|
private readonly orderItemController;
|
|
7
8
|
private readonly orderItemService;
|
|
9
|
+
private readonly orderService;
|
|
8
10
|
private readonly profileService;
|
|
9
11
|
run(): Promise<void>;
|
|
10
12
|
private listProfiles;
|
|
@@ -13,5 +15,7 @@ export declare class HelperCDI {
|
|
|
13
15
|
private filterWithSingleIndex;
|
|
14
16
|
private searchOrderItems;
|
|
15
17
|
private scanOrderItems;
|
|
18
|
+
private streamMethodeTest;
|
|
19
|
+
private streamMethodeTestDB;
|
|
16
20
|
}
|
|
17
21
|
//# sourceMappingURL=local-task-controller.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-task-controller.d.ts","sourceRoot":"","sources":["../../../src/_examples/controller/local-task-controller.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAI1B,OAAO,oCAAoC,CAAC;AAE5C,OAAO,4BAA4B,CAAC;AAEpC,OAAO,qCAAqC,CAAC;AAE7C,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA6D;IACjG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuD;IACxF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmD;IAE5E,GAAG;
|
|
1
|
+
{"version":3,"file":"local-task-controller.d.ts","sourceRoot":"","sources":["../../../src/_examples/controller/local-task-controller.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAI1B,OAAO,oCAAoC,CAAC;AAE5C,OAAO,4BAA4B,CAAC;AAEpC,OAAO,qCAAqC,CAAC;AAE7C,OAAO,gCAAgC,CAAC;AAExC,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA6D;IACjG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuD;IACxF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+C;IAC5E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmD;IAE5E,GAAG;YAcK,YAAY;YAKZ,2BAA2B;YAQ3B,wBAAwB;YAexB,qBAAqB;YAerB,gBAAgB;YAiBhB,cAAc;YAgBd,iBAAiB;YAuBjB,mBAAmB;CAmBlC"}
|
|
@@ -6,18 +6,21 @@ const typedi_1 = require("typedi");
|
|
|
6
6
|
require("./order-item/order-item-controller");
|
|
7
7
|
require("../service/profile-service");
|
|
8
8
|
require("../service/order/order-item-service");
|
|
9
|
+
require("../service/order/order-service");
|
|
9
10
|
class HelperCDI {
|
|
10
11
|
orderItemController = typedi_1.Container.get("OrderItemController");
|
|
11
12
|
orderItemService = typedi_1.Container.get("OrderItemService");
|
|
13
|
+
orderService = typedi_1.Container.get("OrderService");
|
|
12
14
|
profileService = typedi_1.Container.get("ProfileService");
|
|
13
15
|
async run() {
|
|
14
16
|
console.log("running");
|
|
15
17
|
// await this.listProfiles();
|
|
16
|
-
await this.filterWithSortKeySinglePage();
|
|
18
|
+
// await this.filterWithSortKeySinglePage();
|
|
17
19
|
// await this.filterWithSortKeyAllPage();
|
|
18
20
|
// await this.filterWithSingleIndex();
|
|
19
21
|
// await this.searchOrderItems();
|
|
20
22
|
// await this.scanOrderItems();
|
|
23
|
+
await this.streamMethodeTest();
|
|
21
24
|
console.log("done");
|
|
22
25
|
}
|
|
23
26
|
async listProfiles() {
|
|
@@ -81,6 +84,41 @@ class HelperCDI {
|
|
|
81
84
|
lastKey = list.lastKey;
|
|
82
85
|
} while (lastKey);
|
|
83
86
|
}
|
|
87
|
+
async streamMethodeTest() {
|
|
88
|
+
let counter = 0;
|
|
89
|
+
let filterStr = `completedYearMonth__eq=2026-04`;
|
|
90
|
+
log.info(await this.orderService.searchQueryTotalCount(filterStr));
|
|
91
|
+
let page = 1;
|
|
92
|
+
while (true) {
|
|
93
|
+
const list = await this.orderService.searchQuery(`${filterStr}&page=${page++}`);
|
|
94
|
+
counter += list.items.length;
|
|
95
|
+
log.info(`page:${page}, found: ${list.items.length}`);
|
|
96
|
+
if (list.items.length === 0)
|
|
97
|
+
break;
|
|
98
|
+
}
|
|
99
|
+
log.info(`counter find: ${counter}`);
|
|
100
|
+
counter = 0;
|
|
101
|
+
for await (const item of this.orderService.searchStream(filterStr)) {
|
|
102
|
+
counter++;
|
|
103
|
+
}
|
|
104
|
+
log.info(`counter findStream: ${counter}`);
|
|
105
|
+
}
|
|
106
|
+
async streamMethodeTestDB() {
|
|
107
|
+
let counter = 0;
|
|
108
|
+
let lastKey = "";
|
|
109
|
+
let filterStr = `completedYearMonth=2026-04`;
|
|
110
|
+
do {
|
|
111
|
+
const list = await this.orderService.find(`${filterStr}&lastKey=${lastKey}`);
|
|
112
|
+
counter += list.items.length;
|
|
113
|
+
lastKey = list.lastKey;
|
|
114
|
+
} while (lastKey);
|
|
115
|
+
log.info(`counter find: ${counter}`);
|
|
116
|
+
counter = 0;
|
|
117
|
+
for await (const item of this.orderService.findStream(filterStr)) {
|
|
118
|
+
counter++;
|
|
119
|
+
}
|
|
120
|
+
log.info(`counter findStream: ${counter}`);
|
|
121
|
+
}
|
|
84
122
|
}
|
|
85
123
|
exports.HelperCDI = HelperCDI;
|
|
86
124
|
new HelperCDI().run().then((r) => { });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-task-controller.js","sourceRoot":"","sources":["../../../src/_examples/controller/local-task-controller.ts"],"names":[],"mappings":";;;AAAA,4BAA0B;AAC1B,mCAAmC;AAGnC,8CAA4C;AAE5C,sCAAoC;AAEpC,+CAA6C;AAE7C,MAAa,SAAS;IACH,mBAAmB,GAAwB,kBAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAChF,gBAAgB,GAAqB,kBAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACvE,cAAc,GAAmB,kBAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAElF,KAAK,CAAC,GAAG;QACP,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAEvB,gCAAgC;QAChC
|
|
1
|
+
{"version":3,"file":"local-task-controller.js","sourceRoot":"","sources":["../../../src/_examples/controller/local-task-controller.ts"],"names":[],"mappings":"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","sourcesContent":["import \"reflect-metadata\";\nimport { Container } from \"typedi\";\n\nimport { OrderItemController } from \"./order-item/order-item-controller\";\nimport \"./order-item/order-item-controller\";\nimport { ProfileService } from \"../service/profile-service.interface\";\nimport \"../service/profile-service\";\nimport { OrderItemService } from \"../service/order/order-item-service.interface\";\nimport \"../service/order/order-item-service\";\nimport { OrderService } from \"../service/order/order-service.interface\";\nimport \"../service/order/order-service\";\n\nexport class HelperCDI {\n private readonly orderItemController: OrderItemController = Container.get(\"OrderItemController\");\n private readonly orderItemService: OrderItemService = Container.get(\"OrderItemService\");\n private readonly orderService: OrderService = Container.get(\"OrderService\");\n private readonly profileService: ProfileService = Container.get(\"ProfileService\");\n\n async run() {\n console.log(\"running\");\n\n // await this.listProfiles();\n // await this.filterWithSortKeySinglePage();\n // await this.filterWithSortKeyAllPage();\n // await this.filterWithSingleIndex();\n // await this.searchOrderItems();\n // await this.scanOrderItems();\n await this.streamMethodeTest();\n\n console.log(\"done\");\n }\n\n private async listProfiles() {\n const orderItem = await this.orderItemService.findSalesCounts({ isbn: \"9789997317346\" }, \"2026-04-15\");\n log.info(orderItem);\n }\n\n private async filterWithSortKeySinglePage() {\n // simple first page mit default size\n const list = await this.orderItemService.find(\"entityISBN=9789997317346&completedDate=2026-04-17\");\n for (const orderItem of list.items) {\n log.info(`isbn: ${orderItem.entityISBN}, completedDate: ${orderItem.completedDate}`);\n }\n }\n\n private async filterWithSortKeyAllPage() {\n // alle match mit lastKey logic\n let lastKey = \"\";\n do {\n const filterStr = `entityISBN=9789997317346&completedDate=2026-04-17&size=2&lastKey=${lastKey}`;\n const list = await this.orderItemService.find(filterStr);\n\n for (const orderItem of list.items) {\n log.info(`id: ${orderItem.id}, isbn: ${orderItem.entityISBN}, completedDate: ${orderItem.completedDate}`);\n }\n\n lastKey = list.lastKey;\n } while (lastKey);\n }\n\n private async filterWithSingleIndex() {\n // alle match mit lastKey logic\n let lastKey = \"\";\n do {\n const filterStr = `entityISBN=9789997317346&lastKey=${lastKey}`;\n const list = await this.orderItemService.find(filterStr);\n\n for (const orderItem of list.items) {\n log.info(`id: ${orderItem.id}, isbn: ${orderItem.entityISBN}, completedDate: ${orderItem.completedDate}`);\n }\n\n lastKey = list.lastKey;\n } while (lastKey);\n }\n\n private async searchOrderItems() {\n // OpenSearch search: flexible filters/full-text style list, not DynamoDB index query\n let page = 1;\n const size = 25;\n while (true) {\n const list = await this.orderItemService.search(\n `entityISBN__eq=9789997317346&completedDate__gte=2026-04-20&sortBy=completedDate&sort=desc&size=${size}&page=${page++}`,\n );\n\n for (const orderItem of list.items) {\n log.info(`id: ${orderItem.id}, isbn: ${orderItem.entityISBN}, completedDate: ${orderItem.completedDate}`);\n }\n\n if (list.items.length < size) break;\n }\n }\n\n private async scanOrderItems() {\n // DynamoDB scan: only for non-indexed/ad-hoc filters; avoid in hot paths.\n // alle match mit lastKey logic\n let lastKey = \"\";\n do {\n const filterStr = `entityTitle=*Үүрийн*&size=5&queryCountLimit=50&lastKey=${lastKey}`;\n const list = await this.orderItemService.scan(filterStr, true);\n\n for (const orderItem of list.items) {\n log.info(`id: ${orderItem.id}, isbn: ${orderItem.entityISBN}, completedDate: ${orderItem.completedDate}`);\n }\n\n lastKey = list.lastKey;\n } while (lastKey);\n }\n\n private async streamMethodeTest() {\n let counter = 0;\n let filterStr = `completedYearMonth__eq=2026-04`;\n log.info(await this.orderService.searchQueryTotalCount(filterStr));\n let page = 1;\n while (true) {\n const list = await this.orderService.searchQuery(`${filterStr}&page=${page++}`);\n counter += list.items.length;\n\n log.info(`page:${page}, found: ${list.items.length}`);\n\n if (list.items.length === 0) break;\n }\n\n log.info(`counter find: ${counter}`);\n\n counter = 0;\n for await (const item of this.orderService.searchStream(filterStr)) {\n counter++;\n }\n log.info(`counter findStream: ${counter}`);\n }\n\n private async streamMethodeTestDB() {\n let counter = 0;\n let lastKey = \"\";\n let filterStr = `completedYearMonth=2026-04`;\n do {\n const list = await this.orderService.find(`${filterStr}&lastKey=${lastKey}`);\n counter += list.items.length;\n\n lastKey = list.lastKey;\n } while (lastKey);\n\n log.info(`counter find: ${counter}`);\n\n counter = 0;\n for await (const item of this.orderService.findStream(filterStr)) {\n counter++;\n }\n log.info(`counter findStream: ${counter}`);\n }\n}\nnew HelperCDI().run().then((r) => {});\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order-config.d.ts","sourceRoot":"","sources":["../../../../src/_examples/controller/order/order-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D,eAAO,MAAM,IAAI,sBAAsB,CAAC;AAExC,qBAAa,WAAY,SAAQ,gBAAgB;;
|
|
1
|
+
{"version":3,"file":"order-config.d.ts","sourceRoot":"","sources":["../../../../src/_examples/controller/order/order-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D,eAAO,MAAM,IAAI,sBAAsB,CAAC;AAExC,qBAAa,WAAY,SAAQ,gBAAgB;;CAkDhD;AAED,eAAO,MAAM,YAAY,aAAoB,CAAC"}
|
|
@@ -6,10 +6,10 @@ const model_1 = require("../../../model");
|
|
|
6
6
|
exports.path = "/ecommerce/orders";
|
|
7
7
|
class OrderConfig extends base_config_1.EntityConfigImpl {
|
|
8
8
|
constructor() {
|
|
9
|
-
const tableName = "Order-
|
|
9
|
+
const tableName = "Order-y6r5xlyvorgtjjnyugtn4bz7ga-prod";
|
|
10
10
|
const openSearch = {
|
|
11
|
-
index: "
|
|
12
|
-
domain: "
|
|
11
|
+
index: "order",
|
|
12
|
+
domain: "https://search-amplify-opense-1ddfdekgbbpwe-kgxh6aum57h2wc4moozm2jcvom.ap-southeast-1.es.amazonaws.com",
|
|
13
13
|
};
|
|
14
14
|
const indexMap = new model_1.DynamoIndexMap()
|
|
15
15
|
.set("byOdooNumber", { field: "odooNumber", rFields: ["odooNumber"] })
|
|
@@ -46,7 +46,9 @@ class OrderConfig extends base_config_1.EntityConfigImpl {
|
|
|
46
46
|
{ method: model_1.HttpMethod.POST, path: `${exports.path}/calculate-delivery-price`, access: [model_1.Access.PUBLIC] },
|
|
47
47
|
];
|
|
48
48
|
super(exports.path, adminGroupName);
|
|
49
|
-
this.setDynamoDB(tableName, ownerFieldName, indexMap)
|
|
49
|
+
this.setDynamoDB(tableName, ownerFieldName, indexMap)
|
|
50
|
+
.setOpenSearch(openSearch.domain, openSearch.index)
|
|
51
|
+
.setPolicies(policies);
|
|
50
52
|
}
|
|
51
53
|
}
|
|
52
54
|
exports.OrderConfig = OrderConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order-config.js","sourceRoot":"","sources":["../../../../src/_examples/controller/order/order-config.ts"],"names":[],"mappings":";;;AAAA,4DAA8D;AAC9D,0CAA8F;AAEjF,QAAA,IAAI,GAAG,mBAAmB,CAAC;AAExC,MAAa,WAAY,SAAQ,8BAAgB;IAC/C;QACE,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"order-config.js","sourceRoot":"","sources":["../../../../src/_examples/controller/order/order-config.ts"],"names":[],"mappings":"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","sourcesContent":["import { EntityConfigImpl } from \"../../../model/base.config\";\nimport { Access as a, DynamoIndexMap, EndpointPolicy, HttpMethod as m } from \"../../../model\";\n\nexport const path = \"/ecommerce/orders\";\n\nexport class OrderConfig extends EntityConfigImpl {\n constructor() {\n const tableName = \"Order-y6r5xlyvorgtjjnyugtn4bz7ga-prod\";\n const openSearch = {\n index: \"order\",\n domain: \"https://search-amplify-opense-1ddfdekgbbpwe-kgxh6aum57h2wc4moozm2jcvom.ap-southeast-1.es.amazonaws.com\",\n };\n\n const indexMap = new DynamoIndexMap()\n .set(\"byOdooNumber\", { field: \"odooNumber\", rFields: [\"odooNumber\"] })\n .set(\"byClientType\", { field: \"clientType\", rFields: [\"clientType\"] })\n .set(\"byMonPayInvoice\", { field: \"monPayInvoice\", rFields: [\"monPayInvoice\"] })\n .set(\"byProfile\", { field: \"profileId\", rFields: [\"profileId\"] })\n .set(\"byRecipientPhone\", { field: \"recipientPhone\", rFields: [\"recipientPhone\"] })\n .set(\"bySocialInvoice\", { field: \"socialInvoice\", rFields: [\"socialInvoice\"] })\n .set(\"byCompletedYearMonth\", { field: \"completedYearMonth\", rFields: [\"completedYearMonth\"] })\n .set(\"byCompletedDate\", { field: \"completedDate\", rFields: [\"completedDate\"] })\n .set(\"byLicenceId\", { field: \"licenceId\", rFields: [\"licenceId\"] });\n\n const ownerFieldName = \"profileId\";\n const adminGroupName = [\"adminUsers\"];\n const policies: EndpointPolicy[] = [\n { method: m.GET, path: `${path}`, access: [a.OWNER, a.ADMIN] },\n { method: m.GET, path: `${path}/search`, access: [a.OWNER, a.ADMIN] },\n { method: m.GET, path: `${path}/search/query`, access: [a.OWNER, a.ADMIN] },\n { method: m.GET, path: `${path}/search/query/total-count`, access: [a.OWNER, a.ADMIN] },\n { method: m.GET, path: `${path}/{id}`, access: [a.OWNER, a.ADMIN] },\n { method: m.POST, path: `${path}`, access: [a.ADMIN] },\n { method: m.PUT, path: `${path}/{id}`, access: [a.OWNER, a.ADMIN] },\n { method: m.PATCH, path: `${path}/{id}`, access: [a.OWNER, a.ADMIN] },\n { method: m.DELETE, path: `${path}/{id}`, access: [a.ADMIN] },\n { method: m.POST, path: `${path}/create`, access: [a.USER] },\n { method: m.POST, path: `${path}/create-guest`, access: [a.PUBLIC] },\n { method: m.PUT, path: `${path}/{id}/complete`, access: [a.ADMIN] },\n { method: m.GET, path: `${path}/{id}/check-payment`, access: [a.OWNER, a.ADMIN] },\n { method: m.PUT, path: `${path}/{id}/cancel`, access: [a.ADMIN] },\n { method: m.PUT, path: `${path}/{id}/send-to-erp`, access: [a.ADMIN] },\n { method: m.GET, path: `${path}/gift-pack`, access: [a.PUBLIC] },\n { method: m.GET, path: `${path}/{id}/order-items`, access: [a.USER] },\n { method: m.GET, path: `${path}/guest`, access: [a.PUBLIC] },\n { method: m.GET, path: `${path}/guest/{id}/order-items`, access: [a.PUBLIC] },\n { method: m.POST, path: `${path}/calculate-delivery-price`, access: [a.PUBLIC] },\n ];\n\n super(path, adminGroupName);\n\n this.setDynamoDB(tableName, ownerFieldName, indexMap)\n .setOpenSearch(openSearch.domain, openSearch.index)\n .setPolicies(policies);\n }\n}\n\nexport const CONFIG_ORDER = new OrderConfig();\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BaseEntity } from "../../model/base.model";
|
|
1
|
+
import { BaseEntity, DateStr, DateTimeStr, YearMonthStr } from "../../model/base.model";
|
|
2
2
|
export declare enum OrderStatus {
|
|
3
3
|
NEW = "new",
|
|
4
4
|
PROCESSING = "processing",
|
|
@@ -20,9 +20,9 @@ export interface OrderItem extends BaseEntity {
|
|
|
20
20
|
entityTitle?: string;
|
|
21
21
|
entityType?: string;
|
|
22
22
|
entityThumb?: string;
|
|
23
|
-
orderDate?:
|
|
24
|
-
completedDate?:
|
|
25
|
-
completedYearMonth?:
|
|
23
|
+
orderDate?: DateStr;
|
|
24
|
+
completedDate?: DateStr;
|
|
25
|
+
completedYearMonth?: YearMonthStr;
|
|
26
26
|
categoryPaths?: string[];
|
|
27
27
|
authors?: string[];
|
|
28
28
|
isReturned?: boolean;
|
|
@@ -36,8 +36,8 @@ export interface Order extends BaseEntity {
|
|
|
36
36
|
monPayInvoice?: string;
|
|
37
37
|
recipientPhone?: string;
|
|
38
38
|
socialInvoice?: string;
|
|
39
|
-
completedDate?:
|
|
40
|
-
completedYearMonth?:
|
|
39
|
+
completedDate?: DateStr;
|
|
40
|
+
completedYearMonth?: YearMonthStr;
|
|
41
41
|
licenceId?: string;
|
|
42
42
|
status?: OrderStatus | string;
|
|
43
43
|
note?: string;
|
|
@@ -45,7 +45,7 @@ export interface Order extends BaseEntity {
|
|
|
45
45
|
deliveryPrice?: number;
|
|
46
46
|
items?: OrderItemDraft[];
|
|
47
47
|
sentToErpAt?: string;
|
|
48
|
-
canceledAt?:
|
|
48
|
+
canceledAt?: DateTimeStr;
|
|
49
49
|
}
|
|
50
50
|
export interface OrderItemDraft extends Partial<OrderItem> {
|
|
51
51
|
quantity: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order.model.d.ts","sourceRoot":"","sources":["../../../src/_examples/model-shared/order.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"order.model.d.ts","sourceRoot":"","sources":["../../../src/_examples/model-shared/order.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order.model.js","sourceRoot":"","sources":["../../../src/_examples/model-shared/order.model.ts"],"names":[],"mappings":";;;AAEA,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,0BAAW,CAAA;IACX,wCAAyB,CAAA;IACzB,sCAAuB,CAAA;IACvB,oCAAqB,CAAA;IACrB,0CAA2B,CAAA;AAC7B,CAAC,EANW,WAAW,2BAAX,WAAW,QAMtB","sourcesContent":["import { BaseEntity } from \"../../model/base.model\";\n\nexport enum OrderStatus {\n NEW = \"new\",\n PROCESSING = \"processing\",\n COMPLETED = \"completed\",\n CANCELED = \"canceled\",\n SENT_TO_ERP = \"sent_to_erp\",\n}\n\nexport interface OrderItem extends BaseEntity {\n orderId?: string;\n entityId?: string;\n quantity?: number;\n initQuantity?: number;\n entityISBN?: string;\n entityOwner?: string;\n entitySlug?: string;\n entityPrice?: number;\n entityDiscountPrice?: number;\n soldPrice?: number;\n entityTitle?: string;\n entityType?: string;\n entityThumb?: string;\n orderDate?:
|
|
1
|
+
{"version":3,"file":"order.model.js","sourceRoot":"","sources":["../../../src/_examples/model-shared/order.model.ts"],"names":[],"mappings":";;;AAEA,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,0BAAW,CAAA;IACX,wCAAyB,CAAA;IACzB,sCAAuB,CAAA;IACvB,oCAAqB,CAAA;IACrB,0CAA2B,CAAA;AAC7B,CAAC,EANW,WAAW,2BAAX,WAAW,QAMtB","sourcesContent":["import { BaseEntity, DateStr, DateTimeStr, YearMonthStr } from \"../../model/base.model\";\n\nexport enum OrderStatus {\n NEW = \"new\",\n PROCESSING = \"processing\",\n COMPLETED = \"completed\",\n CANCELED = \"canceled\",\n SENT_TO_ERP = \"sent_to_erp\",\n}\n\nexport interface OrderItem extends BaseEntity {\n orderId?: string;\n entityId?: string;\n quantity?: number;\n initQuantity?: number;\n entityISBN?: string;\n entityOwner?: string;\n entitySlug?: string;\n entityPrice?: number;\n entityDiscountPrice?: number;\n soldPrice?: number;\n entityTitle?: string;\n entityType?: string;\n entityThumb?: string;\n orderDate?: DateStr;\n completedDate?: DateStr;\n completedYearMonth?: YearMonthStr;\n categoryPaths?: string[];\n authors?: string[];\n isReturned?: boolean;\n giftPackId?: string;\n profileId?: string;\n}\n\nexport interface Order extends BaseEntity {\n profileId?: string;\n clientType?: string;\n odooNumber?: string;\n monPayInvoice?: string;\n recipientPhone?: string;\n socialInvoice?: string;\n completedDate?: DateStr;\n completedYearMonth?: YearMonthStr;\n licenceId?: string;\n status?: OrderStatus | string;\n note?: string;\n totalPrice?: number;\n deliveryPrice?: number;\n items?: OrderItemDraft[];\n sentToErpAt?: string;\n canceledAt?: DateTimeStr;\n}\n\nexport interface OrderItemDraft extends Partial<OrderItem> {\n quantity: number;\n giftPackId?: string;\n}\n\nexport interface CreateOrder extends Partial<Order> {\n items?: OrderItemDraft[];\n}\n\nexport interface CalculateDeliveryPrice {\n recipientPhone?: string;\n province?: string;\n district?: string;\n weight?: number;\n amount?: number;\n}\n\nexport interface CalculateDeliveryPriceResult {\n price: number;\n currency?: string;\n note?: string;\n}\n\nexport interface OrderGiftPack {\n id: string;\n name: string;\n price?: number;\n}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import "../../../provider/opensearch";
|
|
2
|
+
import { BaseRepoESImpl } from "../../../repositories/base-es.repo";
|
|
3
|
+
import { Order } from "../../model-shared/order.model";
|
|
4
|
+
import { OrderRepoES } from "./order-es.repo.interface";
|
|
5
|
+
import "./order-es.repo.interface";
|
|
6
|
+
export declare class OrderRepoESImpl extends BaseRepoESImpl<Order> implements OrderRepoES {
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=order-es.repo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-es.repo.d.ts","sourceRoot":"","sources":["../../../../src/_examples/repositories/order/order-es.repo.ts"],"names":[],"mappings":"AAEA,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,2BAA2B,CAAC;AAEnC,qBACa,eAAgB,SAAQ,cAAc,CAAC,KAAK,CAAE,YAAW,WAAW;CAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-es.repo.interface.d.ts","sourceRoot":"","sources":["../../../../src/_examples/repositories/order/order-es.repo.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAEvD,MAAM,WAAW,WAAY,SAAQ,UAAU,CAAC,KAAK,CAAC;CAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-es.repo.interface.js","sourceRoot":"","sources":["../../../../src/_examples/repositories/order/order-es.repo.interface.ts"],"names":[],"mappings":"","sourcesContent":["import { BaseRepoES } from \"../../../repositories/base-es.repo.interface\";\nimport { Order } from \"../../model-shared/order.model\";\n\nexport interface OrderRepoES extends BaseRepoES<Order> {}\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
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;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.OrderRepoESImpl = void 0;
|
|
10
|
+
const typedi_1 = require("typedi");
|
|
11
|
+
require("../../../provider/opensearch");
|
|
12
|
+
const base_es_repo_1 = require("../../../repositories/base-es.repo");
|
|
13
|
+
require("./order-es.repo.interface");
|
|
14
|
+
let OrderRepoESImpl = class OrderRepoESImpl extends base_es_repo_1.BaseRepoESImpl {
|
|
15
|
+
};
|
|
16
|
+
exports.OrderRepoESImpl = OrderRepoESImpl;
|
|
17
|
+
exports.OrderRepoESImpl = OrderRepoESImpl = __decorate([
|
|
18
|
+
(0, typedi_1.Service)("OrderRepoES")
|
|
19
|
+
], OrderRepoESImpl);
|
|
20
|
+
//# sourceMappingURL=order-es.repo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-es.repo.js","sourceRoot":"","sources":["../../../../src/_examples/repositories/order/order-es.repo.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mCAAiC;AAEjC,wCAAsC;AACtC,qEAAoE;AAGpE,qCAAmC;AAG5B,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,6BAAqB;CAA0B,CAAA;AAAvE,0CAAe;0BAAf,eAAe;IAD3B,IAAA,gBAAO,EAAC,aAAa,CAAC;GACV,eAAe,CAAwD","sourcesContent":["import { Service } from \"typedi\";\n\nimport \"../../../provider/opensearch\";\nimport { BaseRepoESImpl } from \"../../../repositories/base-es.repo\";\nimport { Order } from \"../../model-shared/order.model\";\nimport { OrderRepoES } from \"./order-es.repo.interface\";\nimport \"./order-es.repo.interface\";\n\n@Service(\"OrderRepoES\")\nexport class OrderRepoESImpl extends BaseRepoESImpl<Order> implements OrderRepoES {}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import "../../../provider/opensearch";
|
|
2
|
+
import { BaseRepoESImpl } from "../../../repositories/base-es.repo";
|
|
3
|
+
import { OrderItem } from "../../model-shared/order.model";
|
|
4
|
+
import { OrderItemRepoES } from "./order-item-es.repo.interface";
|
|
5
|
+
import "./order-item-es.repo.interface";
|
|
6
|
+
export declare class OrderItemRepoESImpl extends BaseRepoESImpl<OrderItem> implements OrderItemRepoES {
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=order-item-es.repo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-item-es.repo.d.ts","sourceRoot":"","sources":["../../../../src/_examples/repositories/order/order-item-es.repo.ts"],"names":[],"mappings":"AAEA,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,gCAAgC,CAAC;AAExC,qBACa,mBAAoB,SAAQ,cAAc,CAAC,SAAS,CAAE,YAAW,eAAe;CAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-item-es.repo.interface.d.ts","sourceRoot":"","sources":["../../../../src/_examples/repositories/order/order-item-es.repo.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,MAAM,WAAW,eAAgB,SAAQ,UAAU,CAAC,SAAS,CAAC;CAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-item-es.repo.interface.js","sourceRoot":"","sources":["../../../../src/_examples/repositories/order/order-item-es.repo.interface.ts"],"names":[],"mappings":"","sourcesContent":["import { BaseRepoES } from \"../../../repositories/base-es.repo.interface\";\nimport { OrderItem } from \"../../model-shared/order.model\";\n\nexport interface OrderItemRepoES extends BaseRepoES<OrderItem> {}\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
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;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.OrderItemRepoESImpl = void 0;
|
|
10
|
+
const typedi_1 = require("typedi");
|
|
11
|
+
require("../../../provider/opensearch");
|
|
12
|
+
const base_es_repo_1 = require("../../../repositories/base-es.repo");
|
|
13
|
+
require("./order-item-es.repo.interface");
|
|
14
|
+
let OrderItemRepoESImpl = class OrderItemRepoESImpl extends base_es_repo_1.BaseRepoESImpl {
|
|
15
|
+
};
|
|
16
|
+
exports.OrderItemRepoESImpl = OrderItemRepoESImpl;
|
|
17
|
+
exports.OrderItemRepoESImpl = OrderItemRepoESImpl = __decorate([
|
|
18
|
+
(0, typedi_1.Service)("OrderItemRepoES")
|
|
19
|
+
], OrderItemRepoESImpl);
|
|
20
|
+
//# sourceMappingURL=order-item-es.repo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-item-es.repo.js","sourceRoot":"","sources":["../../../../src/_examples/repositories/order/order-item-es.repo.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mCAAiC;AAEjC,wCAAsC;AACtC,qEAAoE;AAGpE,0CAAwC;AAGjC,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,6BAAyB;CAA8B,CAAA;AAAnF,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,gBAAO,EAAC,iBAAiB,CAAC;GACd,mBAAmB,CAAgE","sourcesContent":["import { Service } from \"typedi\";\n\nimport \"../../../provider/opensearch\";\nimport { BaseRepoESImpl } from \"../../../repositories/base-es.repo\";\nimport { OrderItem } from \"../../model-shared/order.model\";\nimport { OrderItemRepoES } from \"./order-item-es.repo.interface\";\nimport \"./order-item-es.repo.interface\";\n\n@Service(\"OrderItemRepoES\")\nexport class OrderItemRepoESImpl extends BaseRepoESImpl<OrderItem> implements OrderItemRepoES {}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order-item-service-stream.d.ts","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-item-service-stream.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"order-item-service-stream.d.ts","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-item-service-stream.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAIpE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AACxF,OAAO,6CAA6C,CAAC;AAErD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAE/E,qBACa,0BAA2B,SAAQ,iBAAiB,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,CAAE,YAAW,sBAAsB;;IAM7H,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAIhG,eAAe,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI5F,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;YAIhE,iBAAiB;CAQhC"}
|
|
@@ -49,6 +49,7 @@ exports.OrderItemServiceStreamImpl = void 0;
|
|
|
49
49
|
const typedi_1 = __importStar(require("typedi"));
|
|
50
50
|
const dayjs_1 = __importDefault(require("dayjs"));
|
|
51
51
|
const stream_service_1 = require("../../../service/stream.service");
|
|
52
|
+
const date_util_1 = require("../../../utils/date.util");
|
|
52
53
|
const order_item_config_1 = require("../../controller/order-item/order-item-config");
|
|
53
54
|
require("../../repositories/order/order-item-db.repo");
|
|
54
55
|
let OrderItemServiceStreamImpl = class OrderItemServiceStreamImpl extends stream_service_1.StreamServiceImpl {
|
|
@@ -68,8 +69,8 @@ let OrderItemServiceStreamImpl = class OrderItemServiceStreamImpl extends stream
|
|
|
68
69
|
async syncCompletedDate(orderItem) {
|
|
69
70
|
if (!orderItem?.orderDate || orderItem.completedDate)
|
|
70
71
|
return;
|
|
71
|
-
orderItem.completedDate = (0, dayjs_1.default)(orderItem.orderDate).
|
|
72
|
-
orderItem.completedYearMonth = (0, dayjs_1.default)(orderItem.orderDate).
|
|
72
|
+
orderItem.completedDate = (0, date_util_1.formatDateStr)((0, dayjs_1.default)(orderItem.orderDate).toDate());
|
|
73
|
+
orderItem.completedYearMonth = (0, date_util_1.formatYearMonthStr)((0, dayjs_1.default)(orderItem.orderDate).toDate());
|
|
73
74
|
await this.repoDB.updateFields(orderItem, ["completedDate", "completedYearMonth"]);
|
|
74
75
|
}
|
|
75
76
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order-item-service-stream.js","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-item-service-stream.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA4C;AAC5C,kDAA0B;AAE1B,oEAAoE;
|
|
1
|
+
{"version":3,"file":"order-item-service-stream.js","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-item-service-stream.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA4C;AAC5C,kDAA0B;AAE1B,oEAAoE;AACpE,wDAA6E;AAE7E,qFAAkF;AAGlF,uDAAqD;AAK9C,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,kCAAmD;IACjG;QACE,KAAK,CAAC,gBAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,CAAC,qCAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,QAAmB,EAAE,SAAoB,EAAE,UAAkB;QACrF,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAmB,EAAE,QAAmB,EAAE,UAAmB;QACjF,OAAO;IACT,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,SAAoB,EAAE,UAAkB;QAC7D,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,SAAoB;QAClD,IAAI,CAAC,SAAS,EAAE,SAAS,IAAI,SAAS,CAAC,aAAa;YAAE,OAAO;QAE7D,SAAS,CAAC,aAAa,GAAG,IAAA,yBAAa,EAAC,IAAA,eAAK,EAAC,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7E,SAAS,CAAC,kBAAkB,GAAG,IAAA,8BAAkB,EAAC,IAAA,eAAK,EAAC,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAEvF,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC,CAAC;IACrF,CAAC;CACF,CAAA;AA1BY,gEAA0B;qCAA1B,0BAA0B;IADtC,IAAA,gBAAO,EAAC,wBAAwB,CAAC;;GACrB,0BAA0B,CA0BtC","sourcesContent":["import Container, { Service } from \"typedi\";\nimport dayjs from \"dayjs\";\n\nimport { StreamServiceImpl } from \"../../../service/stream.service\";\nimport { formatDateStr, formatYearMonthStr } from \"../../../utils/date.util\";\n\nimport { CONFIG_ORDER_ITEM } from \"../../controller/order-item/order-item-config\";\nimport { OrderItem } from \"../../model-shared/order.model\";\nimport { OrderItemRepoDB } from \"../../repositories/order/order-item-db.repo.interface\";\nimport \"../../repositories/order/order-item-db.repo\";\n\nimport { OrderItemServiceStream } from \"./order-item-service-stream.interface\";\n\n@Service(\"OrderItemServiceStream\")\nexport class OrderItemServiceStreamImpl extends StreamServiceImpl<OrderItem, OrderItemRepoDB, null> implements OrderItemServiceStream {\n constructor() {\n super(Container.get(\"OrderItemRepoDB\"), null);\n this.setConfig(CONFIG_ORDER_ITEM.toObject());\n }\n\n async processModification(_itemOld: OrderItem, orderItem: OrderItem, _tableName: string): Promise<any> {\n return this.syncCompletedDate(orderItem);\n }\n\n async processDeletion(_oldItem: OrderItem, _newItem: OrderItem, _tableName?: string): Promise<any> {\n return;\n }\n\n async processInsertion(orderItem: OrderItem, _tableName: string): Promise<any> {\n return this.syncCompletedDate(orderItem);\n }\n\n private async syncCompletedDate(orderItem: OrderItem) {\n if (!orderItem?.orderDate || orderItem.completedDate) return;\n\n orderItem.completedDate = formatDateStr(dayjs(orderItem.orderDate).toDate());\n orderItem.completedYearMonth = formatYearMonthStr(dayjs(orderItem.orderDate).toDate());\n\n await this.repoDB.updateFields(orderItem, [\"completedDate\", \"completedYearMonth\"]);\n }\n}\n"]}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { CrudServiceImpl } from "../../../service/crud.service";
|
|
2
2
|
import { Order, OrderItem, OrderItemDraft } from "../../model-shared/order.model";
|
|
3
3
|
import { OrderItemRepoDB } from "../../repositories/order/order-item-db.repo.interface";
|
|
4
|
+
import { OrderItemRepoES } from "../../repositories/order/order-item-es.repo.interface";
|
|
4
5
|
import "../../repositories/order/order-item-db.repo";
|
|
6
|
+
import "../../repositories/order/order-item-es.repo";
|
|
5
7
|
import { OrderItemService } from "./order-item-service.interface";
|
|
6
|
-
export declare class OrderItemServiceImpl extends CrudServiceImpl<OrderItem, OrderItemRepoDB,
|
|
8
|
+
export declare class OrderItemServiceImpl extends CrudServiceImpl<OrderItem, OrderItemRepoDB, OrderItemRepoES> implements OrderItemService {
|
|
7
9
|
constructor();
|
|
8
10
|
findSalesCounts(entity: {
|
|
9
11
|
isbn?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order-item-service.d.ts","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-item-service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"order-item-service.d.ts","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-item-service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAKhE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AACxF,OAAO,6CAA6C,CAAC;AACrD,OAAO,6CAA6C,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,qBACa,oBAAqB,SAAQ,eAAe,CAAC,SAAS,EAAE,eAAe,EAAE,eAAe,CAAE,YAAW,gBAAgB;;IAM1H,eAAe,CACnB,MAAM,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EACzB,SAAS,EAAE,MAAM,GAAG,IAAI,GACvB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IA+BvC,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAiCvF"}
|
|
@@ -50,11 +50,13 @@ const typedi_1 = __importStar(require("typedi"));
|
|
|
50
50
|
const dayjs_1 = __importDefault(require("dayjs"));
|
|
51
51
|
const crud_service_1 = require("../../../service/crud.service");
|
|
52
52
|
const reflection_util_1 = require("../../../utils/reflection.util");
|
|
53
|
+
const date_util_1 = require("../../../utils/date.util");
|
|
53
54
|
const order_item_config_1 = require("../../controller/order-item/order-item-config");
|
|
54
55
|
require("../../repositories/order/order-item-db.repo");
|
|
56
|
+
require("../../repositories/order/order-item-es.repo");
|
|
55
57
|
let OrderItemServiceImpl = class OrderItemServiceImpl extends crud_service_1.CrudServiceImpl {
|
|
56
58
|
constructor() {
|
|
57
|
-
super(typedi_1.default.get("OrderItemRepoDB"),
|
|
59
|
+
super(typedi_1.default.get("OrderItemRepoDB"), typedi_1.default.get("OrderItemRepoES"));
|
|
58
60
|
this.setConfig(order_item_config_1.CONFIG_ORDER_ITEM.toObject());
|
|
59
61
|
}
|
|
60
62
|
async findSalesCounts(entity, salesDate) {
|
|
@@ -99,7 +101,7 @@ let OrderItemServiceImpl = class OrderItemServiceImpl extends crud_service_1.Cru
|
|
|
99
101
|
entityTitle: details.entityTitle,
|
|
100
102
|
entityType: details.entityType,
|
|
101
103
|
entityThumb: details.entityThumb,
|
|
102
|
-
orderDate: order.createdAt,
|
|
104
|
+
orderDate: order.createdAt ? (0, date_util_1.formatDateStr)(order.createdAt) : undefined,
|
|
103
105
|
categoryPaths: details.categoryPaths ?? [],
|
|
104
106
|
authors: details.authors ?? [],
|
|
105
107
|
isReturned: details.isReturned ?? false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order-item-service.js","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-item-service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA4C;AAC5C,kDAA0B;AAE1B,gEAAgE;AAChE,oEAAkE;
|
|
1
|
+
{"version":3,"file":"order-item-service.js","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-item-service.ts"],"names":[],"mappings":"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","sourcesContent":["import Container, { Service } from \"typedi\";\nimport dayjs from \"dayjs\";\n\nimport { CrudServiceImpl } from \"../../../service/crud.service\";\nimport { parseIndexFilter } from \"../../../utils/reflection.util\";\nimport { formatDateStr } from \"../../../utils/date.util\";\n\nimport { CONFIG_ORDER_ITEM } from \"../../controller/order-item/order-item-config\";\nimport { Order, OrderItem, OrderItemDraft } from \"../../model-shared/order.model\";\nimport { OrderItemRepoDB } from \"../../repositories/order/order-item-db.repo.interface\";\nimport { OrderItemRepoES } from \"../../repositories/order/order-item-es.repo.interface\";\nimport \"../../repositories/order/order-item-db.repo\";\nimport \"../../repositories/order/order-item-es.repo\";\nimport { OrderItemService } from \"./order-item-service.interface\";\n\n@Service(\"OrderItemService\")\nexport class OrderItemServiceImpl extends CrudServiceImpl<OrderItem, OrderItemRepoDB, OrderItemRepoES> implements OrderItemService {\n constructor() {\n super(Container.get(\"OrderItemRepoDB\"), Container.get(\"OrderItemRepoES\"));\n this.setConfig(CONFIG_ORDER_ITEM.toObject());\n }\n\n async findSalesCounts(\n entity: { isbn?: string },\n salesDate: string | Date,\n ): Promise<{ basket: number; sales: number }> {\n const result = { basket: 0, sales: 0 };\n if (!entity?.isbn) return result;\n\n const completedDate = dayjs(salesDate).format(\"YYYY-MM-DD\");\n\n let lastKey = \"\";\n do {\n const filter = parseIndexFilter(\n {\n entityISBN: entity.isbn,\n completedDate,\n size: 100,\n lastKey,\n },\n this.getIndexMapDB(),\n );\n const orderItemList = await this.find(filter);\n\n for (const item of orderItemList.items as OrderItem[]) {\n const direction = item.isReturned ? -1 : 1;\n result.sales += (item.quantity ?? 0) * direction;\n result.basket += direction;\n }\n\n lastKey = orderItemList.lastKey;\n } while (lastKey);\n\n return result;\n }\n\n async createOrderItems(order: Order, data: Map<string, OrderItemDraft>): Promise<void> {\n const orderItems: Array<OrderItem> = [];\n\n for (const [isbn, details] of data.entries()) {\n if ((details.quantity ?? 0) <= 0) continue;\n\n orderItems.push({\n orderId: order.id,\n entityId: details.entityId ?? details.id,\n quantity: details.quantity,\n initQuantity: details.initQuantity ?? details.quantity,\n entityISBN: isbn,\n entityOwner: details.entityOwner,\n entitySlug: details.entitySlug,\n entityPrice: details.entityPrice,\n entityDiscountPrice: details.entityDiscountPrice,\n soldPrice: details.soldPrice ?? details.entityPrice,\n entityTitle: details.entityTitle,\n entityType: details.entityType,\n entityThumb: details.entityThumb,\n orderDate: order.createdAt ? formatDateStr(order.createdAt) : undefined,\n categoryPaths: details.categoryPaths ?? [],\n authors: details.authors ?? [],\n isReturned: details.isReturned ?? false,\n giftPackId: details.giftPackId,\n profileId: order.profileId,\n });\n }\n\n if (orderItems.length > 0) {\n await this.saveAll(orderItems, order.profileId ?? \"guest\");\n }\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order-service-stream.d.ts","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-service-stream.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"order-service-stream.d.ts","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-service-stream.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAC/E,OAAO,wCAAwC,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE,qBACa,sBAAuB,SAAQ,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAE,YAAW,kBAAkB;;IAM7G,mBAAmB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAOpF,eAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAIpF,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAMvE"}
|
|
@@ -49,6 +49,7 @@ exports.OrderServiceStreamImpl = void 0;
|
|
|
49
49
|
const typedi_1 = __importStar(require("typedi"));
|
|
50
50
|
const dayjs_1 = __importDefault(require("dayjs"));
|
|
51
51
|
const stream_service_1 = require("../../../service/stream.service");
|
|
52
|
+
const date_util_1 = require("../../../utils/date.util");
|
|
52
53
|
const order_config_1 = require("../../controller/order/order-config");
|
|
53
54
|
require("../../repositories/order/order-db.repo");
|
|
54
55
|
let OrderServiceStreamImpl = class OrderServiceStreamImpl extends stream_service_1.StreamServiceImpl {
|
|
@@ -58,7 +59,7 @@ let OrderServiceStreamImpl = class OrderServiceStreamImpl extends stream_service
|
|
|
58
59
|
}
|
|
59
60
|
async processModification(_itemOld, order, _tableName) {
|
|
60
61
|
if (order.completedDate && !order.completedYearMonth) {
|
|
61
|
-
order.completedYearMonth = (0, dayjs_1.default)(order.completedDate).
|
|
62
|
+
order.completedYearMonth = (0, date_util_1.formatYearMonthStr)((0, dayjs_1.default)(order.completedDate).toDate());
|
|
62
63
|
await this.repoDB.updateFields(order, ["completedYearMonth"]);
|
|
63
64
|
}
|
|
64
65
|
}
|
|
@@ -67,7 +68,7 @@ let OrderServiceStreamImpl = class OrderServiceStreamImpl extends stream_service
|
|
|
67
68
|
}
|
|
68
69
|
async processInsertion(order, _tableName) {
|
|
69
70
|
if (order.completedDate && !order.completedYearMonth) {
|
|
70
|
-
order.completedYearMonth = (0, dayjs_1.default)(order.completedDate).
|
|
71
|
+
order.completedYearMonth = (0, date_util_1.formatYearMonthStr)((0, dayjs_1.default)(order.completedDate).toDate());
|
|
71
72
|
await this.repoDB.updateFields(order, ["completedYearMonth"]);
|
|
72
73
|
}
|
|
73
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order-service-stream.js","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-service-stream.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA4C;AAC5C,kDAA0B;AAE1B,oEAAoE;AACpE,sEAAmE;AAGnE,kDAAgD;AAKzC,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,kCAA2C;IACrF;QACE,KAAK,CAAC,gBAAS,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,CAAC,2BAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,QAAe,EAAE,KAAY,EAAE,UAAkB;QACzE,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;YACrD,KAAK,CAAC,kBAAkB,GAAG,IAAA,eAAK,EAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"order-service-stream.js","sourceRoot":"","sources":["../../../../src/_examples/service/order/order-service-stream.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA4C;AAC5C,kDAA0B;AAE1B,oEAAoE;AACpE,wDAA8D;AAC9D,sEAAmE;AAGnE,kDAAgD;AAKzC,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,kCAA2C;IACrF;QACE,KAAK,CAAC,gBAAS,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,CAAC,2BAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,QAAe,EAAE,KAAY,EAAE,UAAkB;QACzE,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;YACrD,KAAK,CAAC,kBAAkB,GAAG,IAAA,8BAAkB,EAAC,IAAA,eAAK,EAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACnF,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAe,EAAE,QAAe,EAAE,UAAmB;QACzE,OAAO;IACT,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAAY,EAAE,UAAkB;QACrD,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;YACrD,KAAK,CAAC,kBAAkB,GAAG,IAAA,8BAAkB,EAAC,IAAA,eAAK,EAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACnF,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;CACF,CAAA;AAvBY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,gBAAO,EAAC,oBAAoB,CAAC;;GACjB,sBAAsB,CAuBlC","sourcesContent":["import Container, { Service } from \"typedi\";\nimport dayjs from \"dayjs\";\n\nimport { StreamServiceImpl } from \"../../../service/stream.service\";\nimport { formatYearMonthStr } from \"../../../utils/date.util\";\nimport { CONFIG_ORDER } from \"../../controller/order/order-config\";\nimport { Order } from \"../../model-shared/order.model\";\nimport { OrderRepoDB } from \"../../repositories/order/order-db.repo.interface\";\nimport \"../../repositories/order/order-db.repo\";\n\nimport { OrderServiceStream } from \"./order-service-stream.interface\";\n\n@Service(\"OrderServiceStream\")\nexport class OrderServiceStreamImpl extends StreamServiceImpl<Order, OrderRepoDB, null> implements OrderServiceStream {\n constructor() {\n super(Container.get(\"OrderRepoDB\"), null);\n this.setConfig(CONFIG_ORDER.toObject());\n }\n\n async processModification(_itemOld: Order, order: Order, _tableName: string): Promise<any> {\n if (order.completedDate && !order.completedYearMonth) {\n order.completedYearMonth = formatYearMonthStr(dayjs(order.completedDate).toDate());\n await this.repoDB.updateFields(order, [\"completedYearMonth\"]);\n }\n }\n\n async processDeletion(_oldItem: Order, _newItem: Order, _tableName?: string): Promise<any> {\n return;\n }\n\n async processInsertion(order: Order, _tableName: string): Promise<any> {\n if (order.completedDate && !order.completedYearMonth) {\n order.completedYearMonth = formatYearMonthStr(dayjs(order.completedDate).toDate());\n await this.repoDB.updateFields(order, [\"completedYearMonth\"]);\n }\n }\n}\n"]}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { CrudServiceImpl } from "../../../service/crud.service";
|
|
2
2
|
import { CognitoUser } from "../../../model/cognito-user.model";
|
|
3
|
-
import {
|
|
3
|
+
import { CalculateDeliveryPrice, CalculateDeliveryPriceResult, Order } from "../../model-shared/order.model";
|
|
4
4
|
import { OrderRepoDB } from "../../repositories/order/order-db.repo.interface";
|
|
5
5
|
import "../../repositories/order/order-db.repo";
|
|
6
|
+
import { OrderRepoES } from "../../repositories/order/order-es.repo.interface";
|
|
7
|
+
import "../../repositories/order/order-es.repo";
|
|
6
8
|
import "./order-item-service";
|
|
7
9
|
import { OrderService } from "./order-service.interface";
|
|
8
|
-
export declare class OrderServiceImpl extends CrudServiceImpl<Order, OrderRepoDB,
|
|
10
|
+
export declare class OrderServiceImpl extends CrudServiceImpl<Order, OrderRepoDB, OrderRepoES> implements OrderService {
|
|
9
11
|
constructor();
|
|
10
12
|
createOrder(order: Partial<Order>, requestUser?: CognitoUser): Promise<Order>;
|
|
11
13
|
completeOrder(orderId: string, requestUser?: CognitoUser): Promise<Order>;
|