midway-fatcms 0.0.3 → 0.0.4
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 +14 -14
- package/.prettierrc.js +4 -4
- package/README.md +406 -406
- package/dist/config/config.default.d.ts +3 -3
- package/dist/config/config.default.js +177 -177
- package/dist/config/utils.d.ts +1 -1
- package/dist/config/utils.js +23 -23
- package/dist/configuration.d.ts +7 -7
- package/dist/configuration.js +113 -113
- package/dist/controller/base/BaseApiController.d.ts +49 -49
- package/dist/controller/base/BaseApiController.js +198 -198
- package/dist/controller/gateway/AnyApiGatewayController.d.ts +13 -13
- package/dist/controller/gateway/AnyApiGatewayController.js +55 -55
- package/dist/controller/gateway/AsyncTaskController.d.ts +20 -20
- package/dist/controller/gateway/AsyncTaskController.js +181 -181
- package/dist/controller/gateway/CrudMtdGatewayController.d.ts +21 -21
- package/dist/controller/gateway/CrudMtdGatewayController.js +122 -122
- package/dist/controller/gateway/CrudStdGatewayController.d.ts +39 -39
- package/dist/controller/gateway/CrudStdGatewayController.js +149 -149
- package/dist/controller/gateway/DocGatewayController.d.ts +27 -27
- package/dist/controller/gateway/DocGatewayController.js +181 -181
- package/dist/controller/gateway/FileController.d.ts +32 -32
- package/dist/controller/gateway/FileController.js +160 -160
- package/dist/controller/gateway/FlowInstanceController.d.ts +16 -16
- package/dist/controller/gateway/FlowInstanceController.js +48 -48
- package/dist/controller/gateway/ProxyApiGatewayController.d.ts +18 -18
- package/dist/controller/gateway/ProxyApiGatewayController.js +78 -78
- package/dist/controller/gateway/PublicApiController.d.ts +33 -33
- package/dist/controller/gateway/PublicApiController.js +194 -194
- package/dist/controller/gateway/StaticController.d.ts +23 -23
- package/dist/controller/gateway/StaticController.js +280 -280
- package/dist/controller/helpers.controller.d.ts +36 -36
- package/dist/controller/helpers.controller.js +187 -187
- package/dist/controller/home.controller.d.ts +9 -9
- package/dist/controller/home.controller.js +78 -78
- package/dist/controller/manage/AnyApiMangeApi.d.ts +10 -10
- package/dist/controller/manage/AnyApiMangeApi.js +98 -98
- package/dist/controller/manage/AppLogMangeApi.d.ts +10 -10
- package/dist/controller/manage/AppLogMangeApi.js +88 -88
- package/dist/controller/manage/AppMangeApi.d.ts +12 -12
- package/dist/controller/manage/AppMangeApi.js +101 -101
- package/dist/controller/manage/AppPageMangeApi.d.ts +10 -10
- package/dist/controller/manage/AppPageMangeApi.js +87 -87
- package/dist/controller/manage/AppSchemaHistoryApi.d.ts +10 -10
- package/dist/controller/manage/AppSchemaHistoryApi.js +83 -83
- package/dist/controller/manage/CrudMethodsMangeApi.d.ts +10 -10
- package/dist/controller/manage/CrudMethodsMangeApi.js +84 -84
- package/dist/controller/manage/CrudStandardDesignApi.d.ts +46 -46
- package/dist/controller/manage/CrudStandardDesignApi.js +367 -367
- package/dist/controller/manage/DataDictManageApi.d.ts +17 -17
- package/dist/controller/manage/DataDictManageApi.js +165 -165
- package/dist/controller/manage/DeployManageApi.d.ts +21 -21
- package/dist/controller/manage/DeployManageApi.js +203 -203
- package/dist/controller/manage/DocLibManageApi.d.ts +10 -10
- package/dist/controller/manage/DocLibManageApi.js +104 -104
- package/dist/controller/manage/DocManageApi.d.ts +11 -11
- package/dist/controller/manage/DocManageApi.js +130 -130
- package/dist/controller/manage/FileManageApi.d.ts +13 -13
- package/dist/controller/manage/FileManageApi.js +77 -77
- package/dist/controller/manage/FlowConfigManageApi.d.ts +12 -12
- package/dist/controller/manage/FlowConfigManageApi.js +109 -109
- package/dist/controller/manage/LowCodeTplManageApi.d.ts +13 -13
- package/dist/controller/manage/LowCodeTplManageApi.js +86 -86
- package/dist/controller/manage/MenuManageApi.d.ts +11 -11
- package/dist/controller/manage/MenuManageApi.js +104 -104
- package/dist/controller/manage/ProxyApiMangeApi.d.ts +10 -10
- package/dist/controller/manage/ProxyApiMangeApi.js +87 -87
- package/dist/controller/manage/SuperAdminManageApi.d.ts +24 -24
- package/dist/controller/manage/SuperAdminManageApi.js +153 -153
- package/dist/controller/manage/SysConfigMangeApi.d.ts +12 -12
- package/dist/controller/manage/SysConfigMangeApi.js +133 -133
- package/dist/controller/manage/SystemInfoManageApi.d.ts +12 -12
- package/dist/controller/manage/SystemInfoManageApi.js +82 -82
- package/dist/controller/manage/UserAccountManageApi.d.ts +16 -16
- package/dist/controller/manage/UserAccountManageApi.js +153 -153
- package/dist/controller/manage/WorkbenchMangeApi.d.ts +11 -11
- package/dist/controller/manage/WorkbenchMangeApi.js +106 -106
- package/dist/controller/myinfo/AuthController.d.ts +37 -37
- package/dist/controller/myinfo/AuthController.js +157 -157
- package/dist/controller/myinfo/MyInfoController.d.ts +13 -13
- package/dist/controller/myinfo/MyInfoController.js +51 -51
- package/dist/controller/render/AppRenderController.d.ts +12 -12
- package/dist/controller/render/AppRenderController.js +93 -93
- package/dist/controller/test.controller.d.ts +8 -8
- package/dist/controller/test.controller.js +51 -51
- package/dist/filter/default.filter.d.ts +7 -7
- package/dist/filter/default.filter.js +23 -23
- package/dist/filter/notfound.filter.d.ts +5 -5
- package/dist/filter/notfound.filter.js +20 -20
- package/dist/index.d.ts +111 -111
- package/dist/index.js +129 -129
- package/dist/interface.d.ts +30 -30
- package/dist/interface.js +3 -3
- package/dist/libs/crud-pro/CrudPro.d.ts +51 -37
- package/dist/libs/crud-pro/CrudPro.js +207 -146
- package/dist/libs/crud-pro/defaultConfigs.d.ts +4 -4
- package/dist/libs/crud-pro/defaultConfigs.js +15 -15
- package/dist/libs/crud-pro/exceptions.d.ts +106 -106
- package/dist/libs/crud-pro/exceptions.js +119 -119
- package/dist/libs/crud-pro/interfaces.d.ts +195 -175
- package/dist/libs/crud-pro/interfaces.js +12 -12
- package/dist/libs/crud-pro/models/ExecuteContext.d.ts +50 -50
- package/dist/libs/crud-pro/models/ExecuteContext.js +87 -87
- package/dist/libs/crud-pro/models/ExecuteContextFunc.d.ts +38 -38
- package/dist/libs/crud-pro/models/ExecuteContextFunc.js +72 -72
- package/dist/libs/crud-pro/models/FuncContext.d.ts +18 -18
- package/dist/libs/crud-pro/models/FuncContext.js +6 -6
- package/dist/libs/crud-pro/models/RequestCfgModel.d.ts +65 -65
- package/dist/libs/crud-pro/models/RequestCfgModel.js +81 -81
- package/dist/libs/crud-pro/models/RequestModel.d.ts +25 -25
- package/dist/libs/crud-pro/models/RequestModel.js +113 -113
- package/dist/libs/crud-pro/models/ResModel.d.ts +20 -20
- package/dist/libs/crud-pro/models/ResModel.js +2 -2
- package/dist/libs/crud-pro/models/ServiceHub.d.ts +20 -20
- package/dist/libs/crud-pro/models/ServiceHub.js +2 -2
- package/dist/libs/crud-pro/models/SqlCfgModel.d.ts +23 -23
- package/dist/libs/crud-pro/models/SqlCfgModel.js +40 -40
- package/dist/libs/crud-pro/models/SqlSegArg.d.ts +6 -6
- package/dist/libs/crud-pro/models/SqlSegArg.js +12 -12
- package/dist/libs/crud-pro/models/Transaction.d.ts +50 -50
- package/dist/libs/crud-pro/models/Transaction.js +184 -184
- package/dist/libs/crud-pro/models/TransactionMySQL.d.ts +19 -19
- package/dist/libs/crud-pro/models/TransactionMySQL.js +48 -48
- package/dist/libs/crud-pro/models/TransactionPostgres.d.ts +19 -19
- package/dist/libs/crud-pro/models/TransactionPostgres.js +64 -64
- package/dist/libs/crud-pro/models/TransactionSqlServer.d.ts +9 -9
- package/dist/libs/crud-pro/models/TransactionSqlServer.js +61 -61
- package/dist/libs/crud-pro/models/keys.d.ts +111 -111
- package/dist/libs/crud-pro/models/keys.js +156 -156
- package/dist/libs/crud-pro/services/CrudProCachedCfgService.d.ts +11 -11
- package/dist/libs/crud-pro/services/CrudProCachedCfgService.js +73 -73
- package/dist/libs/crud-pro/services/CrudProDataFilterService.d.ts +17 -0
- package/dist/libs/crud-pro/services/CrudProDataFilterService.js +53 -0
- package/dist/libs/crud-pro/services/CrudProExecuteFuncService.d.ts +9 -9
- package/dist/libs/crud-pro/services/CrudProExecuteFuncService.js +125 -125
- package/dist/libs/crud-pro/services/CrudProExecuteSqlService.d.ts +17 -17
- package/dist/libs/crud-pro/services/CrudProExecuteSqlService.js +224 -224
- package/dist/libs/crud-pro/services/CrudProFieldUpdateService.d.ts +9 -9
- package/dist/libs/crud-pro/services/CrudProFieldUpdateService.js +51 -51
- package/dist/libs/crud-pro/services/CrudProFieldValidateService.d.ts +13 -13
- package/dist/libs/crud-pro/services/CrudProFieldValidateService.js +148 -148
- package/dist/libs/crud-pro/services/CrudProGenSqlCondition.d.ts +25 -25
- package/dist/libs/crud-pro/services/CrudProGenSqlCondition.js +385 -385
- package/dist/libs/crud-pro/services/CrudProGenSqlService.d.ts +25 -25
- package/dist/libs/crud-pro/services/CrudProGenSqlService.js +165 -165
- package/dist/libs/crud-pro/services/CrudProOriginToExecuteSql.d.ts +32 -32
- package/dist/libs/crud-pro/services/CrudProOriginToExecuteSql.js +345 -339
- package/dist/libs/crud-pro/services/CrudProServiceBase.d.ts +24 -24
- package/dist/libs/crud-pro/services/CrudProServiceBase.js +88 -88
- package/dist/libs/crud-pro/services/CrudProTableMetaService.d.ts +12 -9
- package/dist/libs/crud-pro/services/CrudProTableMetaService.js +167 -77
- package/dist/libs/crud-pro/services/CurdProServiceHub.d.ts +34 -32
- package/dist/libs/crud-pro/services/CurdProServiceHub.js +69 -64
- package/dist/libs/crud-pro/utils/CompareUtils.d.ts +9 -9
- package/dist/libs/crud-pro/utils/CompareUtils.js +25 -25
- package/dist/libs/crud-pro/utils/CrudMonitor.d.ts +9 -9
- package/dist/libs/crud-pro/utils/CrudMonitor.js +12 -12
- package/dist/libs/crud-pro/utils/DatabaseName.d.ts +9 -9
- package/dist/libs/crud-pro/utils/DatabaseName.js +50 -50
- package/dist/libs/crud-pro/utils/DateTimeUtils.d.ts +7 -7
- package/dist/libs/crud-pro/utils/DateTimeUtils.js +21 -21
- package/dist/libs/crud-pro/utils/MemoryRefreshCache.d.ts +19 -19
- package/dist/libs/crud-pro/utils/MemoryRefreshCache.js +47 -47
- package/dist/libs/crud-pro/utils/MessageParseUtils.d.ts +5 -5
- package/dist/libs/crud-pro/utils/MessageParseUtils.js +33 -33
- package/dist/libs/crud-pro/utils/MixinUtils.d.ts +40 -40
- package/dist/libs/crud-pro/utils/MixinUtils.js +259 -259
- package/dist/libs/crud-pro/utils/ModelUtils.d.ts +11 -11
- package/dist/libs/crud-pro/utils/ModelUtils.js +54 -54
- package/dist/libs/crud-pro/utils/MultiKeyMap.d.ts +11 -11
- package/dist/libs/crud-pro/utils/MultiKeyMap.js +63 -63
- package/dist/libs/crud-pro/utils/SqlFuncUtils.d.ts +5 -5
- package/dist/libs/crud-pro/utils/SqlFuncUtils.js +29 -29
- package/dist/libs/crud-pro/utils/TypeUtils.d.ts +40 -40
- package/dist/libs/crud-pro/utils/TypeUtils.js +166 -166
- package/dist/libs/crud-pro/utils/ValidateUtils.d.ts +3 -3
- package/dist/libs/crud-pro/utils/ValidateUtils.js +165 -165
- package/dist/libs/crud-pro/utils/pool/MySQLUtils.d.ts +3 -3
- package/dist/libs/crud-pro/utils/pool/MySQLUtils.js +19 -19
- package/dist/libs/crud-pro/utils/pool/PostgresUtils.d.ts +3 -3
- package/dist/libs/crud-pro/utils/pool/PostgresUtils.js +20 -20
- package/dist/libs/crud-pro/utils/pool/SqlServerUtils.d.ts +3 -3
- package/dist/libs/crud-pro/utils/pool/SqlServerUtils.js +20 -20
- package/dist/libs/crud-pro/utils/sqlConvert/convertColumnName.d.ts +4 -4
- package/dist/libs/crud-pro/utils/sqlConvert/convertColumnName.js +35 -35
- package/dist/libs/crud-pro/utils/sqlConvert/convertMix.js +24 -24
- package/dist/libs/crud-pro/utils/sqlConvert/convertMsSql.d.ts +2 -2
- package/dist/libs/crud-pro/utils/sqlConvert/convertMsSql.js +14 -14
- package/dist/libs/crud-pro/utils/sqlConvert/convertPgSql.d.ts +2 -2
- package/dist/libs/crud-pro/utils/sqlConvert/convertPgSql.js +14 -14
- package/dist/libs/global-config/global-config.d.ts +71 -71
- package/dist/libs/global-config/global-config.js +38 -38
- package/dist/libs/utils/AsymmetricCrypto.d.ts +76 -76
- package/dist/libs/utils/AsymmetricCrypto.js +261 -261
- package/dist/libs/utils/base64.d.ts +9 -9
- package/dist/libs/utils/base64.js +42 -42
- package/dist/libs/utils/common-dto.d.ts +18 -18
- package/dist/libs/utils/common-dto.js +40 -40
- package/dist/libs/utils/crypto-utils.d.ts +3 -3
- package/dist/libs/utils/crypto-utils.js +55 -55
- package/dist/libs/utils/errorToString.d.ts +20 -20
- package/dist/libs/utils/errorToString.js +79 -79
- package/dist/libs/utils/fatcms-request.d.ts +45 -45
- package/dist/libs/utils/fatcms-request.js +161 -161
- package/dist/libs/utils/format-url.d.ts +17 -17
- package/dist/libs/utils/format-url.js +30 -30
- package/dist/libs/utils/functions.d.ts +11 -11
- package/dist/libs/utils/functions.js +99 -99
- package/dist/libs/utils/ordernum-utils.d.ts +22 -22
- package/dist/libs/utils/ordernum-utils.js +35 -35
- package/dist/libs/utils/parseConfig.d.ts +8 -8
- package/dist/libs/utils/parseConfig.js +47 -47
- package/dist/libs/utils/parseCreateSql.d.ts +10 -10
- package/dist/libs/utils/parseCreateSql.js +87 -87
- package/dist/libs/utils/render-utils.d.ts +40 -40
- package/dist/libs/utils/render-utils.js +158 -158
- package/dist/middleware/forbidden.middleware.d.ts +74 -74
- package/dist/middleware/forbidden.middleware.js +318 -318
- package/dist/middleware/global.middleware.d.ts +40 -40
- package/dist/middleware/global.middleware.js +310 -310
- package/dist/middleware/permission.middleware.d.ts +88 -88
- package/dist/middleware/permission.middleware.js +145 -145
- package/dist/middleware/rediscache.middleware.d.ts +28 -28
- package/dist/middleware/rediscache.middleware.js +114 -114
- package/dist/middleware/redislock.middleware.d.ts +29 -29
- package/dist/middleware/redislock.middleware.js +106 -106
- package/dist/middleware/tx.middleware.d.ts +55 -55
- package/dist/middleware/tx.middleware.js +83 -83
- package/dist/models/AsyncTaskModel.d.ts +74 -74
- package/dist/models/AsyncTaskModel.js +31 -31
- package/dist/models/FlowModel.d.ts +227 -227
- package/dist/models/FlowModel.js +53 -53
- package/dist/models/RedisKeys.d.ts +15 -15
- package/dist/models/RedisKeys.js +18 -18
- package/dist/models/SystemEntities.d.ts +118 -118
- package/dist/models/SystemEntities.js +18 -18
- package/dist/models/SystemPerm.d.ts +96 -96
- package/dist/models/SystemPerm.js +101 -101
- package/dist/models/SystemTables.d.ts +25 -25
- package/dist/models/SystemTables.js +28 -28
- package/dist/models/WorkbenchInfoTools.d.ts +7 -7
- package/dist/models/WorkbenchInfoTools.js +20 -20
- package/dist/models/bizmodels.d.ts +150 -150
- package/dist/models/bizmodels.js +62 -62
- package/dist/models/contextLogger.d.ts +27 -27
- package/dist/models/contextLogger.js +119 -119
- package/dist/models/devops.d.ts +12 -12
- package/dist/models/devops.js +19 -19
- package/dist/models/userSession.d.ts +67 -67
- package/dist/models/userSession.js +179 -179
- package/dist/schedule/anonymousContext.d.ts +15 -15
- package/dist/schedule/anonymousContext.js +74 -74
- package/dist/schedule/index.d.ts +4 -4
- package/dist/schedule/index.js +10 -10
- package/dist/schedule/runSchedule.d.ts +12 -12
- package/dist/schedule/runSchedule.js +68 -68
- package/dist/schedule/scheduleNames.d.ts +15 -15
- package/dist/schedule/scheduleNames.js +19 -19
- package/dist/service/AuthService.d.ts +56 -56
- package/dist/service/AuthService.js +251 -251
- package/dist/service/EnumInfoService.d.ts +30 -30
- package/dist/service/EnumInfoService.js +97 -97
- package/dist/service/FileCenterService.d.ts +64 -64
- package/dist/service/FileCenterService.js +422 -422
- package/dist/service/SysAppService.d.ts +15 -15
- package/dist/service/SysAppService.js +108 -108
- package/dist/service/SysConfigService.d.ts +10 -10
- package/dist/service/SysConfigService.js +64 -64
- package/dist/service/SysDictDataService.d.ts +9 -9
- package/dist/service/SysDictDataService.js +72 -72
- package/dist/service/SysMenuService.d.ts +51 -51
- package/dist/service/SysMenuService.js +58 -58
- package/dist/service/UserAccountService.d.ts +23 -23
- package/dist/service/UserAccountService.js +107 -107
- package/dist/service/UserSessionService.d.ts +43 -43
- package/dist/service/UserSessionService.js +163 -163
- package/dist/service/VisitStatService.d.ts +14 -14
- package/dist/service/VisitStatService.js +161 -161
- package/dist/service/WorkbenchService.d.ts +59 -59
- package/dist/service/WorkbenchService.js +249 -249
- package/dist/service/anyapi/AnyApiSandboxService.d.ts +15 -15
- package/dist/service/anyapi/AnyApiSandboxService.js +110 -110
- package/dist/service/anyapi/AnyApiService.d.ts +27 -27
- package/dist/service/anyapi/AnyApiService.js +181 -181
- package/dist/service/asyncTask/AsyncTaskRunnerService.d.ts +50 -50
- package/dist/service/asyncTask/AsyncTaskRunnerService.js +287 -287
- package/dist/service/asyncTask/AsyncTaskService.d.ts +7 -7
- package/dist/service/asyncTask/AsyncTaskService.js +34 -34
- package/dist/service/asyncTask/handler/ExcelInfoModel.d.ts +10 -10
- package/dist/service/asyncTask/handler/ExcelInfoModel.js +2 -2
- package/dist/service/asyncTask/handler/ExportExcelAsyncTaskHandler.d.ts +7 -7
- package/dist/service/asyncTask/handler/ExportExcelAsyncTaskHandler.js +216 -216
- package/dist/service/asyncTask/handler/ExportExcelByInnerHttpHandler.d.ts +36 -36
- package/dist/service/asyncTask/handler/ExportExcelByInnerHttpHandler.js +141 -141
- package/dist/service/asyncTask/handler/ExportExcelByStdCrudHandler.d.ts +46 -46
- package/dist/service/asyncTask/handler/ExportExcelByStdCrudHandler.js +135 -135
- package/dist/service/base/ApiBaseService.d.ts +22 -22
- package/dist/service/base/ApiBaseService.js +60 -60
- package/dist/service/base/ApiRateLimiter.d.ts +10 -10
- package/dist/service/base/ApiRateLimiter.js +51 -51
- package/dist/service/base/BaseService.d.ts +46 -46
- package/dist/service/base/BaseService.js +131 -131
- package/dist/service/base/cache/CacheServiceFactory.d.ts +26 -26
- package/dist/service/base/cache/CacheServiceFactory.js +122 -122
- package/dist/service/base/cache/CtxCache.d.ts +18 -18
- package/dist/service/base/cache/CtxCache.js +37 -37
- package/dist/service/base/cache/DiskCache.d.ts +19 -19
- package/dist/service/base/cache/DiskCache.js +81 -81
- package/dist/service/base/cache/MemoryCache.d.ts +12 -12
- package/dist/service/base/cache/MemoryCache.js +58 -58
- package/dist/service/base/cache/NoneCache.d.ts +10 -10
- package/dist/service/base/cache/NoneCache.js +19 -19
- package/dist/service/base/cache/RedisCache.d.ts +14 -14
- package/dist/service/base/cache/RedisCache.js +31 -31
- package/dist/service/crudstd/CrudStdActionService.d.ts +17 -17
- package/dist/service/crudstd/CrudStdActionService.js +32 -32
- package/dist/service/crudstd/CrudStdConstant.d.ts +58 -58
- package/dist/service/crudstd/CrudStdConstant.js +64 -64
- package/dist/service/crudstd/CrudStdRelationService.d.ts +11 -11
- package/dist/service/crudstd/CrudStdRelationService.js +179 -179
- package/dist/service/crudstd/CrudStdService.d.ts +59 -59
- package/dist/service/crudstd/CrudStdService.js +348 -348
- package/dist/service/curd/CrudProQuick.d.ts +60 -60
- package/dist/service/curd/CrudProQuick.js +167 -167
- package/dist/service/curd/CurdMixByAccountService.d.ts +14 -14
- package/dist/service/curd/CurdMixByAccountService.js +166 -166
- package/dist/service/curd/CurdMixByDictService.d.ts +12 -12
- package/dist/service/curd/CurdMixByDictService.js +114 -114
- package/dist/service/curd/CurdMixByLinkToCustomService.d.ts +30 -30
- package/dist/service/curd/CurdMixByLinkToCustomService.js +209 -209
- package/dist/service/curd/CurdMixBySysConfigService.d.ts +13 -13
- package/dist/service/curd/CurdMixBySysConfigService.js +116 -116
- package/dist/service/curd/CurdMixByWorkbenchService.d.ts +11 -11
- package/dist/service/curd/CurdMixByWorkbenchService.js +80 -80
- package/dist/service/curd/CurdMixService.d.ts +28 -28
- package/dist/service/curd/CurdMixService.js +100 -100
- package/dist/service/curd/CurdMixUtils.d.ts +57 -57
- package/dist/service/curd/CurdMixUtils.js +331 -331
- package/dist/service/curd/CurdProService.d.ts +32 -32
- package/dist/service/curd/CurdProService.js +215 -215
- package/dist/service/curd/fixCfgModel.d.ts +3 -3
- package/dist/service/curd/fixCfgModel.js +104 -104
- package/dist/service/curd/fixSoftDelete.d.ts +6 -6
- package/dist/service/curd/fixSoftDelete.js +43 -43
- package/dist/service/flow/FlowConfigService.d.ts +41 -41
- package/dist/service/flow/FlowConfigService.js +95 -95
- package/dist/service/flow/FlowInstanceCrudService.d.ts +35 -35
- package/dist/service/flow/FlowInstanceCrudService.js +257 -257
- package/dist/service/flow/FlowInstanceService.d.ts +88 -88
- package/dist/service/flow/FlowInstanceService.js +451 -451
- package/dist/service/proxyapi/ProxyApiLoadService.d.ts +21 -21
- package/dist/service/proxyapi/ProxyApiLoadService.js +167 -167
- package/dist/service/proxyapi/ProxyApiService.d.ts +61 -61
- package/dist/service/proxyapi/ProxyApiService.js +317 -317
- package/dist/service/proxyapi/ProxyApiUtils.d.ts +15 -15
- package/dist/service/proxyapi/ProxyApiUtils.js +34 -34
- package/dist/service/proxyapi/RouteHandler.d.ts +6 -6
- package/dist/service/proxyapi/RouteHandler.js +9 -9
- package/dist/service/proxyapi/RouteTrie.d.ts +12 -12
- package/dist/service/proxyapi/RouteTrie.js +64 -64
- package/dist/service/proxyapi/WeightedRandom.d.ts +9 -9
- package/dist/service/proxyapi/WeightedRandom.js +31 -31
- package/dist/service/proxyapi/WeightedRoundRobin.d.ts +8 -8
- package/dist/service/proxyapi/WeightedRoundRobin.js +33 -33
- package/index.d.ts +10 -10
- package/package.json +87 -87
- package/src/libs/crud-pro/CrudPro.ts +71 -0
- package/src/libs/crud-pro/interfaces.ts +22 -0
- package/src/libs/crud-pro/models/ServiceHub.ts +2 -2
- package/src/libs/crud-pro/services/CrudProDataFilterService.ts +58 -0
- package/src/libs/crud-pro/services/CrudProOriginToExecuteSql.ts +10 -1
- package/src/libs/crud-pro/services/CrudProTableMetaService.ts +145 -40
- package/src/libs/crud-pro/services/CurdProServiceHub.ts +10 -3
- package/src/libs/crud-pro/utils/CrudMonitor.ts +13 -13
- package/src/libs/utils/AsymmetricCrypto.ts +307 -307
- package/src/libs/utils/format-url.ts +29 -29
- package/src/libs/utils/render-utils.ts +223 -223
- package/src/models/WorkbenchInfoTools.ts +19 -19
- package/src/service/SysAppService.ts +103 -103
- package/src/service/SysDictDataService.ts +63 -63
- package/src/service/SysMenuService.ts +87 -87
- package/src/service/WorkbenchService.ts +279 -279
- package/src/service/base/cache/CacheServiceFactory.ts +135 -135
- package/src/service/base/cache/CtxCache.ts +45 -45
- package/src/service/base/cache/DiskCache.ts +90 -90
- package/src/service/base/cache/MemoryCache.ts +68 -68
- package/src/service/base/cache/NoneCache.ts +24 -24
- package/src/service/base/cache/RedisCache.ts +41 -41
- package/src/service/curd/CurdMixByAccountService.ts +177 -177
- package/src/service/curd/fixSoftDelete.ts +58 -58
- package/tsconfig.json +32 -32
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { ICurdProServiceHub } from '../models/ServiceHub';
|
|
2
|
-
import { ICrudProCfg, IExecuteUnsafeQueryCtx, ILogger, IPoolConnectionClient } from '../interfaces';
|
|
3
|
-
import { SqlCfgModel } from '../models/SqlCfgModel';
|
|
4
|
-
import { ExecuteContext } from '../models/ExecuteContext';
|
|
5
|
-
import { IExecuteContextFunc } from '../models/ExecuteContextFunc';
|
|
6
|
-
declare class CrudProServiceBase {
|
|
7
|
-
protected serviceHub: ICurdProServiceHub;
|
|
8
|
-
constructor(serviceHub: ICurdProServiceHub);
|
|
9
|
-
protected getExecuteContext(): ExecuteContext;
|
|
10
|
-
protected getContextFunc(): IExecuteContextFunc;
|
|
11
|
-
protected get logger(): ILogger;
|
|
12
|
-
protected getTxConnectionBySqlCfg(sqlCfgModel: SqlCfgModel): Promise<IPoolConnectionClient>;
|
|
13
|
-
/**
|
|
14
|
-
* 不做任何检验,直接执行SQL,只能CrudPro内部使用,不对外使用
|
|
15
|
-
* @param obj
|
|
16
|
-
* @param sql
|
|
17
|
-
* @param values
|
|
18
|
-
* @protected
|
|
19
|
-
*/
|
|
20
|
-
protected executeUnsafeQuery(obj: IExecuteUnsafeQueryCtx, sql: string, values?: any): Promise<import("../interfaces").IPoolConnectionQueryResult>;
|
|
21
|
-
protected getContextCfg(): ICrudProCfg;
|
|
22
|
-
protected getExecuteFunction(funcName: string): any;
|
|
23
|
-
}
|
|
24
|
-
export { CrudProServiceBase };
|
|
1
|
+
import { ICurdProServiceHub } from '../models/ServiceHub';
|
|
2
|
+
import { ICrudProCfg, IExecuteUnsafeQueryCtx, ILogger, IPoolConnectionClient } from '../interfaces';
|
|
3
|
+
import { SqlCfgModel } from '../models/SqlCfgModel';
|
|
4
|
+
import { ExecuteContext } from '../models/ExecuteContext';
|
|
5
|
+
import { IExecuteContextFunc } from '../models/ExecuteContextFunc';
|
|
6
|
+
declare class CrudProServiceBase {
|
|
7
|
+
protected serviceHub: ICurdProServiceHub;
|
|
8
|
+
constructor(serviceHub: ICurdProServiceHub);
|
|
9
|
+
protected getExecuteContext(): ExecuteContext;
|
|
10
|
+
protected getContextFunc(): IExecuteContextFunc;
|
|
11
|
+
protected get logger(): ILogger;
|
|
12
|
+
protected getTxConnectionBySqlCfg(sqlCfgModel: SqlCfgModel): Promise<IPoolConnectionClient>;
|
|
13
|
+
/**
|
|
14
|
+
* 不做任何检验,直接执行SQL,只能CrudPro内部使用,不对外使用
|
|
15
|
+
* @param obj
|
|
16
|
+
* @param sql
|
|
17
|
+
* @param values
|
|
18
|
+
* @protected
|
|
19
|
+
*/
|
|
20
|
+
protected executeUnsafeQuery(obj: IExecuteUnsafeQueryCtx, sql: string, values?: any): Promise<import("../interfaces").IPoolConnectionQueryResult>;
|
|
21
|
+
protected getContextCfg(): ICrudProCfg;
|
|
22
|
+
protected getExecuteFunction(funcName: string): any;
|
|
23
|
+
}
|
|
24
|
+
export { CrudProServiceBase };
|
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CrudProServiceBase = void 0;
|
|
4
|
-
const _ = require("lodash");
|
|
5
|
-
const MixinUtils_1 = require("../utils/MixinUtils");
|
|
6
|
-
const TypeUtils_1 = require("../utils/TypeUtils");
|
|
7
|
-
const CompareUtils_1 = require("../utils/CompareUtils");
|
|
8
|
-
const DateTimeUtils_1 = require("../utils/DateTimeUtils");
|
|
9
|
-
const defaultConfigs_1 = require("../defaultConfigs");
|
|
10
|
-
const keys_1 = require("../models/keys");
|
|
11
|
-
const convertPgSql_1 = require("../utils/sqlConvert/convertPgSql");
|
|
12
|
-
const convertMsSql_1 = require("../utils/sqlConvert/convertMsSql");
|
|
13
|
-
function createBuildInExecuteFuncMap() {
|
|
14
|
-
return {
|
|
15
|
-
...DateTimeUtils_1.DateTimeUtils,
|
|
16
|
-
...CompareUtils_1.CompareUtils,
|
|
17
|
-
...MixinUtils_1.MixinUtils,
|
|
18
|
-
...TypeUtils_1.TypeUtils,
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
const buildInExecuteFuncMap = createBuildInExecuteFuncMap();
|
|
22
|
-
class CrudProServiceBase {
|
|
23
|
-
constructor(serviceHub) {
|
|
24
|
-
this.serviceHub = serviceHub;
|
|
25
|
-
}
|
|
26
|
-
getExecuteContext() {
|
|
27
|
-
return this.serviceHub.getExecuteContext();
|
|
28
|
-
}
|
|
29
|
-
getContextFunc() {
|
|
30
|
-
return this.getExecuteContext().contextFunc;
|
|
31
|
-
}
|
|
32
|
-
get logger() {
|
|
33
|
-
return this.getExecuteContext().getLogger();
|
|
34
|
-
}
|
|
35
|
-
async getTxConnectionBySqlCfg(sqlCfgModel) {
|
|
36
|
-
const executeContext = this.getExecuteContext();
|
|
37
|
-
const transaction = executeContext.getTransaction();
|
|
38
|
-
const contextFunc = this.getContextFunc();
|
|
39
|
-
const pool = await contextFunc.getConnectionPool(sqlCfgModel);
|
|
40
|
-
return transaction.getTxConnection(pool);
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* 不做任何检验,直接执行SQL,只能CrudPro内部使用,不对外使用
|
|
44
|
-
* @param obj
|
|
45
|
-
* @param sql
|
|
46
|
-
* @param values
|
|
47
|
-
* @protected
|
|
48
|
-
*/
|
|
49
|
-
async executeUnsafeQuery(obj, sql, values) {
|
|
50
|
-
const sqlCfgModel = {
|
|
51
|
-
sqlTable: obj.sqlTable,
|
|
52
|
-
sqlDatabase: obj.sqlDatabase,
|
|
53
|
-
sqlDbType: obj.sqlDbType,
|
|
54
|
-
columns: [],
|
|
55
|
-
columnsRelation: [],
|
|
56
|
-
maxLimit: defaultConfigs_1.DEFAULT_MAX_LIMIT,
|
|
57
|
-
resName: 'executeUnsafeQuery',
|
|
58
|
-
originSql: sql,
|
|
59
|
-
executeSql: sql,
|
|
60
|
-
executeSqlArgs: values,
|
|
61
|
-
crudType: null,
|
|
62
|
-
};
|
|
63
|
-
if (sqlCfgModel.sqlDbType === keys_1.SqlDbType.postgres) {
|
|
64
|
-
sqlCfgModel.executeSql = (0, convertPgSql_1.replaceQuestionMarks)(sqlCfgModel.executeSql, false);
|
|
65
|
-
}
|
|
66
|
-
else if (sqlCfgModel.sqlDbType === keys_1.SqlDbType.sqlserver) {
|
|
67
|
-
sqlCfgModel.executeSql = (0, convertMsSql_1.replaceQuestionMarksForMssql)(sqlCfgModel.executeSql, false);
|
|
68
|
-
}
|
|
69
|
-
const connection = await this.getTxConnectionBySqlCfg(sqlCfgModel);
|
|
70
|
-
return await connection.query(sqlCfgModel.executeSql, values);
|
|
71
|
-
}
|
|
72
|
-
getContextCfg() {
|
|
73
|
-
return this.getExecuteContext().getContextCfg();
|
|
74
|
-
}
|
|
75
|
-
getExecuteFunction(funcName) {
|
|
76
|
-
const contextFunc = this.getContextFunc();
|
|
77
|
-
const functionMap = contextFunc.getFunctionMap();
|
|
78
|
-
if (functionMap) {
|
|
79
|
-
const func = _.get(functionMap, funcName);
|
|
80
|
-
if (typeof func === 'function') {
|
|
81
|
-
return func;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
console.log('buildInExecuteFuncMap', Object.keys(buildInExecuteFuncMap));
|
|
85
|
-
return _.get(buildInExecuteFuncMap, funcName);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
exports.CrudProServiceBase = CrudProServiceBase;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CrudProServiceBase = void 0;
|
|
4
|
+
const _ = require("lodash");
|
|
5
|
+
const MixinUtils_1 = require("../utils/MixinUtils");
|
|
6
|
+
const TypeUtils_1 = require("../utils/TypeUtils");
|
|
7
|
+
const CompareUtils_1 = require("../utils/CompareUtils");
|
|
8
|
+
const DateTimeUtils_1 = require("../utils/DateTimeUtils");
|
|
9
|
+
const defaultConfigs_1 = require("../defaultConfigs");
|
|
10
|
+
const keys_1 = require("../models/keys");
|
|
11
|
+
const convertPgSql_1 = require("../utils/sqlConvert/convertPgSql");
|
|
12
|
+
const convertMsSql_1 = require("../utils/sqlConvert/convertMsSql");
|
|
13
|
+
function createBuildInExecuteFuncMap() {
|
|
14
|
+
return {
|
|
15
|
+
...DateTimeUtils_1.DateTimeUtils,
|
|
16
|
+
...CompareUtils_1.CompareUtils,
|
|
17
|
+
...MixinUtils_1.MixinUtils,
|
|
18
|
+
...TypeUtils_1.TypeUtils,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
const buildInExecuteFuncMap = createBuildInExecuteFuncMap();
|
|
22
|
+
class CrudProServiceBase {
|
|
23
|
+
constructor(serviceHub) {
|
|
24
|
+
this.serviceHub = serviceHub;
|
|
25
|
+
}
|
|
26
|
+
getExecuteContext() {
|
|
27
|
+
return this.serviceHub.getExecuteContext();
|
|
28
|
+
}
|
|
29
|
+
getContextFunc() {
|
|
30
|
+
return this.getExecuteContext().contextFunc;
|
|
31
|
+
}
|
|
32
|
+
get logger() {
|
|
33
|
+
return this.getExecuteContext().getLogger();
|
|
34
|
+
}
|
|
35
|
+
async getTxConnectionBySqlCfg(sqlCfgModel) {
|
|
36
|
+
const executeContext = this.getExecuteContext();
|
|
37
|
+
const transaction = executeContext.getTransaction();
|
|
38
|
+
const contextFunc = this.getContextFunc();
|
|
39
|
+
const pool = await contextFunc.getConnectionPool(sqlCfgModel);
|
|
40
|
+
return transaction.getTxConnection(pool);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* 不做任何检验,直接执行SQL,只能CrudPro内部使用,不对外使用
|
|
44
|
+
* @param obj
|
|
45
|
+
* @param sql
|
|
46
|
+
* @param values
|
|
47
|
+
* @protected
|
|
48
|
+
*/
|
|
49
|
+
async executeUnsafeQuery(obj, sql, values) {
|
|
50
|
+
const sqlCfgModel = {
|
|
51
|
+
sqlTable: obj.sqlTable,
|
|
52
|
+
sqlDatabase: obj.sqlDatabase,
|
|
53
|
+
sqlDbType: obj.sqlDbType,
|
|
54
|
+
columns: [],
|
|
55
|
+
columnsRelation: [],
|
|
56
|
+
maxLimit: defaultConfigs_1.DEFAULT_MAX_LIMIT,
|
|
57
|
+
resName: 'executeUnsafeQuery',
|
|
58
|
+
originSql: sql,
|
|
59
|
+
executeSql: sql,
|
|
60
|
+
executeSqlArgs: values,
|
|
61
|
+
crudType: null,
|
|
62
|
+
};
|
|
63
|
+
if (sqlCfgModel.sqlDbType === keys_1.SqlDbType.postgres) {
|
|
64
|
+
sqlCfgModel.executeSql = (0, convertPgSql_1.replaceQuestionMarks)(sqlCfgModel.executeSql, false);
|
|
65
|
+
}
|
|
66
|
+
else if (sqlCfgModel.sqlDbType === keys_1.SqlDbType.sqlserver) {
|
|
67
|
+
sqlCfgModel.executeSql = (0, convertMsSql_1.replaceQuestionMarksForMssql)(sqlCfgModel.executeSql, false);
|
|
68
|
+
}
|
|
69
|
+
const connection = await this.getTxConnectionBySqlCfg(sqlCfgModel);
|
|
70
|
+
return await connection.query(sqlCfgModel.executeSql, values);
|
|
71
|
+
}
|
|
72
|
+
getContextCfg() {
|
|
73
|
+
return this.getExecuteContext().getContextCfg();
|
|
74
|
+
}
|
|
75
|
+
getExecuteFunction(funcName) {
|
|
76
|
+
const contextFunc = this.getContextFunc();
|
|
77
|
+
const functionMap = contextFunc.getFunctionMap();
|
|
78
|
+
if (functionMap) {
|
|
79
|
+
const func = _.get(functionMap, funcName);
|
|
80
|
+
if (typeof func === 'function') {
|
|
81
|
+
return func;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
console.log('buildInExecuteFuncMap', Object.keys(buildInExecuteFuncMap));
|
|
85
|
+
return _.get(buildInExecuteFuncMap, funcName);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
exports.CrudProServiceBase = CrudProServiceBase;
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import { CrudProServiceBase } from './CrudProServiceBase';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
private
|
|
7
|
-
private
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { CrudProServiceBase } from './CrudProServiceBase';
|
|
2
|
+
import { ITableMeta, ITableMetaQuery } from '../interfaces';
|
|
3
|
+
declare class CrudProTableMetaService extends CrudProServiceBase {
|
|
4
|
+
getTableMeta(query: ITableMetaQuery): Promise<ITableMeta>;
|
|
5
|
+
private loadTableMeta;
|
|
6
|
+
private loadTableColumnDetails;
|
|
7
|
+
private loadMySQLColumnDetails;
|
|
8
|
+
private loadPostgreSQLColumnDetails;
|
|
9
|
+
private loadPostgreSQLColumnComments;
|
|
10
|
+
private loadSQLServerColumnDetails;
|
|
11
|
+
}
|
|
12
|
+
export { CrudProTableMetaService };
|
|
@@ -1,78 +1,168 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CrudProTableMetaService = void 0;
|
|
4
|
-
const CrudProServiceBase_1 = require("./CrudProServiceBase");
|
|
5
|
-
const keys_1 = require("../models/keys");
|
|
6
|
-
// import { pickAndConvertRowsByMix } from '../utils/sqlConvert/convertMix';
|
|
7
|
-
class CrudProTableMetaCache {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.cacheMap = {};
|
|
10
|
-
}
|
|
11
|
-
getCacheKey(
|
|
12
|
-
return `${
|
|
13
|
-
}
|
|
14
|
-
getMeta(
|
|
15
|
-
const cacheKey = this.getCacheKey(
|
|
16
|
-
const obj = this.cacheMap[cacheKey];
|
|
17
|
-
if (obj && obj.expiredTime
|
|
18
|
-
return obj;
|
|
19
|
-
}
|
|
20
|
-
return null;
|
|
21
|
-
}
|
|
22
|
-
setMeta(
|
|
23
|
-
const cacheKey = this.getCacheKey(
|
|
24
|
-
this.cacheMap[cacheKey] = metaObj;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
const metaCache = new CrudProTableMetaCache();
|
|
28
|
-
class CrudProTableMetaService extends CrudProServiceBase_1.CrudProServiceBase {
|
|
29
|
-
async getTableMeta(
|
|
30
|
-
let obj = metaCache.getMeta(
|
|
31
|
-
if (!obj) {
|
|
32
|
-
obj = await this.loadTableMeta(
|
|
33
|
-
metaCache.setMeta(
|
|
34
|
-
}
|
|
35
|
-
return obj;
|
|
36
|
-
}
|
|
37
|
-
async loadTableMeta(
|
|
38
|
-
const { tableMetaCacheTime } = this.getContextCfg();
|
|
39
|
-
const obj = {
|
|
40
|
-
expiredTime: Date.now() + tableMetaCacheTime || 1000 * 3600 * 24 * 365,
|
|
41
|
-
tableColumns: [],
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
else if (baseInfo.sqlDbType === keys_1.SqlDbType.
|
|
61
|
-
|
|
62
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CrudProTableMetaService = void 0;
|
|
4
|
+
const CrudProServiceBase_1 = require("./CrudProServiceBase");
|
|
5
|
+
const keys_1 = require("../models/keys");
|
|
6
|
+
// import { pickAndConvertRowsByMix } from '../utils/sqlConvert/convertMix';
|
|
7
|
+
class CrudProTableMetaCache {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.cacheMap = {};
|
|
10
|
+
}
|
|
11
|
+
getCacheKey(query) {
|
|
12
|
+
return `${query.sqlDatabase}:::${query.sqlSchema}:::${query.sqlDbType}:::${query.sqlTable}`;
|
|
13
|
+
}
|
|
14
|
+
getMeta(query) {
|
|
15
|
+
const cacheKey = this.getCacheKey(query);
|
|
16
|
+
const obj = this.cacheMap[cacheKey];
|
|
17
|
+
if (obj && obj.expiredTime > Date.now()) {
|
|
18
|
+
return obj;
|
|
19
|
+
}
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
setMeta(query, metaObj) {
|
|
23
|
+
const cacheKey = this.getCacheKey(query);
|
|
24
|
+
this.cacheMap[cacheKey] = metaObj;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const metaCache = new CrudProTableMetaCache();
|
|
28
|
+
class CrudProTableMetaService extends CrudProServiceBase_1.CrudProServiceBase {
|
|
29
|
+
async getTableMeta(query) {
|
|
30
|
+
let obj = metaCache.getMeta(query);
|
|
31
|
+
if (!obj) {
|
|
32
|
+
obj = await this.loadTableMeta(query);
|
|
33
|
+
metaCache.setMeta(query, obj);
|
|
34
|
+
}
|
|
35
|
+
return obj;
|
|
36
|
+
}
|
|
37
|
+
async loadTableMeta(query) {
|
|
38
|
+
const { tableMetaCacheTime } = this.getContextCfg();
|
|
39
|
+
const obj = {
|
|
40
|
+
expiredTime: Date.now() + (tableMetaCacheTime || 1000 * 3600 * 24 * 365),
|
|
41
|
+
tableColumns: [],
|
|
42
|
+
columnDetails: [],
|
|
43
|
+
};
|
|
44
|
+
const baseInfo = {
|
|
45
|
+
sqlTable: query.sqlTable,
|
|
46
|
+
sqlDatabase: query.sqlDatabase,
|
|
47
|
+
sqlDbType: query.sqlDbType,
|
|
48
|
+
};
|
|
49
|
+
obj.columnDetails = await this.loadTableColumnDetails(baseInfo);
|
|
50
|
+
obj.tableColumns = obj.columnDetails.map(col => col.name);
|
|
51
|
+
return obj;
|
|
52
|
+
}
|
|
53
|
+
async loadTableColumnDetails(baseInfo) {
|
|
54
|
+
if (baseInfo.sqlDbType === keys_1.SqlDbType.mysql) {
|
|
55
|
+
return this.loadMySQLColumnDetails(baseInfo);
|
|
56
|
+
}
|
|
57
|
+
else if (baseInfo.sqlDbType === keys_1.SqlDbType.postgres) {
|
|
58
|
+
return this.loadPostgreSQLColumnDetails(baseInfo);
|
|
59
|
+
}
|
|
60
|
+
else if (baseInfo.sqlDbType === keys_1.SqlDbType.sqlserver) {
|
|
61
|
+
return this.loadSQLServerColumnDetails(baseInfo);
|
|
62
|
+
}
|
|
63
|
+
throw new Error('暂不支持的数据库类型:' + baseInfo.sqlDbType);
|
|
64
|
+
}
|
|
65
|
+
async loadMySQLColumnDetails(baseInfo) {
|
|
66
|
+
const queryRes = await this.executeUnsafeQuery(baseInfo, 'DESCRIBE ' + baseInfo.sqlTable);
|
|
67
|
+
const tableDescribe = queryRes.rows || [];
|
|
68
|
+
return tableDescribe.map((fieldObj) => {
|
|
69
|
+
const { Field, Type, Null, Key, Default, Extra } = fieldObj;
|
|
70
|
+
return {
|
|
71
|
+
name: Field,
|
|
72
|
+
type: Type,
|
|
73
|
+
isNullable: Null === 'YES',
|
|
74
|
+
isPrimaryKey: Key === 'PRI',
|
|
75
|
+
defaultValue: Default,
|
|
76
|
+
comment: Extra,
|
|
77
|
+
};
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
async loadPostgreSQLColumnDetails(baseInfo) {
|
|
81
|
+
const schemaname = baseInfo.sqlSchema || 'public';
|
|
82
|
+
// 获取列基本信息
|
|
83
|
+
const columnArraySql = `
|
|
63
84
|
SELECT
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
85
|
+
column_name,
|
|
86
|
+
data_type,
|
|
87
|
+
is_nullable,
|
|
88
|
+
column_default,
|
|
89
|
+
character_maximum_length
|
|
90
|
+
FROM information_schema.columns
|
|
91
|
+
WHERE table_schema = '${schemaname}' AND table_name = '${baseInfo.sqlTable}'
|
|
92
|
+
ORDER BY ordinal_position;
|
|
93
|
+
`.trim();
|
|
94
|
+
const queryRes = await this.executeUnsafeQuery(baseInfo, columnArraySql);
|
|
95
|
+
const columnArray = queryRes.rows || [];
|
|
96
|
+
// 获取字段注释
|
|
97
|
+
const commentMap = await this.loadPostgreSQLColumnComments(baseInfo, schemaname);
|
|
98
|
+
return columnArray.map((columnObj) => {
|
|
99
|
+
const { column_name, data_type, is_nullable, column_default, character_maximum_length } = columnObj;
|
|
100
|
+
return {
|
|
101
|
+
name: column_name,
|
|
102
|
+
type: data_type,
|
|
103
|
+
isNullable: is_nullable === 'YES',
|
|
104
|
+
defaultValue: column_default,
|
|
105
|
+
maxLength: character_maximum_length,
|
|
106
|
+
comment: commentMap[column_name],
|
|
107
|
+
};
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
async loadPostgreSQLColumnComments(baseInfo, schemaname) {
|
|
111
|
+
const commentArraySql = `
|
|
112
|
+
SELECT
|
|
113
|
+
a.attname AS column_name,
|
|
114
|
+
d.description AS column_comment
|
|
115
|
+
FROM pg_class c
|
|
116
|
+
JOIN pg_namespace n ON c.relnamespace = n.oid
|
|
117
|
+
JOIN pg_attribute a ON c.oid = a.attrelid
|
|
118
|
+
LEFT JOIN pg_description d ON c.oid = d.objoid AND a.attnum = d.objsubid
|
|
119
|
+
WHERE n.nspname = '${schemaname}'
|
|
120
|
+
AND c.relname = '${baseInfo.sqlTable}'
|
|
121
|
+
AND a.attnum > 0
|
|
122
|
+
ORDER BY a.attnum;
|
|
123
|
+
`.trim();
|
|
124
|
+
const queryRes = await this.executeUnsafeQuery(baseInfo, commentArraySql);
|
|
125
|
+
const commentArray = queryRes.rows || [];
|
|
126
|
+
const map = {};
|
|
127
|
+
commentArray.forEach((commentObj) => {
|
|
128
|
+
const { column_name, column_comment } = commentObj;
|
|
129
|
+
map[column_name] = column_comment || '';
|
|
130
|
+
});
|
|
131
|
+
return map;
|
|
132
|
+
}
|
|
133
|
+
async loadSQLServerColumnDetails(baseInfo) {
|
|
134
|
+
const columnArraySql = `
|
|
135
|
+
SELECT
|
|
136
|
+
c.name AS column_name,
|
|
137
|
+
t.name AS data_type,
|
|
138
|
+
c.max_length,
|
|
139
|
+
c.precision,
|
|
140
|
+
c.scale,
|
|
141
|
+
c.is_nullable,
|
|
142
|
+
c.is_identity,
|
|
143
|
+
dc.definition AS column_default,
|
|
144
|
+
ep.value AS column_comment
|
|
145
|
+
FROM sys.columns c
|
|
146
|
+
JOIN sys.types t ON c.user_type_id = t.user_type_id
|
|
147
|
+
LEFT JOIN sys.default_constraints dc ON c.default_object_id = dc.object_id
|
|
148
|
+
LEFT JOIN sys.extended_properties ep ON c.object_id = ep.major_id AND c.column_id = ep.minor_id
|
|
149
|
+
WHERE c.object_id = OBJECT_ID('${baseInfo.sqlTable}')
|
|
150
|
+
ORDER BY c.column_id;
|
|
151
|
+
`.trim();
|
|
152
|
+
const queryRes = await this.executeUnsafeQuery(baseInfo, columnArraySql);
|
|
153
|
+
const columnArray = queryRes.rows || [];
|
|
154
|
+
return columnArray.map((columnObj) => {
|
|
155
|
+
const { column_name, data_type, is_nullable, column_default, column_comment, max_length, is_identity } = columnObj;
|
|
156
|
+
return {
|
|
157
|
+
name: column_name,
|
|
158
|
+
type: data_type,
|
|
159
|
+
isNullable: is_nullable,
|
|
160
|
+
defaultValue: column_default,
|
|
161
|
+
comment: column_comment,
|
|
162
|
+
maxLength: max_length,
|
|
163
|
+
isPrimaryKey: is_identity,
|
|
164
|
+
};
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
exports.CrudProTableMetaService = CrudProTableMetaService;
|
|
@@ -1,32 +1,34 @@
|
|
|
1
|
-
import { IFuncCfgModel, IRequestCfgModel, ITableMeta } from '../interfaces';
|
|
2
|
-
import { RequestModel } from '../models/RequestModel';
|
|
3
|
-
import { ExecuteContext } from '../models/ExecuteContext';
|
|
4
|
-
import { SqlCfgModel } from '../models/SqlCfgModel';
|
|
5
|
-
import { RequestCfgModel } from '../models/RequestCfgModel';
|
|
6
|
-
import { ICurdProServiceHub } from '../models/ServiceHub';
|
|
7
|
-
import { FuncContext } from '../models/FuncContext';
|
|
8
|
-
declare class CurdProServiceHub implements ICurdProServiceHub {
|
|
9
|
-
private readonly executeContext;
|
|
10
|
-
private readonly fieldValidateService;
|
|
11
|
-
private readonly fieldUpdateService;
|
|
12
|
-
private readonly cachedCfgService;
|
|
13
|
-
private readonly executeSqlService;
|
|
14
|
-
private readonly genSqlService;
|
|
15
|
-
private readonly originToExecuteSql;
|
|
16
|
-
private readonly executeFuncService;
|
|
17
|
-
private readonly tableMetaService;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
1
|
+
import { IFuncCfgModel, IRequestCfgModel, ISqlCfgModel, ITableMeta, ITableMetaQuery } from '../interfaces';
|
|
2
|
+
import { RequestModel } from '../models/RequestModel';
|
|
3
|
+
import { ExecuteContext } from '../models/ExecuteContext';
|
|
4
|
+
import { SqlCfgModel } from '../models/SqlCfgModel';
|
|
5
|
+
import { RequestCfgModel } from '../models/RequestCfgModel';
|
|
6
|
+
import { ICurdProServiceHub } from '../models/ServiceHub';
|
|
7
|
+
import { FuncContext } from '../models/FuncContext';
|
|
8
|
+
declare class CurdProServiceHub implements ICurdProServiceHub {
|
|
9
|
+
private readonly executeContext;
|
|
10
|
+
private readonly fieldValidateService;
|
|
11
|
+
private readonly fieldUpdateService;
|
|
12
|
+
private readonly cachedCfgService;
|
|
13
|
+
private readonly executeSqlService;
|
|
14
|
+
private readonly genSqlService;
|
|
15
|
+
private readonly originToExecuteSql;
|
|
16
|
+
private readonly executeFuncService;
|
|
17
|
+
private readonly tableMetaService;
|
|
18
|
+
private readonly dataFilterService;
|
|
19
|
+
constructor(executeContext: ExecuteContext);
|
|
20
|
+
getExecuteContext(): ExecuteContext;
|
|
21
|
+
validateByAllow(cfgModel: RequestCfgModel, reqModel: RequestModel): void;
|
|
22
|
+
validateByReject(cfgModel: RequestCfgModel, reqModel: RequestModel): void;
|
|
23
|
+
validateByCfg(cfgModel: RequestCfgModel, reqModel: RequestModel): void;
|
|
24
|
+
validateByAuthCfg(cfgModel: RequestCfgModel, reqModel: RequestModel): Promise<any>;
|
|
25
|
+
updateByCfg(cfgModel: RequestCfgModel, reqModel: RequestModel): void;
|
|
26
|
+
getCachedCfgByMethod(method: string, isEnableCache: boolean): Promise<IRequestCfgModel>;
|
|
27
|
+
generateSQLList(): Promise<void>;
|
|
28
|
+
executeSqlCfgModels(): Promise<void>;
|
|
29
|
+
convertOriginToExecuteSql(sqlCfgModel: SqlCfgModel): Promise<void>;
|
|
30
|
+
executeFuncCfg(funCfg: IFuncCfgModel, funcContext: FuncContext): any;
|
|
31
|
+
getTableMeta(query: ITableMetaQuery): Promise<ITableMeta>;
|
|
32
|
+
filterDataByTableMeta(data: Record<string, any>, sqlCfgModel: ISqlCfgModel | SqlCfgModel): Promise<Record<string, any>>;
|
|
33
|
+
}
|
|
34
|
+
export { CurdProServiceHub };
|