@mbc-cqrs-serverless/sequence 0.1.11-beta.0 → 0.1.12-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/dto/gen-sequence.dto.d.ts +7 -0
- package/dist/dto/gen-sequence.dto.js +38 -0
- package/dist/dto/gen-sequence.dto.js.map +1 -0
- package/dist/enums/rotate-by.enum.d.ts +7 -0
- package/dist/enums/rotate-by.enum.js +12 -0
- package/dist/enums/rotate-by.enum.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -0
- package/dist/sequence.module.d.ts +5 -0
- package/dist/sequence.module.js +37 -0
- package/dist/sequence.module.js.map +1 -0
- package/dist/sequences.controller.d.ts +9 -0
- package/dist/sequences.controller.js +53 -0
- package/dist/sequences.controller.js.map +1 -0
- package/dist/sequences.module-definition.d.ts +4 -0
- package/dist/sequences.module-definition.js +7 -0
- package/dist/sequences.module-definition.js.map +1 -0
- package/dist/sequences.service.d.ts +13 -0
- package/dist/sequences.service.js +78 -0
- package/dist/sequences.service.js.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1,38 @@
|
|
|
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.GenSequenceDto = void 0;
|
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
const rotate_by_enum_1 = require("../enums/rotate-by.enum");
|
|
16
|
+
class GenSequenceDto {
|
|
17
|
+
}
|
|
18
|
+
exports.GenSequenceDto = GenSequenceDto;
|
|
19
|
+
__decorate([
|
|
20
|
+
(0, class_validator_1.IsString)(),
|
|
21
|
+
(0, class_validator_1.IsOptional)(),
|
|
22
|
+
__metadata("design:type", Date)
|
|
23
|
+
], GenSequenceDto.prototype, "date", void 0);
|
|
24
|
+
__decorate([
|
|
25
|
+
(0, swagger_1.ApiProperty)({ enum: rotate_by_enum_1.RotateByEnum, example: rotate_by_enum_1.RotateByEnum.FISCAL_YEARLY }),
|
|
26
|
+
(0, class_validator_1.IsOptional)(),
|
|
27
|
+
(0, class_validator_1.IsEnum)(rotate_by_enum_1.RotateByEnum),
|
|
28
|
+
__metadata("design:type", String)
|
|
29
|
+
], GenSequenceDto.prototype, "rotateBy", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, class_validator_1.IsString)(),
|
|
32
|
+
__metadata("design:type", String)
|
|
33
|
+
], GenSequenceDto.prototype, "tenantCode", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, class_validator_1.IsString)(),
|
|
36
|
+
__metadata("design:type", String)
|
|
37
|
+
], GenSequenceDto.prototype, "typeCode", void 0);
|
|
38
|
+
//# sourceMappingURL=gen-sequence.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gen-sequence.dto.js","sourceRoot":"","sources":["../../src/dto/gen-sequence.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA6C;AAC7C,qDAA8D;AAE9D,4DAAsD;AAEtD,MAAa,cAAc;CAe1B;AAfD,wCAeC;AAZC;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;8BACN,IAAI;4CAAA;AAKX;IAHC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,6BAAY,EAAE,OAAO,EAAE,6BAAY,CAAC,aAAa,EAAE,CAAC;IACxE,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,6BAAY,CAAC;;gDACE;AAGvB;IADC,IAAA,0BAAQ,GAAE;;kDACO;AAGlB;IADC,IAAA,0BAAQ,GAAE;;gDACK"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RotateByEnum = void 0;
|
|
4
|
+
var RotateByEnum;
|
|
5
|
+
(function (RotateByEnum) {
|
|
6
|
+
RotateByEnum["FISCAL_YEARLY"] = "fiscal_yearly";
|
|
7
|
+
RotateByEnum["YEARLY"] = "yearly";
|
|
8
|
+
RotateByEnum["MONTHLY"] = "monthly";
|
|
9
|
+
RotateByEnum["DAILY"] = "daily";
|
|
10
|
+
RotateByEnum["NONE"] = "none";
|
|
11
|
+
})(RotateByEnum || (exports.RotateByEnum = RotateByEnum = {}));
|
|
12
|
+
//# sourceMappingURL=rotate-by.enum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rotate-by.enum.js","sourceRoot":"","sources":["../../src/enums/rotate-by.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,+CAA+B,CAAA;IAC/B,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,+BAAe,CAAA;IACf,6BAAa,CAAA;AACf,CAAC,EANW,YAAY,4BAAZ,YAAY,QAMvB"}
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./dto/gen-sequence.dto"), exports);
|
|
18
|
+
__exportStar(require("./enums/rotate-by.enum"), exports);
|
|
19
|
+
__exportStar(require("./sequence.module"), exports);
|
|
20
|
+
__exportStar(require("./sequences.controller"), exports);
|
|
21
|
+
__exportStar(require("./sequences.service"), exports);
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAsC;AACtC,yDAAsC;AACtC,oDAAiC;AACjC,yDAAsC;AACtC,sDAAmC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DynamicModule } from '@nestjs/common';
|
|
2
|
+
import { ConfigurableModuleClass, OPTIONS_TYPE } from './sequences.module-definition';
|
|
3
|
+
export declare class SequencesModule extends ConfigurableModuleClass {
|
|
4
|
+
static register(options: typeof OPTIONS_TYPE): DynamicModule;
|
|
5
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
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.SequencesModule = void 0;
|
|
10
|
+
const core_1 = require("@mbc-cqrs-serverless/core");
|
|
11
|
+
const common_1 = require("@nestjs/common");
|
|
12
|
+
const sequences_controller_1 = require("./sequences.controller");
|
|
13
|
+
const sequences_module_definition_1 = require("./sequences.module-definition");
|
|
14
|
+
const sequences_service_1 = require("./sequences.service");
|
|
15
|
+
let SequencesModule = class SequencesModule extends sequences_module_definition_1.ConfigurableModuleClass {
|
|
16
|
+
static register(options) {
|
|
17
|
+
const module = super.register(options);
|
|
18
|
+
if (options.enableController) {
|
|
19
|
+
if (!module.controllers) {
|
|
20
|
+
module.controllers = [];
|
|
21
|
+
}
|
|
22
|
+
module.controllers.push(sequences_controller_1.SequencesController);
|
|
23
|
+
}
|
|
24
|
+
return {
|
|
25
|
+
...module,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
exports.SequencesModule = SequencesModule;
|
|
30
|
+
exports.SequencesModule = SequencesModule = __decorate([
|
|
31
|
+
(0, common_1.Module)({
|
|
32
|
+
imports: [core_1.DataStoreModule],
|
|
33
|
+
providers: [sequences_service_1.SequencesService],
|
|
34
|
+
exports: [sequences_service_1.SequencesService],
|
|
35
|
+
})
|
|
36
|
+
], SequencesModule);
|
|
37
|
+
//# sourceMappingURL=sequence.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sequence.module.js","sourceRoot":"","sources":["../src/sequence.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oDAA2D;AAC3D,2CAAsD;AAEtD,iEAA4D;AAC5D,+EAGsC;AACtC,2DAAsD;AAO/C,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,qDAAuB;IAC1D,MAAM,CAAC,QAAQ,CAAC,OAA4B;QAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAEtC,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBACxB,MAAM,CAAC,WAAW,GAAG,EAAE,CAAA;YACzB,CAAC;YACD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,0CAAmB,CAAC,CAAA;QAC9C,CAAC;QAED,OAAO;YACL,GAAG,MAAM;SACV,CAAA;IACH,CAAC;CACF,CAAA;AAfY,0CAAe;0BAAf,eAAe;IAL3B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,sBAAe,CAAC;QAC1B,SAAS,EAAE,CAAC,oCAAgB,CAAC;QAC7B,OAAO,EAAE,CAAC,oCAAgB,CAAC;KAC5B,CAAC;GACW,eAAe,CAe3B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { DetailDto, IInvoke } from '@mbc-cqrs-serverless/core';
|
|
2
|
+
import { GenSequenceDto } from './dto/gen-sequence.dto';
|
|
3
|
+
import { SequencesService } from './sequences.service';
|
|
4
|
+
export declare class SequencesController {
|
|
5
|
+
private readonly sequenceService;
|
|
6
|
+
constructor(sequenceService: SequencesService);
|
|
7
|
+
getSequence(dto: DetailDto): Promise<import("@mbc-cqrs-serverless/core").DataEntity>;
|
|
8
|
+
genSequence(invokeContext: IInvoke, dto: GenSequenceDto): Promise<import("@mbc-cqrs-serverless/core").DataEntity>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
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.SequencesController = void 0;
|
|
16
|
+
const core_1 = require("@mbc-cqrs-serverless/core");
|
|
17
|
+
const common_1 = require("@nestjs/common");
|
|
18
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
19
|
+
const gen_sequence_dto_1 = require("./dto/gen-sequence.dto");
|
|
20
|
+
const sequences_service_1 = require("./sequences.service");
|
|
21
|
+
let SequencesController = class SequencesController {
|
|
22
|
+
constructor(sequenceService) {
|
|
23
|
+
this.sequenceService = sequenceService;
|
|
24
|
+
}
|
|
25
|
+
async getSequence(dto) {
|
|
26
|
+
return await this.sequenceService.getCurrentSequence(dto);
|
|
27
|
+
}
|
|
28
|
+
async genSequence(invokeContext, dto) {
|
|
29
|
+
return await this.sequenceService.genNewSequence(dto, { invokeContext });
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
exports.SequencesController = SequencesController;
|
|
33
|
+
__decorate([
|
|
34
|
+
(0, common_1.Get)('/:pk/:sk'),
|
|
35
|
+
__param(0, (0, common_1.Param)()),
|
|
36
|
+
__metadata("design:type", Function),
|
|
37
|
+
__metadata("design:paramtypes", [core_1.DetailDto]),
|
|
38
|
+
__metadata("design:returntype", Promise)
|
|
39
|
+
], SequencesController.prototype, "getSequence", null);
|
|
40
|
+
__decorate([
|
|
41
|
+
(0, common_1.Post)('/'),
|
|
42
|
+
__param(0, (0, core_1.INVOKE_CONTEXT)()),
|
|
43
|
+
__param(1, (0, common_1.Body)()),
|
|
44
|
+
__metadata("design:type", Function),
|
|
45
|
+
__metadata("design:paramtypes", [Object, gen_sequence_dto_1.GenSequenceDto]),
|
|
46
|
+
__metadata("design:returntype", Promise)
|
|
47
|
+
], SequencesController.prototype, "genSequence", null);
|
|
48
|
+
exports.SequencesController = SequencesController = __decorate([
|
|
49
|
+
(0, swagger_1.ApiTags)('sequence'),
|
|
50
|
+
(0, common_1.Controller)(),
|
|
51
|
+
__metadata("design:paramtypes", [sequences_service_1.SequencesService])
|
|
52
|
+
], SequencesController);
|
|
53
|
+
//# sourceMappingURL=sequences.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sequences.controller.js","sourceRoot":"","sources":["../src/sequences.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oDAA8E;AAC9E,2CAAmE;AACnE,6CAAyC;AAEzC,6DAAuD;AACvD,2DAAsD;AAG/C,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,YAA6B,eAAiC;QAAjC,oBAAe,GAAf,eAAe,CAAkB;IAAG,CAAC;IAG5D,AAAN,KAAK,CAAC,WAAW,CAAU,GAAc;QACvC,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAC3D,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW,CACG,aAAsB,EAChC,GAAmB;QAE3B,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,CAAC,CAAA;IAC1E,CAAC;CACF,CAAA;AAfY,kDAAmB;AAIxB;IADL,IAAA,YAAG,EAAC,UAAU,CAAC;IACG,WAAA,IAAA,cAAK,GAAE,CAAA;;qCAAM,gBAAS;;sDAExC;AAGK;IADL,IAAA,aAAI,EAAC,GAAG,CAAC;IAEP,WAAA,IAAA,qBAAc,GAAE,CAAA;IAChB,WAAA,IAAA,aAAI,GAAE,CAAA;;6CAAM,iCAAc;;sDAG5B;8BAdU,mBAAmB;IAF/B,IAAA,iBAAO,EAAC,UAAU,CAAC;IACnB,IAAA,mBAAU,GAAE;qCAEmC,oCAAgB;GADnD,mBAAmB,CAe/B"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export interface SequencesModuleOptions {
|
|
2
|
+
enableController?: boolean;
|
|
3
|
+
}
|
|
4
|
+
export declare const ConfigurableModuleClass: import("@nestjs/common").ConfigurableModuleCls<SequencesModuleOptions, "register", "create", {}>, MODULE_OPTIONS_TOKEN: string | symbol, OPTIONS_TYPE: SequencesModuleOptions & Partial<{}>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.OPTIONS_TYPE = exports.MODULE_OPTIONS_TOKEN = exports.ConfigurableModuleClass = void 0;
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
_a = new common_1.ConfigurableModuleBuilder().build(), exports.ConfigurableModuleClass = _a.ConfigurableModuleClass, exports.MODULE_OPTIONS_TOKEN = _a.MODULE_OPTIONS_TOKEN, exports.OPTIONS_TYPE = _a.OPTIONS_TYPE;
|
|
7
|
+
//# sourceMappingURL=sequences.module-definition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sequences.module-definition.js","sourceRoot":"","sources":["../src/sequences.module-definition.ts"],"names":[],"mappings":";;;;AAAA,2CAA0D;AAM7C,KACX,IAAI,kCAAyB,EAA0B,CAAC,KAAK,EAAE,EADlD,+BAAuB,+BAAE,4BAAoB,4BAAE,oBAAY,mBACT"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { DataEntity, DetailKey, DynamoDbService, IInvoke } from '@mbc-cqrs-serverless/core';
|
|
2
|
+
import { GenSequenceDto } from './dto/gen-sequence.dto';
|
|
3
|
+
export declare class SequencesService {
|
|
4
|
+
private readonly dynamoDbService;
|
|
5
|
+
private readonly logger;
|
|
6
|
+
private readonly tableName;
|
|
7
|
+
constructor(dynamoDbService: DynamoDbService);
|
|
8
|
+
getCurrentSequence(key: DetailKey): Promise<DataEntity>;
|
|
9
|
+
genNewSequence(dto: GenSequenceDto, opts: {
|
|
10
|
+
invokeContext: IInvoke;
|
|
11
|
+
}): Promise<DataEntity>;
|
|
12
|
+
private getRotateValue;
|
|
13
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
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 SequencesService_1;
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.SequencesService = void 0;
|
|
14
|
+
const core_1 = require("@mbc-cqrs-serverless/core");
|
|
15
|
+
const common_1 = require("@nestjs/common");
|
|
16
|
+
const rotate_by_enum_1 = require("./enums/rotate-by.enum");
|
|
17
|
+
let SequencesService = SequencesService_1 = class SequencesService {
|
|
18
|
+
constructor(dynamoDbService) {
|
|
19
|
+
this.dynamoDbService = dynamoDbService;
|
|
20
|
+
this.logger = new common_1.Logger(SequencesService_1.name);
|
|
21
|
+
this.tableName = dynamoDbService.getTableName('sequences');
|
|
22
|
+
this.logger.debug('tableName: ' + this.tableName);
|
|
23
|
+
}
|
|
24
|
+
async getCurrentSequence(key) {
|
|
25
|
+
return await this.dynamoDbService.getItem(this.tableName, key);
|
|
26
|
+
}
|
|
27
|
+
async genNewSequence(dto, opts) {
|
|
28
|
+
const rotateVal = this.getRotateValue(dto.rotateBy, dto.date);
|
|
29
|
+
const pk = `SEQ${core_1.KEY_SEPARATOR}${dto.tenantCode}`;
|
|
30
|
+
const sk = `${dto.typeCode}${core_1.KEY_SEPARATOR}${rotateVal}`;
|
|
31
|
+
const sourceIp = opts.invokeContext?.event?.requestContext?.http?.sourceIp;
|
|
32
|
+
const userContext = (0, core_1.getUserContext)(opts.invokeContext);
|
|
33
|
+
const userId = userContext.userId || 'system';
|
|
34
|
+
const now = new Date();
|
|
35
|
+
const item = await this.dynamoDbService.updateItem(this.tableName, { pk, sk }, {
|
|
36
|
+
set: {
|
|
37
|
+
code: sk,
|
|
38
|
+
name: dto.rotateBy || 'none',
|
|
39
|
+
tenantCode: dto.tenantCode,
|
|
40
|
+
type: dto.typeCode,
|
|
41
|
+
seq: { ifNotExists: 0, incrementBy: 1 },
|
|
42
|
+
requestId: opts.invokeContext?.context?.awsRequestId,
|
|
43
|
+
createdAt: { ifNotExists: now },
|
|
44
|
+
createdBy: { ifNotExists: userId },
|
|
45
|
+
createdIp: { ifNotExists: sourceIp },
|
|
46
|
+
updatedAt: now,
|
|
47
|
+
updatedBy: userId,
|
|
48
|
+
updatedIp: sourceIp,
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
return item;
|
|
52
|
+
}
|
|
53
|
+
getRotateValue(rotateBy, forDate) {
|
|
54
|
+
const date = forDate || new Date();
|
|
55
|
+
switch (rotateBy) {
|
|
56
|
+
case rotate_by_enum_1.RotateByEnum.FISCAL_YEARLY:
|
|
57
|
+
const year = date.getFullYear();
|
|
58
|
+
return date.getMonth() < 3 ? year - 1 : year;
|
|
59
|
+
case rotate_by_enum_1.RotateByEnum.YEARLY:
|
|
60
|
+
return date.getFullYear().toString();
|
|
61
|
+
case rotate_by_enum_1.RotateByEnum.MONTHLY:
|
|
62
|
+
return (date.getFullYear().toString() +
|
|
63
|
+
(date.getMonth() + 1).toString().padStart(2, '0'));
|
|
64
|
+
case rotate_by_enum_1.RotateByEnum.DAILY:
|
|
65
|
+
return (date.getFullYear().toString() +
|
|
66
|
+
(date.getMonth() + 1).toString().padStart(2, '0') +
|
|
67
|
+
date.getDate().toString().padStart(2, '0'));
|
|
68
|
+
default:
|
|
69
|
+
return rotate_by_enum_1.RotateByEnum.NONE;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
exports.SequencesService = SequencesService;
|
|
74
|
+
exports.SequencesService = SequencesService = SequencesService_1 = __decorate([
|
|
75
|
+
(0, common_1.Injectable)(),
|
|
76
|
+
__metadata("design:paramtypes", [core_1.DynamoDbService])
|
|
77
|
+
], SequencesService);
|
|
78
|
+
//# sourceMappingURL=sequences.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sequences.service.js","sourceRoot":"","sources":["../src/sequences.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mbc-cqrs-serverless/sequence",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.12-beta.0",
|
|
4
4
|
"description": "Generate increment sequence with time-rotation",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"access": "public"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@mbc-cqrs-serverless/core": "^0.1.
|
|
29
|
+
"@mbc-cqrs-serverless/core": "^0.1.12-beta.0"
|
|
30
30
|
},
|
|
31
|
-
"gitHead": "
|
|
31
|
+
"gitHead": "f8acc307691f23c61423dcd2895412f3fb078b14"
|
|
32
32
|
}
|