midway-fatcms 0.0.1-beta.2 → 0.0.1-beta.20
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/.eslintrc.json +12 -0
- package/.prettierrc.js +4 -0
- package/README.md +7 -0
- package/dist/config/config.default.js +52 -15
- package/dist/configuration.d.ts +1 -0
- package/dist/configuration.js +33 -8
- package/dist/controller/base/BaseApiController.d.ts +1 -1
- package/dist/controller/base/BaseApiController.js +9 -6
- package/dist/controller/gateway/AsyncTaskController.d.ts +14 -0
- package/dist/controller/gateway/AsyncTaskController.js +108 -0
- package/dist/controller/gateway/CrudMtdGatewayController.d.ts +3 -3
- package/dist/controller/gateway/CrudMtdGatewayController.js +9 -6
- package/dist/controller/gateway/DocGatewayController.js +14 -9
- package/dist/controller/gateway/PublicApiController.js +4 -6
- package/dist/controller/gateway/StaticController.d.ts +2 -0
- package/dist/controller/gateway/StaticController.js +59 -40
- package/dist/controller/helpers.controller.d.ts +1 -1
- package/dist/controller/home.controller.js +2 -2
- package/dist/controller/manage/CrudStandardDesignApi.d.ts +1 -1
- package/dist/controller/manage/CrudStandardDesignApi.js +78 -75
- package/dist/controller/manage/DataDictManageApi.d.ts +1 -1
- package/dist/controller/manage/DeployManageApi.d.ts +1 -1
- package/dist/controller/manage/DeployManageApi.js +38 -34
- package/dist/controller/manage/MenuManageApi.js +1 -1
- package/dist/controller/manage/SuperAdminManageApi.d.ts +2 -2
- package/dist/controller/manage/SuperAdminManageApi.js +12 -8
- package/dist/controller/manage/SysConfigMangeApi.d.ts +1 -1
- package/dist/controller/manage/SysConfigMangeApi.js +6 -4
- package/dist/controller/manage/SystemInfoManageApi.d.ts +1 -1
- package/dist/controller/manage/SystemInfoManageApi.js +7 -1
- package/dist/controller/manage/UserAccountManageApi.d.ts +2 -2
- package/dist/controller/manage/UserAccountManageApi.js +5 -0
- package/dist/controller/manage/WorkbenchMangeApi.js +1 -1
- package/dist/controller/myinfo/AuthController.d.ts +0 -4
- package/dist/controller/myinfo/AuthController.js +1 -54
- package/dist/controller/render/AppRenderController.js +10 -4
- package/dist/controller/test.controller.d.ts +1 -1
- package/dist/controller/test.controller.js +5 -5
- package/dist/index.d.ts +34 -4
- package/dist/index.js +34 -4
- package/dist/libs/crud-pro/CrudPro.d.ts +1 -0
- package/dist/libs/crud-pro/CrudPro.js +5 -0
- package/dist/libs/crud-pro/defaultConfigs.js +2 -0
- package/dist/libs/crud-pro/interfaces.d.ts +7 -1
- package/dist/libs/crud-pro/models/ExecuteContext.d.ts +2 -1
- package/dist/libs/crud-pro/models/ExecuteContextFunc.d.ts +8 -1
- package/dist/libs/crud-pro/models/ExecuteContextFunc.js +8 -0
- package/dist/libs/crud-pro/models/RequestCfgModel.d.ts +1 -1
- package/dist/libs/crud-pro/models/ResModel.d.ts +16 -0
- package/dist/libs/crud-pro/models/ResModel.js +2 -0
- package/dist/libs/crud-pro/models/SqlCfgModel.d.ts +1 -1
- package/dist/libs/crud-pro/models/TransactionSqlServer.js +1 -1
- package/dist/libs/crud-pro/services/CrudProCachedCfgService.d.ts +1 -0
- package/dist/libs/crud-pro/services/CrudProCachedCfgService.js +22 -11
- package/dist/libs/crud-pro/services/CrudProExecuteSqlService.js +10 -9
- package/dist/libs/crud-pro/services/CrudProGenSqlCondition.d.ts +1 -1
- package/dist/libs/crud-pro/services/CrudProGenSqlCondition.js +10 -12
- package/dist/libs/crud-pro/services/CrudProGenSqlService.js +14 -23
- package/dist/libs/crud-pro/services/CrudProOriginToExecuteSql.js +7 -6
- package/dist/libs/crud-pro/services/CrudProServiceBase.d.ts +2 -6
- package/dist/libs/crud-pro/services/CrudProServiceBase.js +3 -2
- package/dist/libs/crud-pro/services/CrudProTableMetaService.d.ts +1 -0
- package/dist/libs/crud-pro/services/CrudProTableMetaService.js +31 -7
- package/dist/libs/crud-pro/utils/DatabaseName.js +24 -3
- package/dist/libs/crud-pro/utils/MixinUtils.js +1 -1
- package/dist/libs/crud-pro/utils/ValidateUtils.js +1 -1
- package/dist/libs/crud-pro/utils/sqlConvert/convertColumnName.js +2 -2
- package/dist/libs/global-config/global-config.d.ts +45 -0
- package/dist/libs/global-config/global-config.js +33 -0
- package/dist/libs/utils/errorToString.d.ts +2 -0
- package/dist/libs/utils/errorToString.js +57 -0
- package/dist/libs/utils/fatcms-request.js +2 -2
- package/dist/middleware/forbidden.middleware.js +4 -20
- package/dist/middleware/global.middleware.js +8 -1
- package/dist/models/AsyncTaskModel.d.ts +69 -0
- package/dist/models/AsyncTaskModel.js +26 -0
- package/dist/models/RedisKeys.d.ts +8 -0
- package/dist/models/RedisKeys.js +11 -0
- package/dist/models/SystemTables.d.ts +1 -3
- package/dist/models/SystemTables.js +2 -4
- package/dist/schedule/anonymousContext.d.ts +13 -0
- package/dist/schedule/anonymousContext.js +59 -0
- package/dist/schedule/index.d.ts +4 -3
- package/dist/schedule/index.js +8 -67
- package/dist/schedule/runSchedule.d.ts +15 -0
- package/dist/schedule/runSchedule.js +68 -0
- package/dist/schedule/scheduleNames.d.ts +13 -0
- package/dist/schedule/scheduleNames.js +17 -0
- package/dist/service/AuthService.js +8 -5
- package/dist/service/EnumInfoService.js +7 -4
- package/dist/service/FileCenterService.js +13 -9
- package/dist/service/SysConfigService.js +4 -2
- package/dist/service/UserAccountService.js +10 -6
- package/dist/service/UserSessionService.js +2 -1
- package/dist/service/VisitStatService.d.ts +1 -1
- package/dist/service/VisitStatService.js +20 -27
- package/dist/service/WorkbenchService.js +4 -2
- package/dist/service/anyapi/AnyApiService.js +4 -2
- package/dist/service/asyncTask/AsyncTaskRunnerService.d.ts +37 -0
- package/dist/service/asyncTask/AsyncTaskRunnerService.js +226 -0
- package/dist/service/asyncTask/AsyncTaskService.d.ts +7 -0
- package/dist/service/asyncTask/AsyncTaskService.js +34 -0
- package/dist/service/crudstd/CrudStdService.d.ts +1 -0
- package/dist/service/crudstd/CrudStdService.js +34 -3
- package/dist/service/curd/CrudProQuick.d.ts +24 -0
- package/dist/service/curd/CrudProQuick.js +105 -0
- package/dist/service/curd/CurdMixByAccountService.js +12 -6
- package/dist/service/curd/CurdMixByDictService.js +4 -2
- package/dist/service/curd/CurdMixByLinkToCustomService.d.ts +10 -1
- package/dist/service/curd/CurdMixByLinkToCustomService.js +72 -24
- package/dist/service/curd/CurdMixBySysConfigService.js +4 -2
- package/dist/service/curd/CurdMixByWorkbenchService.js +4 -2
- package/dist/service/curd/CurdMixService.d.ts +1 -1
- package/dist/service/curd/CurdMixService.js +2 -2
- package/dist/service/curd/CurdMixUtils.d.ts +7 -0
- package/dist/service/curd/CurdMixUtils.js +65 -28
- package/dist/service/curd/CurdProService.d.ts +2 -10
- package/dist/service/curd/CurdProService.js +31 -146
- package/dist/service/curd/fixCfgModel.d.ts +3 -0
- package/dist/service/curd/fixCfgModel.js +107 -0
- package/dist/service/proxyapi/ProxyApiLoadService.js +7 -4
- package/dist/views/404_app.html +31 -0
- package/dist/views/404_workbench.html +34 -0
- package/dist/views/static/favicon.ico +0 -0
- package/package.json +9 -2
- package/src/config/config.default.ts +58 -27
- package/src/configuration.ts +42 -9
- package/src/controller/base/BaseApiController.ts +19 -19
- package/src/controller/gateway/AnyApiGatewayController.ts +1 -1
- package/src/controller/gateway/AsyncTaskController.ts +83 -0
- package/src/controller/gateway/CrudMtdGatewayController.ts +17 -13
- package/src/controller/gateway/CrudStdGatewayController.ts +4 -4
- package/src/controller/gateway/DocGatewayController.ts +25 -17
- package/src/controller/gateway/FileController.ts +8 -9
- package/src/controller/gateway/ProxyApiGatewayController.ts +4 -4
- package/src/controller/gateway/PublicApiController.ts +19 -22
- package/src/controller/gateway/StaticController.ts +234 -242
- package/src/controller/helpers.controller.ts +1 -1
- package/src/controller/home.controller.ts +8 -15
- package/src/controller/manage/AnyApiMangeApi.ts +9 -9
- package/src/controller/manage/AppLogMangeApi.ts +3 -3
- package/src/controller/manage/AppMangeApi.ts +5 -5
- package/src/controller/manage/AppPageMangeApi.ts +3 -3
- package/src/controller/manage/AppSchemaHistoryApi.ts +1 -1
- package/src/controller/manage/CrudMethodsMangeApi.ts +3 -3
- package/src/controller/manage/CrudStandardDesignApi.ts +106 -113
- package/src/controller/manage/DataDictManageApi.ts +4 -4
- package/src/controller/manage/DeployManageApi.ts +85 -89
- package/src/controller/manage/DocLibManageApi.ts +3 -3
- package/src/controller/manage/DocManageApi.ts +8 -8
- package/src/controller/manage/MenuManageApi.ts +9 -14
- package/src/controller/manage/SuperAdminManageApi.ts +14 -13
- package/src/controller/manage/SysConfigMangeApi.ts +9 -9
- package/src/controller/manage/SystemInfoManageApi.ts +11 -6
- package/src/controller/manage/UserAccountManageApi.ts +8 -2
- package/src/controller/manage/WorkbenchMangeApi.ts +6 -6
- package/src/controller/myinfo/AuthController.ts +6 -72
- package/src/controller/render/AppRenderController.ts +24 -21
- package/src/controller/test.controller.ts +18 -18
- package/src/index.ts +38 -4
- package/src/libs/crud-pro/CrudPro.ts +7 -0
- package/src/libs/crud-pro/defaultConfigs.ts +2 -0
- package/src/libs/crud-pro/interfaces.ts +10 -3
- package/src/libs/crud-pro/models/ExecuteContext.ts +3 -3
- package/src/libs/crud-pro/models/ExecuteContextFunc.ts +11 -1
- package/src/libs/crud-pro/models/RequestCfgModel.ts +1 -1
- package/src/libs/crud-pro/models/RequestModel.ts +1 -1
- package/src/libs/crud-pro/models/ResModel.ts +19 -0
- package/src/libs/crud-pro/models/SqlCfgModel.ts +2 -2
- package/src/libs/crud-pro/models/Transaction.ts +8 -9
- package/src/libs/crud-pro/models/TransactionPostgres.ts +1 -1
- package/src/libs/crud-pro/models/TransactionSqlServer.ts +8 -13
- package/src/libs/crud-pro/services/CrudProCachedCfgService.ts +26 -19
- package/src/libs/crud-pro/services/CrudProExecuteSqlService.ts +38 -50
- package/src/libs/crud-pro/services/CrudProGenSqlCondition.ts +26 -45
- package/src/libs/crud-pro/services/CrudProGenSqlService.ts +23 -40
- package/src/libs/crud-pro/services/CrudProOriginToExecuteSql.ts +25 -29
- package/src/libs/crud-pro/services/CrudProServiceBase.ts +5 -9
- package/src/libs/crud-pro/services/CrudProTableMetaService.ts +35 -9
- package/src/libs/crud-pro/utils/DatabaseName.ts +35 -15
- package/src/libs/crud-pro/utils/DateTimeUtils.ts +2 -2
- package/src/libs/crud-pro/utils/MixinUtils.ts +1 -1
- package/src/libs/crud-pro/utils/ValidateUtils.ts +1 -3
- package/src/libs/crud-pro/utils/pool/MySQLUtils.ts +1 -1
- package/src/libs/crud-pro/utils/pool/PostgresUtils.ts +3 -3
- package/src/libs/crud-pro/utils/pool/SqlServerUtils.ts +3 -3
- package/src/libs/crud-pro/utils/sqlConvert/convertColumnName.ts +2 -2
- package/src/libs/global-config/global-config.ts +78 -0
- package/src/libs/utils/crypto-utils.ts +2 -4
- package/src/libs/utils/errorToString.ts +61 -0
- package/src/libs/utils/fatcms-request.ts +9 -21
- package/src/libs/utils/ordernum-utils.ts +2 -6
- package/src/libs/utils/parseConfig.ts +7 -15
- package/src/middleware/forbidden.middleware.ts +6 -25
- package/src/middleware/global.middleware.ts +18 -16
- package/src/models/AsyncTaskModel.ts +79 -0
- package/src/models/RedisKeys.ts +13 -0
- package/src/models/SystemTables.ts +1 -4
- package/src/models/bizmodels.ts +1 -2
- package/src/schedule/anonymousContext.ts +79 -0
- package/src/schedule/index.ts +11 -72
- package/src/schedule/runSchedule.ts +83 -0
- package/src/schedule/scheduleNames.ts +21 -0
- package/src/service/AuthService.ts +13 -8
- package/src/service/EnumInfoService.ts +8 -3
- package/src/service/FileCenterService.ts +12 -6
- package/src/service/SysConfigService.ts +10 -6
- package/src/service/UserAccountService.ts +14 -4
- package/src/service/UserSessionService.ts +5 -4
- package/src/service/VisitStatService.ts +57 -70
- package/src/service/WorkbenchService.ts +7 -2
- package/src/service/anyapi/AnyApiService.ts +11 -8
- package/src/service/asyncTask/AsyncTaskRunnerService.ts +249 -0
- package/src/service/asyncTask/AsyncTaskService.ts +21 -0
- package/src/service/base/BaseService.ts +2 -2
- package/src/service/crudstd/CrudStdService.ts +43 -5
- package/src/service/curd/CrudProQuick.ts +137 -0
- package/src/service/curd/CurdMixByAccountService.ts +14 -6
- package/src/service/curd/CurdMixByDictService.ts +8 -2
- package/src/service/curd/CurdMixByLinkToCustomService.ts +101 -50
- package/src/service/curd/CurdMixBySysConfigService.ts +7 -2
- package/src/service/curd/CurdMixByWorkbenchService.ts +6 -2
- package/src/service/curd/CurdMixService.ts +3 -3
- package/src/service/curd/CurdMixUtils.ts +82 -39
- package/src/service/curd/CurdProService.ts +45 -189
- package/src/service/curd/fixCfgModel.ts +139 -0
- package/src/service/proxyapi/ProxyApiLoadService.ts +12 -3
- package/src/views/404_app.html +31 -0
- package/src/views/404_workbench.html +34 -0
- package/src/views/static/favicon.ico +0 -0
- package/tsconfig.json +32 -0
- package/dist/controller/medstatistic/MedAdminController.d.ts +0 -35
- package/dist/controller/medstatistic/MedAdminController.js +0 -205
- package/dist/controller/medstatistic/MedClientController.d.ts +0 -28
- package/dist/controller/medstatistic/MedClientController.js +0 -188
- package/dist/controller/medstatistic/MedMessageService.d.ts +0 -19
- package/dist/controller/medstatistic/MedMessageService.js +0 -95
- package/dist/controller/medstatistic/MedScoreService.d.ts +0 -21
- package/dist/controller/medstatistic/MedScoreService.js +0 -107
- package/dist/controller/medstatistic/constants.d.ts +0 -32
- package/dist/controller/medstatistic/constants.js +0 -43
- package/src/controller/medstatistic/MedAdminController.ts +0 -221
- package/src/controller/medstatistic/MedClientController.ts +0 -188
- package/src/controller/medstatistic/MedMessageService.ts +0 -89
- package/src/controller/medstatistic/MedScoreService.ts +0 -108
- package/src/controller/medstatistic/constants.ts +0 -63
|
@@ -20,17 +20,17 @@ const fs2 = require("fs");
|
|
|
20
20
|
const path = require("path");
|
|
21
21
|
const https = require("https");
|
|
22
22
|
const functions_1 = require("../../libs/utils/functions");
|
|
23
|
-
const localDir = path.join(__dirname, '../../../public/static'); // 本地文件存储目录
|
|
24
|
-
const notFoundListFile = path.join(localDir, '__404__list.json'); // 404列表文件
|
|
25
23
|
function getPathConfig(ossName) {
|
|
26
24
|
const remoteBaseUrlMap = {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
cdnjsx: 'https://cdnjsx.oss-cn-shanghai.aliyuncs.com',
|
|
26
|
+
'i.alicdn.com': 'https://i.alicdn.com',
|
|
27
|
+
'img.alicdn.com': 'https://img.alicdn.com',
|
|
28
|
+
'at.alicdn.com': 'https://at.alicdn.com',
|
|
30
29
|
};
|
|
31
|
-
|
|
30
|
+
let remoteBaseUrl = remoteBaseUrlMap[ossName];
|
|
32
31
|
if (!remoteBaseUrl) {
|
|
33
|
-
|
|
32
|
+
console.error(`getPathConfig ossName: ${ossName} 未配置`);
|
|
33
|
+
remoteBaseUrl = `https://${ossName}`;
|
|
34
34
|
}
|
|
35
35
|
return {
|
|
36
36
|
remoteBaseUrl,
|
|
@@ -38,30 +38,43 @@ function getPathConfig(ossName) {
|
|
|
38
38
|
}
|
|
39
39
|
// 404列表缓存
|
|
40
40
|
let notFoundList = new Set();
|
|
41
|
-
|
|
42
|
-
async function init() {
|
|
43
|
-
try {
|
|
44
|
-
// 确保本地存储目录存在
|
|
45
|
-
await fs.mkdir(localDir, { recursive: true });
|
|
46
|
-
const data = await fs.readFile(notFoundListFile, 'utf8');
|
|
47
|
-
notFoundList = new Set(JSON.parse(data));
|
|
48
|
-
console.log(`已加载${notFoundList.size}个404记录`);
|
|
49
|
-
}
|
|
50
|
-
catch (error) {
|
|
51
|
-
if (error.code !== 'ENOENT') {
|
|
52
|
-
console.error('读取404列表失败:', error);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
init();
|
|
41
|
+
let notFoundListIsInit = false;
|
|
57
42
|
/**
|
|
58
43
|
* 静态文件代理功能
|
|
59
44
|
*/
|
|
60
45
|
let StaticController = class StaticController extends BaseApiController_1.BaseApiController {
|
|
46
|
+
getLocalPaths() {
|
|
47
|
+
const appDir = this.app.getAppDir();
|
|
48
|
+
const localDir = path.join(appDir, './public/static'); // 本地文件存储目录
|
|
49
|
+
const notFoundListFile = path.join(localDir, '__404__list.json'); // 404列表文件
|
|
50
|
+
return {
|
|
51
|
+
localDir,
|
|
52
|
+
notFoundListFile,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
async initNotFoundList() {
|
|
56
|
+
if (notFoundListIsInit) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
notFoundListIsInit = true;
|
|
60
|
+
const { localDir, notFoundListFile } = this.getLocalPaths();
|
|
61
|
+
try {
|
|
62
|
+
// 确保本地存储目录存在
|
|
63
|
+
await fs.mkdir(localDir, { recursive: true });
|
|
64
|
+
const data = await fs.readFile(notFoundListFile, 'utf8');
|
|
65
|
+
notFoundList = new Set(JSON.parse(data));
|
|
66
|
+
console.log(`已加载${notFoundList.size}个404记录`);
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
if (error.code !== 'ENOENT') {
|
|
70
|
+
console.error('读取404列表失败:', error);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
61
74
|
async responseLocalFile(localFilePath, localHeaderPath, relativePath) {
|
|
62
75
|
const headers = {
|
|
63
|
-
|
|
64
|
-
|
|
76
|
+
'Cache-Control': 'public, max-age=31536000',
|
|
77
|
+
Expires: new Date(Date.now() + 31536000000).toUTCString(),
|
|
65
78
|
};
|
|
66
79
|
try {
|
|
67
80
|
// 检查本地文件是否存在.头文件
|
|
@@ -70,16 +83,17 @@ let StaticController = class StaticController extends BaseApiController_1.BaseAp
|
|
|
70
83
|
const headerDataStr = await fs.readFile(localHeaderPath, 'utf8');
|
|
71
84
|
const headerData = (0, functions_1.parseJsonObject)(headerDataStr);
|
|
72
85
|
if (headerData) {
|
|
73
|
-
headers[
|
|
74
|
-
headers[
|
|
75
|
-
headers[
|
|
76
|
-
headers[
|
|
77
|
-
headers[
|
|
78
|
-
headers[
|
|
86
|
+
headers['content-type'] = headerData['content-type'];
|
|
87
|
+
headers['content-length'] = headerData['content-length'];
|
|
88
|
+
headers['last-modified'] = headerData['last-modified'];
|
|
89
|
+
headers['etag'] = headerData['etag'];
|
|
90
|
+
headers['cache-control'] = headerData['cache-control'];
|
|
91
|
+
headers['accept-ranges'] = headerData['accept-ranges'];
|
|
79
92
|
}
|
|
80
93
|
}
|
|
81
94
|
}
|
|
82
95
|
catch (error) {
|
|
96
|
+
console.debug('[StaticController]responseLocalFile', error);
|
|
83
97
|
}
|
|
84
98
|
try {
|
|
85
99
|
// 检查本地文件是否存在
|
|
@@ -107,10 +121,12 @@ let StaticController = class StaticController extends BaseApiController_1.BaseAp
|
|
|
107
121
|
return false;
|
|
108
122
|
}
|
|
109
123
|
async proxyStaticFile(ossName, relativePath) {
|
|
124
|
+
this.initNotFoundList();
|
|
125
|
+
const { localDir } = this.getLocalPaths();
|
|
110
126
|
const PATH_CONFIG = getPathConfig(ossName);
|
|
111
127
|
// 构建本地路径和远程路径
|
|
112
|
-
const localFilePath = path.join(localDir,
|
|
113
|
-
const localHeaderPath = path.join(localDir,
|
|
128
|
+
const localFilePath = path.join(localDir, 'files', ossName, relativePath);
|
|
129
|
+
const localHeaderPath = path.join(localDir, 'headers', ossName, relativePath);
|
|
114
130
|
const remoteUrl = `${PATH_CONFIG.remoteBaseUrl}/${relativePath}`;
|
|
115
131
|
// 检查是否在404列表中
|
|
116
132
|
if (notFoundList.has(relativePath)) {
|
|
@@ -157,10 +173,11 @@ let StaticController = class StaticController extends BaseApiController_1.BaseAp
|
|
|
157
173
|
return this.ctx.render('500', { errorMsg: msg });
|
|
158
174
|
}
|
|
159
175
|
this.ctx.status = 500;
|
|
160
|
-
return this.ctx.render('500', { errorMsg:
|
|
176
|
+
return this.ctx.render('500', { errorMsg: '未知异常' });
|
|
161
177
|
}
|
|
162
178
|
// 保存404列表
|
|
163
179
|
async saveNotFoundList() {
|
|
180
|
+
const { notFoundListFile } = this.getLocalPaths();
|
|
164
181
|
try {
|
|
165
182
|
// 确保存储404列表的目录存在
|
|
166
183
|
const dir = path.dirname(notFoundListFile);
|
|
@@ -174,13 +191,15 @@ let StaticController = class StaticController extends BaseApiController_1.BaseAp
|
|
|
174
191
|
// 封装https请求为异步函数
|
|
175
192
|
async httpsGet(url) {
|
|
176
193
|
return new Promise((resolve, reject) => {
|
|
177
|
-
https
|
|
194
|
+
https
|
|
195
|
+
.get(url, res => {
|
|
178
196
|
resolve({
|
|
179
197
|
statusCode: res.statusCode || 500,
|
|
180
198
|
headers: res.headers,
|
|
181
|
-
body: res
|
|
199
|
+
body: res,
|
|
182
200
|
});
|
|
183
|
-
})
|
|
201
|
+
})
|
|
202
|
+
.on('error', err => {
|
|
184
203
|
reject(err);
|
|
185
204
|
});
|
|
186
205
|
});
|
|
@@ -203,11 +222,11 @@ let StaticController = class StaticController extends BaseApiController_1.BaseAp
|
|
|
203
222
|
// 使用管道将响应流写入文件
|
|
204
223
|
await new Promise((resolve, reject) => {
|
|
205
224
|
body.pipe(fileStream);
|
|
206
|
-
body.on('error',
|
|
225
|
+
body.on('error', err => {
|
|
207
226
|
reject(new Error(`读取响应流失败: ${err.message}`));
|
|
208
227
|
});
|
|
209
228
|
fileStream.on('finish', resolve);
|
|
210
|
-
fileStream.on('error',
|
|
229
|
+
fileStream.on('error', err => {
|
|
211
230
|
reject(new Error(`写入文件失败: ${err.message}`));
|
|
212
231
|
});
|
|
213
232
|
});
|
|
@@ -242,7 +261,7 @@ let StaticController = class StaticController extends BaseApiController_1.BaseAp
|
|
|
242
261
|
'.txt': 'text/plain',
|
|
243
262
|
'.pdf': 'application/pdf',
|
|
244
263
|
'.mp4': 'video/mp4',
|
|
245
|
-
'.ico': 'image/x-icon'
|
|
264
|
+
'.ico': 'image/x-icon',
|
|
246
265
|
};
|
|
247
266
|
return mimeTypes[extname] || 'application/octet-stream';
|
|
248
267
|
}
|
|
@@ -3,7 +3,7 @@ import { Context } from '@midwayjs/koa';
|
|
|
3
3
|
import { CurdMixService } from '../service/curd/CurdMixService';
|
|
4
4
|
import { CommonResult } from '../libs/utils/common-dto';
|
|
5
5
|
export declare class HelpersApi {
|
|
6
|
-
ctx: Context;
|
|
6
|
+
protected ctx: Context;
|
|
7
7
|
private midwayWebRouterService;
|
|
8
8
|
protected curdMixService: CurdMixService;
|
|
9
9
|
getApiEnv(): Promise<{
|
|
@@ -31,13 +31,13 @@ let HomeController = class HomeController extends BaseApiController_1.BaseApiCon
|
|
|
31
31
|
}
|
|
32
32
|
const html_content = workbenchInfo.html_content || '未配置HTML模版';
|
|
33
33
|
const userInfo = this.getUserSessionInfo();
|
|
34
|
-
const fatcmscsrftoken = await crypto_utils_1.privateAES.time_encrypt_utf8_base64(
|
|
34
|
+
const fatcmscsrftoken = await crypto_utils_1.privateAES.time_encrypt_utf8_base64('' + Date.now());
|
|
35
35
|
const utils = (0, render_utils_1.createRenderUtils)({
|
|
36
36
|
ctx: this.ctx,
|
|
37
37
|
userInfo,
|
|
38
38
|
workbenchInfo,
|
|
39
39
|
package_assets: workbenchInfo.package_assets,
|
|
40
|
-
fatcmscsrftoken
|
|
40
|
+
fatcmscsrftoken,
|
|
41
41
|
});
|
|
42
42
|
return this.ctx.renderString(html_content, { workbenchInfo, userInfo, utils }, { viewEngine: 'ejs' });
|
|
43
43
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BaseApiController } from '../base/BaseApiController';
|
|
2
2
|
import { SqlDbType } from '../../libs/crud-pro/models/keys';
|
|
3
|
-
import { CommonResult } from
|
|
3
|
+
import { CommonResult } from '../../libs/utils/common-dto';
|
|
4
4
|
export declare class CrudStandardDesignApi extends BaseApiController {
|
|
5
5
|
private mysql2Config;
|
|
6
6
|
private postgres2Config;
|
|
@@ -26,8 +26,7 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
26
26
|
const postgresList = Object.keys(this.postgres2Config || {});
|
|
27
27
|
const sqlServerList = Object.keys(this.sqlserver2Config || {});
|
|
28
28
|
const toSelectList = (dbCfgNameList, dbType) => {
|
|
29
|
-
return dbCfgNameList.map(
|
|
30
|
-
const dbName = item;
|
|
29
|
+
return dbCfgNameList.map(dbName => {
|
|
31
30
|
const value = (0, DatabaseName_1.toDatabaseNameStr)(dbType, dbName);
|
|
32
31
|
return { value, label: value, dbName, dbType };
|
|
33
32
|
});
|
|
@@ -35,7 +34,10 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
35
34
|
const mysqlObjList = toSelectList(mysqlList, keys_1.SqlDbType.mysql);
|
|
36
35
|
const postgresObjList = toSelectList(postgresList, keys_1.SqlDbType.postgres);
|
|
37
36
|
const sqlserverObjList = toSelectList(sqlServerList, keys_1.SqlDbType.sqlserver);
|
|
38
|
-
const databaseList = [...mysqlObjList, ...postgresObjList, ...sqlserverObjList]
|
|
37
|
+
const databaseList = [...mysqlObjList, ...postgresObjList, ...sqlserverObjList].filter((obj) => {
|
|
38
|
+
const value = '' + obj.value;
|
|
39
|
+
return !value.endsWith('_fatcms_inner_demo_config');
|
|
40
|
+
});
|
|
39
41
|
return {
|
|
40
42
|
success: true,
|
|
41
43
|
data: databaseList,
|
|
@@ -53,7 +55,7 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
53
55
|
const res = await this.curdMixService.executeSQL({
|
|
54
56
|
executeSql: 'SHOW TABLES',
|
|
55
57
|
sqlDatabase: dbName,
|
|
56
|
-
|
|
58
|
+
sqlDbType: keys_1.SqlDbType.mysql,
|
|
57
59
|
crudType: keys_1.KeyOfCrudTypes.SYS_QUERY,
|
|
58
60
|
});
|
|
59
61
|
const arr = JSON.parse(JSON.stringify(res));
|
|
@@ -65,7 +67,7 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
65
67
|
label: tableName,
|
|
66
68
|
dbName,
|
|
67
69
|
dbType,
|
|
68
|
-
tableName
|
|
70
|
+
tableName,
|
|
69
71
|
};
|
|
70
72
|
});
|
|
71
73
|
return common_dto_1.CommonResult.successRes(tableNames);
|
|
@@ -82,13 +84,13 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
82
84
|
const tableDescribe = await this.curdMixService.executeSQL({
|
|
83
85
|
executeSql: 'describe ' + tableName,
|
|
84
86
|
sqlDatabase: dbName,
|
|
85
|
-
|
|
87
|
+
sqlDbType: keys_1.SqlDbType.mysql,
|
|
86
88
|
crudType: keys_1.KeyOfCrudTypes.SYS_QUERY,
|
|
87
89
|
});
|
|
88
90
|
const tableCreate = await this.curdMixService.executeSQL({
|
|
89
91
|
executeSql: 'show create table ' + tableName,
|
|
90
92
|
sqlDatabase: dbName,
|
|
91
|
-
|
|
93
|
+
sqlDbType: keys_1.SqlDbType.mysql,
|
|
92
94
|
crudType: keys_1.KeyOfCrudTypes.SYS_QUERY,
|
|
93
95
|
});
|
|
94
96
|
const tableCreateStr = tableCreate[0]['Create Table'];
|
|
@@ -131,17 +133,14 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
131
133
|
async getTableListOfSqlserver(dbName) {
|
|
132
134
|
const dbConfig = this.sqlserver2Config[dbName];
|
|
133
135
|
if (!dbConfig) {
|
|
134
|
-
throw new exceptions_1.CommonException(
|
|
136
|
+
throw new exceptions_1.CommonException('DB_NOT_FOUND', '数据库配置没有找到:' + dbName);
|
|
135
137
|
}
|
|
136
138
|
const dbType = keys_1.SqlDbType.sqlserver;
|
|
137
|
-
const sql =
|
|
138
|
-
"SELECT name as tablename \n" +
|
|
139
|
-
"FROM sys.tables" +
|
|
140
|
-
"";
|
|
139
|
+
const sql = 'SELECT name as tablename FROM sys.tables';
|
|
141
140
|
const arr = await this.curdMixService.executeSQL({
|
|
142
141
|
executeSql: sql,
|
|
143
142
|
sqlDatabase: dbName,
|
|
144
|
-
|
|
143
|
+
sqlDbType: dbType,
|
|
145
144
|
crudType: keys_1.KeyOfCrudTypes.SYS_QUERY,
|
|
146
145
|
executeSqlArgs: [],
|
|
147
146
|
});
|
|
@@ -150,8 +149,9 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
150
149
|
return {
|
|
151
150
|
value: tableName,
|
|
152
151
|
label: tableName,
|
|
153
|
-
dbName,
|
|
154
|
-
|
|
152
|
+
dbName,
|
|
153
|
+
dbType,
|
|
154
|
+
tableName,
|
|
155
155
|
};
|
|
156
156
|
});
|
|
157
157
|
return common_dto_1.CommonResult.successRes(tableNames);
|
|
@@ -159,70 +159,73 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
159
159
|
async getTableListOfPostgreSQL(dbName) {
|
|
160
160
|
const dbConfig = this.postgres2Config[dbName];
|
|
161
161
|
if (!dbConfig) {
|
|
162
|
-
throw new exceptions_1.CommonException(
|
|
162
|
+
throw new exceptions_1.CommonException('DB_NOT_FOUND', '数据库配置没有找到:' + dbName);
|
|
163
163
|
}
|
|
164
|
-
const schemaname = "public";
|
|
165
|
-
const sql = "" +
|
|
166
|
-
"SELECT tablename\n" +
|
|
167
|
-
"FROM pg_tables\n" +
|
|
168
|
-
`WHERE schemaname = '${schemaname}' \n` +
|
|
169
|
-
"ORDER BY tablename;";
|
|
170
164
|
const dbType = keys_1.SqlDbType.postgres;
|
|
171
|
-
const
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
165
|
+
const schemaname = 'public';
|
|
166
|
+
const tableListSql = '' + 'SELECT tablename\n' + 'FROM pg_tables\n' + `WHERE schemaname = '${schemaname}' \n` + 'ORDER BY tablename;';
|
|
167
|
+
const viewListSql = '' + 'SELECT viewname as tablename\n' + 'FROM pg_views\n' + `WHERE schemaname = '${schemaname}' \n` + 'ORDER BY viewname;';
|
|
168
|
+
const toSelectOptions = async (executeSql, tableType) => {
|
|
169
|
+
const arr = await this.curdMixService.executeSQL({
|
|
170
|
+
executeSql: executeSql,
|
|
171
|
+
sqlDatabase: dbName,
|
|
172
|
+
sqlDbType: dbType,
|
|
173
|
+
crudType: keys_1.KeyOfCrudTypes.SYS_QUERY,
|
|
174
|
+
executeSqlArgs: [],
|
|
175
|
+
});
|
|
176
|
+
return arr.map(v => {
|
|
177
|
+
const tableName = v.tablename;
|
|
178
|
+
return {
|
|
179
|
+
value: tableName,
|
|
180
|
+
label: tableName,
|
|
181
|
+
dbName,
|
|
182
|
+
dbType,
|
|
183
|
+
tableName,
|
|
184
|
+
tableType,
|
|
185
|
+
};
|
|
186
|
+
});
|
|
187
|
+
};
|
|
188
|
+
const tableNames = await toSelectOptions(tableListSql, 'table');
|
|
189
|
+
const viewNames = await toSelectOptions(viewListSql, 'view');
|
|
190
|
+
const tableNameMerge = [...tableNames, ...viewNames];
|
|
191
|
+
return common_dto_1.CommonResult.successRes(tableNameMerge);
|
|
188
192
|
}
|
|
189
193
|
async getTableFieldsOfSqlServer(dbName, tableName) {
|
|
190
194
|
const dbConfig = this.sqlserver2Config[dbName];
|
|
191
195
|
if (!dbConfig) {
|
|
192
|
-
throw new exceptions_1.CommonException(
|
|
196
|
+
throw new exceptions_1.CommonException('DB_NOT_FOUND', '数据库配置没有找到:' + dbName);
|
|
193
197
|
}
|
|
194
|
-
const columnArraySql =
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
"WHERE\n" +
|
|
198
|
+
const columnArraySql = '' +
|
|
199
|
+
'SELECT\n' +
|
|
200
|
+
' c.name AS column_name,\n' +
|
|
201
|
+
' t.name AS data_type,\n' +
|
|
202
|
+
' c.max_length AS max_length,\n' +
|
|
203
|
+
' c.precision,\n' +
|
|
204
|
+
' c.scale,\n' +
|
|
205
|
+
' c.is_nullable,\n' +
|
|
206
|
+
' c.is_identity,\n' +
|
|
207
|
+
' dc.definition AS column_default, \n' +
|
|
208
|
+
' ep.value AS column_description \n' +
|
|
209
|
+
'FROM\n' +
|
|
210
|
+
' sys.columns c\n' +
|
|
211
|
+
' JOIN\n' +
|
|
212
|
+
' sys.types t ON c.user_type_id = t.user_type_id\n' +
|
|
213
|
+
' LEFT JOIN\n' +
|
|
214
|
+
' sys.default_constraints dc\n' +
|
|
215
|
+
' ON c.default_object_id = dc.object_id \n' +
|
|
216
|
+
' LEFT JOIN\n' +
|
|
217
|
+
' sys.extended_properties ep\n' +
|
|
218
|
+
' ON c.object_id = ep.major_id\n' +
|
|
219
|
+
' AND c.column_id = ep.minor_id\n' +
|
|
220
|
+
'WHERE\n' +
|
|
218
221
|
` c.object_id = OBJECT_ID('${tableName}') \n` +
|
|
219
|
-
|
|
220
|
-
|
|
222
|
+
' ORDER BY\n' +
|
|
223
|
+
' c.column_id;';
|
|
221
224
|
const dbType = keys_1.SqlDbType.sqlserver;
|
|
222
225
|
const columnArray = await this.curdMixService.executeSQL({
|
|
223
226
|
executeSql: columnArraySql,
|
|
224
227
|
sqlDatabase: dbName,
|
|
225
|
-
|
|
228
|
+
sqlDbType: dbType,
|
|
226
229
|
crudType: keys_1.KeyOfCrudTypes.SYS_QUERY,
|
|
227
230
|
executeSqlArgs: [],
|
|
228
231
|
});
|
|
@@ -232,11 +235,11 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
232
235
|
fieldIndex: column_name || '',
|
|
233
236
|
fieldTitle: column_description || column_name || '',
|
|
234
237
|
isNullable: is_nullable,
|
|
235
|
-
defaultValue: column_default ||
|
|
238
|
+
defaultValue: column_default || '',
|
|
236
239
|
extra: others,
|
|
237
240
|
// key: column_name, // 索引
|
|
238
241
|
type: data_type,
|
|
239
|
-
is_identity: is_identity
|
|
242
|
+
is_identity: is_identity,
|
|
240
243
|
};
|
|
241
244
|
});
|
|
242
245
|
return common_dto_1.CommonResult.successRes({
|
|
@@ -248,9 +251,9 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
248
251
|
async getTableFieldsOfPostgreSQL(dbName, tableName) {
|
|
249
252
|
const dbConfig = this.postgres2Config[dbName];
|
|
250
253
|
if (!dbConfig) {
|
|
251
|
-
throw new exceptions_1.CommonException(
|
|
254
|
+
throw new exceptions_1.CommonException('DB_NOT_FOUND', '数据库配置没有找到:' + dbName);
|
|
252
255
|
}
|
|
253
|
-
const schemaname =
|
|
256
|
+
const schemaname = 'public';
|
|
254
257
|
const columnArraySql = `
|
|
255
258
|
|
|
256
259
|
SELECT
|
|
@@ -259,12 +262,12 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
259
262
|
WHERE table_schema = $1 and table_name = $2
|
|
260
263
|
ORDER BY ordinal_position;
|
|
261
264
|
|
|
262
|
-
`.trim();
|
|
265
|
+
`.trim();
|
|
263
266
|
const dbType = keys_1.SqlDbType.postgres;
|
|
264
267
|
const columnArray = await this.curdMixService.executeSQL({
|
|
265
268
|
executeSql: columnArraySql,
|
|
266
269
|
sqlDatabase: dbName,
|
|
267
|
-
|
|
270
|
+
sqlDbType: dbType,
|
|
268
271
|
crudType: keys_1.KeyOfCrudTypes.SYS_QUERY,
|
|
269
272
|
executeSqlArgs: [schemaname, tableName],
|
|
270
273
|
});
|
|
@@ -274,11 +277,11 @@ let CrudStandardDesignApi = class CrudStandardDesignApi extends BaseApiControlle
|
|
|
274
277
|
fieldIndex: column_name || '',
|
|
275
278
|
fieldTitle: column_name || '',
|
|
276
279
|
isNullable: is_nullable,
|
|
277
|
-
defaultValue: column_default ||
|
|
280
|
+
defaultValue: column_default || '',
|
|
278
281
|
extra: others,
|
|
279
282
|
// key: column_name, // 索引
|
|
280
283
|
type: data_type,
|
|
281
|
-
is_identity: is_identity
|
|
284
|
+
is_identity: is_identity,
|
|
282
285
|
};
|
|
283
286
|
});
|
|
284
287
|
return {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Context } from '@midwayjs/koa';
|
|
2
2
|
import { BaseApiController } from '../base/BaseApiController';
|
|
3
3
|
export declare class DataDictManageApi extends BaseApiController {
|
|
4
|
-
ctx: Context;
|
|
4
|
+
protected ctx: Context;
|
|
5
5
|
getDataDictList(): Promise<import("../../libs/crud-pro/models/ExecuteContext").ExecuteContext>;
|
|
6
6
|
getDataDictOne(): Promise<import("../../libs/crud-pro/models/ExecuteContext").ExecuteContext>;
|
|
7
7
|
createDataDict(): Promise<import("../../libs/crud-pro/models/ExecuteContext").ExecuteContext>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Context } from '@midwayjs/koa';
|
|
2
2
|
import { BaseApiController } from '../base/BaseApiController';
|
|
3
|
-
import { CommonResult } from
|
|
3
|
+
import { CommonResult } from '../../libs/utils/common-dto';
|
|
4
4
|
export declare class DeployManageApi extends BaseApiController {
|
|
5
5
|
protected ctx: Context;
|
|
6
6
|
private fileCenterService;
|
|
@@ -24,47 +24,50 @@ const FileCenterService_1 = require("../../service/FileCenterService");
|
|
|
24
24
|
const SystemTables_1 = require("../../models/SystemTables");
|
|
25
25
|
const keys_1 = require("../../libs/crud-pro/models/keys");
|
|
26
26
|
const WorkbenchService_1 = require("../../service/WorkbenchService");
|
|
27
|
+
const global_config_1 = require("../../libs/global-config/global-config");
|
|
27
28
|
function toAssetsSchema(fileList) {
|
|
28
29
|
for (let i = 0; i < fileList.length; i++) {
|
|
29
30
|
const fileListElement = fileList[i];
|
|
30
|
-
fileListElement.settingKey =
|
|
31
|
+
fileListElement.settingKey = 'assets' + i;
|
|
31
32
|
}
|
|
32
33
|
return {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
34
|
+
schema: [
|
|
35
|
+
{
|
|
36
|
+
title: '资源配置',
|
|
37
|
+
name: 'fileList',
|
|
38
|
+
type: 'array',
|
|
39
|
+
properties: {
|
|
40
|
+
fileUrl: { label: '文件URL', component: 'Input', xProps: { hasClear: true }, width: 500 },
|
|
41
|
+
fileType: {
|
|
42
|
+
label: '文件类型',
|
|
43
|
+
component: 'Select',
|
|
42
44
|
enums: [
|
|
43
45
|
{ label: 'js', value: 'js' },
|
|
44
46
|
{ label: 'css', value: 'css' },
|
|
45
47
|
],
|
|
46
|
-
|
|
47
|
-
|
|
48
|
+
xProps: {
|
|
49
|
+
hasClear: true,
|
|
48
50
|
},
|
|
49
|
-
width: 500
|
|
51
|
+
width: 500,
|
|
50
52
|
},
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
53
|
+
isModule: {
|
|
54
|
+
label: 'isModule',
|
|
55
|
+
component: 'Select',
|
|
54
56
|
enums: [
|
|
55
57
|
{ label: 'true', value: true },
|
|
56
58
|
{ label: 'false', value: false },
|
|
57
59
|
],
|
|
58
|
-
|
|
59
|
-
|
|
60
|
+
xProps: {
|
|
61
|
+
hasClear: true,
|
|
60
62
|
},
|
|
61
|
-
width: 500
|
|
63
|
+
width: 500,
|
|
62
64
|
},
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
data: {
|
|
69
|
+
fileList: fileList,
|
|
70
|
+
},
|
|
68
71
|
};
|
|
69
72
|
}
|
|
70
73
|
let DeployManageApi = class DeployManageApi extends BaseApiController_1.BaseApiController {
|
|
@@ -109,31 +112,32 @@ let DeployManageApi = class DeployManageApi extends BaseApiController_1.BaseApiC
|
|
|
109
112
|
if (!Array.isArray(cdnResources) || cdnResources.length === 0) {
|
|
110
113
|
throw new devops_1.BizException('cdnResources参数不存在');
|
|
111
114
|
}
|
|
115
|
+
const { SystemDbName, SystemDbType } = global_config_1.GLOBAL_STATIC_CONFIG.getConfig();
|
|
112
116
|
const workbench = await this.curdMixService.executeCrudByCfg({
|
|
113
117
|
data: {
|
|
114
118
|
package_assets: JSON.stringify(toAssetsSchema(cdnResources)),
|
|
115
119
|
},
|
|
116
120
|
condition: {
|
|
117
|
-
package_name: params.packageName
|
|
118
|
-
}
|
|
121
|
+
package_name: params.packageName,
|
|
122
|
+
},
|
|
119
123
|
}, {
|
|
120
124
|
sqlTable: SystemTables_1.SystemTables.sys_workbench,
|
|
121
|
-
sqlDatabase:
|
|
122
|
-
|
|
123
|
-
sqlSimpleName: keys_1.KeysOfSimpleSQL.SIMPLE_UPDATE
|
|
125
|
+
sqlDatabase: SystemDbName,
|
|
126
|
+
sqlDbType: SystemDbType,
|
|
127
|
+
sqlSimpleName: keys_1.KeysOfSimpleSQL.SIMPLE_UPDATE,
|
|
124
128
|
});
|
|
125
129
|
const app = await this.curdMixService.executeCrudByCfg({
|
|
126
130
|
data: {
|
|
127
131
|
package_assets: JSON.stringify(toAssetsSchema(cdnResources)),
|
|
128
132
|
},
|
|
129
133
|
condition: {
|
|
130
|
-
package_name: params.packageName
|
|
131
|
-
}
|
|
134
|
+
package_name: params.packageName,
|
|
135
|
+
},
|
|
132
136
|
}, {
|
|
133
137
|
sqlTable: SystemTables_1.SystemTables.sys_app,
|
|
134
|
-
sqlDatabase:
|
|
135
|
-
|
|
136
|
-
sqlSimpleName: keys_1.KeysOfSimpleSQL.SIMPLE_UPDATE
|
|
138
|
+
sqlDatabase: SystemDbName,
|
|
139
|
+
sqlDbType: SystemDbType,
|
|
140
|
+
sqlSimpleName: keys_1.KeysOfSimpleSQL.SIMPLE_UPDATE,
|
|
137
141
|
});
|
|
138
142
|
this.workbenchService.clearCache();
|
|
139
143
|
const workbenchAffected = workbench.getResModelItem('affected') || {};
|
|
@@ -39,7 +39,7 @@ let MenuManageApi = class MenuManageApi extends BaseApiController_1.BaseApiContr
|
|
|
39
39
|
async updateMenu() {
|
|
40
40
|
return this.executeSysSimpleSQL(SystemTables_1.SystemTables.sys_menus, keys_1.KeysOfSimpleSQL.SIMPLE_UPDATE, {
|
|
41
41
|
validateCfg: {
|
|
42
|
-
'condition.id': [keys_1.KeysOfValidators.REQUIRED, keys_1.KeysOfValidators.INTEGER]
|
|
42
|
+
'condition.id': [keys_1.KeysOfValidators.REQUIRED, keys_1.KeysOfValidators.INTEGER],
|
|
43
43
|
},
|
|
44
44
|
updateCfg: {},
|
|
45
45
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Context } from '@midwayjs/koa';
|
|
2
|
-
import { VisitStatService } from
|
|
2
|
+
import { VisitStatService } from '../../service/VisitStatService';
|
|
3
3
|
import { BaseApiController } from '../base/BaseApiController';
|
|
4
|
-
import { CommonResult } from
|
|
4
|
+
import { CommonResult } from '../../libs/utils/common-dto';
|
|
5
5
|
export declare class SuperAdminManageApi extends BaseApiController {
|
|
6
6
|
protected ctx: Context;
|
|
7
7
|
protected visitStatService: VisitStatService;
|