UNPKG

@mbc-cqrs-serverless/ui-setting

Version:
133 lines 6.63 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); 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; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param = (this && this.__param) || function (paramIndex, decorator) { return function (target, key) { decorator(target, key, paramIndex); } }; var SettingController_1; Object.defineProperty(exports, "__esModule", { value: true }); exports.SettingController = void 0; const openapi = require("@nestjs/swagger"); const core_1 = require("@mbc-cqrs-serverless/core"); const common_1 = require("@nestjs/common"); const swagger_1 = require("@nestjs/swagger"); const setting_create_dto_1 = require("../dto/setting-create.dto"); const setting_update_dto_1 = require("../dto/setting-update.dto"); const helpers_1 = require("../helpers"); const setting_service_1 = require("../services/setting.service"); let SettingController = SettingController_1 = class SettingController { constructor(settingService) { this.settingService = settingService; this.logger = new common_1.Logger(SettingController_1.name); } async listData(ctx) { const userContext = (0, core_1.getUserContext)(ctx); return await this.settingService.list(userContext.tenantCode); } async getDetail(ctx, key) { const userContext = (0, core_1.getUserContext)(ctx); const { tenantCode } = (0, helpers_1.parsePk)(key.pk); if (userContext.tenantCode !== tenantCode) { throw new common_1.BadRequestException('Invalid tenant code'); } return await this.settingService.get(key); } async createSetting(invokeContext, createDto) { const userContext = (0, core_1.getUserContext)(invokeContext); return await this.settingService.create(userContext.tenantCode, createDto, { invokeContext, }); } async updateSetting(invokeContext, key, updateDto) { const userContext = (0, core_1.getUserContext)(invokeContext); const { tenantCode } = (0, helpers_1.parsePk)(key.pk); if (userContext.tenantCode !== tenantCode) { throw new common_1.BadRequestException('Invalid tenant code'); } return await this.settingService.update(key, updateDto, { invokeContext }); } async deleteSetting(invokeContext, key) { const userContext = (0, core_1.getUserContext)(invokeContext); const { tenantCode } = (0, helpers_1.parsePk)(key.pk); if (userContext.tenantCode !== tenantCode) { throw new common_1.BadRequestException('Invalid tenant code'); } return await this.settingService.delete(key, { invokeContext }); } async checkExistCode(ctx, code) { const userContext = (0, core_1.getUserContext)(ctx); return this.settingService.checkExistSettingCode(userContext.tenantCode, code); } }; exports.SettingController = SettingController; __decorate([ (0, common_1.Get)('/'), (0, core_1.Auth)(), openapi.ApiResponse({ status: 200, type: require("../entities/setting-data-list.entity").SettingDataListEntity }), __param(0, (0, core_1.INVOKE_CONTEXT)()), __metadata("design:type", Function), __metadata("design:paramtypes", [Object]), __metadata("design:returntype", Promise) ], SettingController.prototype, "listData", null); __decorate([ (0, common_1.Get)('/:pk/:sk'), (0, core_1.Auth)(), openapi.ApiResponse({ status: 200, type: require("../entities/setting-data.entity").SettingDataEntity }), __param(0, (0, core_1.INVOKE_CONTEXT)()), __param(1, (0, common_1.Param)()), __metadata("design:type", Function), __metadata("design:paramtypes", [Object, core_1.DetailDto]), __metadata("design:returntype", Promise) ], SettingController.prototype, "getDetail", null); __decorate([ (0, common_1.Post)('/'), openapi.ApiResponse({ status: 201, type: require("../entities/setting-data.entity").SettingDataEntity }), __param(0, (0, core_1.INVOKE_CONTEXT)()), __param(1, (0, common_1.Body)()), __metadata("design:type", Function), __metadata("design:paramtypes", [Object, setting_create_dto_1.CreateSettingDto]), __metadata("design:returntype", Promise) ], SettingController.prototype, "createSetting", null); __decorate([ (0, common_1.Put)('/:pk/:sk'), openapi.ApiResponse({ status: 200, type: require("../entities/setting-data.entity").SettingDataEntity }), __param(0, (0, core_1.INVOKE_CONTEXT)()), __param(1, (0, common_1.Param)()), __param(2, (0, common_1.Body)()), __metadata("design:type", Function), __metadata("design:paramtypes", [Object, core_1.DetailDto, setting_update_dto_1.UpdateSettingDto]), __metadata("design:returntype", Promise) ], SettingController.prototype, "updateSetting", null); __decorate([ (0, common_1.Delete)('/:pk/:sk'), openapi.ApiResponse({ status: 200, type: require("../entities/setting-data.entity").SettingDataEntity }), __param(0, (0, core_1.INVOKE_CONTEXT)()), __param(1, (0, common_1.Param)()), __metadata("design:type", Function), __metadata("design:paramtypes", [Object, core_1.DetailDto]), __metadata("design:returntype", Promise) ], SettingController.prototype, "deleteSetting", null); __decorate([ (0, common_1.Post)('/check-exist/:code'), openapi.ApiResponse({ status: 201, type: Boolean }), __param(0, (0, core_1.INVOKE_CONTEXT)()), __param(1, (0, common_1.Param)('code')), __metadata("design:type", Function), __metadata("design:paramtypes", [Object, String]), __metadata("design:returntype", Promise) ], SettingController.prototype, "checkExistCode", null); exports.SettingController = SettingController = SettingController_1 = __decorate([ (0, common_1.Controller)('api/master-setting'), (0, swagger_1.ApiTags)('master-setting'), (0, core_1.Auth)(core_1.ROLE_SYSTEM_ADMIN), __metadata("design:paramtypes", [setting_service_1.SettingService]) ], SettingController); //# sourceMappingURL=setting.controller.js.map