@mbc-cqrs-serverless/master 0.1.69-beta.0 → 0.1.70-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/controllers/master-setting.controller.d.ts +2 -1
- package/dist/controllers/master-setting.controller.js +12 -0
- package/dist/controllers/master-setting.controller.js.map +1 -1
- package/dist/custom-task/custom-task.module.d.ts +2 -0
- package/dist/custom-task/custom-task.module.js +30 -0
- package/dist/custom-task/custom-task.module.js.map +1 -0
- package/dist/custom-task/event/task-queue-event-factory.d.ts +6 -0
- package/dist/custom-task/event/task-queue-event-factory.js +23 -0
- package/dist/custom-task/event/task-queue-event-factory.js.map +1 -0
- package/dist/custom-task/my-task.controller.d.ts +9 -0
- package/dist/custom-task/my-task.controller.js +56 -0
- package/dist/custom-task/my-task.controller.js.map +1 -0
- package/dist/custom-task/my-task.service.d.ts +12 -0
- package/dist/custom-task/my-task.service.js +76 -0
- package/dist/custom-task/my-task.service.js.map +1 -0
- package/dist/handler/master-sfn-task.event.d.ts +3 -0
- package/dist/handler/master-sfn-task.event.js +8 -0
- package/dist/handler/master-sfn-task.event.js.map +1 -0
- package/dist/handler/master-sfn-task.handler.d.ts +24 -0
- package/dist/handler/master-sfn-task.handler.js +242 -0
- package/dist/handler/master-sfn-task.handler.js.map +1 -0
- package/dist/helpers/index.d.ts +7 -0
- package/dist/helpers/index.js +15 -0
- package/dist/helpers/index.js.map +1 -1
- package/dist/master.module.js +9 -0
- package/dist/master.module.js.map +1 -1
- package/dist/services/master-setting.service.d.ts +7 -2
- package/dist/services/master-setting.service.js +29 -2
- package/dist/services/master-setting.service.js.map +1 -1
- package/dist/services/master-setting.service.spec.js +5 -0
- package/dist/services/master-setting.service.spec.js.map +1 -1
- package/dist/update-scheme.js +1 -10
- package/dist/update-scheme.js.map +1 -1
- package/package.json +5 -4
- package/src/templates/master/handler/master-rds.handler.ts +0 -4
- package/src/templates/master/master.module.ts +2 -9
- package/src/templates/custom-task/custom-task.module.ts +0 -18
- package/src/templates/custom-task/event/task-queue-event-factory.ts +0 -26
- package/src/templates/custom-task/my-task.controller.ts +0 -28
- package/src/templates/custom-task/my-task.service.ts +0 -99
- package/src/templates/master/handler/master-sfn-task.event.ts +0 -3
- package/src/templates/master/handler/master-sfn-task.handler.ts +0 -332
- package/src/templates/master/master-setting.controller.ts +0 -23
- package/src/templates/master/master-setting.service.ts +0 -55
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DetailDto, IInvoke } from '@mbc-cqrs-serverless/core';
|
|
2
|
-
import { MasterSettingSearchDto, MasterSettingUpdateDto } from '../dto';
|
|
2
|
+
import { MasterCopyDto, MasterSettingSearchDto, MasterSettingUpdateDto } from '../dto';
|
|
3
3
|
import { CommonSettingDto } from '../dto/master-setting/common-setting-create.dto';
|
|
4
4
|
import { GroupSettingDto } from '../dto/master-setting/group-setting-create.dto';
|
|
5
5
|
import { GetSettingDto } from '../dto/master-setting/setting-get.dto';
|
|
@@ -23,4 +23,5 @@ export declare class MasterSettingController {
|
|
|
23
23
|
update(key: DetailDto, updateDto: MasterSettingUpdateDto, invokeContext: IInvoke): Promise<import("@mbc-cqrs-serverless/core").CommandModel>;
|
|
24
24
|
delete(key: DetailDto, invokeContext: IInvoke): Promise<import("@mbc-cqrs-serverless/core").CommandModel>;
|
|
25
25
|
checkExistCode(code: string, invokeContext: IInvoke): Promise<boolean>;
|
|
26
|
+
copyMaster(invokeContext: IInvoke, masterCopyDto: MasterCopyDto): Promise<any>;
|
|
26
27
|
}
|
|
@@ -90,6 +90,9 @@ let MasterSettingController = class MasterSettingController {
|
|
|
90
90
|
async checkExistCode(code, invokeContext) {
|
|
91
91
|
return this.masterSettingService.checkExistCode(code, invokeContext);
|
|
92
92
|
}
|
|
93
|
+
async copyMaster(invokeContext, masterCopyDto) {
|
|
94
|
+
return this.masterSettingService.copy(masterCopyDto, { invokeContext });
|
|
95
|
+
}
|
|
93
96
|
};
|
|
94
97
|
exports.MasterSettingController = MasterSettingController;
|
|
95
98
|
__decorate([
|
|
@@ -212,6 +215,15 @@ __decorate([
|
|
|
212
215
|
__metadata("design:paramtypes", [String, Object]),
|
|
213
216
|
__metadata("design:returntype", Promise)
|
|
214
217
|
], MasterSettingController.prototype, "checkExistCode", null);
|
|
218
|
+
__decorate([
|
|
219
|
+
(0, common_1.Post)('/copy'),
|
|
220
|
+
openapi.ApiResponse({ status: 201, type: Object }),
|
|
221
|
+
__param(0, (0, core_1.INVOKE_CONTEXT)()),
|
|
222
|
+
__param(1, (0, common_1.Body)()),
|
|
223
|
+
__metadata("design:type", Function),
|
|
224
|
+
__metadata("design:paramtypes", [Object, dto_1.MasterCopyDto]),
|
|
225
|
+
__metadata("design:returntype", Promise)
|
|
226
|
+
], MasterSettingController.prototype, "copyMaster", null);
|
|
215
227
|
exports.MasterSettingController = MasterSettingController = __decorate([
|
|
216
228
|
(0, common_1.Controller)('api/master-setting'),
|
|
217
229
|
(0, swagger_1.ApiTags)('master-settings'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"master-setting.controller.js","sourceRoot":"","sources":["../../src/controllers/master-setting.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAKkC;AAClC,2CAWuB;AACvB,6CAAyC;AAEzC,8CAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"master-setting.controller.js","sourceRoot":"","sources":["../../src/controllers/master-setting.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
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.CustomTaskModule = void 0;
|
|
10
|
+
const task_1 = require("@mbc-cqrs-serverless/task");
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const task_queue_event_factory_1 = require("./event/task-queue-event-factory");
|
|
13
|
+
const my_task_controller_1 = require("./my-task.controller");
|
|
14
|
+
const my_task_service_1 = require("./my-task.service");
|
|
15
|
+
let CustomTaskModule = class CustomTaskModule {
|
|
16
|
+
};
|
|
17
|
+
exports.CustomTaskModule = CustomTaskModule;
|
|
18
|
+
exports.CustomTaskModule = CustomTaskModule = __decorate([
|
|
19
|
+
(0, common_1.Module)({
|
|
20
|
+
imports: [
|
|
21
|
+
task_1.TaskModule.register({
|
|
22
|
+
taskQueueEventFactory: task_queue_event_factory_1.TaskQueueEventFactory,
|
|
23
|
+
}),
|
|
24
|
+
],
|
|
25
|
+
providers: [my_task_service_1.MyTaskService],
|
|
26
|
+
controllers: [my_task_controller_1.MyTaskController],
|
|
27
|
+
exports: [task_1.TaskModule],
|
|
28
|
+
})
|
|
29
|
+
], CustomTaskModule);
|
|
30
|
+
//# sourceMappingURL=custom-task.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-task.module.js","sourceRoot":"","sources":["../../src/custom-task/custom-task.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oDAAsD;AACtD,2CAAuC;AAEvC,+EAAwE;AACxE,6DAAuD;AACvD,uDAAiD;AAY1C,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,4CAAgB;2BAAhB,gBAAgB;IAV5B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,iBAAU,CAAC,QAAQ,CAAC;gBAClB,qBAAqB,EAAE,gDAAqB;aAC7C,CAAC;SACH;QACD,SAAS,EAAE,CAAC,+BAAa,CAAC;QAC1B,WAAW,EAAE,CAAC,qCAAgB,CAAC;QAC/B,OAAO,EAAE,CAAC,iBAAU,CAAC;KACtB,CAAC;GACW,gBAAgB,CAAG"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ITaskQueueEventFactory } from '@mbc-cqrs-serverless/task';
|
|
2
|
+
import { StepFunctionTaskEvent } from '@mbc-cqrs-serverless/task';
|
|
3
|
+
export declare class TaskQueueEventFactory implements ITaskQueueEventFactory {
|
|
4
|
+
private readonly logger;
|
|
5
|
+
transformStepFunctionTask(event: StepFunctionTaskEvent): Promise<any[]>;
|
|
6
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TaskQueueEventFactory = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
const master_sfn_task_event_1 = require("../../handler/master-sfn-task.event");
|
|
6
|
+
class TaskQueueEventFactory {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.logger = new common_1.Logger(TaskQueueEventFactory.name);
|
|
9
|
+
}
|
|
10
|
+
async transformStepFunctionTask(event) {
|
|
11
|
+
this.logger.debug('Received StepFunctionTaskEvent', event);
|
|
12
|
+
const taskKeySk = event.taskKey.sk;
|
|
13
|
+
this.logger.debug(`Evaluating taskKey.sk: ${taskKeySk}`);
|
|
14
|
+
if (taskKeySk.startsWith('MASTER_COPY')) {
|
|
15
|
+
this.logger.debug(`Matched MASTER_COPY_SK_PREFIX (MASTER_COPY)`);
|
|
16
|
+
return [new master_sfn_task_event_1.MasterSfnTaskEvent(event)];
|
|
17
|
+
}
|
|
18
|
+
this.logger.debug(`No matching SK prefix found for: ${taskKeySk}`);
|
|
19
|
+
return [];
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.TaskQueueEventFactory = TaskQueueEventFactory;
|
|
23
|
+
//# sourceMappingURL=task-queue-event-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-queue-event-factory.js","sourceRoot":"","sources":["../../../src/custom-task/event/task-queue-event-factory.ts"],"names":[],"mappings":";;;AAEA,2CAAuC;AAEvC,+EAAwE;AAExE,MAAa,qBAAqB;IAAlC;QACmB,WAAM,GAAG,IAAI,eAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAA;IAkBlE,CAAC;IAhBC,KAAK,CAAC,yBAAyB,CAC7B,KAA4B;QAE5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAA;QAE1D,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAA;QAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,SAAS,EAAE,CAAC,CAAA;QAExD,IAAI,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAA;YAChE,OAAO,CAAC,IAAI,0CAAkB,CAAC,KAAK,CAAC,CAAC,CAAA;QACxC,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,SAAS,EAAE,CAAC,CAAA;QAClE,OAAO,EAAE,CAAA;IACX,CAAC;CACF;AAnBD,sDAmBC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { DetailDto, IInvoke } from '@mbc-cqrs-serverless/core';
|
|
2
|
+
import { TaskEntity } from '@mbc-cqrs-serverless/task';
|
|
3
|
+
import { MyTaskService } from './my-task.service';
|
|
4
|
+
export declare class MyTaskController {
|
|
5
|
+
private readonly myTaskService;
|
|
6
|
+
constructor(myTaskService: MyTaskService);
|
|
7
|
+
getSfnTaskParentBySettingCode(invokeContext: IInvoke, masterSettingCode: string): Promise<TaskEntity[]>;
|
|
8
|
+
getSfnChildTask(key: DetailDto): Promise<TaskEntity[]>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
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
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.MyTaskController = void 0;
|
|
16
|
+
const openapi = require("@nestjs/swagger");
|
|
17
|
+
const core_1 = require("@mbc-cqrs-serverless/core");
|
|
18
|
+
const common_1 = require("@nestjs/common");
|
|
19
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
20
|
+
const decorators_1 = require("../decorators");
|
|
21
|
+
const my_task_service_1 = require("./my-task.service");
|
|
22
|
+
let MyTaskController = class MyTaskController {
|
|
23
|
+
constructor(myTaskService) {
|
|
24
|
+
this.myTaskService = myTaskService;
|
|
25
|
+
}
|
|
26
|
+
async getSfnTaskParentBySettingCode(invokeContext, masterSettingCode) {
|
|
27
|
+
return this.myTaskService.getSfnTaskParentBySettingCode(masterSettingCode, invokeContext);
|
|
28
|
+
}
|
|
29
|
+
async getSfnChildTask(key) {
|
|
30
|
+
return this.myTaskService.getSfnChildTask(key);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
exports.MyTaskController = MyTaskController;
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, common_1.Get)('/sfn-task-parent'),
|
|
36
|
+
openapi.ApiResponse({ status: 200, type: [require("../../../task/dist/entity/task.entity").TaskEntity] }),
|
|
37
|
+
__param(0, (0, core_1.INVOKE_CONTEXT)()),
|
|
38
|
+
__param(1, (0, common_1.Query)('masterSettingCode')),
|
|
39
|
+
__metadata("design:type", Function),
|
|
40
|
+
__metadata("design:paramtypes", [Object, String]),
|
|
41
|
+
__metadata("design:returntype", Promise)
|
|
42
|
+
], MyTaskController.prototype, "getSfnTaskParentBySettingCode", null);
|
|
43
|
+
__decorate([
|
|
44
|
+
(0, common_1.Get)('/:id'),
|
|
45
|
+
openapi.ApiResponse({ status: 200, type: [require("../../../task/dist/entity/task.entity").TaskEntity] }),
|
|
46
|
+
__param(0, (0, decorators_1.DetailKeys)()),
|
|
47
|
+
__metadata("design:type", Function),
|
|
48
|
+
__metadata("design:paramtypes", [core_1.DetailDto]),
|
|
49
|
+
__metadata("design:returntype", Promise)
|
|
50
|
+
], MyTaskController.prototype, "getSfnChildTask", null);
|
|
51
|
+
exports.MyTaskController = MyTaskController = __decorate([
|
|
52
|
+
(0, common_1.Controller)('api/tasks'),
|
|
53
|
+
(0, swagger_1.ApiTags)('tasks'),
|
|
54
|
+
__metadata("design:paramtypes", [my_task_service_1.MyTaskService])
|
|
55
|
+
], MyTaskController);
|
|
56
|
+
//# sourceMappingURL=my-task.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"my-task.controller.js","sourceRoot":"","sources":["../../src/custom-task/my-task.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAA8E;AAE9E,2CAAuD;AACvD,6CAAyC;AAEzC,8CAA0C;AAC1C,uDAAiD;AAI1C,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC3B,YAA6B,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAAG,CAAC;IAGvD,AAAN,KAAK,CAAC,6BAA6B,CACf,aAAsB,EACZ,iBAAyB;QAErD,OAAO,IAAI,CAAC,aAAa,CAAC,6BAA6B,CACrD,iBAAiB,EACjB,aAAa,CACd,CAAA;IACH,CAAC;IAGK,AAAN,KAAK,CAAC,eAAe,CAAe,GAAc;QAChD,OAAO,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;IAChD,CAAC;CACF,CAAA;AAlBY,4CAAgB;AAIrB;IADL,IAAA,YAAG,EAAC,kBAAkB,CAAC;;IAErB,WAAA,IAAA,qBAAc,GAAE,CAAA;IAChB,WAAA,IAAA,cAAK,EAAC,mBAAmB,CAAC,CAAA;;;;qEAM5B;AAGK;IADL,IAAA,YAAG,EAAC,MAAM,CAAC;;IACW,WAAA,IAAA,uBAAU,GAAE,CAAA;;qCAAM,gBAAS;;uDAEjD;2BAjBU,gBAAgB;IAF5B,IAAA,mBAAU,EAAC,WAAW,CAAC;IACvB,IAAA,iBAAO,EAAC,OAAO,CAAC;qCAE6B,+BAAa;GAD9C,gBAAgB,CAkB5B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DetailKey, IInvoke, UserContext } from '@mbc-cqrs-serverless/core';
|
|
2
|
+
import { TaskEntity, TaskService } from '@mbc-cqrs-serverless/task';
|
|
3
|
+
import { ExecutionContext } from '@nestjs/common';
|
|
4
|
+
export declare class MyTaskService {
|
|
5
|
+
private readonly taskService;
|
|
6
|
+
constructor(taskService: TaskService);
|
|
7
|
+
getSfnTaskParentBySettingCode(masterSettingCode: string, invokeContext: IInvoke): Promise<TaskEntity[]>;
|
|
8
|
+
getSfnChildTask(key: DetailKey): Promise<TaskEntity[]>;
|
|
9
|
+
private listAllItemsByPk;
|
|
10
|
+
private isParentTask;
|
|
11
|
+
getUserContext: (ctx: IInvoke | ExecutionContext) => UserContext;
|
|
12
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
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
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.MyTaskService = void 0;
|
|
13
|
+
const core_1 = require("@mbc-cqrs-serverless/core");
|
|
14
|
+
const task_1 = require("@mbc-cqrs-serverless/task");
|
|
15
|
+
const common_1 = require("@nestjs/common");
|
|
16
|
+
let MyTaskService = class MyTaskService {
|
|
17
|
+
constructor(taskService) {
|
|
18
|
+
this.taskService = taskService;
|
|
19
|
+
this.getUserContext = (ctx) => {
|
|
20
|
+
if ('getHandler' in ctx) {
|
|
21
|
+
ctx = (0, core_1.extractInvokeContext)(ctx);
|
|
22
|
+
}
|
|
23
|
+
const claims = (0, core_1.getAuthorizerClaims)(ctx);
|
|
24
|
+
const userId = claims.sub;
|
|
25
|
+
const tenantCode = claims['custom:tenant_code'] ||
|
|
26
|
+
(ctx?.event?.headers || {})[core_1.HEADER_TENANT_CODE];
|
|
27
|
+
const tenantRole = claims['custom:user_type'];
|
|
28
|
+
return {
|
|
29
|
+
userId,
|
|
30
|
+
tenantRole,
|
|
31
|
+
tenantCode,
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
async getSfnTaskParentBySettingCode(masterSettingCode, invokeContext) {
|
|
36
|
+
const userContext = this.getUserContext(invokeContext);
|
|
37
|
+
if (!masterSettingCode) {
|
|
38
|
+
throw new common_1.BadRequestException('Must provide master setting code');
|
|
39
|
+
}
|
|
40
|
+
const items = await this.listAllItemsByPk(userContext.tenantCode, 'SFN_TASK', {
|
|
41
|
+
sk: {
|
|
42
|
+
skExpession: 'begins_with(sk, :code)',
|
|
43
|
+
skAttributeValues: {
|
|
44
|
+
':code': `MASTER_COPY_${masterSettingCode}`,
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
order: 'desc',
|
|
48
|
+
});
|
|
49
|
+
return items.filter((item) => this.isParentTask(item.sk));
|
|
50
|
+
}
|
|
51
|
+
async getSfnChildTask(key) {
|
|
52
|
+
return await this.taskService.getAllSubTask(key);
|
|
53
|
+
}
|
|
54
|
+
async listAllItemsByPk(tenantCode, type, options) {
|
|
55
|
+
const allItems = [];
|
|
56
|
+
let lastSk = undefined;
|
|
57
|
+
do {
|
|
58
|
+
const result = await this.taskService.listItemsByPk(tenantCode, type, {
|
|
59
|
+
...options,
|
|
60
|
+
startFromSk: lastSk,
|
|
61
|
+
});
|
|
62
|
+
allItems.push(...result.items);
|
|
63
|
+
lastSk = result.lastSk;
|
|
64
|
+
} while (lastSk);
|
|
65
|
+
return allItems;
|
|
66
|
+
}
|
|
67
|
+
isParentTask(sk) {
|
|
68
|
+
return sk.split(core_1.KEY_SEPARATOR).length === 2;
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
exports.MyTaskService = MyTaskService;
|
|
72
|
+
exports.MyTaskService = MyTaskService = __decorate([
|
|
73
|
+
(0, common_1.Injectable)(),
|
|
74
|
+
__metadata("design:paramtypes", [task_1.TaskService])
|
|
75
|
+
], MyTaskService);
|
|
76
|
+
//# sourceMappingURL=my-task.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"my-task.service.js","sourceRoot":"","sources":["../../src/custom-task/my-task.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAQkC;AAClC,oDAAmE;AACnE,2CAIuB;AAGhB,IAAM,aAAa,GAAnB,MAAM,aAAa;IACxB,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QA+DrD,mBAAc,GAAG,CAAC,GAA+B,EAAe,EAAE;YAChE,IAAI,YAAY,IAAI,GAAG,EAAE,CAAC;gBACxB,GAAG,GAAG,IAAA,2BAAoB,EAAC,GAAG,CAAC,CAAA;YACjC,CAAC;YACD,MAAM,MAAM,GAAG,IAAA,0BAAmB,EAAC,GAAG,CAAC,CAAA;YAEvC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA;YACzB,MAAM,UAAU,GACd,MAAM,CAAC,oBAAoB,CAAC;gBAC5B,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,yBAAkB,CAAC,CAAA;YACjD,MAAM,UAAU,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;YAC7C,OAAO;gBACL,MAAM;gBACN,UAAU;gBACV,UAAU;aACX,CAAA;QACH,CAAC,CAAA;IA/EuD,CAAC;IAEzD,KAAK,CAAC,6BAA6B,CACjC,iBAAyB,EACzB,aAAsB;QAEtB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;QACtD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,4BAAmB,CAAC,kCAAkC,CAAC,CAAA;QACnE,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CACvC,WAAW,CAAC,UAAU,EACtB,UAAU,EACV;YACE,EAAE,EAAE;gBACF,WAAW,EAAE,wBAAwB;gBACrC,iBAAiB,EAAE;oBACjB,OAAO,EAAE,eAAe,iBAAiB,EAAE;iBAC5C;aACF;YACD,KAAK,EAAE,MAAM;SACd,CACF,CAAA;QAED,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,GAAc;QAClC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAClD,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,UAAkB,EAClB,IAAY,EACZ,OAOC;QAED,MAAM,QAAQ,GAAiB,EAAE,CAAA;QACjC,IAAI,MAAM,GAAuB,SAAS,CAAA;QAE1C,GAAG,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE;gBACpE,GAAG,OAAO;gBACV,WAAW,EAAE,MAAM;aACpB,CAAC,CAAA;YAEF,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YAC9B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QACxB,CAAC,QAAQ,MAAM,EAAC;QAEhB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,YAAY,CAAC,EAAU;QAC7B,OAAO,EAAE,CAAC,KAAK,CAAC,oBAAa,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;IAC7C,CAAC;CAmBF,CAAA;AAjFY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;qCAE+B,kBAAW;GAD1C,aAAa,CAiFzB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MasterSfnTaskEvent = void 0;
|
|
4
|
+
const task_1 = require("@mbc-cqrs-serverless/task");
|
|
5
|
+
class MasterSfnTaskEvent extends task_1.StepFunctionTaskEvent {
|
|
6
|
+
}
|
|
7
|
+
exports.MasterSfnTaskEvent = MasterSfnTaskEvent;
|
|
8
|
+
//# sourceMappingURL=master-sfn-task.event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"master-sfn-task.event.js","sourceRoot":"","sources":["../../src/handler/master-sfn-task.event.ts"],"names":[],"mappings":";;;AAAA,oDAAiE;AAEjE,MAAa,kBAAmB,SAAQ,4BAAqB;CAAG;AAAhE,gDAAgE"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { DataService, DynamoDbService, IEventHandler } from '@mbc-cqrs-serverless/core';
|
|
2
|
+
import { SequencesService } from '@mbc-cqrs-serverless/sequence';
|
|
3
|
+
import { MasterDataService, MasterSettingService } from '../services';
|
|
4
|
+
import { MasterSfnTaskEvent } from './master-sfn-task.event';
|
|
5
|
+
export declare class MasterSfnTaskEventHandler implements IEventHandler<MasterSfnTaskEvent> {
|
|
6
|
+
private readonly dynamoDbService;
|
|
7
|
+
private readonly prismaService;
|
|
8
|
+
private readonly masterSettingService;
|
|
9
|
+
private readonly masterDataService;
|
|
10
|
+
private readonly dataService;
|
|
11
|
+
private readonly sequencesService;
|
|
12
|
+
private readonly logger;
|
|
13
|
+
private sequenceTableName;
|
|
14
|
+
constructor(dynamoDbService: DynamoDbService, prismaService: any, masterSettingService: MasterSettingService, masterDataService: MasterDataService, dataService: DataService, sequencesService: SequencesService);
|
|
15
|
+
execute(event: MasterSfnTaskEvent): Promise<any>;
|
|
16
|
+
private fetchSetting;
|
|
17
|
+
private fetchMasterData;
|
|
18
|
+
private copySettingToTenant;
|
|
19
|
+
private copyDataToTenant;
|
|
20
|
+
private shouldCopySequence;
|
|
21
|
+
private copySeqToTenant;
|
|
22
|
+
private generateSequenceKey;
|
|
23
|
+
private getMasterCodeFromSetting;
|
|
24
|
+
}
|
|
@@ -0,0 +1,242 @@
|
|
|
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
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var MasterSfnTaskEventHandler_1;
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.MasterSfnTaskEventHandler = void 0;
|
|
17
|
+
const core_1 = require("@mbc-cqrs-serverless/core");
|
|
18
|
+
const sequence_1 = require("@mbc-cqrs-serverless/sequence");
|
|
19
|
+
const common_1 = require("@nestjs/common");
|
|
20
|
+
const lodash_1 = require("lodash");
|
|
21
|
+
const constants_1 = require("../constants");
|
|
22
|
+
const dto_1 = require("../dto");
|
|
23
|
+
const helpers_1 = require("../helpers");
|
|
24
|
+
const master_module_definition_1 = require("../master.module-definition");
|
|
25
|
+
const services_1 = require("../services");
|
|
26
|
+
const master_sfn_task_event_1 = require("./master-sfn-task.event");
|
|
27
|
+
const BATCH_SIZE = 100;
|
|
28
|
+
let MasterSfnTaskEventHandler = MasterSfnTaskEventHandler_1 = class MasterSfnTaskEventHandler {
|
|
29
|
+
constructor(dynamoDbService, prismaService, masterSettingService, masterDataService, dataService, sequencesService) {
|
|
30
|
+
this.dynamoDbService = dynamoDbService;
|
|
31
|
+
this.prismaService = prismaService;
|
|
32
|
+
this.masterSettingService = masterSettingService;
|
|
33
|
+
this.masterDataService = masterDataService;
|
|
34
|
+
this.dataService = dataService;
|
|
35
|
+
this.sequencesService = sequencesService;
|
|
36
|
+
this.logger = new common_1.Logger(MasterSfnTaskEventHandler_1.name);
|
|
37
|
+
this.sequenceTableName = this.dynamoDbService.getTableName('sequences');
|
|
38
|
+
}
|
|
39
|
+
async execute(event) {
|
|
40
|
+
const invokeContext = (0, core_1.extractInvokeContext)();
|
|
41
|
+
const masterCopyDto = event.input?.input;
|
|
42
|
+
this.logger.debug('sfn-event:masterCopyDto:', masterCopyDto);
|
|
43
|
+
const { masterSettingId, targetTenants, copyType, dataCopyOption } = masterCopyDto;
|
|
44
|
+
const targetTenant = `${targetTenants[0]}`;
|
|
45
|
+
const setting = await this.fetchSetting(masterSettingId);
|
|
46
|
+
const masterCode = this.getMasterCodeFromSetting(setting);
|
|
47
|
+
if (copyType === dto_1.CopyType.SETTING_ONLY || copyType === dto_1.CopyType.BOTH) {
|
|
48
|
+
await this.copySettingToTenant(setting, targetTenant, invokeContext);
|
|
49
|
+
}
|
|
50
|
+
if (copyType === dto_1.CopyType.DATA_ONLY || copyType === dto_1.CopyType.BOTH) {
|
|
51
|
+
const isCopySequence = await this.shouldCopySequence(setting, targetTenant);
|
|
52
|
+
if (isCopySequence) {
|
|
53
|
+
await this.copySeqToTenant(setting, targetTenant);
|
|
54
|
+
}
|
|
55
|
+
const dataToCopy = await this.fetchMasterData(masterCode, dataCopyOption);
|
|
56
|
+
await this.copyDataToTenant(dataToCopy, targetTenant, invokeContext);
|
|
57
|
+
}
|
|
58
|
+
this.logger.debug('Completed copy process for tenant:', targetTenant);
|
|
59
|
+
return { message: 'Copy successfully', event };
|
|
60
|
+
}
|
|
61
|
+
async fetchSetting(id) {
|
|
62
|
+
const setting = await this.dataService.getItem((0, helpers_1.parseId)(id));
|
|
63
|
+
this.logger.debug('sfn-event-setting', setting);
|
|
64
|
+
return setting;
|
|
65
|
+
}
|
|
66
|
+
async fetchMasterData(masterCode, dataCopyOption, tenant = 'meltec') {
|
|
67
|
+
const where = {
|
|
68
|
+
masterType: constants_1.DATA_SK_PREFIX,
|
|
69
|
+
masterTypeCode: masterCode,
|
|
70
|
+
pk: `MASTER${core_1.KEY_SEPARATOR}${tenant}`,
|
|
71
|
+
};
|
|
72
|
+
if (dataCopyOption?.mode === dto_1.DataCopyMode.PARTIAL) {
|
|
73
|
+
where.id = { in: dataCopyOption.id };
|
|
74
|
+
}
|
|
75
|
+
this.logger.debug('sfn-event-whereCondition', where);
|
|
76
|
+
const data = await this.prismaService.master.findMany({ where });
|
|
77
|
+
this.logger.debug('sfn-event-dataToCopy', data.length);
|
|
78
|
+
return data;
|
|
79
|
+
}
|
|
80
|
+
async copySettingToTenant(setting, tenantCode, invokeContext) {
|
|
81
|
+
const sk = setting.sk;
|
|
82
|
+
const pk = (0, helpers_1.generateMasterPk)(tenantCode);
|
|
83
|
+
const masterCode = this.getMasterCodeFromSetting(setting);
|
|
84
|
+
const tenantSetting = await this.dataService.getItem({ pk, sk });
|
|
85
|
+
this.logger.debug('sfn-event-copySettingToTenant-tenantSetting', tenantSetting);
|
|
86
|
+
if (tenantSetting && tenantSetting.isDeleted === false) {
|
|
87
|
+
this.logger.debug('sfn-event-copySettingToTenant-updateSetting', {
|
|
88
|
+
pk,
|
|
89
|
+
sk,
|
|
90
|
+
});
|
|
91
|
+
await this.masterSettingService.updateSetting({ pk, sk }, {
|
|
92
|
+
name: setting.name,
|
|
93
|
+
code: masterCode,
|
|
94
|
+
settingValue: setting.attributes,
|
|
95
|
+
tenantCode,
|
|
96
|
+
}, {
|
|
97
|
+
invokeContext,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
this.logger.debug('sfn-event-copySettingToTenant-createTenantSetting', {
|
|
102
|
+
pk,
|
|
103
|
+
sk,
|
|
104
|
+
});
|
|
105
|
+
await this.masterSettingService.createTenantSetting({
|
|
106
|
+
name: setting.name,
|
|
107
|
+
code: masterCode,
|
|
108
|
+
settingValue: setting.attributes,
|
|
109
|
+
tenantCode,
|
|
110
|
+
}, { invokeContext });
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
async copyDataToTenant(dataToCopy, tenantCode, invokeContext) {
|
|
114
|
+
const chunks = (0, lodash_1.chunk)(dataToCopy, BATCH_SIZE);
|
|
115
|
+
for (const batch of chunks) {
|
|
116
|
+
await Promise.all(batch.map(async (data) => {
|
|
117
|
+
const parts = data.sk.split(core_1.KEY_SEPARATOR);
|
|
118
|
+
const sk = parts.length > 1 && parts[1].trim() === ''
|
|
119
|
+
? `${data.sk}${data.masterCode}`
|
|
120
|
+
: data.sk;
|
|
121
|
+
const pk = (0, helpers_1.generateMasterPk)(tenantCode);
|
|
122
|
+
const tenantData = await this.dataService.getItem({ pk, sk });
|
|
123
|
+
this.logger.debug('sfn-event-copyDataToTenant-tenantData', tenantData);
|
|
124
|
+
// des tenant data is exist and not deleted => update des data same as src data
|
|
125
|
+
if (tenantData && tenantData.isDeleted === false) {
|
|
126
|
+
this.logger.debug('sfn-event-copyDataToTenant-update', { pk, sk });
|
|
127
|
+
return this.masterDataService.update({ pk, sk }, {
|
|
128
|
+
name: data.name,
|
|
129
|
+
attributes: data.attributes,
|
|
130
|
+
isDeleted: data.isDeleted,
|
|
131
|
+
seq: data.seq,
|
|
132
|
+
}, {
|
|
133
|
+
invokeContext,
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
// src data is deleted => do nothing
|
|
137
|
+
if (data.isDeleted === true)
|
|
138
|
+
return;
|
|
139
|
+
// src data is exist => create des data
|
|
140
|
+
return this.masterDataService.create({
|
|
141
|
+
code: data.masterCode,
|
|
142
|
+
tenantCode,
|
|
143
|
+
name: data.name,
|
|
144
|
+
settingCode: data.masterTypeCode,
|
|
145
|
+
attributes: data.attributes,
|
|
146
|
+
seq: data.seq,
|
|
147
|
+
}, { invokeContext });
|
|
148
|
+
}));
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
async shouldCopySequence(setting, tenantCode) {
|
|
152
|
+
const fields = setting?.attributes?.['fields'] || [];
|
|
153
|
+
const codeField = fields.find((f) => f.physicalName === 'code');
|
|
154
|
+
if (codeField?.dataType !== 'auto_number') {
|
|
155
|
+
this.logger.debug('Sequence not required: code field not auto_number');
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
158
|
+
const jcciSeqKey = this.generateSequenceKey(tenantCode, setting);
|
|
159
|
+
const { seq: jcciSeq = 0 } = (await this.sequencesService.getCurrentSequence(jcciSeqKey)) ?? {};
|
|
160
|
+
this.logger.debug('sfn-event-shouldCopySequence-jcciSeq', {
|
|
161
|
+
jcciSeqKey,
|
|
162
|
+
jcciSeq,
|
|
163
|
+
});
|
|
164
|
+
if (jcciSeq === 0) {
|
|
165
|
+
this.logger.debug('Skipping sequence copy: JCCI sequence is 0');
|
|
166
|
+
return false;
|
|
167
|
+
}
|
|
168
|
+
const tenantSeqKey = this.generateSequenceKey(tenantCode, setting);
|
|
169
|
+
const { seq: tenantSeq } = (await this.sequencesService.getCurrentSequence(tenantSeqKey)) ?? {};
|
|
170
|
+
this.logger.debug('sfn-event-shouldCopySequence-tenantSeq', {
|
|
171
|
+
tenantSeqKey,
|
|
172
|
+
tenantSeq,
|
|
173
|
+
});
|
|
174
|
+
if (tenantSeq === undefined || tenantSeq === null) {
|
|
175
|
+
this.logger.debug('Tenant sequence missing: copying sequence required');
|
|
176
|
+
return true;
|
|
177
|
+
}
|
|
178
|
+
if (jcciSeq > tenantSeq) {
|
|
179
|
+
this.logger.debug('Tenant sequence is behind: copying required');
|
|
180
|
+
return true;
|
|
181
|
+
}
|
|
182
|
+
this.logger.debug('Tenant sequence is up to date or ahead: no copy needed');
|
|
183
|
+
return false;
|
|
184
|
+
}
|
|
185
|
+
async copySeqToTenant(setting, tenantCode) {
|
|
186
|
+
const fields = setting?.attributes?.['fields'] || [];
|
|
187
|
+
const codeField = fields.find((f) => f.physicalName === 'code');
|
|
188
|
+
const typeCode = codeField.formatCode ?? codeField.dataFormat;
|
|
189
|
+
const jcciSeqKey = this.generateSequenceKey(tenantCode, setting);
|
|
190
|
+
const { seq: jcciSeq = 0 } = (await this.sequencesService.getCurrentSequence(jcciSeqKey)) ?? {};
|
|
191
|
+
const tenantSeqKey = this.generateSequenceKey(tenantCode, setting);
|
|
192
|
+
const { seq: tenantSeq = 0 } = (await this.sequencesService.getCurrentSequence(tenantSeqKey)) ?? {};
|
|
193
|
+
const distance = jcciSeq - tenantSeq;
|
|
194
|
+
this.logger.debug('Copying sequence gap:', {
|
|
195
|
+
jcciSeq,
|
|
196
|
+
tenantSeq,
|
|
197
|
+
distance,
|
|
198
|
+
});
|
|
199
|
+
this.logger.debug('putItem', {
|
|
200
|
+
pk: tenantSeqKey.pk,
|
|
201
|
+
sk: tenantSeqKey.sk,
|
|
202
|
+
code: tenantSeqKey.sk,
|
|
203
|
+
name: tenantSeqKey.sk.split(core_1.KEY_SEPARATOR).at(-1),
|
|
204
|
+
seq: jcciSeq,
|
|
205
|
+
tenantCode,
|
|
206
|
+
type: typeCode,
|
|
207
|
+
});
|
|
208
|
+
this.logger.debug('this.sequenceTableName', this.sequenceTableName);
|
|
209
|
+
await this.dynamoDbService.putItem(this.sequenceTableName, {
|
|
210
|
+
pk: tenantSeqKey.pk,
|
|
211
|
+
sk: tenantSeqKey.sk,
|
|
212
|
+
code: tenantSeqKey.sk,
|
|
213
|
+
name: tenantSeqKey.sk.split(core_1.KEY_SEPARATOR).at(-1),
|
|
214
|
+
seq: jcciSeq,
|
|
215
|
+
tenantCode,
|
|
216
|
+
type: typeCode,
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
generateSequenceKey(tenantCode, setting) {
|
|
220
|
+
const fields = setting?.attributes?.['fields'] || [];
|
|
221
|
+
const codeField = fields.find((f) => f.physicalName === 'code');
|
|
222
|
+
const seqSk = codeField.formatCode ?? codeField.dataFormat;
|
|
223
|
+
const pk = (0, helpers_1.sequencePk)(tenantCode);
|
|
224
|
+
const masterCode = this.getMasterCodeFromSetting(setting);
|
|
225
|
+
const sk = (0, helpers_1.genSequenceSk)(seqSk, masterCode, sequence_1.RotateByEnum.NONE);
|
|
226
|
+
return { pk, sk };
|
|
227
|
+
}
|
|
228
|
+
getMasterCodeFromSetting(setting) {
|
|
229
|
+
const parts = setting.sk.split(core_1.KEY_SEPARATOR);
|
|
230
|
+
return parts[1];
|
|
231
|
+
}
|
|
232
|
+
};
|
|
233
|
+
exports.MasterSfnTaskEventHandler = MasterSfnTaskEventHandler;
|
|
234
|
+
exports.MasterSfnTaskEventHandler = MasterSfnTaskEventHandler = MasterSfnTaskEventHandler_1 = __decorate([
|
|
235
|
+
(0, core_1.EventHandler)(master_sfn_task_event_1.MasterSfnTaskEvent),
|
|
236
|
+
__param(1, (0, common_1.Inject)(master_module_definition_1.PRISMA_SERVICE)),
|
|
237
|
+
__metadata("design:paramtypes", [core_1.DynamoDbService, Object, services_1.MasterSettingService,
|
|
238
|
+
services_1.MasterDataService,
|
|
239
|
+
core_1.DataService,
|
|
240
|
+
sequence_1.SequencesService])
|
|
241
|
+
], MasterSfnTaskEventHandler);
|
|
242
|
+
//# sourceMappingURL=master-sfn-task.handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"master-sfn-task.handler.js","sourceRoot":"","sources":["../../src/handler/master-sfn-task.handler.ts"],"names":[],"mappings":"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"}
|
package/dist/helpers/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { RotateByEnum } from '@mbc-cqrs-serverless/sequence/dist';
|
|
1
2
|
export declare function generateMasterPk(tenantCode: string): string;
|
|
2
3
|
export declare function generateMasterDataSk(settingCode: string, code: string): string;
|
|
3
4
|
export declare function generateMasterSettingSk(code: string): string;
|
|
@@ -9,3 +10,9 @@ export declare function parsePk(pk: string): {
|
|
|
9
10
|
type: string;
|
|
10
11
|
tenantCode: string;
|
|
11
12
|
};
|
|
13
|
+
export declare function parseId(masterId: string): {
|
|
14
|
+
pk: string;
|
|
15
|
+
sk: string;
|
|
16
|
+
};
|
|
17
|
+
export declare const genSequenceSk: (seqSettingCode: string, settingCode: string, rotateBy: RotateByEnum) => string;
|
|
18
|
+
export declare const sequencePk: (tenantCode: string) => string;
|