midway-fatcms 0.0.1-beta.75 → 0.0.1-beta.76

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.
Files changed (372) hide show
  1. package/.eslintrc.json +14 -14
  2. package/.prettierrc.js +4 -4
  3. package/README.md +8 -8
  4. package/dist/config/config.default.d.ts +3 -3
  5. package/dist/config/config.default.js +177 -177
  6. package/dist/config/utils.d.ts +1 -1
  7. package/dist/config/utils.js +23 -23
  8. package/dist/configuration.d.ts +7 -7
  9. package/dist/configuration.js +113 -113
  10. package/dist/controller/base/BaseApiController.d.ts +48 -48
  11. package/dist/controller/base/BaseApiController.js +197 -193
  12. package/dist/controller/gateway/AnyApiGatewayController.d.ts +13 -13
  13. package/dist/controller/gateway/AnyApiGatewayController.js +55 -55
  14. package/dist/controller/gateway/AsyncTaskController.d.ts +20 -20
  15. package/dist/controller/gateway/AsyncTaskController.js +181 -181
  16. package/dist/controller/gateway/CrudMtdGatewayController.d.ts +21 -21
  17. package/dist/controller/gateway/CrudMtdGatewayController.js +122 -122
  18. package/dist/controller/gateway/CrudStdGatewayController.d.ts +39 -39
  19. package/dist/controller/gateway/CrudStdGatewayController.js +149 -149
  20. package/dist/controller/gateway/DocGatewayController.d.ts +27 -27
  21. package/dist/controller/gateway/DocGatewayController.js +179 -179
  22. package/dist/controller/gateway/FileController.d.ts +32 -32
  23. package/dist/controller/gateway/FileController.js +160 -160
  24. package/dist/controller/gateway/ProxyApiGatewayController.d.ts +18 -18
  25. package/dist/controller/gateway/ProxyApiGatewayController.js +78 -78
  26. package/dist/controller/gateway/PublicApiController.d.ts +33 -33
  27. package/dist/controller/gateway/PublicApiController.js +201 -201
  28. package/dist/controller/gateway/StaticController.d.ts +23 -23
  29. package/dist/controller/gateway/StaticController.js +286 -286
  30. package/dist/controller/helpers.controller.d.ts +39 -39
  31. package/dist/controller/helpers.controller.js +188 -188
  32. package/dist/controller/home.controller.d.ts +9 -9
  33. package/dist/controller/home.controller.js +72 -72
  34. package/dist/controller/manage/AnyApiMangeApi.d.ts +10 -10
  35. package/dist/controller/manage/AnyApiMangeApi.js +98 -98
  36. package/dist/controller/manage/AppLogMangeApi.d.ts +10 -10
  37. package/dist/controller/manage/AppLogMangeApi.js +88 -88
  38. package/dist/controller/manage/AppMangeApi.d.ts +12 -12
  39. package/dist/controller/manage/AppMangeApi.js +101 -101
  40. package/dist/controller/manage/AppPageMangeApi.d.ts +10 -10
  41. package/dist/controller/manage/AppPageMangeApi.js +87 -87
  42. package/dist/controller/manage/AppSchemaHistoryApi.d.ts +10 -10
  43. package/dist/controller/manage/AppSchemaHistoryApi.js +83 -83
  44. package/dist/controller/manage/CrudMethodsMangeApi.d.ts +10 -10
  45. package/dist/controller/manage/CrudMethodsMangeApi.js +84 -84
  46. package/dist/controller/manage/CrudStandardDesignApi.d.ts +46 -46
  47. package/dist/controller/manage/CrudStandardDesignApi.js +367 -367
  48. package/dist/controller/manage/DataDictManageApi.d.ts +17 -17
  49. package/dist/controller/manage/DataDictManageApi.js +165 -165
  50. package/dist/controller/manage/DeployManageApi.d.ts +19 -19
  51. package/dist/controller/manage/DeployManageApi.js +180 -180
  52. package/dist/controller/manage/DocLibManageApi.d.ts +10 -10
  53. package/dist/controller/manage/DocLibManageApi.js +104 -104
  54. package/dist/controller/manage/DocManageApi.d.ts +11 -11
  55. package/dist/controller/manage/DocManageApi.js +130 -130
  56. package/dist/controller/manage/FileManageApi.d.ts +13 -13
  57. package/dist/controller/manage/FileManageApi.js +77 -77
  58. package/dist/controller/manage/LowCodeTplManageApi.d.ts +13 -13
  59. package/dist/controller/manage/LowCodeTplManageApi.js +86 -86
  60. package/dist/controller/manage/MenuManageApi.d.ts +10 -10
  61. package/dist/controller/manage/MenuManageApi.js +93 -93
  62. package/dist/controller/manage/ProxyApiMangeApi.d.ts +10 -10
  63. package/dist/controller/manage/ProxyApiMangeApi.js +87 -87
  64. package/dist/controller/manage/SuperAdminManageApi.d.ts +24 -24
  65. package/dist/controller/manage/SuperAdminManageApi.js +153 -153
  66. package/dist/controller/manage/SysConfigMangeApi.d.ts +12 -12
  67. package/dist/controller/manage/SysConfigMangeApi.js +133 -133
  68. package/dist/controller/manage/SystemInfoManageApi.d.ts +12 -12
  69. package/dist/controller/manage/SystemInfoManageApi.js +74 -72
  70. package/dist/controller/manage/UserAccountManageApi.d.ts +16 -16
  71. package/dist/controller/manage/UserAccountManageApi.js +153 -153
  72. package/dist/controller/manage/WorkbenchMangeApi.d.ts +11 -11
  73. package/dist/controller/manage/WorkbenchMangeApi.js +103 -103
  74. package/dist/controller/myinfo/AuthController.d.ts +37 -37
  75. package/dist/controller/myinfo/AuthController.js +157 -157
  76. package/dist/controller/myinfo/MyInfoController.d.ts +13 -13
  77. package/dist/controller/myinfo/MyInfoController.js +51 -51
  78. package/dist/controller/render/AppRenderController.d.ts +12 -12
  79. package/dist/controller/render/AppRenderController.js +87 -87
  80. package/dist/controller/test.controller.d.ts +8 -8
  81. package/dist/controller/test.controller.js +51 -51
  82. package/dist/filter/default.filter.d.ts +7 -7
  83. package/dist/filter/default.filter.js +23 -23
  84. package/dist/filter/notfound.filter.d.ts +5 -5
  85. package/dist/filter/notfound.filter.js +20 -20
  86. package/dist/index.d.ts +106 -106
  87. package/dist/index.js +124 -124
  88. package/dist/interface.d.ts +29 -29
  89. package/dist/interface.js +3 -3
  90. package/dist/libs/crud-pro/CrudPro.d.ts +37 -37
  91. package/dist/libs/crud-pro/CrudPro.js +136 -136
  92. package/dist/libs/crud-pro/defaultConfigs.d.ts +4 -4
  93. package/dist/libs/crud-pro/defaultConfigs.js +15 -15
  94. package/dist/libs/crud-pro/exceptions.d.ts +106 -106
  95. package/dist/libs/crud-pro/exceptions.js +119 -119
  96. package/dist/libs/crud-pro/interfaces.d.ts +166 -166
  97. package/dist/libs/crud-pro/interfaces.js +12 -12
  98. package/dist/libs/crud-pro/models/ExecuteContext.d.ts +50 -50
  99. package/dist/libs/crud-pro/models/ExecuteContext.js +87 -87
  100. package/dist/libs/crud-pro/models/ExecuteContextFunc.d.ts +38 -38
  101. package/dist/libs/crud-pro/models/ExecuteContextFunc.js +72 -72
  102. package/dist/libs/crud-pro/models/FuncContext.d.ts +18 -18
  103. package/dist/libs/crud-pro/models/FuncContext.js +6 -6
  104. package/dist/libs/crud-pro/models/RequestCfgModel.d.ts +65 -65
  105. package/dist/libs/crud-pro/models/RequestCfgModel.js +81 -81
  106. package/dist/libs/crud-pro/models/RequestModel.d.ts +25 -25
  107. package/dist/libs/crud-pro/models/RequestModel.js +113 -113
  108. package/dist/libs/crud-pro/models/ResModel.d.ts +20 -20
  109. package/dist/libs/crud-pro/models/ResModel.js +2 -2
  110. package/dist/libs/crud-pro/models/ServiceHub.d.ts +20 -20
  111. package/dist/libs/crud-pro/models/ServiceHub.js +2 -2
  112. package/dist/libs/crud-pro/models/SqlCfgModel.d.ts +23 -23
  113. package/dist/libs/crud-pro/models/SqlCfgModel.js +40 -40
  114. package/dist/libs/crud-pro/models/SqlSegArg.d.ts +6 -6
  115. package/dist/libs/crud-pro/models/SqlSegArg.js +12 -12
  116. package/dist/libs/crud-pro/models/Transaction.d.ts +30 -30
  117. package/dist/libs/crud-pro/models/Transaction.js +74 -74
  118. package/dist/libs/crud-pro/models/TransactionMySQL.d.ts +29 -28
  119. package/dist/libs/crud-pro/models/TransactionMySQL.js +83 -76
  120. package/dist/libs/crud-pro/models/TransactionPostgres.d.ts +29 -28
  121. package/dist/libs/crud-pro/models/TransactionPostgres.js +91 -85
  122. package/dist/libs/crud-pro/models/TransactionSqlServer.d.ts +35 -34
  123. package/dist/libs/crud-pro/models/TransactionSqlServer.js +100 -92
  124. package/dist/libs/crud-pro/models/keys.d.ts +110 -110
  125. package/dist/libs/crud-pro/models/keys.js +154 -154
  126. package/dist/libs/crud-pro/services/CrudProCachedCfgService.d.ts +11 -11
  127. package/dist/libs/crud-pro/services/CrudProCachedCfgService.js +73 -73
  128. package/dist/libs/crud-pro/services/CrudProExecuteFuncService.d.ts +9 -9
  129. package/dist/libs/crud-pro/services/CrudProExecuteFuncService.js +125 -125
  130. package/dist/libs/crud-pro/services/CrudProExecuteSqlService.d.ts +17 -17
  131. package/dist/libs/crud-pro/services/CrudProExecuteSqlService.js +225 -225
  132. package/dist/libs/crud-pro/services/CrudProFieldUpdateService.d.ts +9 -9
  133. package/dist/libs/crud-pro/services/CrudProFieldUpdateService.js +51 -51
  134. package/dist/libs/crud-pro/services/CrudProFieldValidateService.d.ts +13 -13
  135. package/dist/libs/crud-pro/services/CrudProFieldValidateService.js +148 -148
  136. package/dist/libs/crud-pro/services/CrudProGenSqlCondition.d.ts +24 -24
  137. package/dist/libs/crud-pro/services/CrudProGenSqlCondition.js +355 -355
  138. package/dist/libs/crud-pro/services/CrudProGenSqlService.d.ts +25 -25
  139. package/dist/libs/crud-pro/services/CrudProGenSqlService.js +165 -165
  140. package/dist/libs/crud-pro/services/CrudProOriginToExecuteSql.d.ts +32 -32
  141. package/dist/libs/crud-pro/services/CrudProOriginToExecuteSql.js +339 -339
  142. package/dist/libs/crud-pro/services/CrudProServiceBase.d.ts +24 -24
  143. package/dist/libs/crud-pro/services/CrudProServiceBase.js +88 -88
  144. package/dist/libs/crud-pro/services/CrudProTableMetaService.d.ts +9 -9
  145. package/dist/libs/crud-pro/services/CrudProTableMetaService.js +72 -72
  146. package/dist/libs/crud-pro/services/CurdProServiceHub.d.ts +32 -32
  147. package/dist/libs/crud-pro/services/CurdProServiceHub.js +64 -64
  148. package/dist/libs/crud-pro/utils/CompareUtils.d.ts +9 -9
  149. package/dist/libs/crud-pro/utils/CompareUtils.js +25 -25
  150. package/dist/libs/crud-pro/utils/CrudMonitor.d.ts +9 -0
  151. package/dist/libs/crud-pro/utils/CrudMonitor.js +12 -0
  152. package/dist/libs/crud-pro/utils/DatabaseName.d.ts +9 -9
  153. package/dist/libs/crud-pro/utils/DatabaseName.js +50 -50
  154. package/dist/libs/crud-pro/utils/DateTimeUtils.d.ts +7 -7
  155. package/dist/libs/crud-pro/utils/DateTimeUtils.js +21 -21
  156. package/dist/libs/crud-pro/utils/MemoryRefreshCache.d.ts +19 -19
  157. package/dist/libs/crud-pro/utils/MemoryRefreshCache.js +47 -47
  158. package/dist/libs/crud-pro/utils/MessageParseUtils.d.ts +5 -5
  159. package/dist/libs/crud-pro/utils/MessageParseUtils.js +33 -33
  160. package/dist/libs/crud-pro/utils/MixinUtils.d.ts +39 -39
  161. package/dist/libs/crud-pro/utils/MixinUtils.js +255 -255
  162. package/dist/libs/crud-pro/utils/ModelUtils.d.ts +11 -11
  163. package/dist/libs/crud-pro/utils/ModelUtils.js +54 -54
  164. package/dist/libs/crud-pro/utils/MultiKeyMap.d.ts +11 -11
  165. package/dist/libs/crud-pro/utils/MultiKeyMap.js +63 -63
  166. package/dist/libs/crud-pro/utils/SqlFuncUtils.d.ts +5 -5
  167. package/dist/libs/crud-pro/utils/SqlFuncUtils.js +29 -29
  168. package/dist/libs/crud-pro/utils/TypeUtils.d.ts +40 -40
  169. package/dist/libs/crud-pro/utils/TypeUtils.js +166 -166
  170. package/dist/libs/crud-pro/utils/ValidateUtils.d.ts +3 -3
  171. package/dist/libs/crud-pro/utils/ValidateUtils.js +165 -165
  172. package/dist/libs/crud-pro/utils/pool/MySQLUtils.d.ts +3 -3
  173. package/dist/libs/crud-pro/utils/pool/MySQLUtils.js +19 -19
  174. package/dist/libs/crud-pro/utils/pool/PostgresUtils.d.ts +3 -3
  175. package/dist/libs/crud-pro/utils/pool/PostgresUtils.js +20 -20
  176. package/dist/libs/crud-pro/utils/pool/SqlServerUtils.d.ts +3 -3
  177. package/dist/libs/crud-pro/utils/pool/SqlServerUtils.js +20 -20
  178. package/dist/libs/crud-pro/utils/sqlConvert/convertColumnName.d.ts +4 -4
  179. package/dist/libs/crud-pro/utils/sqlConvert/convertColumnName.js +35 -35
  180. package/dist/libs/crud-pro/utils/sqlConvert/convertMix.d.ts +3 -3
  181. package/dist/libs/crud-pro/utils/sqlConvert/convertMix.js +22 -22
  182. package/dist/libs/crud-pro/utils/sqlConvert/convertMsSql.d.ts +2 -2
  183. package/dist/libs/crud-pro/utils/sqlConvert/convertMsSql.js +14 -14
  184. package/dist/libs/crud-pro/utils/sqlConvert/convertPgSql.d.ts +2 -2
  185. package/dist/libs/crud-pro/utils/sqlConvert/convertPgSql.js +14 -14
  186. package/dist/libs/crud-pro/utils/sqlConvert/convertPgType.d.ts +2 -2
  187. package/dist/libs/crud-pro/utils/sqlConvert/convertPgType.js +128 -128
  188. package/dist/libs/global-config/global-config.d.ts +69 -69
  189. package/dist/libs/global-config/global-config.js +36 -36
  190. package/dist/libs/utils/AsymmetricCrypto.d.ts +76 -76
  191. package/dist/libs/utils/AsymmetricCrypto.js +261 -261
  192. package/dist/libs/utils/base64.d.ts +9 -9
  193. package/dist/libs/utils/base64.js +42 -42
  194. package/dist/libs/utils/common-dto.d.ts +18 -18
  195. package/dist/libs/utils/common-dto.js +40 -40
  196. package/dist/libs/utils/crypto-utils.d.ts +3 -3
  197. package/dist/libs/utils/crypto-utils.js +46 -46
  198. package/dist/libs/utils/errorToString.d.ts +2 -2
  199. package/dist/libs/utils/errorToString.js +57 -57
  200. package/dist/libs/utils/fatcms-request.d.ts +30 -30
  201. package/dist/libs/utils/fatcms-request.js +104 -104
  202. package/dist/libs/utils/format-url.d.ts +2 -2
  203. package/dist/libs/utils/format-url.js +13 -13
  204. package/dist/libs/utils/functions.d.ts +5 -5
  205. package/dist/libs/utils/functions.js +76 -76
  206. package/dist/libs/utils/ordernum-utils.d.ts +2 -2
  207. package/dist/libs/utils/ordernum-utils.js +13 -13
  208. package/dist/libs/utils/parseConfig.d.ts +8 -8
  209. package/dist/libs/utils/parseConfig.js +47 -47
  210. package/dist/libs/utils/parseCreateSql.d.ts +10 -10
  211. package/dist/libs/utils/parseCreateSql.js +87 -87
  212. package/dist/libs/utils/render-utils.d.ts +37 -37
  213. package/dist/libs/utils/render-utils.js +154 -154
  214. package/dist/middleware/forbidden.middleware.d.ts +10 -10
  215. package/dist/middleware/forbidden.middleware.js +54 -54
  216. package/dist/middleware/global.middleware.d.ts +10 -10
  217. package/dist/middleware/global.middleware.js +273 -273
  218. package/dist/middleware/permission.middleware.d.ts +18 -18
  219. package/dist/middleware/permission.middleware.js +74 -74
  220. package/dist/middleware/rediscache.middleware.d.ts +3 -3
  221. package/dist/middleware/rediscache.middleware.js +77 -77
  222. package/dist/middleware/redislock.middleware.d.ts +7 -7
  223. package/dist/middleware/redislock.middleware.js +72 -72
  224. package/dist/middleware/tx.middleware.d.ts +9 -9
  225. package/dist/middleware/tx.middleware.js +40 -40
  226. package/dist/models/AsyncTaskModel.d.ts +74 -74
  227. package/dist/models/AsyncTaskModel.js +31 -31
  228. package/dist/models/RedisKeys.d.ts +15 -15
  229. package/dist/models/RedisKeys.js +18 -18
  230. package/dist/models/SystemEntities.d.ts +117 -117
  231. package/dist/models/SystemEntities.js +17 -17
  232. package/dist/models/SystemPerm.d.ts +95 -95
  233. package/dist/models/SystemPerm.js +100 -100
  234. package/dist/models/SystemTables.d.ts +25 -25
  235. package/dist/models/SystemTables.js +28 -28
  236. package/dist/models/WorkbenchInfoTools.d.ts +7 -7
  237. package/dist/models/WorkbenchInfoTools.js +20 -20
  238. package/dist/models/bizmodels.d.ts +138 -138
  239. package/dist/models/bizmodels.js +61 -61
  240. package/dist/models/contextLogger.d.ts +27 -27
  241. package/dist/models/contextLogger.js +119 -119
  242. package/dist/models/devops.d.ts +12 -12
  243. package/dist/models/devops.js +19 -19
  244. package/dist/models/userSession.d.ts +65 -65
  245. package/dist/models/userSession.js +168 -168
  246. package/dist/schedule/anonymousContext.d.ts +15 -15
  247. package/dist/schedule/anonymousContext.js +73 -73
  248. package/dist/schedule/index.d.ts +4 -4
  249. package/dist/schedule/index.js +10 -10
  250. package/dist/schedule/runSchedule.d.ts +12 -12
  251. package/dist/schedule/runSchedule.js +68 -68
  252. package/dist/schedule/scheduleNames.d.ts +15 -15
  253. package/dist/schedule/scheduleNames.js +19 -19
  254. package/dist/service/AuthService.d.ts +57 -57
  255. package/dist/service/AuthService.js +265 -265
  256. package/dist/service/EnumInfoService.d.ts +30 -30
  257. package/dist/service/EnumInfoService.js +97 -97
  258. package/dist/service/FileCenterService.d.ts +64 -64
  259. package/dist/service/FileCenterService.js +422 -422
  260. package/dist/service/SysAppService.d.ts +14 -14
  261. package/dist/service/SysAppService.js +96 -96
  262. package/dist/service/SysConfigService.d.ts +10 -10
  263. package/dist/service/SysConfigService.js +64 -64
  264. package/dist/service/SysDictDataService.d.ts +9 -9
  265. package/dist/service/SysDictDataService.js +72 -72
  266. package/dist/service/UserAccountService.d.ts +23 -23
  267. package/dist/service/UserAccountService.js +107 -107
  268. package/dist/service/UserSessionService.d.ts +43 -43
  269. package/dist/service/UserSessionService.js +163 -163
  270. package/dist/service/VisitStatService.d.ts +14 -14
  271. package/dist/service/VisitStatService.js +158 -158
  272. package/dist/service/WorkbenchService.d.ts +59 -59
  273. package/dist/service/WorkbenchService.js +249 -249
  274. package/dist/service/anyapi/AnyApiSandboxService.d.ts +15 -15
  275. package/dist/service/anyapi/AnyApiSandboxService.js +110 -110
  276. package/dist/service/anyapi/AnyApiService.d.ts +27 -27
  277. package/dist/service/anyapi/AnyApiService.js +181 -181
  278. package/dist/service/asyncTask/AsyncTaskRunnerService.d.ts +50 -50
  279. package/dist/service/asyncTask/AsyncTaskRunnerService.js +287 -287
  280. package/dist/service/asyncTask/AsyncTaskService.d.ts +7 -7
  281. package/dist/service/asyncTask/AsyncTaskService.js +34 -34
  282. package/dist/service/asyncTask/handler/ExcelInfoModel.d.ts +10 -10
  283. package/dist/service/asyncTask/handler/ExcelInfoModel.js +2 -2
  284. package/dist/service/asyncTask/handler/ExportExcelAsyncTaskHandler.d.ts +7 -7
  285. package/dist/service/asyncTask/handler/ExportExcelAsyncTaskHandler.js +216 -216
  286. package/dist/service/asyncTask/handler/ExportExcelByInnerHttpHandler.d.ts +36 -36
  287. package/dist/service/asyncTask/handler/ExportExcelByInnerHttpHandler.js +141 -141
  288. package/dist/service/asyncTask/handler/ExportExcelByStdCrudHandler.d.ts +46 -46
  289. package/dist/service/asyncTask/handler/ExportExcelByStdCrudHandler.js +135 -135
  290. package/dist/service/base/ApiBaseService.d.ts +15 -15
  291. package/dist/service/base/ApiBaseService.js +50 -50
  292. package/dist/service/base/ApiRateLimiter.d.ts +10 -10
  293. package/dist/service/base/ApiRateLimiter.js +51 -51
  294. package/dist/service/base/BaseService.d.ts +41 -41
  295. package/dist/service/base/BaseService.js +101 -101
  296. package/dist/service/base/cache/CacheServiceFactory.d.ts +26 -26
  297. package/dist/service/base/cache/CacheServiceFactory.js +122 -122
  298. package/dist/service/base/cache/CtxCache.d.ts +18 -18
  299. package/dist/service/base/cache/CtxCache.js +37 -37
  300. package/dist/service/base/cache/DiskCache.d.ts +19 -19
  301. package/dist/service/base/cache/DiskCache.js +74 -74
  302. package/dist/service/base/cache/MemoryCache.d.ts +12 -12
  303. package/dist/service/base/cache/MemoryCache.js +58 -58
  304. package/dist/service/base/cache/NoneCache.d.ts +10 -10
  305. package/dist/service/base/cache/NoneCache.js +19 -19
  306. package/dist/service/base/cache/RedisCache.d.ts +14 -14
  307. package/dist/service/base/cache/RedisCache.js +31 -31
  308. package/dist/service/crudstd/CrudStdActionService.d.ts +17 -17
  309. package/dist/service/crudstd/CrudStdActionService.js +32 -32
  310. package/dist/service/crudstd/CrudStdConstant.d.ts +58 -58
  311. package/dist/service/crudstd/CrudStdConstant.js +64 -64
  312. package/dist/service/crudstd/CrudStdRelationService.d.ts +10 -10
  313. package/dist/service/crudstd/CrudStdRelationService.js +121 -121
  314. package/dist/service/crudstd/CrudStdService.d.ts +60 -60
  315. package/dist/service/crudstd/CrudStdService.js +376 -376
  316. package/dist/service/curd/CrudProQuick.d.ts +50 -50
  317. package/dist/service/curd/CrudProQuick.js +163 -163
  318. package/dist/service/curd/CurdMixByAccountService.d.ts +13 -13
  319. package/dist/service/curd/CurdMixByAccountService.js +151 -151
  320. package/dist/service/curd/CurdMixByDictService.d.ts +12 -12
  321. package/dist/service/curd/CurdMixByDictService.js +114 -114
  322. package/dist/service/curd/CurdMixByLinkToCustomService.d.ts +30 -30
  323. package/dist/service/curd/CurdMixByLinkToCustomService.js +209 -209
  324. package/dist/service/curd/CurdMixBySysConfigService.d.ts +13 -13
  325. package/dist/service/curd/CurdMixBySysConfigService.js +116 -116
  326. package/dist/service/curd/CurdMixByWorkbenchService.d.ts +11 -11
  327. package/dist/service/curd/CurdMixByWorkbenchService.js +80 -80
  328. package/dist/service/curd/CurdMixService.d.ts +28 -28
  329. package/dist/service/curd/CurdMixService.js +100 -100
  330. package/dist/service/curd/CurdMixUtils.d.ts +57 -57
  331. package/dist/service/curd/CurdMixUtils.js +331 -331
  332. package/dist/service/curd/CurdProService.d.ts +32 -32
  333. package/dist/service/curd/CurdProService.js +212 -212
  334. package/dist/service/curd/fixCfgModel.d.ts +3 -3
  335. package/dist/service/curd/fixCfgModel.js +104 -104
  336. package/dist/service/proxyapi/ProxyApiLoadService.d.ts +21 -21
  337. package/dist/service/proxyapi/ProxyApiLoadService.js +167 -167
  338. package/dist/service/proxyapi/ProxyApiService.d.ts +61 -61
  339. package/dist/service/proxyapi/ProxyApiService.js +294 -294
  340. package/dist/service/proxyapi/ProxyApiUtils.d.ts +15 -15
  341. package/dist/service/proxyapi/ProxyApiUtils.js +34 -34
  342. package/dist/service/proxyapi/RouteHandler.d.ts +5 -5
  343. package/dist/service/proxyapi/RouteHandler.js +9 -9
  344. package/dist/service/proxyapi/RouteTrie.d.ts +12 -12
  345. package/dist/service/proxyapi/RouteTrie.js +63 -63
  346. package/dist/service/proxyapi/WeightedRandom.d.ts +9 -9
  347. package/dist/service/proxyapi/WeightedRandom.js +31 -31
  348. package/dist/service/proxyapi/WeightedRoundRobin.d.ts +8 -8
  349. package/dist/service/proxyapi/WeightedRoundRobin.js +32 -32
  350. package/index.d.ts +10 -10
  351. package/package.json +87 -87
  352. package/src/controller/base/BaseApiController.ts +7 -2
  353. package/src/controller/manage/SuperAdminManageApi.ts +6 -6
  354. package/src/controller/manage/SystemInfoManageApi.ts +2 -0
  355. package/src/libs/crud-pro/models/TransactionMySQL.ts +13 -3
  356. package/src/libs/crud-pro/models/TransactionPostgres.ts +9 -3
  357. package/src/libs/crud-pro/models/TransactionSqlServer.ts +19 -8
  358. package/src/libs/crud-pro/utils/CrudMonitor.ts +13 -0
  359. package/src/libs/utils/AsymmetricCrypto.ts +307 -307
  360. package/src/libs/utils/format-url.ts +15 -15
  361. package/src/libs/utils/render-utils.ts +216 -216
  362. package/src/models/WorkbenchInfoTools.ts +19 -19
  363. package/src/service/SysAppService.ts +88 -88
  364. package/src/service/SysDictDataService.ts +63 -63
  365. package/src/service/WorkbenchService.ts +277 -277
  366. package/src/service/base/cache/CacheServiceFactory.ts +135 -135
  367. package/src/service/base/cache/CtxCache.ts +45 -45
  368. package/src/service/base/cache/DiskCache.ts +82 -82
  369. package/src/service/base/cache/MemoryCache.ts +68 -68
  370. package/src/service/base/cache/NoneCache.ts +24 -24
  371. package/src/service/base/cache/RedisCache.ts +41 -41
  372. package/tsconfig.json +32 -32
