create-ssnode-cli 0.2.2 → 0.2.3
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/package.json +1 -1
- package/templates/backend/config/config.develop.yaml +6 -4
- package/templates/backend/data/template.dev.sqlite-shm +0 -0
- package/templates/backend/data/template.dev.sqlite-wal +0 -0
- package/templates/backend/dist/app.module.js +85 -1
- package/templates/backend/dist/app.module.js.map +1 -1
- package/templates/backend/dist/common/all-exceptions.filter.js +47 -1
- package/templates/backend/dist/common/all-exceptions.filter.js.map +1 -1
- package/templates/backend/dist/common/app-crypto.js +119 -1
- package/templates/backend/dist/common/app-crypto.js.map +1 -1
- package/templates/backend/dist/common/app-sign.guard.js +72 -1
- package/templates/backend/dist/common/app-sign.guard.js.map +1 -1
- package/templates/backend/dist/common/app-sign.module.js +20 -1
- package/templates/backend/dist/common/app-sign.module.js.map +1 -1
- package/templates/backend/dist/common/response.js +23 -1
- package/templates/backend/dist/common/response.js.map +1 -1
- package/templates/backend/dist/common/throttle.guard.js +42 -1
- package/templates/backend/dist/common/throttle.guard.js.map +1 -1
- package/templates/backend/dist/common/transform.interceptor.js +28 -1
- package/templates/backend/dist/common/transform.interceptor.js.map +1 -1
- package/templates/backend/dist/config/config.interface.js +2 -1
- package/templates/backend/dist/config/config.interface.js.map +1 -1
- package/templates/backend/dist/config/configuration.js +91 -1
- package/templates/backend/dist/config/configuration.js.map +1 -1
- package/templates/backend/dist/database/migrations/0001-init.migration.js +69 -1
- package/templates/backend/dist/database/migrations/0001-init.migration.js.map +1 -1
- package/templates/backend/dist/database/sqlite.config.js +32 -1
- package/templates/backend/dist/database/sqlite.config.js.map +1 -1
- package/templates/backend/dist/entities/audit-log.entity.js +49 -1
- package/templates/backend/dist/entities/audit-log.entity.js.map +1 -1
- package/templates/backend/dist/entities/image.entity.js +50 -1
- package/templates/backend/dist/entities/image.entity.js.map +1 -1
- package/templates/backend/dist/entities/page-data.entity.js +60 -1
- package/templates/backend/dist/entities/page-data.entity.js.map +1 -1
- package/templates/backend/dist/entities/screen-config.entity.js +74 -1
- package/templates/backend/dist/entities/screen-config.entity.js.map +1 -1
- package/templates/backend/dist/entities/user.entity.js +59 -1
- package/templates/backend/dist/entities/user.entity.js.map +1 -1
- package/templates/backend/dist/main.js +56 -1
- package/templates/backend/dist/main.js.map +1 -1
- package/templates/backend/dist/modules/audit/audit.controller.js +51 -1
- package/templates/backend/dist/modules/audit/audit.controller.js.map +1 -1
- package/templates/backend/dist/modules/audit/audit.module.js +25 -1
- package/templates/backend/dist/modules/audit/audit.module.js.map +1 -1
- package/templates/backend/dist/modules/audit/audit.service.js +57 -1
- package/templates/backend/dist/modules/audit/audit.service.js.map +1 -1
- package/templates/backend/dist/modules/auth/auth.controller.js +74 -1
- package/templates/backend/dist/modules/auth/auth.controller.js.map +1 -1
- package/templates/backend/dist/modules/auth/auth.module.js +45 -1
- package/templates/backend/dist/modules/auth/auth.module.js.map +1 -1
- package/templates/backend/dist/modules/auth/auth.service.js +151 -1
- package/templates/backend/dist/modules/auth/auth.service.js.map +1 -1
- package/templates/backend/dist/modules/auth/captcha.service.js +56 -1
- package/templates/backend/dist/modules/auth/captcha.service.js.map +1 -1
- package/templates/backend/dist/modules/auth/jwt-auth.guard.js +17 -1
- package/templates/backend/dist/modules/auth/jwt-auth.guard.js.map +1 -1
- package/templates/backend/dist/modules/auth/jwt.strategy.js +37 -1
- package/templates/backend/dist/modules/auth/jwt.strategy.js.map +1 -1
- package/templates/backend/dist/modules/image/image.controller.js +75 -1
- package/templates/backend/dist/modules/image/image.controller.js.map +1 -1
- package/templates/backend/dist/modules/image/image.module.js +26 -1
- package/templates/backend/dist/modules/image/image.module.js.map +1 -1
- package/templates/backend/dist/modules/image/image.service.js +94 -1
- package/templates/backend/dist/modules/image/image.service.js.map +1 -1
- package/templates/backend/dist/modules/ops/backend-version.probe.js +58 -1
- package/templates/backend/dist/modules/ops/backend-version.probe.js.map +1 -1
- package/templates/backend/dist/modules/ops/ops-probe.interface.js +4 -1
- package/templates/backend/dist/modules/ops/ops-probe.interface.js.map +1 -1
- package/templates/backend/dist/modules/ops/ops.controller.js +52 -1
- package/templates/backend/dist/modules/ops/ops.controller.js.map +1 -1
- package/templates/backend/dist/modules/ops/ops.module.js +39 -1
- package/templates/backend/dist/modules/ops/ops.module.js.map +1 -1
- package/templates/backend/dist/modules/ops/ops.service.js +72 -1
- package/templates/backend/dist/modules/ops/ops.service.js.map +1 -1
- package/templates/backend/dist/modules/ops/sqlite-backup-list.probe.js +105 -1
- package/templates/backend/dist/modules/ops/sqlite-backup-list.probe.js.map +1 -1
- package/templates/backend/dist/modules/ops/sqlite-backup-log.probe.js +67 -1
- package/templates/backend/dist/modules/ops/sqlite-backup-log.probe.js.map +1 -1
- package/templates/backend/dist/modules/ops/sqlite-backup.probe.js +115 -1
- package/templates/backend/dist/modules/ops/sqlite-backup.probe.js.map +1 -1
- package/templates/backend/dist/modules/ops/version.controller.js +52 -1
- package/templates/backend/dist/modules/ops/version.controller.js.map +1 -1
- package/templates/backend/dist/modules/page-data/page-data.controller.js +109 -1
- package/templates/backend/dist/modules/page-data/page-data.controller.js.map +1 -1
- package/templates/backend/dist/modules/page-data/page-data.module.js +25 -1
- package/templates/backend/dist/modules/page-data/page-data.module.js.map +1 -1
- package/templates/backend/dist/modules/page-data/page-data.service.js +69 -1
- package/templates/backend/dist/modules/page-data/page-data.service.js.map +1 -1
- package/templates/backend/dist/modules/screen-config/screen-config.controller.js +61 -1
- package/templates/backend/dist/modules/screen-config/screen-config.controller.js.map +1 -1
- package/templates/backend/dist/modules/screen-config/screen-config.module.js +25 -1
- package/templates/backend/dist/modules/screen-config/screen-config.module.js.map +1 -1
- package/templates/backend/dist/modules/screen-config/screen-config.service.js +41 -1
- package/templates/backend/dist/modules/screen-config/screen-config.service.js.map +1 -1
- package/templates/backend/dist/modules/upload/upload.controller.js +65 -1
- package/templates/backend/dist/modules/upload/upload.controller.js.map +1 -1
- package/templates/backend/dist/modules/upload/upload.module.js +22 -1
- package/templates/backend/dist/modules/upload/upload.module.js.map +1 -1
- package/templates/backend/dist/modules/upload/upload.service.js +75 -1
- package/templates/backend/dist/modules/upload/upload.service.js.map +1 -1
- package/templates/backend/dist/modules/user/user.controller.js +149 -1
- package/templates/backend/dist/modules/user/user.controller.js.map +1 -1
- package/templates/backend/dist/modules/user/user.module.js +26 -1
- package/templates/backend/dist/modules/user/user.module.js.map +1 -1
- package/templates/backend/dist/modules/user/user.service.js +249 -1
- package/templates/backend/dist/modules/user/user.service.js.map +1 -1
- package/templates/backend/dist/modules/websocket/websocket.gateway.js +33 -1
- package/templates/backend/dist/modules/websocket/websocket.gateway.js.map +1 -1
- package/templates/backend/dist/modules/websocket/websocket.module.js +19 -1
- package/templates/backend/dist/modules/websocket/websocket.module.js.map +1 -1
- package/templates/backend/dist/tsconfig.build.tsbuildinfo +1 -1
- package/templates/backend/package.json +1 -1
- package/templates/backend/src/modules/auth/captcha.service.ts +6 -5
- package/templates/web/dist/assets/{AuthLayout-bcf98efb.js → AuthLayout-f1e8d110.js} +1 -1
- package/templates/web/dist/assets/{AuthLayout-legacy-6e7a8ae1.js → AuthLayout-legacy-f871651c.js} +1 -1
- package/templates/web/dist/assets/{Background-eb77ef54.js → Background-955d549f.js} +1 -1
- package/templates/web/dist/assets/{Background-legacy-50457007.js → Background-legacy-fbad6e76.js} +1 -1
- package/templates/web/dist/assets/{Screen-318c3fc2.js → Screen-b14b0813.js} +1 -1
- package/templates/web/dist/assets/{Screen-legacy-af123b0f.js → Screen-legacy-154c8ee6.js} +1 -1
- package/templates/web/dist/assets/{api-beff4a3e.js → api-4d80e36e.js} +1 -1
- package/templates/web/dist/assets/{api-legacy-9fe41d4b.js → api-legacy-054fd569.js} +1 -1
- package/templates/web/dist/assets/{component-89b5253e.js → component-9d9f33fa.js} +1 -1
- package/templates/web/dist/assets/{component-legacy-8c5a28ef.js → component-legacy-4445386a.js} +1 -1
- package/templates/web/dist/assets/{index-a79e448b.js → index-107a0e80.js} +1 -1
- package/templates/web/dist/assets/{index-b60badf7.js → index-5afb70be.js} +1 -1
- package/templates/web/dist/assets/{index-cba19800.js → index-7b807c2d.js} +1 -1
- package/templates/web/dist/assets/{index-86214b19.js → index-ab64cd34.js} +1 -1
- package/templates/web/dist/assets/{index-7277cbfb.js → index-d8bfffb3.js} +1 -1
- package/templates/web/dist/assets/{index-d70eb540.js → index-db169639.js} +1 -1
- package/templates/web/dist/assets/{index-bd4ed808.js → index-e08dc495.js} +1 -1
- package/templates/web/dist/assets/index-e31f4b7c.js +1 -0
- package/templates/web/dist/assets/{index-legacy-783129a7.js → index-legacy-5cf7be80.js} +1 -1
- package/templates/web/dist/assets/index-legacy-6f112001.js +1 -0
- package/templates/web/dist/assets/{index-legacy-b3bd40c1.js → index-legacy-91e012ac.js} +1 -1
- package/templates/web/dist/assets/{index-legacy-0da8de82.js → index-legacy-aa61cf72.js} +1 -1
- package/templates/web/dist/assets/{index-legacy-06483318.js → index-legacy-afba9135.js} +1 -1
- package/templates/web/dist/assets/{index-legacy-d510e318.js → index-legacy-da51c769.js} +1 -1
- package/templates/web/dist/assets/{index-legacy-993ef005.js → index-legacy-eec0ca6e.js} +1 -1
- package/templates/web/dist/assets/{index-legacy-feb54578.js → index-legacy-f732db29.js} +1 -1
- package/templates/web/dist/index.html +2 -2
- package/templates/web/node_modules/.vite/deps/@ant-design_icons.js +4 -4
- package/templates/web/node_modules/.vite/deps/_metadata.json +57 -57
- package/templates/web/node_modules/.vite/deps/antd.js +6 -6
- package/templates/web/node_modules/.vite/deps/antd_locale_zh_CN.js +1 -1
- package/templates/web/node_modules/.vite/deps/axios.js +2793 -1104
- package/templates/web/node_modules/.vite/deps/axios.js.map +4 -4
- package/templates/web/node_modules/.vite/deps/{chunk-FADIZLW4.js → chunk-3EE4ABTD.js} +3 -3
- package/templates/web/node_modules/.vite/deps/{chunk-5JEEJ3ET.js → chunk-3KXTUEQ5.js} +2 -2
- package/templates/web/node_modules/.vite/deps/{chunk-DSEUD2VO.js → chunk-622VOE6C.js} +28 -237
- package/templates/web/node_modules/.vite/deps/chunk-622VOE6C.js.map +7 -0
- package/templates/web/node_modules/.vite/deps/{chunk-PCLWPLHU.js → chunk-AX2S74EI.js} +4 -4
- package/templates/web/node_modules/.vite/deps/{chunk-UX3FVGZU.js → chunk-DXNXWKU4.js} +1670 -1309
- package/templates/web/node_modules/.vite/deps/chunk-DXNXWKU4.js.map +7 -0
- package/templates/web/node_modules/.vite/deps/{chunk-OTDKR2HU.js → chunk-GT2UP6M4.js} +2 -2
- package/templates/web/node_modules/.vite/deps/{chunk-5WWUZCGV.js → chunk-HM4MQYWN.js} +10 -2
- package/templates/web/node_modules/.vite/deps/{chunk-Z4XTF2JV.js → chunk-NDUAOA7M.js} +2 -2
- package/templates/web/node_modules/.vite/deps/{chunk-PIIG5WB7.js → chunk-OKY2XKJX.js} +14406 -12416
- package/templates/web/node_modules/.vite/deps/chunk-OKY2XKJX.js.map +7 -0
- package/templates/web/node_modules/.vite/deps/{chunk-UIM57Q7Y.js → chunk-SC6QO7UO.js} +6086 -4354
- package/templates/web/node_modules/.vite/deps/chunk-SC6QO7UO.js.map +7 -0
- package/templates/web/node_modules/.vite/deps/classnames.js +2 -2
- package/templates/web/node_modules/.vite/deps/dayjs.js +2 -2
- package/templates/web/node_modules/.vite/deps/dayjs_locale_zh-cn.js +2 -2
- package/templates/web/node_modules/.vite/deps/echarts_charts.js +7172 -6102
- package/templates/web/node_modules/.vite/deps/echarts_charts.js.map +4 -4
- package/templates/web/node_modules/.vite/deps/echarts_components.js +3363 -1326
- package/templates/web/node_modules/.vite/deps/echarts_components.js.map +4 -4
- package/templates/web/node_modules/.vite/deps/echarts_core.js +57 -42
- package/templates/web/node_modules/.vite/deps/echarts_core.js.map +3 -3
- package/templates/web/node_modules/.vite/deps/echarts_renderers.js +432 -334
- package/templates/web/node_modules/.vite/deps/echarts_renderers.js.map +4 -4
- package/templates/web/node_modules/.vite/deps/exceljs.js +25762 -0
- package/templates/web/node_modules/.vite/deps/exceljs.js.map +7 -0
- package/templates/web/node_modules/.vite/deps/lodash.js +28 -10
- package/templates/web/node_modules/.vite/deps/lodash.js.map +3 -3
- package/templates/web/node_modules/.vite/deps/path-browserify.js +1 -1
- package/templates/web/node_modules/.vite/deps/prop-types.js +1 -1
- package/templates/web/node_modules/.vite/deps/qs.js +405 -138
- package/templates/web/node_modules/.vite/deps/qs.js.map +4 -4
- package/templates/web/node_modules/.vite/deps/react-dom.js +3 -3
- package/templates/web/node_modules/.vite/deps/react-dom_client.js +3 -3
- package/templates/web/node_modules/.vite/deps/react-router-dom.js +3445 -1283
- package/templates/web/node_modules/.vite/deps/react-router-dom.js.map +4 -4
- package/templates/web/node_modules/.vite/deps/react.js +2 -2
- package/templates/web/node_modules/.vite/deps/react_jsx-dev-runtime.js +2 -2
- package/templates/web/node_modules/.vite/deps/recoil.js +3 -3
- package/templates/web/src/pages/Login/index.tsx +8 -1
- package/templates/web/src/services/api.ts +6 -1
- package/templates/web/vite.config.js +5 -5
- package/templates/web/dist/assets/index-e6071630.js +0 -1
- package/templates/web/dist/assets/index-legacy-028ed5d5.js +0 -1
- package/templates/web/node_modules/.vite/deps/chunk-DSEUD2VO.js.map +0 -7
- package/templates/web/node_modules/.vite/deps/chunk-PIIG5WB7.js.map +0 -7
- package/templates/web/node_modules/.vite/deps/chunk-UIM57Q7Y.js.map +0 -7
- package/templates/web/node_modules/.vite/deps/chunk-UX3FVGZU.js.map +0 -7
- package/templates/web/node_modules/.vite/deps/xlsx.js +0 -33827
- package/templates/web/node_modules/.vite/deps/xlsx.js.map +0 -7
- /package/templates/web/node_modules/.vite/deps/{chunk-FADIZLW4.js.map → chunk-3EE4ABTD.js.map} +0 -0
- /package/templates/web/node_modules/.vite/deps/{chunk-5JEEJ3ET.js.map → chunk-3KXTUEQ5.js.map} +0 -0
- /package/templates/web/node_modules/.vite/deps/{chunk-PCLWPLHU.js.map → chunk-AX2S74EI.js.map} +0 -0
- /package/templates/web/node_modules/.vite/deps/{chunk-OTDKR2HU.js.map → chunk-GT2UP6M4.js.map} +0 -0
- /package/templates/web/node_modules/.vite/deps/{chunk-5WWUZCGV.js.map → chunk-HM4MQYWN.js.map} +0 -0
- /package/templates/web/node_modules/.vite/deps/{chunk-Z4XTF2JV.js.map → chunk-NDUAOA7M.js.map} +0 -0
|
@@ -1,2 +1,26 @@
|
|
|
1
|
-
"use strict";
|
|
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.ScreenConfigModule = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const typeorm_1 = require("@nestjs/typeorm");
|
|
12
|
+
const screen_config_entity_1 = require("../../entities/screen-config.entity");
|
|
13
|
+
const screen_config_service_1 = require("./screen-config.service");
|
|
14
|
+
const screen_config_controller_1 = require("./screen-config.controller");
|
|
15
|
+
let ScreenConfigModule = class ScreenConfigModule {
|
|
16
|
+
};
|
|
17
|
+
exports.ScreenConfigModule = ScreenConfigModule;
|
|
18
|
+
exports.ScreenConfigModule = ScreenConfigModule = __decorate([
|
|
19
|
+
(0, common_1.Module)({
|
|
20
|
+
imports: [typeorm_1.TypeOrmModule.forFeature([screen_config_entity_1.ScreenConfigEntity])],
|
|
21
|
+
providers: [screen_config_service_1.ScreenConfigService],
|
|
22
|
+
controllers: [screen_config_controller_1.ScreenConfigController],
|
|
23
|
+
exports: [screen_config_service_1.ScreenConfigService]
|
|
24
|
+
})
|
|
25
|
+
], ScreenConfigModule);
|
|
2
26
|
//# sourceMappingURL=screen-config.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
{"version":3,"file":"screen-config.module.js","sourceRoot":"","sources":["../../../src/modules/screen-config/screen-config.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,6CAAgD;AAChD,8EAAyE;AACzE,mEAA8D;AAC9D,yEAAoE;AAQ7D,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAG,CAAA;AAArB,gDAAkB;6BAAlB,kBAAkB;IAN9B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,uBAAa,CAAC,UAAU,CAAC,CAAC,yCAAkB,CAAC,CAAC,CAAC;QACzD,SAAS,EAAE,CAAC,2CAAmB,CAAC;QAChC,WAAW,EAAE,CAAC,iDAAsB,CAAC;QACrC,OAAO,EAAE,CAAC,2CAAmB,CAAC;KAC/B,CAAC;GACW,kBAAkB,CAAG"}
|
|
@@ -1,2 +1,42 @@
|
|
|
1
|
-
"use strict";
|
|
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.ScreenConfigService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const typeorm_1 = require("@nestjs/typeorm");
|
|
18
|
+
const typeorm_2 = require("typeorm");
|
|
19
|
+
const screen_config_entity_1 = require("../../entities/screen-config.entity");
|
|
20
|
+
let ScreenConfigService = class ScreenConfigService {
|
|
21
|
+
repo;
|
|
22
|
+
constructor(repo) {
|
|
23
|
+
this.repo = repo;
|
|
24
|
+
}
|
|
25
|
+
async list() {
|
|
26
|
+
return this.repo.find({
|
|
27
|
+
where: { enabled: true },
|
|
28
|
+
order: { sort: 'ASC' }
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
async update(key, dto) {
|
|
32
|
+
await this.repo.update({ key }, dto);
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
exports.ScreenConfigService = ScreenConfigService;
|
|
37
|
+
exports.ScreenConfigService = ScreenConfigService = __decorate([
|
|
38
|
+
(0, common_1.Injectable)(),
|
|
39
|
+
__param(0, (0, typeorm_1.InjectRepository)(screen_config_entity_1.ScreenConfigEntity)),
|
|
40
|
+
__metadata("design:paramtypes", [typeorm_2.Repository])
|
|
41
|
+
], ScreenConfigService);
|
|
2
42
|
//# sourceMappingURL=screen-config.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
{"version":3,"file":"screen-config.service.js","sourceRoot":"","sources":["../../../src/modules/screen-config/screen-config.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAAmD;AACnD,qCAAqC;AACrC,8EAAyE;AAOlE,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAGX;IAFnB,YAEmB,IAAoC;QAApC,SAAI,GAAJ,IAAI,CAAgC;IACpD,CAAC;IAGJ,KAAK,CAAC,IAAI;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACpB,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;YACxB,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;SACvB,CAAC,CAAC;IACL,CAAC;IAGD,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,GAAgC;QACxD,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAnBY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,0BAAgB,EAAC,yCAAkB,CAAC,CAAA;qCACd,oBAAU;GAHxB,mBAAmB,CAmB/B"}
|
|
@@ -1,2 +1,66 @@
|
|
|
1
|
-
"use strict";
|
|
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.UploadController = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const platform_express_1 = require("@nestjs/platform-express");
|
|
18
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
19
|
+
const multer_1 = require("multer");
|
|
20
|
+
const config_1 = require("@nestjs/config");
|
|
21
|
+
const upload_service_1 = require("./upload.service");
|
|
22
|
+
const jwt_auth_guard_1 = require("../auth/jwt-auth.guard");
|
|
23
|
+
let UploadController = class UploadController {
|
|
24
|
+
uploadService;
|
|
25
|
+
config;
|
|
26
|
+
constructor(uploadService, config) {
|
|
27
|
+
this.uploadService = uploadService;
|
|
28
|
+
this.config = config;
|
|
29
|
+
}
|
|
30
|
+
upload(file) {
|
|
31
|
+
if (!file) {
|
|
32
|
+
throw new common_1.BadRequestException('缺少 file 字段');
|
|
33
|
+
}
|
|
34
|
+
const maxSize = this.config.get('upload').maxSize;
|
|
35
|
+
if (file.size > maxSize) {
|
|
36
|
+
throw new common_1.BadRequestException(`文件超过 ${maxSize} 字节限制`);
|
|
37
|
+
}
|
|
38
|
+
const url = this.uploadService.save(file);
|
|
39
|
+
return { url, size: file.size, filename: file.originalname };
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
exports.UploadController = UploadController;
|
|
43
|
+
__decorate([
|
|
44
|
+
(0, common_1.Post)(),
|
|
45
|
+
(0, common_1.UseInterceptors)((0, platform_express_1.FileInterceptor)('file', {
|
|
46
|
+
storage: (0, multer_1.memoryStorage)(),
|
|
47
|
+
limits: { fileSize: 10 * 1024 * 1024 }
|
|
48
|
+
})),
|
|
49
|
+
(0, swagger_1.ApiConsumes)('multipart/form-data'),
|
|
50
|
+
(0, swagger_1.ApiBody)({
|
|
51
|
+
schema: { type: 'object', properties: { file: { type: 'string', format: 'binary' } } }
|
|
52
|
+
}),
|
|
53
|
+
__param(0, (0, common_1.UploadedFile)()),
|
|
54
|
+
__metadata("design:type", Function),
|
|
55
|
+
__metadata("design:paramtypes", [Object]),
|
|
56
|
+
__metadata("design:returntype", void 0)
|
|
57
|
+
], UploadController.prototype, "upload", null);
|
|
58
|
+
exports.UploadController = UploadController = __decorate([
|
|
59
|
+
(0, swagger_1.ApiTags)('upload 文件上传'),
|
|
60
|
+
(0, swagger_1.ApiBearerAuth)(),
|
|
61
|
+
(0, common_1.UseGuards)(jwt_auth_guard_1.JwtAuthGuard),
|
|
62
|
+
(0, common_1.Controller)('upload'),
|
|
63
|
+
__metadata("design:paramtypes", [upload_service_1.UploadService,
|
|
64
|
+
config_1.ConfigService])
|
|
65
|
+
], UploadController);
|
|
2
66
|
//# sourceMappingURL=upload.controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
{"version":3,"file":"upload.controller.js","sourceRoot":"","sources":["../../../src/modules/upload/upload.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAOwB;AACxB,+DAA2D;AAC3D,6CAA+E;AAC/E,mCAAuC;AACvC,2CAA+C;AAC/C,qDAAiD;AACjD,2DAAsD;AAO/C,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAER;IACA;IAFnB,YACmB,aAA4B,EAC5B,MAAsC;QADtC,kBAAa,GAAb,aAAa,CAAe;QAC5B,WAAM,GAAN,MAAM,CAAgC;IACtD,CAAC;IAcJ,MAAM,CAAiB,IAAyB;QAC9C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,4BAAmB,CAAC,YAAY,CAAC,CAAC;QAC9C,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAsB,QAAQ,CAAC,CAAC,OAAO,CAAC;QACvE,IAAI,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,4BAAmB,CAAC,QAAQ,OAAO,OAAO,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;IAC/D,CAAC;CACF,CAAA;AA7BY,4CAAgB;AAkB3B;IAXC,IAAA,aAAI,GAAE;IACN,IAAA,wBAAe,EACd,IAAA,kCAAe,EAAC,MAAM,EAAE;QACtB,OAAO,EAAE,IAAA,sBAAa,GAAE;QACxB,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE;KACvC,CAAC,CACH;IACA,IAAA,qBAAW,EAAC,qBAAqB,CAAC;IAClC,IAAA,iBAAO,EAAC;QACP,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE;KACvF,CAAC;IACM,WAAA,IAAA,qBAAY,GAAE,CAAA;;;;8CAUrB;2BA5BU,gBAAgB;IAJ5B,IAAA,iBAAO,EAAC,aAAa,CAAC;IACtB,IAAA,uBAAa,GAAE;IACf,IAAA,kBAAS,EAAC,6BAAY,CAAC;IACvB,IAAA,mBAAU,EAAC,QAAQ,CAAC;qCAGe,8BAAa;QACpB,sBAAa;GAH7B,gBAAgB,CA6B5B"}
|
|
@@ -1,2 +1,23 @@
|
|
|
1
|
-
"use strict";
|
|
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.UploadModule = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const upload_controller_1 = require("./upload.controller");
|
|
12
|
+
const upload_service_1 = require("./upload.service");
|
|
13
|
+
let UploadModule = class UploadModule {
|
|
14
|
+
};
|
|
15
|
+
exports.UploadModule = UploadModule;
|
|
16
|
+
exports.UploadModule = UploadModule = __decorate([
|
|
17
|
+
(0, common_1.Module)({
|
|
18
|
+
providers: [upload_service_1.UploadService],
|
|
19
|
+
controllers: [upload_controller_1.UploadController],
|
|
20
|
+
exports: [upload_service_1.UploadService]
|
|
21
|
+
})
|
|
22
|
+
], UploadModule);
|
|
2
23
|
//# sourceMappingURL=upload.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
{"version":3,"file":"upload.module.js","sourceRoot":"","sources":["../../../src/modules/upload/upload.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,2DAAuD;AACvD,qDAAiD;AAO1C,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,oCAAY;uBAAZ,YAAY;IALxB,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,8BAAa,CAAC;QAC1B,WAAW,EAAE,CAAC,oCAAgB,CAAC;QAC/B,OAAO,EAAE,CAAC,8BAAa,CAAC;KACzB,CAAC;GACW,YAAY,CAAG"}
|
|
@@ -1,2 +1,76 @@
|
|
|
1
|
-
"use strict";
|
|
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.UploadService = void 0;
|
|
13
|
+
const common_1 = require("@nestjs/common");
|
|
14
|
+
const config_1 = require("@nestjs/config");
|
|
15
|
+
const fs = require("fs");
|
|
16
|
+
const path = require("path");
|
|
17
|
+
let UploadService = class UploadService {
|
|
18
|
+
config;
|
|
19
|
+
constructor(config) {
|
|
20
|
+
this.config = config;
|
|
21
|
+
}
|
|
22
|
+
save(file) {
|
|
23
|
+
const uploadCfg = this.config.get('upload');
|
|
24
|
+
if (!file) {
|
|
25
|
+
throw new common_1.BadRequestException('缺少 file');
|
|
26
|
+
}
|
|
27
|
+
const ext = path.extname(file.originalname).toLowerCase();
|
|
28
|
+
if (uploadCfg.allowedExt.length && !uploadCfg.allowedExt.includes(ext)) {
|
|
29
|
+
throw new common_1.BadRequestException(`不支持的文件类型 ${ext}`);
|
|
30
|
+
}
|
|
31
|
+
if (file.size > uploadCfg.maxSize) {
|
|
32
|
+
throw new common_1.BadRequestException('文件超过大小限制');
|
|
33
|
+
}
|
|
34
|
+
const dir = path.isAbsolute(uploadCfg.storagePath)
|
|
35
|
+
? uploadCfg.storagePath
|
|
36
|
+
: path.join(process.cwd(), uploadCfg.storagePath);
|
|
37
|
+
const ymd = this.ymd();
|
|
38
|
+
const saveDir = path.join(dir, ymd);
|
|
39
|
+
if (!fs.existsSync(saveDir)) {
|
|
40
|
+
fs.mkdirSync(saveDir, { recursive: true });
|
|
41
|
+
}
|
|
42
|
+
const base = path.basename(file.originalname, ext);
|
|
43
|
+
const fileName = `${Date.now()}_${Math.floor(Math.random() * 1e6)}_${base}${ext}`;
|
|
44
|
+
const filePath = path.join(saveDir, fileName);
|
|
45
|
+
fs.writeFileSync(filePath, file.buffer);
|
|
46
|
+
return `${uploadCfg.urlPrefix}/${ymd}/${fileName}`;
|
|
47
|
+
}
|
|
48
|
+
delete(url) {
|
|
49
|
+
if (!url)
|
|
50
|
+
return;
|
|
51
|
+
const uploadCfg = this.config.get('upload');
|
|
52
|
+
const prefix = uploadCfg.urlPrefix;
|
|
53
|
+
if (!url.startsWith(prefix))
|
|
54
|
+
return;
|
|
55
|
+
const rel = url.slice(prefix.length);
|
|
56
|
+
const dir = path.isAbsolute(uploadCfg.storagePath)
|
|
57
|
+
? uploadCfg.storagePath
|
|
58
|
+
: path.join(process.cwd(), uploadCfg.storagePath);
|
|
59
|
+
const abs = path.join(dir, rel);
|
|
60
|
+
if (fs.existsSync(abs)) {
|
|
61
|
+
fs.unlinkSync(abs);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
ymd() {
|
|
65
|
+
const d = new Date();
|
|
66
|
+
const m = String(d.getMonth() + 1).padStart(2, '0');
|
|
67
|
+
const day = String(d.getDate()).padStart(2, '0');
|
|
68
|
+
return `${d.getFullYear()}${m}${day}`;
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
exports.UploadService = UploadService;
|
|
72
|
+
exports.UploadService = UploadService = __decorate([
|
|
73
|
+
(0, common_1.Injectable)(),
|
|
74
|
+
__metadata("design:paramtypes", [config_1.ConfigService])
|
|
75
|
+
], UploadService);
|
|
2
76
|
//# sourceMappingURL=upload.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
{"version":3,"file":"upload.service.js","sourceRoot":"","sources":["../../../src/modules/upload/upload.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,150 @@
|
|
|
1
|
-
"use strict";
|
|
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.UserController = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
18
|
+
const user_service_1 = require("./user.service");
|
|
19
|
+
const jwt_auth_guard_1 = require("../auth/jwt-auth.guard");
|
|
20
|
+
let UserController = class UserController {
|
|
21
|
+
userService;
|
|
22
|
+
constructor(userService) {
|
|
23
|
+
this.userService = userService;
|
|
24
|
+
}
|
|
25
|
+
isLogin(auth) {
|
|
26
|
+
return this.userService.isLogin(auth);
|
|
27
|
+
}
|
|
28
|
+
getInfo(req) {
|
|
29
|
+
return this.userService.getInfo(req.user);
|
|
30
|
+
}
|
|
31
|
+
logout() {
|
|
32
|
+
return this.userService.logout();
|
|
33
|
+
}
|
|
34
|
+
ensureAdmin(req) {
|
|
35
|
+
if (req.user?.role !== 'admin' && req.user?.role !== 'superadmin') {
|
|
36
|
+
throw new common_1.ForbiddenException('仅管理员可操作用户管理');
|
|
37
|
+
}
|
|
38
|
+
return { id: req.user.id, username: req.user.username };
|
|
39
|
+
}
|
|
40
|
+
list(query, req) {
|
|
41
|
+
this.ensureAdmin(req);
|
|
42
|
+
return this.userService.list({
|
|
43
|
+
page: Number(query.page) || 1,
|
|
44
|
+
size: Number(query.size) || 20,
|
|
45
|
+
username: query.username
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
create(body, req) {
|
|
49
|
+
const operator = this.ensureAdmin(req);
|
|
50
|
+
return this.userService.create(body, operator.username);
|
|
51
|
+
}
|
|
52
|
+
update(body, req) {
|
|
53
|
+
const operator = this.ensureAdmin(req);
|
|
54
|
+
return this.userService.update(body, operator);
|
|
55
|
+
}
|
|
56
|
+
delete(id, req) {
|
|
57
|
+
const operator = this.ensureAdmin(req);
|
|
58
|
+
return this.userService.delete(Number(id), operator);
|
|
59
|
+
}
|
|
60
|
+
resetPassword(id, req) {
|
|
61
|
+
const operator = this.ensureAdmin(req);
|
|
62
|
+
return this.userService.resetPassword(Number(id), operator);
|
|
63
|
+
}
|
|
64
|
+
toggleStatus(id, req) {
|
|
65
|
+
const operator = this.ensureAdmin(req);
|
|
66
|
+
return this.userService.toggleStatus(Number(id), operator);
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
exports.UserController = UserController;
|
|
70
|
+
__decorate([
|
|
71
|
+
(0, common_1.Get)('islogin'),
|
|
72
|
+
__param(0, (0, common_1.Headers)('authorization')),
|
|
73
|
+
__metadata("design:type", Function),
|
|
74
|
+
__metadata("design:paramtypes", [String]),
|
|
75
|
+
__metadata("design:returntype", void 0)
|
|
76
|
+
], UserController.prototype, "isLogin", null);
|
|
77
|
+
__decorate([
|
|
78
|
+
(0, common_1.UseGuards)(jwt_auth_guard_1.JwtAuthGuard),
|
|
79
|
+
(0, common_1.Get)('info'),
|
|
80
|
+
__param(0, (0, common_1.Request)()),
|
|
81
|
+
__metadata("design:type", Function),
|
|
82
|
+
__metadata("design:paramtypes", [Object]),
|
|
83
|
+
__metadata("design:returntype", void 0)
|
|
84
|
+
], UserController.prototype, "getInfo", null);
|
|
85
|
+
__decorate([
|
|
86
|
+
(0, common_1.Post)('logout'),
|
|
87
|
+
__metadata("design:type", Function),
|
|
88
|
+
__metadata("design:paramtypes", []),
|
|
89
|
+
__metadata("design:returntype", void 0)
|
|
90
|
+
], UserController.prototype, "logout", null);
|
|
91
|
+
__decorate([
|
|
92
|
+
(0, common_1.UseGuards)(jwt_auth_guard_1.JwtAuthGuard),
|
|
93
|
+
(0, common_1.Get)('list'),
|
|
94
|
+
__param(0, (0, common_1.Query)()),
|
|
95
|
+
__param(1, (0, common_1.Request)()),
|
|
96
|
+
__metadata("design:type", Function),
|
|
97
|
+
__metadata("design:paramtypes", [Object, Object]),
|
|
98
|
+
__metadata("design:returntype", void 0)
|
|
99
|
+
], UserController.prototype, "list", null);
|
|
100
|
+
__decorate([
|
|
101
|
+
(0, common_1.UseGuards)(jwt_auth_guard_1.JwtAuthGuard),
|
|
102
|
+
(0, common_1.Post)('create'),
|
|
103
|
+
__param(0, (0, common_1.Body)()),
|
|
104
|
+
__param(1, (0, common_1.Request)()),
|
|
105
|
+
__metadata("design:type", Function),
|
|
106
|
+
__metadata("design:paramtypes", [Object, Object]),
|
|
107
|
+
__metadata("design:returntype", void 0)
|
|
108
|
+
], UserController.prototype, "create", null);
|
|
109
|
+
__decorate([
|
|
110
|
+
(0, common_1.UseGuards)(jwt_auth_guard_1.JwtAuthGuard),
|
|
111
|
+
(0, common_1.Put)('update'),
|
|
112
|
+
__param(0, (0, common_1.Body)()),
|
|
113
|
+
__param(1, (0, common_1.Request)()),
|
|
114
|
+
__metadata("design:type", Function),
|
|
115
|
+
__metadata("design:paramtypes", [Object, Object]),
|
|
116
|
+
__metadata("design:returntype", void 0)
|
|
117
|
+
], UserController.prototype, "update", null);
|
|
118
|
+
__decorate([
|
|
119
|
+
(0, common_1.UseGuards)(jwt_auth_guard_1.JwtAuthGuard),
|
|
120
|
+
(0, common_1.Delete)('delete'),
|
|
121
|
+
__param(0, (0, common_1.Query)('id')),
|
|
122
|
+
__param(1, (0, common_1.Request)()),
|
|
123
|
+
__metadata("design:type", Function),
|
|
124
|
+
__metadata("design:paramtypes", [String, Object]),
|
|
125
|
+
__metadata("design:returntype", void 0)
|
|
126
|
+
], UserController.prototype, "delete", null);
|
|
127
|
+
__decorate([
|
|
128
|
+
(0, common_1.UseGuards)(jwt_auth_guard_1.JwtAuthGuard),
|
|
129
|
+
(0, common_1.Post)('resetPassword'),
|
|
130
|
+
__param(0, (0, common_1.Query)('id')),
|
|
131
|
+
__param(1, (0, common_1.Request)()),
|
|
132
|
+
__metadata("design:type", Function),
|
|
133
|
+
__metadata("design:paramtypes", [String, Object]),
|
|
134
|
+
__metadata("design:returntype", void 0)
|
|
135
|
+
], UserController.prototype, "resetPassword", null);
|
|
136
|
+
__decorate([
|
|
137
|
+
(0, common_1.UseGuards)(jwt_auth_guard_1.JwtAuthGuard),
|
|
138
|
+
(0, common_1.Post)('toggleStatus'),
|
|
139
|
+
__param(0, (0, common_1.Query)('id')),
|
|
140
|
+
__param(1, (0, common_1.Request)()),
|
|
141
|
+
__metadata("design:type", Function),
|
|
142
|
+
__metadata("design:paramtypes", [String, Object]),
|
|
143
|
+
__metadata("design:returntype", void 0)
|
|
144
|
+
], UserController.prototype, "toggleStatus", null);
|
|
145
|
+
exports.UserController = UserController = __decorate([
|
|
146
|
+
(0, swagger_1.ApiTags)('user 用户'),
|
|
147
|
+
(0, common_1.Controller)('user'),
|
|
148
|
+
__metadata("design:paramtypes", [user_service_1.UserService])
|
|
149
|
+
], UserController);
|
|
2
150
|
//# sourceMappingURL=user.controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
{"version":3,"file":"user.controller.js","sourceRoot":"","sources":["../../../src/modules/user/user.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,27 @@
|
|
|
1
|
-
"use strict";
|
|
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.UserModule = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const typeorm_1 = require("@nestjs/typeorm");
|
|
12
|
+
const user_entity_1 = require("../../entities/user.entity");
|
|
13
|
+
const audit_module_1 = require("../audit/audit.module");
|
|
14
|
+
const user_service_1 = require("./user.service");
|
|
15
|
+
const user_controller_1 = require("./user.controller");
|
|
16
|
+
let UserModule = class UserModule {
|
|
17
|
+
};
|
|
18
|
+
exports.UserModule = UserModule;
|
|
19
|
+
exports.UserModule = UserModule = __decorate([
|
|
20
|
+
(0, common_1.Module)({
|
|
21
|
+
imports: [typeorm_1.TypeOrmModule.forFeature([user_entity_1.UserEntity]), audit_module_1.AuditModule],
|
|
22
|
+
providers: [user_service_1.UserService],
|
|
23
|
+
controllers: [user_controller_1.UserController],
|
|
24
|
+
exports: [user_service_1.UserService]
|
|
25
|
+
})
|
|
26
|
+
], UserModule);
|
|
2
27
|
//# sourceMappingURL=user.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
{"version":3,"file":"user.module.js","sourceRoot":"","sources":["../../../src/modules/user/user.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,6CAAgD;AAChD,4DAAwD;AACxD,wDAAoD;AACpD,iDAA6C;AAC7C,uDAAmD;AAQ5C,IAAM,UAAU,GAAhB,MAAM,UAAU;CAAG,CAAA;AAAb,gCAAU;qBAAV,UAAU;IANtB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,uBAAa,CAAC,UAAU,CAAC,CAAC,wBAAU,CAAC,CAAC,EAAE,0BAAW,CAAC;QAC9D,SAAS,EAAE,CAAC,0BAAW,CAAC;QACxB,WAAW,EAAE,CAAC,gCAAc,CAAC;QAC7B,OAAO,EAAE,CAAC,0BAAW,CAAC;KACvB,CAAC;GACW,UAAU,CAAG"}
|