@@ -1,216 +1,216 @@
1
- import * as _ from 'lodash';
2
- import * as moment from 'moment';
3
- import { Context } from '@midwayjs/koa';
4
- import { parseJsonObject } from './functions';
5
- import { getExtLocalLoaderPort } from './fatcms-request';
6
- import { TypeUtils } from '../crud-pro/utils/TypeUtils';
7
- import { ISessionInfo } from '@/models/userSession';
8
-
9
- // const demo = {"schema":[
10
- // {"title":"资源配置","name":"fileList","type":"array","properties":{"fileUrl":{"label":"文件URL","component":"Input","xProps":{"hasClear":true},"width":500}}}],
11
- // "data":{"fileList":[{"settingKey":"n1iqmu8qnc_1","fileUrl":"aa"},{"settingKey":"n1iqmu8rml_2","fileUrl":"aa"}]
12
- // }}
13
-
14
- interface IFileElement {
15
- fileUrl: string;
16
- fileType?: string;
17
- isModule?: boolean;
18
- }
19
-
20
- interface IRenderUtilsProps {
21
- ctx: Context;
22
- package_assets: any;
23
- workbenchInfo: any;
24
- userInfo?: ISessionInfo;
25
- appInfo?: any;
26
- fatcmscsrftoken: string;
27
- }
28
-
29
- function parseCookie(cookieStr: string): any {
30
- const cookies = {};
31
-
32
- if (!cookieStr) {
33
- return cookies;
34
- }
35
-
36
- // 分割每个 cookie 项
37
- const cookieItems = cookieStr.split(';');
38
-
39
- for (const item of cookieItems) {
40
- // 去除空白字符
41
- const trimmedItem = item.trim();
42
- if (!trimmedItem) {
43
- continue;
44
- }
45
-
46
- // 找到第一个等号的位置
47
- const eqIndex = trimmedItem.indexOf('=');
48
- if (eqIndex === -1) {
49
- continue;
50
- }
51
-
52
- // 提取 key 和 value
53
- const key = trimmedItem.substring(0, eqIndex).trim();
54
- const value = trimmedItem.substring(eqIndex + 1).trim();
55
-
56
- // 处理可能的引号
57
- if (value.startsWith('"') && value.endsWith('"')) {
58
- cookies[key] = value.slice(1, -1);
59
- } else {
60
- cookies[key] = value;
61
- }
62
- }
63
-
64
- return cookies;
65
- }
66
-
67
-
68
- function isMobileUserAgent(userAgent = '') {
69
- // 空值处理
70
- if (!userAgent) return false;
71
-
72
- // 转为小写统一匹配
73
- const ua = userAgent.toLowerCase();
74
-
75
- // 【核心】移动端关键词(覆盖主流系统)
76
- const mobileKeywords = /android|iphone|ipod|ios|mobile|blackberry|iemobile|opera mini|windows phone|harmonyos/i;
77
- // 【排除项】平板/PC关键词(避免误判)
78
- const excludeKeywords = /ipad|tablet|playbook|kindle|pc|windows nt|macintosh|linux x86_64/i;
79
-
80
- // 判断规则:包含移动端关键词 + 不包含排除项关键词
81
- const isMatchMobile = mobileKeywords.test(ua);
82
- const isExclude = excludeKeywords.test(ua);
83
-
84
- return isMatchMobile && !isExclude;
85
- }
86
-
87
- class RenderUtils {
88
- public readonly ctx: Context;
89
- public readonly fileList: IFileElement[];
90
- public readonly workbenchInfo: any;
91
- public readonly userInfo: ISessionInfo;
92
- public readonly appInfo: any;
93
- public readonly cookieInfo: any;
94
- public readonly fatcmscsrftoken: string;
95
- public readonly isMobileUserAgent: boolean;
96
- public readonly isMobileByQuery: boolean;
97
-
98
- constructor(props: IRenderUtilsProps) {
99
- this.ctx = props.ctx;
100
- const query = props.ctx?.query || {};
101
- const headers = props.ctx?.headers || {};
102
- this.workbenchInfo = props.workbenchInfo || {};
103
- this.userInfo = props.userInfo || ({} as ISessionInfo);
104
- this.appInfo = props.appInfo || {};
105
- this.fatcmscsrftoken = props.fatcmscsrftoken;
106
- this.cookieInfo = parseCookie(headers?.cookie);
107
- this.isMobileUserAgent = isMobileUserAgent(headers['user-agent'] || '');
108
- this.isMobileByQuery = `${query['__is_mobile_request__']}` === 'true'
109
-
110
- const packageAssets = parseJsonObject(props.package_assets) || {};
111
- const fileList = _.get(packageAssets, 'data.fileList');
112
-
113
-
114
- if (Array.isArray(fileList)) {
115
- this.fileList = fileList.filter(f => {
116
- return f && f.fileUrl && typeof f.fileUrl === 'string' && f.fileUrl.length > 5; // 至少五个字符。
117
- });
118
- } else {
119
- this.fileList = [];
120
- const time = moment().format('YYYY-MM-DD HH:mm:ss.SSS');
121
- console.info(
122
- time +
123
- ' 解析fileList为空==>' +
124
- JSON.stringify({
125
- workbench_code: this.workbenchInfo?.workbench_code,
126
- app_code: this.appInfo?.app_code,
127
- })
128
- );
129
- }
130
- }
131
-
132
- renderCsrfToken() {
133
- return `<script>window.__fatcmscsrftoken = "${this.fatcmscsrftoken}";</script>`;
134
- }
135
-
136
- renderUserInfo() {
137
- const userInfoClone = { ...this.userInfo };
138
- delete userInfoClone.privateKey;
139
- return `<script>window.__user_info = ${JSON.stringify(userInfoClone)} </script>`;
140
- }
141
-
142
- renderWorkbenchInfo() {
143
- const infoPick = _.pick(this.workbenchInfo, ['id', 'workbench_code', 'workbench_name', 'workbench_domain', 'workbench_desc', 'config_type', 'config_content']);
144
- return `<script>window.__workbench_info = ${JSON.stringify(infoPick)}</script>`;
145
- }
146
-
147
- renderAppInfo() {
148
- const infoPick = _.pick(this.appInfo, ['id', 'app_code', 'app_name', 'app_type', 'app_desc', 'config_type', 'config_content']);
149
- return `<script>window.__app_info = ${JSON.stringify(infoPick)}</script>`;
150
- }
151
-
152
-
153
-
154
-
155
-
156
- renderCookieInfo(keys: string) {
157
- try {
158
- const cookies = this.cookieInfo;
159
- const cookieObj = {};
160
- if (typeof keys === 'string') {
161
- const keyArr = keys.split(',');
162
- for (let i = 0; i < keyArr.length; i++) {
163
- const keyName = keyArr[i];
164
- cookieObj[keyName] = cookies[keyName];
165
- }
166
- }
167
- return `<script>window.__cookie_info = ${JSON.stringify(cookieObj)}</script>`;
168
- } catch (e) {
169
- return `<script>window.__cookie_info_error = ${e}; </script>`;
170
- }
171
- }
172
-
173
-
174
-
175
-
176
- renderJsAssets() {
177
- const fileList = this.fileList.filter(s => {
178
- return s.fileType === 'js' || s.fileUrl.endsWith('.js');
179
- });
180
- const arr = fileList.map(f => {
181
- if (f.isModule) {
182
- return `<script type="module" crossorigin src="${f.fileUrl}" ></script>`;
183
- }
184
- return `<script src="${f.fileUrl}" ></script>`;
185
- });
186
- return arr.join('\n');
187
- }
188
-
189
- renderCssAssets() {
190
- const fileList = this.fileList.filter(s => {
191
- return s.fileType === 'css' || s.fileUrl.endsWith('.css');
192
- });
193
- const fileUrlList = fileList.map(f => {
194
- return f.fileUrl;
195
- });
196
-
197
- const arr = fileUrlList.map(url => {
198
- return `<link href="${url}" rel="stylesheet" />`;
199
- });
200
- return arr.join('\n');
201
- }
202
-
203
- renderExtLocalLoaderPortByDevHeader() {
204
- const loaderPort = getExtLocalLoaderPort(this.ctx);
205
- if (loaderPort && TypeUtils.isNumeric(loaderPort)) {
206
- return `<script>window.__local_loader_port_from_dev_header = ${loaderPort}</script>`;
207
- }
208
- return '';
209
- }
210
- }
211
-
212
- function createRenderUtils(props: IRenderUtilsProps) {
213
- return new RenderUtils(props);
214
- }
215
-
216
- export { createRenderUtils };
1
+ import * as _ from 'lodash';
2
+ import * as moment from 'moment';
3
+ import { Context } from '@midwayjs/koa';
4
+ import { parseJsonObject } from './functions';
5
+ import { getExtLocalLoaderPort } from './fatcms-request';
6
+ import { TypeUtils } from '../crud-pro/utils/TypeUtils';
7
+ import { ISessionInfo } from '@/models/userSession';
8
+
9
+ // const demo = {"schema":[
10
+ // {"title":"资源配置","name":"fileList","type":"array","properties":{"fileUrl":{"label":"文件URL","component":"Input","xProps":{"hasClear":true},"width":500}}}],
11
+ // "data":{"fileList":[{"settingKey":"n1iqmu8qnc_1","fileUrl":"aa"},{"settingKey":"n1iqmu8rml_2","fileUrl":"aa"}]
12
+ // }}
13
+
14
+ interface IFileElement {
15
+ fileUrl: string;
16
+ fileType?: string;
17
+ isModule?: boolean;
18
+ }
19
+
20
+ interface IRenderUtilsProps {
21
+ ctx: Context;
22
+ package_assets: any;
23
+ workbenchInfo: any;
24
+ userInfo?: ISessionInfo;
25
+ appInfo?: any;
26
+ fatcmscsrftoken: string;
27
+ }
28
+
29
+ function parseCookie(cookieStr: string): any {
30
+ const cookies = {};
31
+
32
+ if (!cookieStr) {
33
+ return cookies;
34
+ }
35
+
36
+ // 分割每个 cookie 项
37
+ const cookieItems = cookieStr.split(';');
38
+
39
+ for (const item of cookieItems) {
40
+ // 去除空白字符
41
+ const trimmedItem = item.trim();
42
+ if (!trimmedItem) {
43
+ continue;
44
+ }
45
+
46
+ // 找到第一个等号的位置
47
+ const eqIndex = trimmedItem.indexOf('=');
48
+ if (eqIndex === -1) {
49
+ continue;
50
+ }
51
+
52
+ // 提取 key 和 value
53
+ const key = trimmedItem.substring(0, eqIndex).trim();
54
+ const value = trimmedItem.substring(eqIndex + 1).trim();
55
+
56
+ // 处理可能的引号
57
+ if (value.startsWith('"') && value.endsWith('"')) {
58
+ cookies[key] = value.slice(1, -1);
59
+ } else {
60
+ cookies[key] = value;
61
+ }
62
+ }
63
+
64
+ return cookies;
65
+ }
66
+
67
+
68
+ function isMobileUserAgent(userAgent = '') {
69
+ // 空值处理
70
+ if (!userAgent) return false;
71
+
72
+ // 转为小写统一匹配
73
+ const ua = userAgent.toLowerCase();
74
+
75
+ // 【核心】移动端关键词(覆盖主流系统)
76
+ const mobileKeywords = /android|iphone|ipod|ios|mobile|blackberry|iemobile|opera mini|windows phone|harmonyos/i;
77
+ // 【排除项】平板/PC关键词(避免误判)
78
+ const excludeKeywords = /ipad|tablet|playbook|kindle|pc|windows nt|macintosh|linux x86_64/i;
79
+
80
+ // 判断规则:包含移动端关键词 + 不包含排除项关键词
81
+ const isMatchMobile = mobileKeywords.test(ua);
82
+ const isExclude = excludeKeywords.test(ua);
83
+
84
+ return isMatchMobile && !isExclude;
85
+ }
86
+
87
+ class RenderUtils {
88
+ public readonly ctx: Context;
89
+ public readonly fileList: IFileElement[];
90
+ public readonly workbenchInfo: any;
91
+ public readonly userInfo: ISessionInfo;
92
+ public readonly appInfo: any;
93
+ public readonly cookieInfo: any;
94
+ public readonly fatcmscsrftoken: string;
95
+ public readonly isMobileUserAgent: boolean;
96
+ public readonly isMobileByQuery: boolean;
97
+
98
+ constructor(props: IRenderUtilsProps) {
99
+ this.ctx = props.ctx;
100
+ const query = props.ctx?.query || {};
101
+ const headers = props.ctx?.headers || {};
102
+ this.workbenchInfo = props.workbenchInfo || {};
103
+ this.userInfo = props.userInfo || ({} as ISessionInfo);
104
+ this.appInfo = props.appInfo || {};
105
+ this.fatcmscsrftoken = props.fatcmscsrftoken;
106
+ this.cookieInfo = parseCookie(headers?.cookie);
107
+ this.isMobileUserAgent = isMobileUserAgent(headers['user-agent'] || '');
108
+ this.isMobileByQuery = `${query['__is_mobile_request__']}` === 'true'
109
+
110
+ const packageAssets = parseJsonObject(props.package_assets) || {};
111
+ const fileList = _.get(packageAssets, 'data.fileList');
112
+
113
+
114
+ if (Array.isArray(fileList)) {
115
+ this.fileList = fileList.filter(f => {
116
+ return f && f.fileUrl && typeof f.fileUrl === 'string' && f.fileUrl.length > 5; // 至少五个字符。
117
+ });
118
+ } else {
119
+ this.fileList = [];
120
+ const time = moment().format('YYYY-MM-DD HH:mm:ss.SSS');
121
+ console.info(
122
+ time +
123
+ ' 解析fileList为空==>' +
124
+ JSON.stringify({
125
+ workbench_code: this.workbenchInfo?.workbench_code,
126
+ app_code: this.appInfo?.app_code,
127
+ })
128
+ );
129
+ }
130
+ }
131
+
132
+ renderCsrfToken() {
133
+ return `<script>window.__fatcmscsrftoken = "${this.fatcmscsrftoken}";</script>`;
134
+ }
135
+
136
+ renderUserInfo() {
137
+ const userInfoClone = { ...this.userInfo };
138
+ delete userInfoClone.privateKey;
139
+ return `<script>window.__user_info = ${JSON.stringify(userInfoClone)} </script>`;
140
+ }
141
+
142
+ renderWorkbenchInfo() {
143
+ const infoPick = _.pick(this.workbenchInfo, ['id', 'workbench_code', 'workbench_name', 'workbench_domain', 'workbench_desc', 'config_type', 'config_content']);
144
+ return `<script>window.__workbench_info = ${JSON.stringify(infoPick)}</script>`;
145
+ }
146
+
147
+ renderAppInfo() {
148
+ const infoPick = _.pick(this.appInfo, ['id', 'app_code', 'app_name', 'app_type', 'app_desc', 'config_type', 'config_content']);
149
+ return `<script>window.__app_info = ${JSON.stringify(infoPick)}</script>`;
150
+ }
151
+
152
+
153
+
154
+
155
+
156
+ renderCookieInfo(keys: string) {
157
+ try {
158
+ const cookies = this.cookieInfo;
159
+ const cookieObj = {};
160
+ if (typeof keys === 'string') {
161
+ const keyArr = keys.split(',');
162
+ for (let i = 0; i < keyArr.length; i++) {
163
+ const keyName = keyArr[i];
164
+ cookieObj[keyName] = cookies[keyName];
165
+ }
166
+ }
167
+ return `<script>window.__cookie_info = ${JSON.stringify(cookieObj)}</script>`;
168
+ } catch (e) {
169
+ return `<script>window.__cookie_info_error = ${e}; </script>`;
170
+ }
171
+ }
172
+
173
+
174
+
175
+
176
+ renderJsAssets() {
177
+ const fileList = this.fileList.filter(s => {
178
+ return s.fileType === 'js' || s.fileUrl.endsWith('.js');
179
+ });
180
+ const arr = fileList.map(f => {
181
+ if (f.isModule) {
182
+ return `<script type="module" crossorigin src="${f.fileUrl}" ></script>`;
183
+ }
184
+ return `<script src="${f.fileUrl}" ></script>`;
185
+ });
186
+ return arr.join('\n');
187
+ }
188
+
189
+ renderCssAssets() {
190
+ const fileList = this.fileList.filter(s => {
191
+ return s.fileType === 'css' || s.fileUrl.endsWith('.css');
192
+ });
193
+ const fileUrlList = fileList.map(f => {
194
+ return f.fileUrl;
195
+ });
196
+
197
+ const arr = fileUrlList.map(url => {
198
+ return `<link href="${url}" rel="stylesheet" />`;
199
+ });
200
+ return arr.join('\n');
201
+ }
202
+
203
+ renderExtLocalLoaderPortByDevHeader() {
204
+ const loaderPort = getExtLocalLoaderPort(this.ctx);
205
+ if (loaderPort && TypeUtils.isNumeric(loaderPort)) {
206
+ return `<script>window.__local_loader_port_from_dev_header = ${loaderPort}</script>`;
207
+ }
208
+ return '';
209
+ }
210
+ }
211
+
212
+ function createRenderUtils(props: IRenderUtilsProps) {
213
+ return new RenderUtils(props);
214
+ }
215
+
216
+ export { createRenderUtils };
@@ -1,19 +1,19 @@
1
- import { parseJsonObject } from "@/libs/utils/functions";
2
- import { IWorkbenchConfig, IWorkbenchEntity} from "./SystemEntities";
3
-
4
-
5
-
6
- export class WorkbenchInfoTools {
7
- private parsedConfigContent: IWorkbenchConfig = null;
8
- constructor(private readonly workbenchInfo: IWorkbenchEntity) {
9
- }
10
-
11
- public getWorkbenchConfig(): IWorkbenchConfig {
12
- if (this.parsedConfigContent) {
13
- return this.parsedConfigContent;
14
- }
15
- const configObj: IWorkbenchConfig = parseJsonObject(this.workbenchInfo?.config_content);
16
- this.parsedConfigContent = configObj || {};
17
- return this.parsedConfigContent;
18
- }
19
- }
1
+ import { parseJsonObject } from "@/libs/utils/functions";
2
+ import { IWorkbenchConfig, IWorkbenchEntity} from "./SystemEntities";
3
+
4
+
5
+
6
+ export class WorkbenchInfoTools {
7
+ private parsedConfigContent: IWorkbenchConfig = null;
8
+ constructor(private readonly workbenchInfo: IWorkbenchEntity) {
9
+ }
10
+
11
+ public getWorkbenchConfig(): IWorkbenchConfig {
12
+ if (this.parsedConfigContent) {
13
+ return this.parsedConfigContent;
14
+ }
15
+ const configObj: IWorkbenchConfig = parseJsonObject(this.workbenchInfo?.config_content);
16
+ this.parsedConfigContent = configObj || {};
17
+ return this.parsedConfigContent;
18
+ }
19
+ }
@@ -1,88 +1,88 @@
1
- import {Inject, Provide} from '@midwayjs/core';
2
- import {SystemTables} from '@/models/SystemTables';
3
- import {BaseService} from './base/BaseService';
4
- import {CurdProService} from './curd/CurdProService';
5
- import {GLOBAL_STATIC_CONFIG} from '@/libs/global-config/global-config';
6
- import {CacheServiceFactory} from "@/service/base/cache/CacheServiceFactory";
7
- import {CacheNameEnum} from "@/models/bizmodels";
8
-
9
- @Provide()
10
- export class SysAppService extends BaseService {
11
-
12
- @Inject()
13
- private curdProService: CurdProService;
14
-
15
- @Inject()
16
- private cacheServiceFactory: CacheServiceFactory;
17
-
18
- private get sysAppDao(){
19
- const { SystemDbName, SystemDbType } = GLOBAL_STATIC_CONFIG.getConfig();
20
- return this.curdProService.getBbUtil(SystemDbName, SystemDbType, SystemTables.sys_app)
21
- }
22
-
23
- private get sysAppPageDao(){
24
- const { SystemDbName, SystemDbType } = GLOBAL_STATIC_CONFIG.getConfig();
25
- return this.curdProService.getBbUtil(SystemDbName, SystemDbType, SystemTables.sys_app_page)
26
- }
27
-
28
-
29
- async getSysAppPageOne({page_path,workbench_code}:{page_path: string,workbench_code: string}): Promise<any> {
30
- if (!page_path || typeof page_path !== 'string') {
31
- throw new Error('[getSysAppPageOne] page_path required');
32
- }
33
- if (!workbench_code || typeof workbench_code !== 'string') {
34
- throw new Error('[getSysAppPageOne] workbench_code required');
35
- }
36
- return await this.cacheServiceFactory.getJsonObjectCache({
37
- cacheKey: `${workbench_code}#${page_path}`,
38
- cacheName: CacheNameEnum.GetSysAppPageOne,
39
- getter: async () => {
40
- return await this.sysAppPageDao.getUniqueOne({
41
- condition: {page_path, workbench_code, deleted_at: 0}
42
- });
43
- },
44
- });
45
- }
46
-
47
-
48
- async getSysAppOne(app_code: string): Promise<any> {
49
- if (!app_code || typeof app_code !== 'string') {
50
- throw new Error('[getSysAppOne] app_code required');
51
- }
52
- return await this.cacheServiceFactory.getJsonObjectCache({
53
- cacheKey: app_code,
54
- cacheName: CacheNameEnum.GetSysAppOne,
55
- getter: async () => {
56
- return await this.sysAppDao.getUniqueOne({
57
- condition: {app_code, deleted_at: 0}
58
- });
59
- },
60
- });
61
- }
62
-
63
- public deletePrivateField(parsedAppInfo: any){
64
- if (!parsedAppInfo) {
65
- return null;
66
- }
67
- const parsedAppInfo2: any = { ...parsedAppInfo };
68
- delete parsedAppInfo2.created_at;
69
- delete parsedAppInfo2.created_by;
70
- delete parsedAppInfo2.workbench_code_array;
71
- delete parsedAppInfo2.modified_at;
72
- delete parsedAppInfo2.modified_by;
73
- delete parsedAppInfo2.modified_desc;
74
- delete parsedAppInfo2.std_crud_db;
75
- delete parsedAppInfo2.std_crud_tbl;
76
- return parsedAppInfo2;
77
- }
78
-
79
- async removeSysAppOneCache(app_code: string) {
80
- if (!app_code || typeof app_code !== 'string') {
81
- throw new Error('[removeSysAppOneCache] app_code required');
82
- }
83
- return await this.cacheServiceFactory.removeItemCache({
84
- cacheKey: app_code,
85
- cacheName: CacheNameEnum.GetSysAppOne
86
- });
87
- }
88
- }
1
+ import {Inject, Provide} from '@midwayjs/core';
2
+ import {SystemTables} from '@/models/SystemTables';
3
+ import {BaseService} from './base/BaseService';
4
+ import {CurdProService} from './curd/CurdProService';
5
+ import {GLOBAL_STATIC_CONFIG} from '@/libs/global-config/global-config';
6
+ import {CacheServiceFactory} from "@/service/base/cache/CacheServiceFactory";
7
+ import {CacheNameEnum} from "@/models/bizmodels";
8
+
9
+ @Provide()
10
+ export class SysAppService extends BaseService {
11
+
12
+ @Inject()
13
+ private curdProService: CurdProService;
14
+
15
+ @Inject()
16
+ private cacheServiceFactory: CacheServiceFactory;
17
+
18
+ private get sysAppDao(){
19
+ const { SystemDbName, SystemDbType } = GLOBAL_STATIC_CONFIG.getConfig();
20
+ return this.curdProService.getBbUtil(SystemDbName, SystemDbType, SystemTables.sys_app)
21
+ }
22
+
23
+ private get sysAppPageDao(){
24
+ const { SystemDbName, SystemDbType } = GLOBAL_STATIC_CONFIG.getConfig();
25
+ return this.curdProService.getBbUtil(SystemDbName, SystemDbType, SystemTables.sys_app_page)
26
+ }
27
+
28
+
29
+ async getSysAppPageOne({page_path,workbench_code}:{page_path: string,workbench_code: string}): Promise<any> {
30
+ if (!page_path || typeof page_path !== 'string') {
31
+ throw new Error('[getSysAppPageOne] page_path required');
32
+ }
33
+ if (!workbench_code || typeof workbench_code !== 'string') {
34
+ throw new Error('[getSysAppPageOne] workbench_code required');
35
+ }
36
+ return await this.cacheServiceFactory.getJsonObjectCache({
37
+ cacheKey: `${workbench_code}#${page_path}`,
38
+ cacheName: CacheNameEnum.GetSysAppPageOne,
39
+ getter: async () => {
40
+ return await this.sysAppPageDao.getUniqueOne({
41
+ condition: {page_path, workbench_code, deleted_at: 0}
42
+ });
43
+ },
44
+ });
45
+ }
46
+
47
+
48
+ async getSysAppOne(app_code: string): Promise<any> {
49
+ if (!app_code || typeof app_code !== 'string') {
50
+ throw new Error('[getSysAppOne] app_code required');
51
+ }
52
+ return await this.cacheServiceFactory.getJsonObjectCache({
53
+ cacheKey: app_code,
54
+ cacheName: CacheNameEnum.GetSysAppOne,
55
+ getter: async () => {
56
+ return await this.sysAppDao.getUniqueOne({
57
+ condition: {app_code, deleted_at: 0}
58
+ });
59
+ },
60
+ });
61
+ }
62
+
63
+ public deletePrivateField(parsedAppInfo: any){
64
+ if (!parsedAppInfo) {
65
+ return null;
66
+ }
67
+ const parsedAppInfo2: any = { ...parsedAppInfo };
68
+ delete parsedAppInfo2.created_at;
69
+ delete parsedAppInfo2.created_by;
70
+ delete parsedAppInfo2.workbench_code_array;
71
+ delete parsedAppInfo2.modified_at;
72
+ delete parsedAppInfo2.modified_by;
73
+ delete parsedAppInfo2.modified_desc;
74
+ delete parsedAppInfo2.std_crud_db;
75
+ delete parsedAppInfo2.std_crud_tbl;
76
+ return parsedAppInfo2;
77
+ }
78
+
79
+ async removeSysAppOneCache(app_code: string) {
80
+ if (!app_code || typeof app_code !== 'string') {
81
+ throw new Error('[removeSysAppOneCache] app_code required');
82
+ }
83
+ return await this.cacheServiceFactory.removeItemCache({
84
+ cacheKey: app_code,
85
+ cacheName: CacheNameEnum.GetSysAppOne
86
+ });
87
+ }
88
+ }