From b4a0a1c2528a0198662a8e8b0d0cc35df40b3714 Mon Sep 17 00:00:00 2001 From: cheney <1251790704@qq.com> Date: Fri, 23 Feb 2024 17:37:02 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AD=89=E4=BF=9D=E6=B5=8B=E8=AF=95=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- log/project_manager.log | 2433 +++++++++++++++++ .../java/com/huoran/iasf/IASFApplication.java | 2 + .../advice/DecryptHttpInputMessage.java | 98 + .../advice/EncryptRequestBodyAdvice.java | 77 + .../advice/EncryptResponseBodyAdvice.java | 81 + .../iasf/common/annotation/Decrypt.java | 28 + .../common/annotation/EnableSecurity.java | 24 + .../iasf/common/annotation/Encrypt.java | 14 + .../iasf/common/config/SecretKeyConfig.java | 77 + .../iasf/common/config/WebMvcConfigurer.java | 5 +- .../exception/EncryptRequestException.java | 14 + .../exception/code/BaseResponseCode.java | 16 +- .../handler/RestExceptionHandler.java | 19 +- .../huoran/iasf/common/filter/XSSFilter.java | 56 + .../filter/XssHttpServletRequestWrapper.java | 224 ++ .../huoran/iasf/common/shiro/ShiroConfig.java | 1 + .../huoran/iasf/common/utils/Base64Util.java | 31 + .../huoran/iasf/common/utils/JsonUtils.java | 30 + .../com/huoran/iasf/common/utils/RSAUtil.java | 103 + .../iasf/common/utils/fileUploadUtils.java | 119 + .../iasf/controller/DeptController.java | 12 +- .../iasf/controller/RoleController.java | 20 +- .../huoran/iasf/controller/SeoController.java | 76 + .../iasf/controller/SysColumnController.java | 47 +- .../SysColumnLongPageController.java | 6 +- .../SysContentClassificationController.java | 32 +- .../iasf/controller/SysContentController.java | 56 +- .../controller/SysContentLabelController.java | 23 +- .../iasf/controller/SysFilesController.java | 9 +- .../SysNavigationStyleController.java | 4 +- .../iasf/controller/UserController.java | 60 +- .../iasf/controller/UserGroupController.java | 11 +- src/main/java/com/huoran/iasf/entity/Seo.java | 44 + .../com/huoran/iasf/mapper/SeoMapper.java | 16 + .../com/huoran/iasf/mapper/SysUserMapper.java | 2 +- .../com/huoran/iasf/mapper/xml/SeoMapper.xml | 5 + .../huoran/iasf/mapper/xml/SysFilesMapper.xml | 1 - .../iasf/service/HttpSessionService.java | 4 +- .../com/huoran/iasf/service/RoleService.java | 2 +- .../com/huoran/iasf/service/SeoService.java | 16 + .../com/huoran/iasf/service/UserService.java | 4 +- .../service/impl/PermissionServiceImpl.java | 2 +- .../iasf/service/impl/RoleServiceImpl.java | 6 +- .../iasf/service/impl/SeoServiceImpl.java | 20 + .../iasf/service/impl/UserServiceImpl.java | 40 +- .../com/huoran/iasf/vo/req/AllTheQuery.java | 13 + .../iasf/vo/req/ArticleEnableOrDisable.java | 12 + .../iasf/vo/req/ArticleTopOperation.java | 12 + .../com/huoran/iasf/vo/req/CheckForHeavy.java | 15 + .../iasf/vo/req/LabelCheckForHeavy.java | 16 + .../iasf/vo/req/OneLevelChecksThemAll.java | 18 + .../vo/req/SubLevelColumnsUnderALevel.java | 13 + .../com/huoran/iasf/vo/resp/LoginRespVO.java | 1 + src/main/resources/application-dev.yml | 9 +- src/main/resources/application-prod.yml | 8 +- src/main/resources/application.yml | 14 + .../com/company/project/CodeGenerator.java | 8 +- .../spring-configuration-metadata.json | 67 + target/classes/application-dev.yml | 46 + target/classes/application-prod.yml | 39 + target/classes/application-test.yml | 30 + target/classes/application.yml | 59 + .../com/huoran/iasf/IASFApplication.class | Bin 0 -> 2183 bytes .../advice/DecryptHttpInputMessage.class | Bin 0 -> 4926 bytes .../advice/EncryptRequestBodyAdvice.class | Bin 0 -> 4359 bytes .../advice/EncryptResponseBodyAdvice.class | Bin 0 -> 5014 bytes .../iasf/common/annotation/Decrypt.class | Bin 0 -> 542 bytes .../common/annotation/EnableSecurity.class | Bin 0 -> 729 bytes .../iasf/common/annotation/Encrypt.class | Bin 0 -> 441 bytes .../common/aop/annotation/DataScope.class | Bin 0 -> 449 bytes .../common/aop/annotation/LogAnnotation.class | Bin 0 -> 281 bytes .../aop/annotation/NoRepeatSubmit.class | Bin 0 -> 494 bytes .../common/aop/aspect/DataScopeAspect.class | Bin 0 -> 6171 bytes .../common/aop/aspect/NoRepeatSubmitAop.class | Bin 0 -> 5081 bytes .../common/aop/aspect/RedisServiceAop.class | Bin 0 -> 9549 bytes .../iasf/common/aop/aspect/SysLogAspect.class | Bin 0 -> 5151 bytes .../common/config/FileUploadProperties.class | Bin 0 -> 1866 bytes .../config/MetaObjectHandlerConfig.class | Bin 0 -> 2234 bytes .../common/config/MyBatisPlusConfig.class | Bin 0 -> 891 bytes .../iasf/common/config/MyCacheConfig.class | Bin 0 -> 2972 bytes .../iasf/common/config/MyThreadConfig.class | Bin 0 -> 1231 bytes .../NonStaticResourceHttpRequestConfig.class | Bin 0 -> 1143 bytes .../iasf/common/config/SecretKeyConfig.class | Bin 0 -> 1919 bytes .../common/config/SwaggerConfiguration.class | Bin 0 -> 2405 bytes .../iasf/common/config/WebMvcConfigurer.class | Bin 0 -> 8654 bytes .../common/exception/BusinessException.class | Bin 0 -> 760 bytes .../exception/EncryptRequestException.class | Bin 0 -> 460 bytes .../common/exception/NotFoundException.class | Bin 0 -> 760 bytes .../exception/UnauthorizedException.class | Bin 0 -> 772 bytes .../exception/code/BaseResponseCode.class | Bin 0 -> 6207 bytes .../code/ResponseCodeInterface.class | Bin 0 -> 225 bytes .../handler/RestExceptionHandler.class | Bin 0 -> 8732 bytes .../iasf/common/filter/AuthFilter.class | Bin 0 -> 4801 bytes .../huoran/iasf/common/filter/XSSFilter.class | Bin 0 -> 2236 bytes .../XssHttpServletRequestWrapper$1.class | Bin 0 -> 1365 bytes .../filter/XssHttpServletRequestWrapper.class | Bin 0 -> 6745 bytes .../iasf/common/job/task/TestTask.class | Bin 0 -> 820 bytes .../shiro/CustomAccessControlFilter.class | Bin 0 -> 6087 bytes .../CustomHashedCredentialsMatcher.class | Bin 0 -> 1772 bytes .../iasf/common/shiro/CustomRealm.class | Bin 0 -> 3500 bytes .../iasf/common/shiro/ShiroConfig.class | Bin 0 -> 4566 bytes .../huoran/iasf/common/utils/Base64Util.class | Bin 0 -> 795 bytes .../huoran/iasf/common/utils/Constant.class | Bin 0 -> 1758 bytes .../huoran/iasf/common/utils/DateUtils.class | Bin 0 -> 873 bytes .../huoran/iasf/common/utils/EmailUtils.class | Bin 0 -> 2571 bytes .../iasf/common/utils/ExcelAttribute.class | Bin 0 -> 526 bytes .../iasf/common/utils/ExcelImportHelper.class | Bin 0 -> 5625 bytes .../iasf/common/utils/ExcelStyleUtil.class | Bin 0 -> 5075 bytes .../huoran/iasf/common/utils/GenUtils.class | Bin 0 -> 3802 bytes .../iasf/common/utils/HttpContextUtils.class | Bin 0 -> 1415 bytes .../huoran/iasf/common/utils/IPUtils.class | Bin 0 -> 2103 bytes .../huoran/iasf/common/utils/JsonUtils.class | Bin 0 -> 1257 bytes .../iasf/common/utils/OkHttpUtils$1.class | Bin 0 -> 1616 bytes .../iasf/common/utils/OkHttpUtils$2.class | Bin 0 -> 1635 bytes .../common/utils/OkHttpUtils$ICallBack.class | Bin 0 -> 386 bytes .../iasf/common/utils/OkHttpUtils.class | Bin 0 -> 9088 bytes .../iasf/common/utils/PasswordEncoder.class | Bin 0 -> 3292 bytes .../iasf/common/utils/PasswordUtils.class | Bin 0 -> 1198 bytes .../com/huoran/iasf/common/utils/R.class | Bin 0 -> 4717 bytes .../huoran/iasf/common/utils/RSAUtil.class | Bin 0 -> 2949 bytes .../huoran/iasf/common/utils/RandomUtil.class | Bin 0 -> 2400 bytes .../iasf/common/utils/SMSTemplate.class | Bin 0 -> 634 bytes .../iasf/common/utils/SendSMSUtils.class | Bin 0 -> 3127 bytes .../common/utils/SpringContextUtils.class | Bin 0 -> 1154 bytes .../common/utils/TreeStructureUtils.class | Bin 0 -> 3745 bytes .../iasf/common/utils/fileUploadUtils.class | Bin 0 -> 3802 bytes .../iasf/controller/CaptchaController.class | Bin 0 -> 2593 bytes .../iasf/controller/DeptController.class | Bin 0 -> 4234 bytes .../iasf/controller/ExceptionController.class | Bin 0 -> 1071 bytes .../controller/PermissionController.class | Bin 0 -> 2871 bytes .../iasf/controller/RoleController.class | Bin 0 -> 9731 bytes .../controller/RolePermissionController.class | Bin 0 -> 1838 bytes .../iasf/controller/SeoController.class | Bin 0 -> 3463 bytes .../iasf/controller/SiteController.class | Bin 0 -> 6458 bytes .../iasf/controller/SysColumnController.class | Bin 0 -> 15145 bytes .../SysColumnLongPageController.class | Bin 0 -> 6560 bytes .../SysContentClassificationController.class | Bin 0 -> 6157 bytes .../controller/SysContentController.class | Bin 0 -> 11162 bytes .../controller/SysContentFileController.class | Bin 0 -> 4453 bytes .../SysContentLabelController.class | Bin 0 -> 5906 bytes .../iasf/controller/SysFilesController.class | Bin 0 -> 6840 bytes .../iasf/controller/SysLogController.class | Bin 0 -> 5367 bytes .../SysNavigationStyleController.class | Bin 0 -> 3891 bytes .../SysPageManagementController.class | Bin 0 -> 1675 bytes .../controller/SysTemplateController.class | Bin 0 -> 4345 bytes .../iasf/controller/UserController.class | Bin 0 -> 13343 bytes .../iasf/controller/UserDeptController.class | Bin 0 -> 523 bytes .../iasf/controller/UserGroupController.class | Bin 0 -> 7052 bytes .../iasf/controller/UserRoleController.class | Bin 0 -> 1758 bytes .../com/huoran/iasf/entity/BaseEntity.class | Bin 0 -> 3064 bytes .../com/huoran/iasf/entity/ColumnEntity.class | Bin 0 -> 4174 bytes .../classes/com/huoran/iasf/entity/Seo.class | Bin 0 -> 3853 bytes .../classes/com/huoran/iasf/entity/Site.class | Bin 0 -> 4171 bytes .../com/huoran/iasf/entity/SysColumn.class | Bin 0 -> 21290 bytes .../iasf/entity/SysColumnLongPage.class | Bin 0 -> 8205 bytes .../com/huoran/iasf/entity/SysContent.class | Bin 0 -> 43007 bytes .../entity/SysContentClassification.class | Bin 0 -> 6144 bytes .../huoran/iasf/entity/SysContentFile.class | Bin 0 -> 7264 bytes .../huoran/iasf/entity/SysContentLabel.class | Bin 0 -> 5331 bytes .../com/huoran/iasf/entity/SysDept.class | Bin 0 -> 6582 bytes .../iasf/entity/SysDictDetailEntity.class | Bin 0 -> 4866 bytes .../huoran/iasf/entity/SysDictEntity.class | Bin 0 -> 3381 bytes .../huoran/iasf/entity/SysFilesEntity.class | Bin 0 -> 9790 bytes .../com/huoran/iasf/entity/SysGenerator.class | Bin 0 -> 2738 bytes .../com/huoran/iasf/entity/SysJobEntity.class | Bin 0 -> 4964 bytes .../huoran/iasf/entity/SysJobLogEntity.class | Bin 0 -> 5327 bytes .../com/huoran/iasf/entity/SysLog.class | Bin 0 -> 6455 bytes .../iasf/entity/SysNavigationStyle.class | Bin 0 -> 5279 bytes .../huoran/iasf/entity/SysPermission.class | Bin 0 -> 9558 bytes .../com/huoran/iasf/entity/SysRole.class | Bin 0 -> 6690 bytes .../iasf/entity/SysRolePermission.class | Bin 0 -> 3351 bytes .../com/huoran/iasf/entity/SysTemplate.class | Bin 0 -> 3435 bytes .../huoran/iasf/entity/SysTemplateStyle.class | Bin 0 -> 4360 bytes .../SysTemplateStyleConfiguration.class | Bin 0 -> 3023 bytes .../com/huoran/iasf/entity/SysUser.class | Bin 0 -> 16040 bytes .../com/huoran/iasf/entity/SysUserRole.class | Bin 0 -> 3285 bytes .../com/huoran/iasf/entity/TableEntity.class | Bin 0 -> 2277 bytes .../com/huoran/iasf/entity/UserDept.class | Bin 0 -> 3611 bytes .../com/huoran/iasf/entity/UserGroup.class | Bin 0 -> 4967 bytes .../huoran/iasf/mapper/GeneratorMapper.class | Bin 0 -> 1218 bytes .../com/huoran/iasf/mapper/SeoMapper.class | Bin 0 -> 297 bytes .../com/huoran/iasf/mapper/SiteMapper.class | Bin 0 -> 300 bytes .../iasf/mapper/SysColumnLongPageMapper.class | Bin 0 -> 420 bytes .../huoran/iasf/mapper/SysColumnMapper.class | Bin 0 -> 2154 bytes .../SysContentClassificationMapper.class | Bin 0 -> 441 bytes .../iasf/mapper/SysContentFileMapper.class | Bin 0 -> 714 bytes .../iasf/mapper/SysContentLabelMapper.class | Bin 0 -> 414 bytes .../huoran/iasf/mapper/SysContentMapper.class | Bin 0 -> 1921 bytes .../huoran/iasf/mapper/SysDeptMapper.class | Bin 0 -> 390 bytes .../iasf/mapper/SysDictDetailMapper.class | Bin 0 -> 333 bytes .../huoran/iasf/mapper/SysDictMapper.class | Bin 0 -> 315 bytes .../huoran/iasf/mapper/SysFilesMapper.class | Bin 0 -> 971 bytes .../huoran/iasf/mapper/SysJobLogMapper.class | Bin 0 -> 321 bytes .../com/huoran/iasf/mapper/SysJobMapper.class | Bin 0 -> 312 bytes .../com/huoran/iasf/mapper/SysLogMapper.class | Bin 0 -> 306 bytes .../mapper/SysNavigationStyleMapper.class | Bin 0 -> 423 bytes .../iasf/mapper/SysPermissionMapper.class | Bin 0 -> 621 bytes .../huoran/iasf/mapper/SysRoleMapper.class | Bin 0 -> 309 bytes .../iasf/mapper/SysRolePermissionMapper.class | Bin 0 -> 339 bytes .../iasf/mapper/SysTemplateMapper.class | Bin 0 -> 321 bytes .../SysTemplateStyleConfigurationMapper.class | Bin 0 -> 750 bytes .../iasf/mapper/SysTemplateStyleMapper.class | Bin 0 -> 336 bytes .../huoran/iasf/mapper/SysUserMapper.class | Bin 0 -> 975 bytes .../iasf/mapper/SysUserRoleMapper.class | Bin 0 -> 321 bytes .../huoran/iasf/mapper/UserDeptMapper.class | Bin 0 -> 312 bytes .../huoran/iasf/mapper/UserGroupMapper.class | Bin 0 -> 315 bytes .../com/huoran/iasf/mapper/xml/SeoMapper.xml | 5 + .../com/huoran/iasf/mapper/xml/SiteMapper.xml | 5 + .../mapper/xml/SysColumnLongPageMapper.xml | 21 + .../iasf/mapper/xml/SysColumnMapper.xml | 200 ++ .../xml/SysContentClassificationMapper.xml | 16 + .../iasf/mapper/xml/SysContentFileMapper.xml | 29 + .../iasf/mapper/xml/SysContentLabelMapper.xml | 16 + .../iasf/mapper/xml/SysContentMapper.xml | 275 ++ .../huoran/iasf/mapper/xml/SysFilesMapper.xml | 48 + .../mapper/xml/SysNavigationStyleMapper.xml | 15 + .../iasf/mapper/xml/SysPermissionMapper.xml | 14 + .../iasf/mapper/xml/SysTemplateMapper.xml | 5 + .../SysTemplateStyleConfigurationMapper.xml | 13 + .../mapper/xml/SysTemplateStyleMapper.xml | 5 + .../huoran/iasf/mapper/xml/SysUserMapper.xml | 152 + .../huoran/iasf/mapper/xml/UserDeptMapper.xml | 5 + .../iasf/mapper/xml/UserGroupMapper.xml | 5 + .../com/huoran/iasf/service/DeptService.class | Bin 0 -> 751 bytes .../com/huoran/iasf/service/HomeService.class | Bin 0 -> 247 bytes .../iasf/service/HttpApiSessionService.class | Bin 0 -> 2884 bytes .../iasf/service/HttpSessionService.class | Bin 0 -> 8995 bytes .../iasf/service/ISysGeneratorService.class | Bin 0 -> 681 bytes .../com/huoran/iasf/service/LogService.class | Bin 0 -> 311 bytes .../iasf/service/PermissionService.class | Bin 0 -> 1310 bytes .../huoran/iasf/service/RedisService.class | Bin 0 -> 3459 bytes .../iasf/service/RolePermissionService.class | Bin 0 -> 466 bytes .../com/huoran/iasf/service/RoleService.class | Bin 0 -> 897 bytes .../com/huoran/iasf/service/SeoService.class | Bin 0 -> 308 bytes .../com/huoran/iasf/service/SiteService.class | Bin 0 -> 311 bytes .../service/SysColumnLongPageService.class | Bin 0 -> 350 bytes .../iasf/service/SysColumnService.class | Bin 0 -> 1468 bytes .../SysContentClassificationService.class | Bin 0 -> 371 bytes .../iasf/service/SysContentFileService.class | Bin 0 -> 541 bytes .../iasf/service/SysContentLabelService.class | Bin 0 -> 344 bytes .../iasf/service/SysContentService.class | Bin 0 -> 1226 bytes .../iasf/service/SysDictDetailService.class | Bin 0 -> 773 bytes .../huoran/iasf/service/SysDictService.class | Bin 0 -> 326 bytes .../huoran/iasf/service/SysFilesService.class | Bin 0 -> 1051 bytes .../iasf/service/SysJobLogService.class | Bin 0 -> 332 bytes .../huoran/iasf/service/SysJobService.class | Bin 0 -> 788 bytes .../service/SysNavigationStyleService.class | Bin 0 -> 353 bytes .../iasf/service/SysTemplateService.class | Bin 0 -> 332 bytes ...SysTemplateStyleConfigurationService.class | Bin 0 -> 648 bytes .../service/SysTemplateStyleService.class | Bin 0 -> 347 bytes .../huoran/iasf/service/UserDeptService.class | Bin 0 -> 323 bytes .../iasf/service/UserGroupService.class | Bin 0 -> 326 bytes .../huoran/iasf/service/UserRoleService.class | Bin 0 -> 647 bytes .../com/huoran/iasf/service/UserService.class | Bin 0 -> 1797 bytes .../iasf/service/impl/DeptServiceImpl.class | Bin 0 -> 12131 bytes .../iasf/service/impl/LogServiceImpl.class | Bin 0 -> 683 bytes .../service/impl/PermissionServiceImpl.class | Bin 0 -> 15300 bytes .../impl/RolePermissionServiceImpl.class | Bin 0 -> 3970 bytes .../iasf/service/impl/RoleServiceImpl.class | Bin 0 -> 10719 bytes .../iasf/service/impl/SeoServiceImpl.class | Bin 0 -> 677 bytes .../iasf/service/impl/SiteServiceImpl.class | Bin 0 -> 684 bytes .../impl/SysColumnLongPageServiceImpl.class | Bin 0 -> 914 bytes .../service/impl/SysColumnServiceImpl.class | Bin 0 -> 9340 bytes .../SysContentClassificationServiceImpl.class | Bin 0 -> 970 bytes .../impl/SysContentFileServiceImpl.class | Bin 0 -> 1318 bytes .../impl/SysContentLabelServiceImpl.class | Bin 0 -> 898 bytes .../service/impl/SysContentServiceImpl.class | Bin 0 -> 8375 bytes .../impl/SysDictDetailServiceImpl.class | Bin 0 -> 6232 bytes .../service/impl/SysDictServiceImpl.class | Bin 0 -> 4114 bytes .../service/impl/SysFilesServiceImpl.class | Bin 0 -> 14291 bytes .../service/impl/SysJobLogServiceImpl.class | Bin 0 -> 757 bytes .../impl/SysNavigationStyleServiceImpl.class | Bin 0 -> 922 bytes .../service/impl/SysTemplateServiceImpl.class | Bin 0 -> 733 bytes ...emplateStyleConfigurationServiceImpl.class | Bin 0 -> 1405 bytes .../impl/SysTemplateStyleServiceImpl.class | Bin 0 -> 768 bytes .../service/impl/UserDeptServiceImpl.class | Bin 0 -> 712 bytes .../service/impl/UserGroupServiceImpl.class | Bin 0 -> 719 bytes .../service/impl/UserRoleServiceImpl.class | Bin 0 -> 5437 bytes .../iasf/service/impl/UserServiceImpl$1.class | Bin 0 -> 842 bytes .../iasf/service/impl/UserServiceImpl.class | Bin 0 -> 36933 bytes .../classes/com/huoran/iasf/vo/CheckVo.class | Bin 0 -> 3344 bytes .../huoran/iasf/vo/FatherContentRespVO.class | Bin 0 -> 3788 bytes .../huoran/iasf/vo/ImportUserFailureVo.class | Bin 0 -> 6599 bytes .../com/huoran/iasf/vo/UEditorResultVO.class | Bin 0 -> 3361 bytes .../com/huoran/iasf/vo/req/AllTheQuery.class | Bin 0 -> 2179 bytes .../iasf/vo/req/ArticleEnableOrDisable.class | Bin 0 -> 2135 bytes .../iasf/vo/req/ArticleModifiedSortReq.class | Bin 0 -> 2204 bytes .../iasf/vo/req/ArticleTopOperation.class | Bin 0 -> 2234 bytes .../huoran/iasf/vo/req/CheckForHeavy.class | Bin 0 -> 2852 bytes .../iasf/vo/req/ColumnWeightReqVO.class | Bin 0 -> 3471 bytes .../iasf/vo/req/ContentHeavyTitleReqVO.class | Bin 0 -> 3058 bytes .../com/huoran/iasf/vo/req/ContentReq.class | Bin 0 -> 2968 bytes .../huoran/iasf/vo/req/ExcelImpUserReq.class | Bin 0 -> 5258 bytes .../huoran/iasf/vo/req/FileParameters.class | Bin 0 -> 4643 bytes .../iasf/vo/req/LabelCheckForHeavy.class | Bin 0 -> 2746 bytes .../iasf/vo/req/LongPageColumnReqVO.class | Bin 0 -> 3490 bytes .../iasf/vo/req/OneLevelChecksThemAll.class | Bin 0 -> 2704 bytes .../huoran/iasf/vo/req/PageContentReqVO.class | Bin 0 -> 17204 bytes .../com/huoran/iasf/vo/req/PageReqVO.class | Bin 0 -> 2227 bytes .../iasf/vo/req/PaginationColumnReqVO.class | Bin 0 -> 4671 bytes .../vo/req/RolePermissionOperationReqVO.class | Bin 0 -> 2747 bytes .../iasf/vo/req/SortByColumnReqVO.class | Bin 0 -> 3317 bytes .../vo/req/SubLevelColumnsUnderALevel.class | Bin 0 -> 2172 bytes .../iasf/vo/req/SysColumnLongRedisVO.class | Bin 0 -> 2343 bytes .../iasf/vo/req/UpdatePhoneOrEmailReq.class | Bin 0 -> 4082 bytes .../com/huoran/iasf/vo/req/UserListReq.class | Bin 0 -> 3819 bytes .../iasf/vo/req/UserRoleOperationReqVO.class | Bin 0 -> 2673 bytes .../huoran/iasf/vo/resp/DeptRespNodeVO.class | Bin 0 -> 4707 bytes .../com/huoran/iasf/vo/resp/HomeRespVO.class | Bin 0 -> 2533 bytes .../com/huoran/iasf/vo/resp/LoginRespVO.class | Bin 0 -> 4795 bytes .../iasf/vo/resp/PageContentRespVO.class | Bin 0 -> 50893 bytes .../iasf/vo/resp/PermissionRespNode.class | Bin 0 -> 4165 bytes .../iasf/vo/resp/SortColumnRespVO.class | Bin 0 -> 3184 bytes .../huoran/iasf/vo/resp/UserInfoRespVO.class | Bin 0 -> 4389 bytes .../huoran/iasf/vo/resp/UserListResp.class | Bin 0 -> 10144 bytes .../iasf/vo/resp/UserOwnRoleRespVO.class | Bin 0 -> 2590 bytes target/classes/generator.properties | 61 + target/classes/logback-spring.xml | 60 + 318 files changed, 5182 insertions(+), 118 deletions(-) create mode 100644 log/project_manager.log create mode 100644 src/main/java/com/huoran/iasf/common/advice/DecryptHttpInputMessage.java create mode 100644 src/main/java/com/huoran/iasf/common/advice/EncryptRequestBodyAdvice.java create mode 100644 src/main/java/com/huoran/iasf/common/advice/EncryptResponseBodyAdvice.java create mode 100644 src/main/java/com/huoran/iasf/common/annotation/Decrypt.java create mode 100644 src/main/java/com/huoran/iasf/common/annotation/EnableSecurity.java create mode 100644 src/main/java/com/huoran/iasf/common/annotation/Encrypt.java create mode 100644 src/main/java/com/huoran/iasf/common/config/SecretKeyConfig.java create mode 100644 src/main/java/com/huoran/iasf/common/exception/EncryptRequestException.java create mode 100644 src/main/java/com/huoran/iasf/common/filter/XSSFilter.java create mode 100644 src/main/java/com/huoran/iasf/common/filter/XssHttpServletRequestWrapper.java create mode 100644 src/main/java/com/huoran/iasf/common/utils/Base64Util.java create mode 100644 src/main/java/com/huoran/iasf/common/utils/JsonUtils.java create mode 100644 src/main/java/com/huoran/iasf/common/utils/RSAUtil.java create mode 100644 src/main/java/com/huoran/iasf/common/utils/fileUploadUtils.java create mode 100644 src/main/java/com/huoran/iasf/controller/SeoController.java create mode 100644 src/main/java/com/huoran/iasf/entity/Seo.java create mode 100644 src/main/java/com/huoran/iasf/mapper/SeoMapper.java create mode 100644 src/main/java/com/huoran/iasf/mapper/xml/SeoMapper.xml create mode 100644 src/main/java/com/huoran/iasf/service/SeoService.java create mode 100644 src/main/java/com/huoran/iasf/service/impl/SeoServiceImpl.java create mode 100644 src/main/java/com/huoran/iasf/vo/req/AllTheQuery.java create mode 100644 src/main/java/com/huoran/iasf/vo/req/ArticleEnableOrDisable.java create mode 100644 src/main/java/com/huoran/iasf/vo/req/ArticleTopOperation.java create mode 100644 src/main/java/com/huoran/iasf/vo/req/CheckForHeavy.java create mode 100644 src/main/java/com/huoran/iasf/vo/req/LabelCheckForHeavy.java create mode 100644 src/main/java/com/huoran/iasf/vo/req/OneLevelChecksThemAll.java create mode 100644 src/main/java/com/huoran/iasf/vo/req/SubLevelColumnsUnderALevel.java create mode 100644 target/classes/META-INF/spring-configuration-metadata.json create mode 100644 target/classes/application-dev.yml create mode 100644 target/classes/application-prod.yml create mode 100644 target/classes/application-test.yml create mode 100644 target/classes/application.yml create mode 100644 target/classes/com/huoran/iasf/IASFApplication.class create mode 100644 target/classes/com/huoran/iasf/common/advice/DecryptHttpInputMessage.class create mode 100644 target/classes/com/huoran/iasf/common/advice/EncryptRequestBodyAdvice.class create mode 100644 target/classes/com/huoran/iasf/common/advice/EncryptResponseBodyAdvice.class create mode 100644 target/classes/com/huoran/iasf/common/annotation/Decrypt.class create mode 100644 target/classes/com/huoran/iasf/common/annotation/EnableSecurity.class create mode 100644 target/classes/com/huoran/iasf/common/annotation/Encrypt.class create mode 100644 target/classes/com/huoran/iasf/common/aop/annotation/DataScope.class create mode 100644 target/classes/com/huoran/iasf/common/aop/annotation/LogAnnotation.class create mode 100644 target/classes/com/huoran/iasf/common/aop/annotation/NoRepeatSubmit.class create mode 100644 target/classes/com/huoran/iasf/common/aop/aspect/DataScopeAspect.class create mode 100644 target/classes/com/huoran/iasf/common/aop/aspect/NoRepeatSubmitAop.class create mode 100644 target/classes/com/huoran/iasf/common/aop/aspect/RedisServiceAop.class create mode 100644 target/classes/com/huoran/iasf/common/aop/aspect/SysLogAspect.class create mode 100644 target/classes/com/huoran/iasf/common/config/FileUploadProperties.class create mode 100644 target/classes/com/huoran/iasf/common/config/MetaObjectHandlerConfig.class create mode 100644 target/classes/com/huoran/iasf/common/config/MyBatisPlusConfig.class create mode 100644 target/classes/com/huoran/iasf/common/config/MyCacheConfig.class create mode 100644 target/classes/com/huoran/iasf/common/config/MyThreadConfig.class create mode 100644 target/classes/com/huoran/iasf/common/config/NonStaticResourceHttpRequestConfig.class create mode 100644 target/classes/com/huoran/iasf/common/config/SecretKeyConfig.class create mode 100644 target/classes/com/huoran/iasf/common/config/SwaggerConfiguration.class create mode 100644 target/classes/com/huoran/iasf/common/config/WebMvcConfigurer.class create mode 100644 target/classes/com/huoran/iasf/common/exception/BusinessException.class create mode 100644 target/classes/com/huoran/iasf/common/exception/EncryptRequestException.class create mode 100644 target/classes/com/huoran/iasf/common/exception/NotFoundException.class create mode 100644 target/classes/com/huoran/iasf/common/exception/UnauthorizedException.class create mode 100644 target/classes/com/huoran/iasf/common/exception/code/BaseResponseCode.class create mode 100644 target/classes/com/huoran/iasf/common/exception/code/ResponseCodeInterface.class create mode 100644 target/classes/com/huoran/iasf/common/exception/handler/RestExceptionHandler.class create mode 100644 target/classes/com/huoran/iasf/common/filter/AuthFilter.class create mode 100644 target/classes/com/huoran/iasf/common/filter/XSSFilter.class create mode 100644 target/classes/com/huoran/iasf/common/filter/XssHttpServletRequestWrapper$1.class create mode 100644 target/classes/com/huoran/iasf/common/filter/XssHttpServletRequestWrapper.class create mode 100644 target/classes/com/huoran/iasf/common/job/task/TestTask.class create mode 100644 target/classes/com/huoran/iasf/common/shiro/CustomAccessControlFilter.class create mode 100644 target/classes/com/huoran/iasf/common/shiro/CustomHashedCredentialsMatcher.class create mode 100644 target/classes/com/huoran/iasf/common/shiro/CustomRealm.class create mode 100644 target/classes/com/huoran/iasf/common/shiro/ShiroConfig.class create mode 100644 target/classes/com/huoran/iasf/common/utils/Base64Util.class create mode 100644 target/classes/com/huoran/iasf/common/utils/Constant.class create mode 100644 target/classes/com/huoran/iasf/common/utils/DateUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/EmailUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/ExcelAttribute.class create mode 100644 target/classes/com/huoran/iasf/common/utils/ExcelImportHelper.class create mode 100644 target/classes/com/huoran/iasf/common/utils/ExcelStyleUtil.class create mode 100644 target/classes/com/huoran/iasf/common/utils/GenUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/HttpContextUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/IPUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/JsonUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/OkHttpUtils$1.class create mode 100644 target/classes/com/huoran/iasf/common/utils/OkHttpUtils$2.class create mode 100644 target/classes/com/huoran/iasf/common/utils/OkHttpUtils$ICallBack.class create mode 100644 target/classes/com/huoran/iasf/common/utils/OkHttpUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/PasswordEncoder.class create mode 100644 target/classes/com/huoran/iasf/common/utils/PasswordUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/R.class create mode 100644 target/classes/com/huoran/iasf/common/utils/RSAUtil.class create mode 100644 target/classes/com/huoran/iasf/common/utils/RandomUtil.class create mode 100644 target/classes/com/huoran/iasf/common/utils/SMSTemplate.class create mode 100644 target/classes/com/huoran/iasf/common/utils/SendSMSUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/SpringContextUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/TreeStructureUtils.class create mode 100644 target/classes/com/huoran/iasf/common/utils/fileUploadUtils.class create mode 100644 target/classes/com/huoran/iasf/controller/CaptchaController.class create mode 100644 target/classes/com/huoran/iasf/controller/DeptController.class create mode 100644 target/classes/com/huoran/iasf/controller/ExceptionController.class create mode 100644 target/classes/com/huoran/iasf/controller/PermissionController.class create mode 100644 target/classes/com/huoran/iasf/controller/RoleController.class create mode 100644 target/classes/com/huoran/iasf/controller/RolePermissionController.class create mode 100644 target/classes/com/huoran/iasf/controller/SeoController.class create mode 100644 target/classes/com/huoran/iasf/controller/SiteController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysColumnController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysColumnLongPageController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysContentClassificationController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysContentController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysContentFileController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysContentLabelController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysFilesController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysLogController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysNavigationStyleController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysPageManagementController.class create mode 100644 target/classes/com/huoran/iasf/controller/SysTemplateController.class create mode 100644 target/classes/com/huoran/iasf/controller/UserController.class create mode 100644 target/classes/com/huoran/iasf/controller/UserDeptController.class create mode 100644 target/classes/com/huoran/iasf/controller/UserGroupController.class create mode 100644 target/classes/com/huoran/iasf/controller/UserRoleController.class create mode 100644 target/classes/com/huoran/iasf/entity/BaseEntity.class create mode 100644 target/classes/com/huoran/iasf/entity/ColumnEntity.class create mode 100644 target/classes/com/huoran/iasf/entity/Seo.class create mode 100644 target/classes/com/huoran/iasf/entity/Site.class create mode 100644 target/classes/com/huoran/iasf/entity/SysColumn.class create mode 100644 target/classes/com/huoran/iasf/entity/SysColumnLongPage.class create mode 100644 target/classes/com/huoran/iasf/entity/SysContent.class create mode 100644 target/classes/com/huoran/iasf/entity/SysContentClassification.class create mode 100644 target/classes/com/huoran/iasf/entity/SysContentFile.class create mode 100644 target/classes/com/huoran/iasf/entity/SysContentLabel.class create mode 100644 target/classes/com/huoran/iasf/entity/SysDept.class create mode 100644 target/classes/com/huoran/iasf/entity/SysDictDetailEntity.class create mode 100644 target/classes/com/huoran/iasf/entity/SysDictEntity.class create mode 100644 target/classes/com/huoran/iasf/entity/SysFilesEntity.class create mode 100644 target/classes/com/huoran/iasf/entity/SysGenerator.class create mode 100644 target/classes/com/huoran/iasf/entity/SysJobEntity.class create mode 100644 target/classes/com/huoran/iasf/entity/SysJobLogEntity.class create mode 100644 target/classes/com/huoran/iasf/entity/SysLog.class create mode 100644 target/classes/com/huoran/iasf/entity/SysNavigationStyle.class create mode 100644 target/classes/com/huoran/iasf/entity/SysPermission.class create mode 100644 target/classes/com/huoran/iasf/entity/SysRole.class create mode 100644 target/classes/com/huoran/iasf/entity/SysRolePermission.class create mode 100644 target/classes/com/huoran/iasf/entity/SysTemplate.class create mode 100644 target/classes/com/huoran/iasf/entity/SysTemplateStyle.class create mode 100644 target/classes/com/huoran/iasf/entity/SysTemplateStyleConfiguration.class create mode 100644 target/classes/com/huoran/iasf/entity/SysUser.class create mode 100644 target/classes/com/huoran/iasf/entity/SysUserRole.class create mode 100644 target/classes/com/huoran/iasf/entity/TableEntity.class create mode 100644 target/classes/com/huoran/iasf/entity/UserDept.class create mode 100644 target/classes/com/huoran/iasf/entity/UserGroup.class create mode 100644 target/classes/com/huoran/iasf/mapper/GeneratorMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SeoMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SiteMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysColumnLongPageMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysColumnMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysContentClassificationMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysContentFileMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysContentLabelMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysContentMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysDeptMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysDictDetailMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysDictMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysFilesMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysJobLogMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysJobMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysLogMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysNavigationStyleMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysPermissionMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysRoleMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysRolePermissionMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysTemplateMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysTemplateStyleConfigurationMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysTemplateStyleMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysUserMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/SysUserRoleMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/UserDeptMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/UserGroupMapper.class create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SeoMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SiteMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysColumnLongPageMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysColumnMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysContentClassificationMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysContentFileMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysContentLabelMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysContentMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysFilesMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysNavigationStyleMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysPermissionMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysTemplateMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysTemplateStyleConfigurationMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysTemplateStyleMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/SysUserMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/UserDeptMapper.xml create mode 100644 target/classes/com/huoran/iasf/mapper/xml/UserGroupMapper.xml create mode 100644 target/classes/com/huoran/iasf/service/DeptService.class create mode 100644 target/classes/com/huoran/iasf/service/HomeService.class create mode 100644 target/classes/com/huoran/iasf/service/HttpApiSessionService.class create mode 100644 target/classes/com/huoran/iasf/service/HttpSessionService.class create mode 100644 target/classes/com/huoran/iasf/service/ISysGeneratorService.class create mode 100644 target/classes/com/huoran/iasf/service/LogService.class create mode 100644 target/classes/com/huoran/iasf/service/PermissionService.class create mode 100644 target/classes/com/huoran/iasf/service/RedisService.class create mode 100644 target/classes/com/huoran/iasf/service/RolePermissionService.class create mode 100644 target/classes/com/huoran/iasf/service/RoleService.class create mode 100644 target/classes/com/huoran/iasf/service/SeoService.class create mode 100644 target/classes/com/huoran/iasf/service/SiteService.class create mode 100644 target/classes/com/huoran/iasf/service/SysColumnLongPageService.class create mode 100644 target/classes/com/huoran/iasf/service/SysColumnService.class create mode 100644 target/classes/com/huoran/iasf/service/SysContentClassificationService.class create mode 100644 target/classes/com/huoran/iasf/service/SysContentFileService.class create mode 100644 target/classes/com/huoran/iasf/service/SysContentLabelService.class create mode 100644 target/classes/com/huoran/iasf/service/SysContentService.class create mode 100644 target/classes/com/huoran/iasf/service/SysDictDetailService.class create mode 100644 target/classes/com/huoran/iasf/service/SysDictService.class create mode 100644 target/classes/com/huoran/iasf/service/SysFilesService.class create mode 100644 target/classes/com/huoran/iasf/service/SysJobLogService.class create mode 100644 target/classes/com/huoran/iasf/service/SysJobService.class create mode 100644 target/classes/com/huoran/iasf/service/SysNavigationStyleService.class create mode 100644 target/classes/com/huoran/iasf/service/SysTemplateService.class create mode 100644 target/classes/com/huoran/iasf/service/SysTemplateStyleConfigurationService.class create mode 100644 target/classes/com/huoran/iasf/service/SysTemplateStyleService.class create mode 100644 target/classes/com/huoran/iasf/service/UserDeptService.class create mode 100644 target/classes/com/huoran/iasf/service/UserGroupService.class create mode 100644 target/classes/com/huoran/iasf/service/UserRoleService.class create mode 100644 target/classes/com/huoran/iasf/service/UserService.class create mode 100644 target/classes/com/huoran/iasf/service/impl/DeptServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/LogServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/PermissionServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/RolePermissionServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/RoleServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SeoServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SiteServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysColumnLongPageServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysColumnServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysContentClassificationServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysContentFileServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysContentLabelServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysContentServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysDictDetailServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysDictServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysFilesServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysJobLogServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysNavigationStyleServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysTemplateServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysTemplateStyleConfigurationServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/SysTemplateStyleServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/UserDeptServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/UserGroupServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/UserRoleServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/service/impl/UserServiceImpl$1.class create mode 100644 target/classes/com/huoran/iasf/service/impl/UserServiceImpl.class create mode 100644 target/classes/com/huoran/iasf/vo/CheckVo.class create mode 100644 target/classes/com/huoran/iasf/vo/FatherContentRespVO.class create mode 100644 target/classes/com/huoran/iasf/vo/ImportUserFailureVo.class create mode 100644 target/classes/com/huoran/iasf/vo/UEditorResultVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/AllTheQuery.class create mode 100644 target/classes/com/huoran/iasf/vo/req/ArticleEnableOrDisable.class create mode 100644 target/classes/com/huoran/iasf/vo/req/ArticleModifiedSortReq.class create mode 100644 target/classes/com/huoran/iasf/vo/req/ArticleTopOperation.class create mode 100644 target/classes/com/huoran/iasf/vo/req/CheckForHeavy.class create mode 100644 target/classes/com/huoran/iasf/vo/req/ColumnWeightReqVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/ContentHeavyTitleReqVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/ContentReq.class create mode 100644 target/classes/com/huoran/iasf/vo/req/ExcelImpUserReq.class create mode 100644 target/classes/com/huoran/iasf/vo/req/FileParameters.class create mode 100644 target/classes/com/huoran/iasf/vo/req/LabelCheckForHeavy.class create mode 100644 target/classes/com/huoran/iasf/vo/req/LongPageColumnReqVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/OneLevelChecksThemAll.class create mode 100644 target/classes/com/huoran/iasf/vo/req/PageContentReqVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/PageReqVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/PaginationColumnReqVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/RolePermissionOperationReqVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/SortByColumnReqVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/SubLevelColumnsUnderALevel.class create mode 100644 target/classes/com/huoran/iasf/vo/req/SysColumnLongRedisVO.class create mode 100644 target/classes/com/huoran/iasf/vo/req/UpdatePhoneOrEmailReq.class create mode 100644 target/classes/com/huoran/iasf/vo/req/UserListReq.class create mode 100644 target/classes/com/huoran/iasf/vo/req/UserRoleOperationReqVO.class create mode 100644 target/classes/com/huoran/iasf/vo/resp/DeptRespNodeVO.class create mode 100644 target/classes/com/huoran/iasf/vo/resp/HomeRespVO.class create mode 100644 target/classes/com/huoran/iasf/vo/resp/LoginRespVO.class create mode 100644 target/classes/com/huoran/iasf/vo/resp/PageContentRespVO.class create mode 100644 target/classes/com/huoran/iasf/vo/resp/PermissionRespNode.class create mode 100644 target/classes/com/huoran/iasf/vo/resp/SortColumnRespVO.class create mode 100644 target/classes/com/huoran/iasf/vo/resp/UserInfoRespVO.class create mode 100644 target/classes/com/huoran/iasf/vo/resp/UserListResp.class create mode 100644 target/classes/com/huoran/iasf/vo/resp/UserOwnRoleRespVO.class create mode 100644 target/classes/generator.properties create mode 100644 target/classes/logback-spring.xml diff --git a/log/project_manager.log b/log/project_manager.log new file mode 100644 index 0000000..f781b8c --- /dev/null +++ b/log/project_manager.log @@ -0,0 +1,2433 @@ +2023-08-24 16:38:55.758 INFO 27128 --- [main] com.huoran.iasf.IASFApplication : Starting IASFApplication on SC-202209231229 with PID 27128 (D:\IdeaProjects\IASF\target\classes started by Administrator in D:\IdeaProjects\IASF) +2023-08-24 16:38:55.760 INFO 27128 --- [main] com.huoran.iasf.IASFApplication : The following profiles are active: prod +2023-08-24 16:38:56.557 INFO 27128 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode! +2023-08-24 16:38:56.559 INFO 27128 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data repositories in DEFAULT mode. +2023-08-24 16:38:56.615 INFO 27128 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 42ms. Found 0 repository interfaces. +2023-08-24 16:38:56.924 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$523f6819] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.042 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.datasource.dynamic-com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.045 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$bbcdd8ea] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.049 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dsProcessor' of type [com.baomidou.dynamic.datasource.processor.DsHeaderProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.053 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dynamicDatasourceAnnotationAdvisor' of type [com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.055 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'fileUploadProperties' of type [com.huoran.iasf.common.config.FileUploadProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.056 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'shiroConfig' of type [com.huoran.iasf.common.shiro.ShiroConfig$$EnhancerBySpringCGLIB$$69ffab90] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.366 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'customHashedCredentialsMatcher' of type [com.huoran.iasf.common.shiro.CustomHashedCredentialsMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.379 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'customRealm' of type [com.huoran.iasf.common.shiro.CustomRealm] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.391 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'securityManager' of type [org.apache.shiro.web.mgt.DefaultWebSecurityManager] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.407 INFO 27128 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'authorizationAttributeSourceAdvisor' of type [org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:38:57.658 INFO 27128 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 10000 (http) +2023-08-24 16:38:57.675 INFO 27128 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat] +2023-08-24 16:38:57.675 INFO 27128 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.21] +2023-08-24 16:38:57.775 INFO 27128 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring embedded WebApplicationContext +2023-08-24 16:38:57.776 INFO 27128 --- [main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1955 ms +2023-08-24 16:38:57.845 INFO 27128 --- [main] o.apache.catalina.core.StandardContext : Suspicious URL pattern: [/**] in context [/iasf], see sections 12.1 and 12.2 of the Servlet specification +2023-08-24 16:38:58.129 INFO 27128 --- [main] com.zaxxer.hikari.HikariDataSource : master - Starting... +2023-08-24 16:38:58.302 INFO 27128 --- [main] com.zaxxer.hikari.HikariDataSource : master - Start completed. +2023-08-24 16:38:58.302 INFO 27128 --- [main] c.b.d.d.DynamicRoutingDataSource : 初始共加载 1 个数据源 +2023-08-24 16:38:58.302 INFO 27128 --- [main] c.b.d.d.DynamicRoutingDataSource : 动态数据源-加载 master 成功 +2023-08-24 16:38:58.303 INFO 27128 --- [main] c.b.d.d.DynamicRoutingDataSource : 当前的默认数据源是单数据源,数据源名为 master +2023-08-24 16:38:59.206 WARN 27128 --- [main] o.s.w.s.r.ResourceHttpRequestHandler : Locations list is empty. No resources will be served unless a custom ResourceResolver is configured as an alternative to PathResourceResolver. +2023-08-24 16:39:00.110 INFO 27128 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] +2023-08-24 16:39:00.664 INFO 27128 --- [main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor +2023-08-24 16:39:00.673 INFO 27128 --- [main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl +2023-08-24 16:39:00.673 INFO 27128 --- [main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. +2023-08-24 16:39:00.674 INFO 27128 --- [main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized. +2023-08-24 16:39:00.674 INFO 27128 --- [main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' + Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. + NOT STARTED. + Currently in standby mode. + Number of jobs executed: 0 + Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. + Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. + +2023-08-24 16:39:00.674 INFO 27128 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. +2023-08-24 16:39:00.674 INFO 27128 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 +2023-08-24 16:39:00.675 INFO 27128 --- [main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@72641613 +2023-08-24 16:39:00.762 INFO 27128 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed +2023-08-24 16:39:00.775 INFO 27128 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s) +2023-08-24 16:39:00.937 INFO 27128 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references +2023-08-24 16:39:01.049 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_1 +2023-08-24 16:39:01.050 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_1 +2023-08-24 16:39:01.052 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateDeptUsingPUT_1 +2023-08-24 16:39:01.061 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_1 +2023-08-24 16:39:01.062 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_2 +2023-08-24 16:39:01.091 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_1 +2023-08-24 16:39:01.096 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_1 +2023-08-24 16:39:01.099 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1 +2023-08-24 16:39:01.101 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_2 +2023-08-24 16:39:01.104 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_1 +2023-08-24 16:39:01.105 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_1 +2023-08-24 16:39:01.106 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_2 +2023-08-24 16:39:01.108 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_2 +2023-08-24 16:39:01.109 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_3 +2023-08-24 16:39:01.123 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_2 +2023-08-24 16:39:01.127 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_2 +2023-08-24 16:39:01.128 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_3 +2023-08-24 16:39:01.166 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_3 +2023-08-24 16:39:01.168 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_4 +2023-08-24 16:39:01.169 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_3 +2023-08-24 16:39:01.170 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_3 +2023-08-24 16:39:01.171 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_4 +2023-08-24 16:39:01.171 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_4 +2023-08-24 16:39:01.172 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_5 +2023-08-24 16:39:01.175 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_4 +2023-08-24 16:39:01.177 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: checkForHeavyUsingPOST_1 +2023-08-24 16:39:01.178 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_4 +2023-08-24 16:39:01.178 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_5 +2023-08-24 16:39:01.182 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_5 +2023-08-24 16:39:01.184 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_6 +2023-08-24 16:39:01.209 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_7 +2023-08-24 16:39:01.210 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_3 +2023-08-24 16:39:01.212 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_1 +2023-08-24 16:39:01.213 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_5 +2023-08-24 16:39:01.214 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_6 +2023-08-24 16:39:01.218 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_6 +2023-08-24 16:39:01.219 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_8 +2023-08-24 16:39:01.230 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_2 +2023-08-24 16:39:01.235 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_2 +2023-08-24 16:39:01.241 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_2 +2023-08-24 16:39:01.242 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_4 +2023-08-24 16:39:01.243 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUserGroupAllUsingPOST_1 +2023-08-24 16:39:01.243 INFO 27128 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUserGroupUsingPUT_1 +2023-08-24 16:39:01.253 INFO 27128 --- [main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now +2023-08-24 16:39:01.253 INFO 27128 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. +2023-08-24 16:39:01.267 ERROR 27128 --- [main] org.apache.catalina.util.LifecycleBase : Failed to start component [Connector[HTTP/1.1-10000]] + +org.apache.catalina.LifecycleException: Protocol handler start failed + at org.apache.catalina.connector.Connector.startInternal(Connector.java:1008) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) + at org.apache.catalina.core.StandardService.addConnector(StandardService.java:227) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.addPreviouslyRemovedConnectors(TomcatWebServer.java:263) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:195) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:296) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:162) + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:552) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140) + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:742) + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:389) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:311) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1213) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1202) + at com.huoran.iasf.IASFApplication.main(IASFApplication.java:20) +Caused by: java.net.BindException: Address already in use: bind + at sun.nio.ch.Net.bind0(Native Method) + at sun.nio.ch.Net.bind(Net.java:438) + at sun.nio.ch.Net.bind(Net.java:430) + at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:225) + at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) + at org.apache.tomcat.util.net.NioEndpoint.initServerSocket(NioEndpoint.java:230) + at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:213) + at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1124) + at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1210) + at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:585) + at org.apache.catalina.connector.Connector.startInternal(Connector.java:1005) + ... 14 common frames omitted + +2023-08-24 16:39:01.271 INFO 27128 --- [main] o.apache.catalina.core.StandardService : Stopping service [Tomcat] +2023-08-24 16:39:01.277 INFO 27128 --- [main] ConditionEvaluationReportLoggingListener : + +Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. +2023-08-24 16:39:01.281 ERROR 27128 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +The Tomcat connector configured to listen on port 10000 failed to start. The port may already be in use or the connector may be misconfigured. + +Action: + +Verify the connector's configuration, identify and stop any process that's listening on port 10000, or configure this application to listen on another port. + +2023-08-24 16:39:01.283 INFO 27128 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 16:39:01.283 INFO 27128 --- [main] o.s.s.quartz.SchedulerFactoryBean : Shutting down Quartz Scheduler +2023-08-24 16:39:01.283 INFO 27128 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutting down. +2023-08-24 16:39:01.283 INFO 27128 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 16:39:01.283 INFO 27128 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutdown complete. +2023-08-24 16:39:01.285 INFO 27128 --- [main] c.b.d.d.DynamicRoutingDataSource : closing dynamicDatasource ing.... +2023-08-24 16:39:01.286 INFO 27128 --- [main] com.zaxxer.hikari.HikariDataSource : master - Shutdown initiated... +2023-08-24 16:39:01.288 INFO 27128 --- [main] com.zaxxer.hikari.HikariDataSource : master - Shutdown completed. +2023-08-24 16:39:21.227 INFO 12960 --- [main] com.huoran.iasf.IASFApplication : Starting IASFApplication on SC-202209231229 with PID 12960 (D:\IdeaProjects\IASF\target\classes started by Administrator in D:\IdeaProjects\IASF) +2023-08-24 16:39:21.229 INFO 12960 --- [main] com.huoran.iasf.IASFApplication : The following profiles are active: prod +2023-08-24 16:39:21.913 INFO 12960 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode! +2023-08-24 16:39:21.914 INFO 12960 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data repositories in DEFAULT mode. +2023-08-24 16:39:21.956 INFO 12960 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 33ms. Found 0 repository interfaces. +2023-08-24 16:39:22.221 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$73124a3b] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.317 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.datasource.dynamic-com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.319 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$dca0bb0c] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.324 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dsProcessor' of type [com.baomidou.dynamic.datasource.processor.DsHeaderProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.328 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dynamicDatasourceAnnotationAdvisor' of type [com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.331 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'fileUploadProperties' of type [com.huoran.iasf.common.config.FileUploadProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.333 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'shiroConfig' of type [com.huoran.iasf.common.shiro.ShiroConfig$$EnhancerBySpringCGLIB$$8ad28db2] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.641 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'customHashedCredentialsMatcher' of type [com.huoran.iasf.common.shiro.CustomHashedCredentialsMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.653 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'customRealm' of type [com.huoran.iasf.common.shiro.CustomRealm] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.664 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'securityManager' of type [org.apache.shiro.web.mgt.DefaultWebSecurityManager] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.685 INFO 12960 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'authorizationAttributeSourceAdvisor' of type [org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:22.916 INFO 12960 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 10001 (http) +2023-08-24 16:39:22.930 INFO 12960 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat] +2023-08-24 16:39:22.931 INFO 12960 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.21] +2023-08-24 16:39:23.007 INFO 12960 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring embedded WebApplicationContext +2023-08-24 16:39:23.007 INFO 12960 --- [main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1721 ms +2023-08-24 16:39:23.068 INFO 12960 --- [main] o.apache.catalina.core.StandardContext : Suspicious URL pattern: [/**] in context [/iasf], see sections 12.1 and 12.2 of the Servlet specification +2023-08-24 16:39:23.322 INFO 12960 --- [main] com.zaxxer.hikari.HikariDataSource : master - Starting... +2023-08-24 16:39:23.487 INFO 12960 --- [main] com.zaxxer.hikari.HikariDataSource : master - Start completed. +2023-08-24 16:39:23.488 INFO 12960 --- [main] c.b.d.d.DynamicRoutingDataSource : 初始共加载 1 个数据源 +2023-08-24 16:39:23.488 INFO 12960 --- [main] c.b.d.d.DynamicRoutingDataSource : 动态数据源-加载 master 成功 +2023-08-24 16:39:23.488 INFO 12960 --- [main] c.b.d.d.DynamicRoutingDataSource : 当前的默认数据源是单数据源,数据源名为 master +2023-08-24 16:39:24.380 WARN 12960 --- [main] o.s.w.s.r.ResourceHttpRequestHandler : Locations list is empty. No resources will be served unless a custom ResourceResolver is configured as an alternative to PathResourceResolver. +2023-08-24 16:39:25.267 INFO 12960 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] +2023-08-24 16:39:25.782 INFO 12960 --- [main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor +2023-08-24 16:39:25.790 INFO 12960 --- [main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl +2023-08-24 16:39:25.790 INFO 12960 --- [main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. +2023-08-24 16:39:25.791 INFO 12960 --- [main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized. +2023-08-24 16:39:25.791 INFO 12960 --- [main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' + Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. + NOT STARTED. + Currently in standby mode. + Number of jobs executed: 0 + Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. + Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. + +2023-08-24 16:39:25.791 INFO 12960 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. +2023-08-24 16:39:25.791 INFO 12960 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 +2023-08-24 16:39:25.792 INFO 12960 --- [main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@acea29e +2023-08-24 16:39:25.873 INFO 12960 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed +2023-08-24 16:39:25.886 INFO 12960 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s) +2023-08-24 16:39:26.051 INFO 12960 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references +2023-08-24 16:39:26.161 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_1 +2023-08-24 16:39:26.162 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_1 +2023-08-24 16:39:26.163 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateDeptUsingPUT_1 +2023-08-24 16:39:26.173 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_1 +2023-08-24 16:39:26.174 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_2 +2023-08-24 16:39:26.204 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_1 +2023-08-24 16:39:26.209 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_1 +2023-08-24 16:39:26.213 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1 +2023-08-24 16:39:26.215 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_2 +2023-08-24 16:39:26.218 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_1 +2023-08-24 16:39:26.220 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_1 +2023-08-24 16:39:26.221 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_2 +2023-08-24 16:39:26.223 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_2 +2023-08-24 16:39:26.224 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_3 +2023-08-24 16:39:26.238 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_2 +2023-08-24 16:39:26.240 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_2 +2023-08-24 16:39:26.241 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_3 +2023-08-24 16:39:26.275 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_3 +2023-08-24 16:39:26.276 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_4 +2023-08-24 16:39:26.278 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_3 +2023-08-24 16:39:26.278 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_3 +2023-08-24 16:39:26.279 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_4 +2023-08-24 16:39:26.280 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_4 +2023-08-24 16:39:26.282 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_5 +2023-08-24 16:39:26.284 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_4 +2023-08-24 16:39:26.285 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: checkForHeavyUsingPOST_1 +2023-08-24 16:39:26.286 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_4 +2023-08-24 16:39:26.286 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_5 +2023-08-24 16:39:26.287 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_5 +2023-08-24 16:39:26.288 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_6 +2023-08-24 16:39:26.310 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_7 +2023-08-24 16:39:26.311 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_3 +2023-08-24 16:39:26.314 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_1 +2023-08-24 16:39:26.316 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_5 +2023-08-24 16:39:26.317 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_6 +2023-08-24 16:39:26.319 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_6 +2023-08-24 16:39:26.319 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_8 +2023-08-24 16:39:26.333 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_2 +2023-08-24 16:39:26.336 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_2 +2023-08-24 16:39:26.344 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_2 +2023-08-24 16:39:26.345 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_4 +2023-08-24 16:39:26.345 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUserGroupAllUsingPOST_1 +2023-08-24 16:39:26.346 INFO 12960 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUserGroupUsingPUT_1 +2023-08-24 16:39:26.354 INFO 12960 --- [main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now +2023-08-24 16:39:26.354 INFO 12960 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. +2023-08-24 16:39:26.368 ERROR 12960 --- [main] org.apache.catalina.util.LifecycleBase : Failed to start component [Connector[HTTP/1.1-10001]] + +org.apache.catalina.LifecycleException: Protocol handler start failed + at org.apache.catalina.connector.Connector.startInternal(Connector.java:1008) + at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) + at org.apache.catalina.core.StandardService.addConnector(StandardService.java:227) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.addPreviouslyRemovedConnectors(TomcatWebServer.java:263) + at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:195) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:296) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:162) + at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:552) + at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140) + at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:742) + at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:389) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:311) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1213) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1202) + at com.huoran.iasf.IASFApplication.main(IASFApplication.java:20) +Caused by: java.net.BindException: Address already in use: bind + at sun.nio.ch.Net.bind0(Native Method) + at sun.nio.ch.Net.bind(Net.java:438) + at sun.nio.ch.Net.bind(Net.java:430) + at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:225) + at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) + at org.apache.tomcat.util.net.NioEndpoint.initServerSocket(NioEndpoint.java:230) + at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:213) + at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1124) + at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1210) + at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:585) + at org.apache.catalina.connector.Connector.startInternal(Connector.java:1005) + ... 14 common frames omitted + +2023-08-24 16:39:26.373 INFO 12960 --- [main] o.apache.catalina.core.StandardService : Stopping service [Tomcat] +2023-08-24 16:39:26.379 INFO 12960 --- [main] ConditionEvaluationReportLoggingListener : + +Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. +2023-08-24 16:39:26.382 ERROR 12960 --- [main] o.s.b.d.LoggingFailureAnalysisReporter : + +*************************** +APPLICATION FAILED TO START +*************************** + +Description: + +The Tomcat connector configured to listen on port 10001 failed to start. The port may already be in use or the connector may be misconfigured. + +Action: + +Verify the connector's configuration, identify and stop any process that's listening on port 10001, or configure this application to listen on another port. + +2023-08-24 16:39:26.383 INFO 12960 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 16:39:26.384 INFO 12960 --- [main] o.s.s.quartz.SchedulerFactoryBean : Shutting down Quartz Scheduler +2023-08-24 16:39:26.384 INFO 12960 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutting down. +2023-08-24 16:39:26.384 INFO 12960 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 16:39:26.384 INFO 12960 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutdown complete. +2023-08-24 16:39:26.386 INFO 12960 --- [main] c.b.d.d.DynamicRoutingDataSource : closing dynamicDatasource ing.... +2023-08-24 16:39:26.386 INFO 12960 --- [main] com.zaxxer.hikari.HikariDataSource : master - Shutdown initiated... +2023-08-24 16:39:26.389 INFO 12960 --- [main] com.zaxxer.hikari.HikariDataSource : master - Shutdown completed. +2023-08-24 16:39:40.975 INFO 20108 --- [main] com.huoran.iasf.IASFApplication : Starting IASFApplication on SC-202209231229 with PID 20108 (D:\IdeaProjects\IASF\target\classes started by Administrator in D:\IdeaProjects\IASF) +2023-08-24 16:39:40.976 INFO 20108 --- [main] com.huoran.iasf.IASFApplication : The following profiles are active: prod +2023-08-24 16:39:41.689 INFO 20108 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode! +2023-08-24 16:39:41.690 INFO 20108 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data repositories in DEFAULT mode. +2023-08-24 16:39:41.730 INFO 20108 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 32ms. Found 0 repository interfaces. +2023-08-24 16:39:41.993 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$14bb2744] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.089 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.datasource.dynamic-com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.093 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$7e499815] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.097 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dsProcessor' of type [com.baomidou.dynamic.datasource.processor.DsHeaderProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.101 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dynamicDatasourceAnnotationAdvisor' of type [com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.104 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'fileUploadProperties' of type [com.huoran.iasf.common.config.FileUploadProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.106 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'shiroConfig' of type [com.huoran.iasf.common.shiro.ShiroConfig$$EnhancerBySpringCGLIB$$2c7b6abb] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.466 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'customHashedCredentialsMatcher' of type [com.huoran.iasf.common.shiro.CustomHashedCredentialsMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.477 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'customRealm' of type [com.huoran.iasf.common.shiro.CustomRealm] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.488 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'securityManager' of type [org.apache.shiro.web.mgt.DefaultWebSecurityManager] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.506 INFO 20108 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'authorizationAttributeSourceAdvisor' of type [org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:39:42.725 INFO 20108 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9999 (http) +2023-08-24 16:39:42.741 INFO 20108 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat] +2023-08-24 16:39:42.741 INFO 20108 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.21] +2023-08-24 16:39:42.815 INFO 20108 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring embedded WebApplicationContext +2023-08-24 16:39:42.815 INFO 20108 --- [main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1784 ms +2023-08-24 16:39:42.881 INFO 20108 --- [main] o.apache.catalina.core.StandardContext : Suspicious URL pattern: [/**] in context [/iasf], see sections 12.1 and 12.2 of the Servlet specification +2023-08-24 16:39:43.118 INFO 20108 --- [main] com.zaxxer.hikari.HikariDataSource : master - Starting... +2023-08-24 16:39:43.287 INFO 20108 --- [main] com.zaxxer.hikari.HikariDataSource : master - Start completed. +2023-08-24 16:39:43.287 INFO 20108 --- [main] c.b.d.d.DynamicRoutingDataSource : 初始共加载 1 个数据源 +2023-08-24 16:39:43.287 INFO 20108 --- [main] c.b.d.d.DynamicRoutingDataSource : 动态数据源-加载 master 成功 +2023-08-24 16:39:43.287 INFO 20108 --- [main] c.b.d.d.DynamicRoutingDataSource : 当前的默认数据源是单数据源,数据源名为 master +2023-08-24 16:39:44.203 WARN 20108 --- [main] o.s.w.s.r.ResourceHttpRequestHandler : Locations list is empty. No resources will be served unless a custom ResourceResolver is configured as an alternative to PathResourceResolver. +2023-08-24 16:39:45.134 INFO 20108 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] +2023-08-24 16:39:45.660 INFO 20108 --- [main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor +2023-08-24 16:39:45.667 INFO 20108 --- [main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl +2023-08-24 16:39:45.667 INFO 20108 --- [main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. +2023-08-24 16:39:45.668 INFO 20108 --- [main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized. +2023-08-24 16:39:45.668 INFO 20108 --- [main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' + Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. + NOT STARTED. + Currently in standby mode. + Number of jobs executed: 0 + Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. + Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. + +2023-08-24 16:39:45.669 INFO 20108 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. +2023-08-24 16:39:45.669 INFO 20108 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 +2023-08-24 16:39:45.669 INFO 20108 --- [main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@1cb929a9 +2023-08-24 16:39:45.751 INFO 20108 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed +2023-08-24 16:39:45.764 INFO 20108 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s) +2023-08-24 16:39:45.931 INFO 20108 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references +2023-08-24 16:39:46.051 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_1 +2023-08-24 16:39:46.052 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_1 +2023-08-24 16:39:46.053 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateDeptUsingPUT_1 +2023-08-24 16:39:46.064 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_1 +2023-08-24 16:39:46.064 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_2 +2023-08-24 16:39:46.097 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_1 +2023-08-24 16:39:46.100 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_1 +2023-08-24 16:39:46.107 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1 +2023-08-24 16:39:46.111 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_2 +2023-08-24 16:39:46.117 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_1 +2023-08-24 16:39:46.119 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_1 +2023-08-24 16:39:46.120 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_2 +2023-08-24 16:39:46.121 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_2 +2023-08-24 16:39:46.122 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_3 +2023-08-24 16:39:46.141 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_2 +2023-08-24 16:39:46.145 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_2 +2023-08-24 16:39:46.146 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_3 +2023-08-24 16:39:46.186 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_3 +2023-08-24 16:39:46.188 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_4 +2023-08-24 16:39:46.189 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_3 +2023-08-24 16:39:46.190 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_3 +2023-08-24 16:39:46.190 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_4 +2023-08-24 16:39:46.191 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_4 +2023-08-24 16:39:46.192 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_5 +2023-08-24 16:39:46.194 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_4 +2023-08-24 16:39:46.196 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: checkForHeavyUsingPOST_1 +2023-08-24 16:39:46.196 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_4 +2023-08-24 16:39:46.197 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_5 +2023-08-24 16:39:46.199 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_5 +2023-08-24 16:39:46.200 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_6 +2023-08-24 16:39:46.222 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_7 +2023-08-24 16:39:46.223 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_3 +2023-08-24 16:39:46.225 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_1 +2023-08-24 16:39:46.227 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_5 +2023-08-24 16:39:46.228 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_6 +2023-08-24 16:39:46.230 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_6 +2023-08-24 16:39:46.231 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_8 +2023-08-24 16:39:46.243 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_2 +2023-08-24 16:39:46.246 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_2 +2023-08-24 16:39:46.253 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_2 +2023-08-24 16:39:46.254 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_4 +2023-08-24 16:39:46.254 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUserGroupAllUsingPOST_1 +2023-08-24 16:39:46.255 INFO 20108 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUserGroupUsingPUT_1 +2023-08-24 16:39:46.264 INFO 20108 --- [main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now +2023-08-24 16:39:46.265 INFO 20108 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. +2023-08-24 16:39:46.287 INFO 20108 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9999 (http) with context path '/iasf' +2023-08-24 16:39:46.288 INFO 20108 --- [main] com.huoran.iasf.IASFApplication : Started IASFApplication in 5.692 seconds (JVM running for 6.293) +2023-08-24 16:39:46.291 INFO 20108 --- [main] com.huoran.iasf.IASFApplication : +---------------------------------------------------------- + Application 'iasf' is running! Access URLs: + Doc: http://2.0.0.1:9999/iasf/doc.html +---------------------------------------------------------- +2023-08-24 16:40:14.607 INFO 20108 --- [http-nio-9999-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-08-24 16:40:14.607 INFO 20108 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' +2023-08-24 16:40:14.619 INFO 20108 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 12 ms +2023-08-24 16:41:17.995 INFO 20108 --- [Thread-14] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 16:41:17.996 INFO 20108 --- [Thread-14] o.s.s.quartz.SchedulerFactoryBean : Shutting down Quartz Scheduler +2023-08-24 16:41:17.996 INFO 20108 --- [Thread-14] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutting down. +2023-08-24 16:41:17.996 INFO 20108 --- [Thread-14] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 16:41:17.996 INFO 20108 --- [Thread-14] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutdown complete. +2023-08-24 16:41:17.998 INFO 20108 --- [Thread-14] c.b.d.d.DynamicRoutingDataSource : closing dynamicDatasource ing.... +2023-08-24 16:41:17.998 INFO 20108 --- [Thread-14] com.zaxxer.hikari.HikariDataSource : master - Shutdown initiated... +2023-08-24 16:41:18.001 INFO 20108 --- [Thread-14] com.zaxxer.hikari.HikariDataSource : master - Shutdown completed. +2023-08-24 16:41:20.704 INFO 20800 --- [main] com.huoran.iasf.IASFApplication : Starting IASFApplication on SC-202209231229 with PID 20800 (D:\IdeaProjects\IASF\target\classes started by Administrator in D:\IdeaProjects\IASF) +2023-08-24 16:41:20.706 INFO 20800 --- [main] com.huoran.iasf.IASFApplication : The following profiles are active: prod +2023-08-24 16:41:21.392 INFO 20800 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode! +2023-08-24 16:41:21.392 INFO 20800 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data repositories in DEFAULT mode. +2023-08-24 16:41:21.433 INFO 20800 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 31ms. Found 0 repository interfaces. +2023-08-24 16:41:21.696 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$1a1e978a] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:21.789 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.datasource.dynamic-com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:21.792 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$83ad085b] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:21.796 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dsProcessor' of type [com.baomidou.dynamic.datasource.processor.DsHeaderProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:21.799 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dynamicDatasourceAnnotationAdvisor' of type [com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:21.802 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'fileUploadProperties' of type [com.huoran.iasf.common.config.FileUploadProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:21.803 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'shiroConfig' of type [com.huoran.iasf.common.shiro.ShiroConfig$$EnhancerBySpringCGLIB$$31dedb01] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:22.149 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'customHashedCredentialsMatcher' of type [com.huoran.iasf.common.shiro.CustomHashedCredentialsMatcher] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:22.161 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'customRealm' of type [com.huoran.iasf.common.shiro.CustomRealm] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:22.172 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'securityManager' of type [org.apache.shiro.web.mgt.DefaultWebSecurityManager] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:22.189 INFO 20800 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'authorizationAttributeSourceAdvisor' of type [org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:41:22.417 INFO 20800 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9999 (http) +2023-08-24 16:41:22.431 INFO 20800 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat] +2023-08-24 16:41:22.432 INFO 20800 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.21] +2023-08-24 16:41:22.511 INFO 20800 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring embedded WebApplicationContext +2023-08-24 16:41:22.511 INFO 20800 --- [main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1754 ms +2023-08-24 16:41:22.573 INFO 20800 --- [main] o.apache.catalina.core.StandardContext : Suspicious URL pattern: [/**] in context [/iasf], see sections 12.1 and 12.2 of the Servlet specification +2023-08-24 16:41:22.828 INFO 20800 --- [main] com.zaxxer.hikari.HikariDataSource : master - Starting... +2023-08-24 16:41:22.998 INFO 20800 --- [main] com.zaxxer.hikari.HikariDataSource : master - Start completed. +2023-08-24 16:41:22.998 INFO 20800 --- [main] c.b.d.d.DynamicRoutingDataSource : 初始共加载 1 个数据源 +2023-08-24 16:41:22.999 INFO 20800 --- [main] c.b.d.d.DynamicRoutingDataSource : 动态数据源-加载 master 成功 +2023-08-24 16:41:22.999 INFO 20800 --- [main] c.b.d.d.DynamicRoutingDataSource : 当前的默认数据源是单数据源,数据源名为 master +2023-08-24 16:41:23.904 WARN 20800 --- [main] o.s.w.s.r.ResourceHttpRequestHandler : Locations list is empty. No resources will be served unless a custom ResourceResolver is configured as an alternative to PathResourceResolver. +2023-08-24 16:41:24.763 INFO 20800 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] +2023-08-24 16:41:25.289 INFO 20800 --- [main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor +2023-08-24 16:41:25.298 INFO 20800 --- [main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl +2023-08-24 16:41:25.298 INFO 20800 --- [main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. +2023-08-24 16:41:25.298 INFO 20800 --- [main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized. +2023-08-24 16:41:25.299 INFO 20800 --- [main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' + Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. + NOT STARTED. + Currently in standby mode. + Number of jobs executed: 0 + Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. + Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. + +2023-08-24 16:41:25.299 INFO 20800 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. +2023-08-24 16:41:25.299 INFO 20800 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 +2023-08-24 16:41:25.299 INFO 20800 --- [main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@4d9bccfe +2023-08-24 16:41:25.382 INFO 20800 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed +2023-08-24 16:41:25.394 INFO 20800 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s) +2023-08-24 16:41:25.563 INFO 20800 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references +2023-08-24 16:41:25.682 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_1 +2023-08-24 16:41:25.683 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_1 +2023-08-24 16:41:25.685 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateDeptUsingPUT_1 +2023-08-24 16:41:25.697 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_1 +2023-08-24 16:41:25.698 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_2 +2023-08-24 16:41:25.737 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_1 +2023-08-24 16:41:25.741 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_1 +2023-08-24 16:41:25.745 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1 +2023-08-24 16:41:25.747 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_2 +2023-08-24 16:41:25.750 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_1 +2023-08-24 16:41:25.753 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_1 +2023-08-24 16:41:25.754 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_2 +2023-08-24 16:41:25.756 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_2 +2023-08-24 16:41:25.756 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_3 +2023-08-24 16:41:25.772 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_2 +2023-08-24 16:41:25.776 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_2 +2023-08-24 16:41:25.777 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_3 +2023-08-24 16:41:25.812 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_3 +2023-08-24 16:41:25.815 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_4 +2023-08-24 16:41:25.816 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_3 +2023-08-24 16:41:25.817 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_3 +2023-08-24 16:41:25.817 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_4 +2023-08-24 16:41:25.818 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_4 +2023-08-24 16:41:25.819 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_5 +2023-08-24 16:41:25.821 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_4 +2023-08-24 16:41:25.822 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: checkForHeavyUsingPOST_1 +2023-08-24 16:41:25.823 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_4 +2023-08-24 16:41:25.823 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_5 +2023-08-24 16:41:25.825 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_5 +2023-08-24 16:41:25.826 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_6 +2023-08-24 16:41:25.847 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_7 +2023-08-24 16:41:25.849 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_3 +2023-08-24 16:41:25.851 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_1 +2023-08-24 16:41:25.852 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_5 +2023-08-24 16:41:25.853 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_6 +2023-08-24 16:41:25.855 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_6 +2023-08-24 16:41:25.856 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_8 +2023-08-24 16:41:25.868 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_2 +2023-08-24 16:41:25.871 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_2 +2023-08-24 16:41:25.876 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_2 +2023-08-24 16:41:25.877 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_4 +2023-08-24 16:41:25.878 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUserGroupAllUsingPOST_1 +2023-08-24 16:41:25.878 INFO 20800 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUserGroupUsingPUT_1 +2023-08-24 16:41:25.886 INFO 20800 --- [main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now +2023-08-24 16:41:25.886 INFO 20800 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. +2023-08-24 16:41:25.907 INFO 20800 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9999 (http) with context path '/iasf' +2023-08-24 16:41:25.909 INFO 20800 --- [main] com.huoran.iasf.IASFApplication : Started IASFApplication in 5.574 seconds (JVM running for 6.205) +2023-08-24 16:41:25.911 INFO 20800 --- [main] com.huoran.iasf.IASFApplication : +---------------------------------------------------------- + Application 'iasf' is running! Access URLs: + Doc: http://2.0.0.1:9999/iasf/doc.html +---------------------------------------------------------- +2023-08-24 16:42:48.166 INFO 20800 --- [http-nio-9999-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-08-24 16:42:48.166 INFO 20800 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' +2023-08-24 16:42:48.173 INFO 20800 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 7 ms +2023-08-24 16:42:48.188 INFO 20800 --- [http-nio-9999-exec-1] c.h.i.c.shiro.CustomAccessControlFilter : GET +2023-08-24 16:42:48.189 INFO 20800 --- [http-nio-9999-exec-1] c.h.i.c.shiro.CustomAccessControlFilter : http://192.168.31.51:9999/iasf/doc.html +2023-08-24 16:42:48.210 ERROR 20800 --- [http-nio-9999-exec-1] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +com.huoran.iasf.common.exception.UnauthorizedException: null + at com.huoran.iasf.common.shiro.CustomAccessControlFilter.onAccessDenied(CustomAccessControlFilter.java:88) + at org.apache.shiro.web.filter.AccessControlFilter.onAccessDenied(AccessControlFilter.java:133) + at org.apache.shiro.web.filter.AccessControlFilter.onPreHandle(AccessControlFilter.java:162) + at org.apache.shiro.web.filter.PathMatchingFilter.isFilterChainContinued(PathMatchingFilter.java:203) + at org.apache.shiro.web.filter.PathMatchingFilter.preHandle(PathMatchingFilter.java:178) + at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:131) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66) + at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449) + at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365) + at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) + at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) + at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387) + at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) + +2023-08-24 16:42:48.254 ERROR 20800 --- [http-nio-9999-exec-1] o.a.c.c.C.[.[.[.[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [/iasf] threw exception [java.lang.IllegalStateException: Cannot forward after response has been committed] with root cause + +java.lang.IllegalStateException: Cannot forward after response has been committed + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:323) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) + at com.huoran.iasf.common.shiro.CustomAccessControlFilter.onAccessDenied(CustomAccessControlFilter.java:100) + at org.apache.shiro.web.filter.AccessControlFilter.onAccessDenied(AccessControlFilter.java:133) + at org.apache.shiro.web.filter.AccessControlFilter.onPreHandle(AccessControlFilter.java:162) + at org.apache.shiro.web.filter.PathMatchingFilter.isFilterChainContinued(PathMatchingFilter.java:203) + at org.apache.shiro.web.filter.PathMatchingFilter.preHandle(PathMatchingFilter.java:178) + at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:131) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66) + at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449) + at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365) + at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) + at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) + at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387) + at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) + +2023-08-24 16:42:48.265 ERROR 20800 --- [http-nio-9999-exec-1] s.e.ErrorMvcAutoConfiguration$StaticView : Cannot render error page for request [/iasf/doc.html] and exception [No message available] as the response has already been committed. As a result, the response may have the wrong status code. +2023-08-24 16:43:40.334 INFO 20800 --- [http-nio-9999-exec-2] c.h.i.c.shiro.CustomAccessControlFilter : GET +2023-08-24 16:43:40.334 INFO 20800 --- [http-nio-9999-exec-2] c.h.i.c.shiro.CustomAccessControlFilter : http://192.168.31.51:9999/iasf/doc.html +2023-08-24 16:43:40.335 ERROR 20800 --- [http-nio-9999-exec-2] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +com.huoran.iasf.common.exception.UnauthorizedException: null + at com.huoran.iasf.common.shiro.CustomAccessControlFilter.onAccessDenied(CustomAccessControlFilter.java:88) + at org.apache.shiro.web.filter.AccessControlFilter.onAccessDenied(AccessControlFilter.java:133) + at org.apache.shiro.web.filter.AccessControlFilter.onPreHandle(AccessControlFilter.java:162) + at org.apache.shiro.web.filter.PathMatchingFilter.isFilterChainContinued(PathMatchingFilter.java:203) + at org.apache.shiro.web.filter.PathMatchingFilter.preHandle(PathMatchingFilter.java:178) + at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:131) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66) + at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449) + at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365) + at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) + at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) + at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387) + at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) + +2023-08-24 16:43:40.336 ERROR 20800 --- [http-nio-9999-exec-2] o.a.c.c.C.[.[.[.[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [/iasf] threw exception [java.lang.IllegalStateException: Cannot forward after response has been committed] with root cause + +java.lang.IllegalStateException: Cannot forward after response has been committed + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:323) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) + at com.huoran.iasf.common.shiro.CustomAccessControlFilter.onAccessDenied(CustomAccessControlFilter.java:100) + at org.apache.shiro.web.filter.AccessControlFilter.onAccessDenied(AccessControlFilter.java:133) + at org.apache.shiro.web.filter.AccessControlFilter.onPreHandle(AccessControlFilter.java:162) + at org.apache.shiro.web.filter.PathMatchingFilter.isFilterChainContinued(PathMatchingFilter.java:203) + at org.apache.shiro.web.filter.PathMatchingFilter.preHandle(PathMatchingFilter.java:178) + at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:131) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66) + at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449) + at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365) + at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) + at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) + at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387) + at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) + +2023-08-24 16:43:40.338 ERROR 20800 --- [http-nio-9999-exec-2] s.e.ErrorMvcAutoConfiguration$StaticView : Cannot render error page for request [/iasf/doc.html] and exception [No message available] as the response has already been committed. As a result, the response may have the wrong status code. +2023-08-24 16:43:52.329 INFO 20800 --- [http-nio-9999-exec-5] c.h.i.c.shiro.CustomAccessControlFilter : GET +2023-08-24 16:43:52.329 INFO 20800 --- [http-nio-9999-exec-5] c.h.i.c.shiro.CustomAccessControlFilter : http://192.168.31.51:9999/iasf/doc.html +2023-08-24 16:43:52.331 ERROR 20800 --- [http-nio-9999-exec-5] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +com.huoran.iasf.common.exception.UnauthorizedException: null + at com.huoran.iasf.common.shiro.CustomAccessControlFilter.onAccessDenied(CustomAccessControlFilter.java:88) + at org.apache.shiro.web.filter.AccessControlFilter.onAccessDenied(AccessControlFilter.java:133) + at org.apache.shiro.web.filter.AccessControlFilter.onPreHandle(AccessControlFilter.java:162) + at org.apache.shiro.web.filter.PathMatchingFilter.isFilterChainContinued(PathMatchingFilter.java:203) + at org.apache.shiro.web.filter.PathMatchingFilter.preHandle(PathMatchingFilter.java:178) + at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:131) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66) + at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449) + at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365) + at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) + at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) + at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387) + at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) + +2023-08-24 16:43:52.332 ERROR 20800 --- [http-nio-9999-exec-5] o.a.c.c.C.[.[.[.[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [/iasf] threw exception [java.lang.IllegalStateException: Cannot forward after response has been committed] with root cause + +java.lang.IllegalStateException: Cannot forward after response has been committed + at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:323) + at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) + at com.huoran.iasf.common.shiro.CustomAccessControlFilter.onAccessDenied(CustomAccessControlFilter.java:100) + at org.apache.shiro.web.filter.AccessControlFilter.onAccessDenied(AccessControlFilter.java:133) + at org.apache.shiro.web.filter.AccessControlFilter.onPreHandle(AccessControlFilter.java:162) + at org.apache.shiro.web.filter.PathMatchingFilter.isFilterChainContinued(PathMatchingFilter.java:203) + at org.apache.shiro.web.filter.PathMatchingFilter.preHandle(PathMatchingFilter.java:178) + at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:131) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66) + at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449) + at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365) + at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) + at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) + at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387) + at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362) + at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) + +2023-08-24 16:43:52.335 ERROR 20800 --- [http-nio-9999-exec-5] s.e.ErrorMvcAutoConfiguration$StaticView : Cannot render error page for request [/iasf/doc.html] and exception [No message available] as the response has already been committed. As a result, the response may have the wrong status code. +2023-08-24 16:44:49.525 INFO 20800 --- [Thread-14] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 16:44:49.525 INFO 20800 --- [Thread-14] o.s.s.quartz.SchedulerFactoryBean : Shutting down Quartz Scheduler +2023-08-24 16:44:49.525 INFO 20800 --- [Thread-14] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutting down. +2023-08-24 16:44:49.525 INFO 20800 --- [Thread-14] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 16:44:49.526 INFO 20800 --- [Thread-14] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutdown complete. +2023-08-24 16:44:49.528 INFO 20800 --- [Thread-14] c.b.d.d.DynamicRoutingDataSource : closing dynamicDatasource ing.... +2023-08-24 16:44:49.528 INFO 20800 --- [Thread-14] com.zaxxer.hikari.HikariDataSource : master - Shutdown initiated... +2023-08-24 16:44:49.531 INFO 20800 --- [Thread-14] com.zaxxer.hikari.HikariDataSource : master - Shutdown completed. +2023-08-24 16:45:08.553 INFO 1500 --- [main] com.huoran.iasf.IASFApplication : Starting IASFApplication on SC-202209231229 with PID 1500 (D:\IdeaProjects\IASF\target\classes started by Administrator in D:\IdeaProjects\IASF) +2023-08-24 16:45:08.553 INFO 1500 --- [main] com.huoran.iasf.IASFApplication : The following profiles are active: prod +2023-08-24 16:45:09.286 INFO 1500 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode! +2023-08-24 16:45:09.287 INFO 1500 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data repositories in DEFAULT mode. +2023-08-24 16:45:09.326 INFO 1500 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 32ms. Found 0 repository interfaces. +2023-08-24 16:45:09.584 INFO 1500 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$73124a3b] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:45:09.678 INFO 1500 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.datasource.dynamic-com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:45:09.681 INFO 1500 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$dca0bb0c] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:45:09.686 INFO 1500 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dsProcessor' of type [com.baomidou.dynamic.datasource.processor.DsHeaderProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:45:09.689 INFO 1500 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dynamicDatasourceAnnotationAdvisor' of type [com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 16:45:09.937 INFO 1500 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9999 (http) +2023-08-24 16:45:09.951 INFO 1500 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat] +2023-08-24 16:45:09.951 INFO 1500 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.21] +2023-08-24 16:45:10.031 INFO 1500 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring embedded WebApplicationContext +2023-08-24 16:45:10.031 INFO 1500 --- [main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1408 ms +2023-08-24 16:45:10.295 INFO 1500 --- [main] com.zaxxer.hikari.HikariDataSource : master - Starting... +2023-08-24 16:45:10.439 INFO 1500 --- [main] com.zaxxer.hikari.HikariDataSource : master - Start completed. +2023-08-24 16:45:10.439 INFO 1500 --- [main] c.b.d.d.DynamicRoutingDataSource : 初始共加载 1 个数据源 +2023-08-24 16:45:10.439 INFO 1500 --- [main] c.b.d.d.DynamicRoutingDataSource : 动态数据源-加载 master 成功 +2023-08-24 16:45:10.439 INFO 1500 --- [main] c.b.d.d.DynamicRoutingDataSource : 当前的默认数据源是单数据源,数据源名为 master +2023-08-24 16:45:11.318 WARN 1500 --- [main] o.s.w.s.r.ResourceHttpRequestHandler : Locations list is empty. No resources will be served unless a custom ResourceResolver is configured as an alternative to PathResourceResolver. +2023-08-24 16:45:11.971 INFO 1500 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] +2023-08-24 16:45:12.406 INFO 1500 --- [main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor +2023-08-24 16:45:12.415 INFO 1500 --- [main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl +2023-08-24 16:45:12.415 INFO 1500 --- [main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. +2023-08-24 16:45:12.415 INFO 1500 --- [main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized. +2023-08-24 16:45:12.416 INFO 1500 --- [main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' + Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. + NOT STARTED. + Currently in standby mode. + Number of jobs executed: 0 + Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. + Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. + +2023-08-24 16:45:12.416 INFO 1500 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. +2023-08-24 16:45:12.416 INFO 1500 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 +2023-08-24 16:45:12.416 INFO 1500 --- [main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@50b4e7b2 +2023-08-24 16:45:12.486 INFO 1500 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed +2023-08-24 16:45:12.498 INFO 1500 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s) +2023-08-24 16:45:12.529 INFO 1500 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references +2023-08-24 16:45:12.638 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_1 +2023-08-24 16:45:12.639 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_1 +2023-08-24 16:45:12.641 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateDeptUsingPUT_1 +2023-08-24 16:45:12.653 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_1 +2023-08-24 16:45:12.654 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_2 +2023-08-24 16:45:12.686 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_1 +2023-08-24 16:45:12.690 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_1 +2023-08-24 16:45:12.694 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1 +2023-08-24 16:45:12.697 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_2 +2023-08-24 16:45:12.700 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_1 +2023-08-24 16:45:12.702 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_1 +2023-08-24 16:45:12.703 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_2 +2023-08-24 16:45:12.705 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_2 +2023-08-24 16:45:12.705 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_3 +2023-08-24 16:45:12.720 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_2 +2023-08-24 16:45:12.724 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_2 +2023-08-24 16:45:12.725 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_3 +2023-08-24 16:45:12.763 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_3 +2023-08-24 16:45:12.765 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_4 +2023-08-24 16:45:12.766 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_3 +2023-08-24 16:45:12.767 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_3 +2023-08-24 16:45:12.767 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_4 +2023-08-24 16:45:12.769 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_4 +2023-08-24 16:45:12.770 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_5 +2023-08-24 16:45:12.772 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_4 +2023-08-24 16:45:12.772 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: checkForHeavyUsingPOST_1 +2023-08-24 16:45:12.773 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_4 +2023-08-24 16:45:12.773 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_5 +2023-08-24 16:45:12.776 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_5 +2023-08-24 16:45:12.777 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_6 +2023-08-24 16:45:12.795 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_7 +2023-08-24 16:45:12.796 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_3 +2023-08-24 16:45:12.798 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_1 +2023-08-24 16:45:12.800 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_5 +2023-08-24 16:45:12.801 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_6 +2023-08-24 16:45:12.803 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_6 +2023-08-24 16:45:12.803 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_8 +2023-08-24 16:45:12.815 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_2 +2023-08-24 16:45:12.817 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_2 +2023-08-24 16:45:12.823 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_2 +2023-08-24 16:45:12.824 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_4 +2023-08-24 16:45:12.825 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUserGroupAllUsingPOST_1 +2023-08-24 16:45:12.825 INFO 1500 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUserGroupUsingPUT_1 +2023-08-24 16:45:12.834 INFO 1500 --- [main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now +2023-08-24 16:45:12.834 INFO 1500 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. +2023-08-24 16:45:12.856 INFO 1500 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9999 (http) with context path '/iasf' +2023-08-24 16:45:12.857 INFO 1500 --- [main] com.huoran.iasf.IASFApplication : Started IASFApplication in 4.68 seconds (JVM running for 5.318) +2023-08-24 16:45:12.861 INFO 1500 --- [main] com.huoran.iasf.IASFApplication : +---------------------------------------------------------- + Application 'iasf' is running! Access URLs: + Doc: http://2.0.0.1:9999/iasf/doc.html +---------------------------------------------------------- +2023-08-24 16:45:21.110 INFO 1500 --- [http-nio-9999-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-08-24 16:45:21.110 INFO 1500 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' +2023-08-24 16:45:21.117 INFO 1500 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 7 ms +2023-08-24 16:56:42.657 ERROR 1500 --- [http-nio-9999-exec-6] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: parseInt error; nested exception is com.alibaba.fastjson.JSONException: parseInt error + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.readType(FastJsonHttpMessageConverter.java:271) + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.read(FastJsonHttpMessageConverter.java:237) + at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:204) + at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:157) + at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:130) + at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:126) + at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:167) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:134) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: com.alibaba.fastjson.JSONException: parseInt error + at com.alibaba.fastjson.serializer.IntegerCodec.deserialze(IntegerCodec.java:101) + at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:700) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:395) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:460) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:568) + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.readType(FastJsonHttpMessageConverter.java:263) + ... 53 common frames omitted +Caused by: com.alibaba.fastjson.JSONException: can not cast to int, value : {} + at com.alibaba.fastjson.util.TypeUtils.castToInt(TypeUtils.java:1000) + at com.alibaba.fastjson.serializer.IntegerCodec.deserialze(IntegerCodec.java:90) + ... 58 common frames omitted + +2023-08-24 16:57:20.883 ERROR 1500 --- [http-nio-9999-exec-10] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: parseInt error; nested exception is com.alibaba.fastjson.JSONException: parseInt error + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.readType(FastJsonHttpMessageConverter.java:271) + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.read(FastJsonHttpMessageConverter.java:237) + at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:204) + at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:157) + at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:130) + at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:126) + at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:167) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:134) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: com.alibaba.fastjson.JSONException: parseInt error + at com.alibaba.fastjson.serializer.IntegerCodec.deserialze(IntegerCodec.java:101) + at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:700) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:395) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:460) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:568) + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.readType(FastJsonHttpMessageConverter.java:263) + ... 53 common frames omitted +Caused by: com.alibaba.fastjson.JSONException: can not cast to int, value : {"siteId":1} + at com.alibaba.fastjson.util.TypeUtils.castToInt(TypeUtils.java:1000) + at com.alibaba.fastjson.serializer.IntegerCodec.deserialze(IntegerCodec.java:90) + ... 58 common frames omitted + +2023-08-24 16:57:42.857 ERROR 1500 --- [http-nio-9999-exec-1] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: parseInt error; nested exception is com.alibaba.fastjson.JSONException: parseInt error + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.readType(FastJsonHttpMessageConverter.java:271) + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.read(FastJsonHttpMessageConverter.java:237) + at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:204) + at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:157) + at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:130) + at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:126) + at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:167) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:134) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: com.alibaba.fastjson.JSONException: parseInt error + at com.alibaba.fastjson.serializer.IntegerCodec.deserialze(IntegerCodec.java:101) + at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:700) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:395) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:460) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:568) + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.readType(FastJsonHttpMessageConverter.java:263) + ... 53 common frames omitted +Caused by: com.alibaba.fastjson.JSONException: can not cast to int, value : {"siteId":1} + at com.alibaba.fastjson.util.TypeUtils.castToInt(TypeUtils.java:1000) + at com.alibaba.fastjson.serializer.IntegerCodec.deserialze(IntegerCodec.java:90) + ... 58 common frames omitted + +2023-08-24 17:03:11.677 ERROR 1500 --- [http-nio-9999-exec-8] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: parseInt error; nested exception is com.alibaba.fastjson.JSONException: parseInt error + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.readType(FastJsonHttpMessageConverter.java:271) + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.read(FastJsonHttpMessageConverter.java:237) + at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:204) + at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:157) + at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:130) + at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:126) + at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:167) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:134) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: com.alibaba.fastjson.JSONException: parseInt error + at com.alibaba.fastjson.serializer.IntegerCodec.deserialze(IntegerCodec.java:101) + at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:700) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:395) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:460) + at com.alibaba.fastjson.JSON.parseObject(JSON.java:568) + at com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter.readType(FastJsonHttpMessageConverter.java:263) + ... 53 common frames omitted +Caused by: com.alibaba.fastjson.JSONException: can not cast to int, value : {"siteId":1} + at com.alibaba.fastjson.util.TypeUtils.castToInt(TypeUtils.java:1000) + at com.alibaba.fastjson.serializer.IntegerCodec.deserialze(IntegerCodec.java:90) + ... 58 common frames omitted + +2023-08-24 17:04:40.344 INFO 1500 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 17:04:40.344 INFO 1500 --- [Thread-12] o.s.s.quartz.SchedulerFactoryBean : Shutting down Quartz Scheduler +2023-08-24 17:04:40.344 INFO 1500 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutting down. +2023-08-24 17:04:40.344 INFO 1500 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 17:04:40.345 INFO 1500 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutdown complete. +2023-08-24 17:04:40.347 INFO 1500 --- [Thread-12] c.b.d.d.DynamicRoutingDataSource : closing dynamicDatasource ing.... +2023-08-24 17:04:40.347 INFO 1500 --- [Thread-12] com.zaxxer.hikari.HikariDataSource : master - Shutdown initiated... +2023-08-24 17:04:40.349 INFO 1500 --- [Thread-12] com.zaxxer.hikari.HikariDataSource : master - Shutdown completed. +2023-08-24 17:04:44.247 INFO 32636 --- [main] com.huoran.iasf.IASFApplication : Starting IASFApplication on SC-202209231229 with PID 32636 (D:\IdeaProjects\IASF\target\classes started by Administrator in D:\IdeaProjects\IASF) +2023-08-24 17:04:44.249 INFO 32636 --- [main] com.huoran.iasf.IASFApplication : The following profiles are active: prod +2023-08-24 17:04:44.923 INFO 32636 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode! +2023-08-24 17:04:44.924 INFO 32636 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data repositories in DEFAULT mode. +2023-08-24 17:04:44.966 INFO 32636 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 32ms. Found 0 repository interfaces. +2023-08-24 17:04:45.218 INFO 32636 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$64c5bc51] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:04:45.314 INFO 32636 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.datasource.dynamic-com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:04:45.317 INFO 32636 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$ce542d22] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:04:45.321 INFO 32636 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dsProcessor' of type [com.baomidou.dynamic.datasource.processor.DsHeaderProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:04:45.324 INFO 32636 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dynamicDatasourceAnnotationAdvisor' of type [com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:04:45.566 INFO 32636 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9999 (http) +2023-08-24 17:04:45.580 INFO 32636 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat] +2023-08-24 17:04:45.580 INFO 32636 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.21] +2023-08-24 17:04:45.657 INFO 32636 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring embedded WebApplicationContext +2023-08-24 17:04:45.657 INFO 32636 --- [main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1347 ms +2023-08-24 17:04:45.910 INFO 32636 --- [main] com.zaxxer.hikari.HikariDataSource : master - Starting... +2023-08-24 17:04:46.075 INFO 32636 --- [main] com.zaxxer.hikari.HikariDataSource : master - Start completed. +2023-08-24 17:04:46.076 INFO 32636 --- [main] c.b.d.d.DynamicRoutingDataSource : 初始共加载 1 个数据源 +2023-08-24 17:04:46.076 INFO 32636 --- [main] c.b.d.d.DynamicRoutingDataSource : 动态数据源-加载 master 成功 +2023-08-24 17:04:46.076 INFO 32636 --- [main] c.b.d.d.DynamicRoutingDataSource : 当前的默认数据源是单数据源,数据源名为 master +2023-08-24 17:04:46.974 WARN 32636 --- [main] o.s.w.s.r.ResourceHttpRequestHandler : Locations list is empty. No resources will be served unless a custom ResourceResolver is configured as an alternative to PathResourceResolver. +2023-08-24 17:04:47.621 INFO 32636 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] +2023-08-24 17:04:48.045 INFO 32636 --- [main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor +2023-08-24 17:04:48.052 INFO 32636 --- [main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl +2023-08-24 17:04:48.052 INFO 32636 --- [main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. +2023-08-24 17:04:48.052 INFO 32636 --- [main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized. +2023-08-24 17:04:48.053 INFO 32636 --- [main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' + Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. + NOT STARTED. + Currently in standby mode. + Number of jobs executed: 0 + Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. + Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. + +2023-08-24 17:04:48.053 INFO 32636 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. +2023-08-24 17:04:48.053 INFO 32636 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 +2023-08-24 17:04:48.053 INFO 32636 --- [main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@6958d5d0 +2023-08-24 17:04:48.125 INFO 32636 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed +2023-08-24 17:04:48.137 INFO 32636 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s) +2023-08-24 17:04:48.170 INFO 32636 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references +2023-08-24 17:04:48.288 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_1 +2023-08-24 17:04:48.288 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_1 +2023-08-24 17:04:48.289 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateDeptUsingPUT_1 +2023-08-24 17:04:48.301 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_1 +2023-08-24 17:04:48.301 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_2 +2023-08-24 17:04:48.338 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_1 +2023-08-24 17:04:48.341 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_1 +2023-08-24 17:04:48.346 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1 +2023-08-24 17:04:48.347 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_2 +2023-08-24 17:04:48.351 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_1 +2023-08-24 17:04:48.352 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_1 +2023-08-24 17:04:48.353 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_2 +2023-08-24 17:04:48.355 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_2 +2023-08-24 17:04:48.355 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_3 +2023-08-24 17:04:48.371 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_2 +2023-08-24 17:04:48.373 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_2 +2023-08-24 17:04:48.374 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_3 +2023-08-24 17:04:48.411 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_3 +2023-08-24 17:04:48.413 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_4 +2023-08-24 17:04:48.414 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_3 +2023-08-24 17:04:48.414 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_3 +2023-08-24 17:04:48.415 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_4 +2023-08-24 17:04:48.416 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_4 +2023-08-24 17:04:48.417 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_5 +2023-08-24 17:04:48.419 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_4 +2023-08-24 17:04:48.420 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: checkForHeavyUsingPOST_1 +2023-08-24 17:04:48.421 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_4 +2023-08-24 17:04:48.421 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_5 +2023-08-24 17:04:48.423 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_5 +2023-08-24 17:04:48.424 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_6 +2023-08-24 17:04:48.444 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_7 +2023-08-24 17:04:48.445 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_3 +2023-08-24 17:04:48.447 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_1 +2023-08-24 17:04:48.448 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_5 +2023-08-24 17:04:48.449 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_6 +2023-08-24 17:04:48.452 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_6 +2023-08-24 17:04:48.453 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_8 +2023-08-24 17:04:48.465 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_2 +2023-08-24 17:04:48.468 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_2 +2023-08-24 17:04:48.474 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_2 +2023-08-24 17:04:48.475 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_4 +2023-08-24 17:04:48.476 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUserGroupAllUsingPOST_1 +2023-08-24 17:04:48.476 INFO 32636 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUserGroupUsingPUT_1 +2023-08-24 17:04:48.485 INFO 32636 --- [main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now +2023-08-24 17:04:48.485 INFO 32636 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. +2023-08-24 17:04:48.508 INFO 32636 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9999 (http) with context path '/iasf' +2023-08-24 17:04:48.510 INFO 32636 --- [main] com.huoran.iasf.IASFApplication : Started IASFApplication in 4.609 seconds (JVM running for 5.212) +2023-08-24 17:04:48.513 INFO 32636 --- [main] com.huoran.iasf.IASFApplication : +---------------------------------------------------------- + Application 'iasf' is running! Access URLs: + Doc: http://2.0.0.1:9999/iasf/doc.html +---------------------------------------------------------- +2023-08-24 17:04:55.373 INFO 32636 --- [http-nio-9999-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-08-24 17:04:55.373 INFO 32636 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' +2023-08-24 17:04:55.380 INFO 32636 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 7 ms +2023-08-24 17:05:02.708 ERROR 32636 --- [http-nio-9999-exec-8] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +### The error may exist in com/huoran/iasf/mapper/SeoMapper.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,title,keyword,describe,site_id FROM sys_seo WHERE (site_id = ?) +### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:234) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) + at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440) + at com.sun.proxy.$Proxy102.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:173) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:78) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at com.sun.proxy.$Proxy131.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:277) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:684) + at com.huoran.iasf.service.impl.SeoServiceImpl$$EnhancerBySpringCGLIB$$b15add98.list() + at com.huoran.iasf.controller.SeoController.list(SeoController.java:71) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:955) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:372) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59) + at com.sun.proxy.$Proxy221.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63) + at com.sun.proxy.$Proxy220.query(Unknown Source) + at com.baomidou.mybatisplus.core.executor.MybatisSimpleExecutor.doQuery(MybatisSimpleExecutor.java:69) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:165) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:92) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426) + ... 65 common frames omitted + +2023-08-24 17:06:15.870 ERROR 32636 --- [http-nio-9999-exec-1] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +### The error may exist in com/huoran/iasf/mapper/SeoMapper.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,title,keyword,describe,site_id FROM sys_seo WHERE (site_id = ?) +### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:234) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) + at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440) + at com.sun.proxy.$Proxy102.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:173) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:78) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at com.sun.proxy.$Proxy131.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:277) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:684) + at com.huoran.iasf.service.impl.SeoServiceImpl$$EnhancerBySpringCGLIB$$b15add98.list() + at com.huoran.iasf.controller.SeoController.list(SeoController.java:71) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:955) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:372) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59) + at com.sun.proxy.$Proxy221.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63) + at com.sun.proxy.$Proxy220.query(Unknown Source) + at com.baomidou.mybatisplus.core.executor.MybatisSimpleExecutor.doQuery(MybatisSimpleExecutor.java:69) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:165) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:92) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426) + ... 65 common frames omitted + +2023-08-24 17:06:42.940 ERROR 32636 --- [http-nio-9999-exec-10] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.web.bind.MissingServletRequestParameterException: Required Integer parameter 'siteId' is not present + at org.springframework.web.method.annotation.RequestParamMethodArgumentResolver.handleMissingValue(RequestParamMethodArgumentResolver.java:202) + at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.resolveArgument(AbstractNamedValueMethodArgumentResolver.java:113) + at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:126) + at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:167) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:134) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) + +2023-08-24 17:07:59.438 ERROR 32636 --- [http-nio-9999-exec-8] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +### The error may exist in com/huoran/iasf/mapper/SeoMapper.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,title,keyword,describe,site_id FROM sys_seo WHERE (site_id = ?) +### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:234) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) + at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440) + at com.sun.proxy.$Proxy102.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:173) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:78) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at com.sun.proxy.$Proxy131.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:277) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:684) + at com.huoran.iasf.service.impl.SeoServiceImpl$$EnhancerBySpringCGLIB$$b15add98.list() + at com.huoran.iasf.controller.SeoController.list(SeoController.java:71) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:955) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:372) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59) + at com.sun.proxy.$Proxy221.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63) + at com.sun.proxy.$Proxy220.query(Unknown Source) + at com.baomidou.mybatisplus.core.executor.MybatisSimpleExecutor.doQuery(MybatisSimpleExecutor.java:69) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:165) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:92) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426) + ... 65 common frames omitted + +2023-08-24 17:08:08.690 ERROR 32636 --- [http-nio-9999-exec-9] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.web.bind.MissingServletRequestParameterException: Required Integer parameter 'siteId' is not present + at org.springframework.web.method.annotation.RequestParamMethodArgumentResolver.handleMissingValue(RequestParamMethodArgumentResolver.java:202) + at org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.resolveArgument(AbstractNamedValueMethodArgumentResolver.java:113) + at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:126) + at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:167) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:134) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) + +2023-08-24 17:08:52.121 ERROR 32636 --- [http-nio-9999-exec-3] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +### The error may exist in com/huoran/iasf/mapper/SeoMapper.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,title,keyword,describe,site_id FROM sys_seo WHERE (site_id = ?) +### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:234) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) + at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440) + at com.sun.proxy.$Proxy102.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:173) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:78) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at com.sun.proxy.$Proxy131.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:277) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:684) + at com.huoran.iasf.service.impl.SeoServiceImpl$$EnhancerBySpringCGLIB$$b15add98.list() + at com.huoran.iasf.controller.SeoController.list(SeoController.java:71) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:955) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:372) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59) + at com.sun.proxy.$Proxy221.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63) + at com.sun.proxy.$Proxy220.query(Unknown Source) + at com.baomidou.mybatisplus.core.executor.MybatisSimpleExecutor.doQuery(MybatisSimpleExecutor.java:69) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:165) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:92) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426) + ... 65 common frames omitted + +2023-08-24 17:08:53.100 ERROR 32636 --- [http-nio-9999-exec-1] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +### The error may exist in com/huoran/iasf/mapper/SeoMapper.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,title,keyword,describe,site_id FROM sys_seo WHERE (site_id = ?) +### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:234) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) + at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440) + at com.sun.proxy.$Proxy102.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:173) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:78) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at com.sun.proxy.$Proxy131.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:277) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:684) + at com.huoran.iasf.service.impl.SeoServiceImpl$$EnhancerBySpringCGLIB$$b15add98.list() + at com.huoran.iasf.controller.SeoController.list(SeoController.java:71) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:955) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:372) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59) + at com.sun.proxy.$Proxy221.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63) + at com.sun.proxy.$Proxy220.query(Unknown Source) + at com.baomidou.mybatisplus.core.executor.MybatisSimpleExecutor.doQuery(MybatisSimpleExecutor.java:69) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:165) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:92) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426) + ... 65 common frames omitted + +2023-08-24 17:09:04.583 INFO 32636 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 17:09:04.583 INFO 32636 --- [Thread-12] o.s.s.quartz.SchedulerFactoryBean : Shutting down Quartz Scheduler +2023-08-24 17:09:04.583 INFO 32636 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutting down. +2023-08-24 17:09:04.583 INFO 32636 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 17:09:04.583 INFO 32636 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutdown complete. +2023-08-24 17:09:04.586 INFO 32636 --- [Thread-12] c.b.d.d.DynamicRoutingDataSource : closing dynamicDatasource ing.... +2023-08-24 17:09:04.587 INFO 32636 --- [Thread-12] com.zaxxer.hikari.HikariDataSource : master - Shutdown initiated... +2023-08-24 17:09:04.589 INFO 32636 --- [Thread-12] com.zaxxer.hikari.HikariDataSource : master - Shutdown completed. +2023-08-24 17:09:08.329 INFO 16008 --- [main] com.huoran.iasf.IASFApplication : Starting IASFApplication on SC-202209231229 with PID 16008 (D:\IdeaProjects\IASF\target\classes started by Administrator in D:\IdeaProjects\IASF) +2023-08-24 17:09:08.330 INFO 16008 --- [main] com.huoran.iasf.IASFApplication : The following profiles are active: prod +2023-08-24 17:09:08.997 INFO 16008 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode! +2023-08-24 17:09:08.999 INFO 16008 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data repositories in DEFAULT mode. +2023-08-24 17:09:09.040 INFO 16008 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 33ms. Found 0 repository interfaces. +2023-08-24 17:09:09.296 INFO 16008 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$d93204a2] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:09:09.392 INFO 16008 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.datasource.dynamic-com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:09:09.395 INFO 16008 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$42c07573] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:09:09.400 INFO 16008 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dsProcessor' of type [com.baomidou.dynamic.datasource.processor.DsHeaderProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:09:09.404 INFO 16008 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dynamicDatasourceAnnotationAdvisor' of type [com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:09:09.656 INFO 16008 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9999 (http) +2023-08-24 17:09:09.670 INFO 16008 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat] +2023-08-24 17:09:09.671 INFO 16008 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.21] +2023-08-24 17:09:09.748 INFO 16008 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring embedded WebApplicationContext +2023-08-24 17:09:09.748 INFO 16008 --- [main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1367 ms +2023-08-24 17:09:10.028 INFO 16008 --- [main] com.zaxxer.hikari.HikariDataSource : master - Starting... +2023-08-24 17:09:10.188 INFO 16008 --- [main] com.zaxxer.hikari.HikariDataSource : master - Start completed. +2023-08-24 17:09:10.188 INFO 16008 --- [main] c.b.d.d.DynamicRoutingDataSource : 初始共加载 1 个数据源 +2023-08-24 17:09:10.188 INFO 16008 --- [main] c.b.d.d.DynamicRoutingDataSource : 动态数据源-加载 master 成功 +2023-08-24 17:09:10.188 INFO 16008 --- [main] c.b.d.d.DynamicRoutingDataSource : 当前的默认数据源是单数据源,数据源名为 master +2023-08-24 17:09:11.075 WARN 16008 --- [main] o.s.w.s.r.ResourceHttpRequestHandler : Locations list is empty. No resources will be served unless a custom ResourceResolver is configured as an alternative to PathResourceResolver. +2023-08-24 17:09:11.684 INFO 16008 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] +2023-08-24 17:09:12.106 INFO 16008 --- [main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor +2023-08-24 17:09:12.114 INFO 16008 --- [main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl +2023-08-24 17:09:12.115 INFO 16008 --- [main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. +2023-08-24 17:09:12.115 INFO 16008 --- [main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized. +2023-08-24 17:09:12.116 INFO 16008 --- [main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' + Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. + NOT STARTED. + Currently in standby mode. + Number of jobs executed: 0 + Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. + Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. + +2023-08-24 17:09:12.116 INFO 16008 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. +2023-08-24 17:09:12.116 INFO 16008 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 +2023-08-24 17:09:12.116 INFO 16008 --- [main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@102aa5fc +2023-08-24 17:09:12.209 INFO 16008 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed +2023-08-24 17:09:12.223 INFO 16008 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s) +2023-08-24 17:09:12.252 INFO 16008 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references +2023-08-24 17:09:12.361 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_1 +2023-08-24 17:09:12.363 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_1 +2023-08-24 17:09:12.365 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateDeptUsingPUT_1 +2023-08-24 17:09:12.374 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_1 +2023-08-24 17:09:12.375 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_2 +2023-08-24 17:09:12.407 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_1 +2023-08-24 17:09:12.412 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_1 +2023-08-24 17:09:12.416 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1 +2023-08-24 17:09:12.417 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_2 +2023-08-24 17:09:12.420 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_1 +2023-08-24 17:09:12.422 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_1 +2023-08-24 17:09:12.422 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_2 +2023-08-24 17:09:12.425 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_2 +2023-08-24 17:09:12.426 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_3 +2023-08-24 17:09:12.439 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_2 +2023-08-24 17:09:12.444 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_2 +2023-08-24 17:09:12.445 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_3 +2023-08-24 17:09:12.478 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_3 +2023-08-24 17:09:12.479 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_4 +2023-08-24 17:09:12.480 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_3 +2023-08-24 17:09:12.481 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_3 +2023-08-24 17:09:12.482 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_4 +2023-08-24 17:09:12.482 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_4 +2023-08-24 17:09:12.483 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_5 +2023-08-24 17:09:12.485 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_4 +2023-08-24 17:09:12.486 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: checkForHeavyUsingPOST_1 +2023-08-24 17:09:12.486 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_4 +2023-08-24 17:09:12.487 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_5 +2023-08-24 17:09:12.489 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_5 +2023-08-24 17:09:12.490 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_6 +2023-08-24 17:09:12.509 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_7 +2023-08-24 17:09:12.510 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_3 +2023-08-24 17:09:12.512 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_1 +2023-08-24 17:09:12.513 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_5 +2023-08-24 17:09:12.514 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_6 +2023-08-24 17:09:12.515 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_6 +2023-08-24 17:09:12.516 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_8 +2023-08-24 17:09:12.527 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_2 +2023-08-24 17:09:12.530 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_2 +2023-08-24 17:09:12.538 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_2 +2023-08-24 17:09:12.539 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_4 +2023-08-24 17:09:12.539 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUserGroupAllUsingPOST_1 +2023-08-24 17:09:12.540 INFO 16008 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUserGroupUsingPUT_1 +2023-08-24 17:09:12.548 INFO 16008 --- [main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now +2023-08-24 17:09:12.548 INFO 16008 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. +2023-08-24 17:09:12.571 INFO 16008 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9999 (http) with context path '/iasf' +2023-08-24 17:09:12.573 INFO 16008 --- [main] com.huoran.iasf.IASFApplication : Started IASFApplication in 4.596 seconds (JVM running for 5.208) +2023-08-24 17:09:12.575 INFO 16008 --- [main] com.huoran.iasf.IASFApplication : +---------------------------------------------------------- + Application 'iasf' is running! Access URLs: + Doc: http://2.0.0.1:9999/iasf/doc.html +---------------------------------------------------------- +2023-08-24 17:09:14.215 INFO 16008 --- [http-nio-9999-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-08-24 17:09:14.215 INFO 16008 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' +2023-08-24 17:09:14.221 INFO 16008 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 6 ms +2023-08-24 17:09:14.250 ERROR 16008 --- [http-nio-9999-exec-1] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported + at org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.handleNoMatch(RequestMappingInfoHandlerMapping.java:200) + at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.lookupHandlerMethod(AbstractHandlerMethodMapping.java:419) + at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:365) + at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:65) + at org.springframework.web.servlet.handler.AbstractHandlerMapping.getHandler(AbstractHandlerMapping.java:401) + at org.springframework.web.servlet.DispatcherServlet.getHandler(DispatcherServlet.java:1232) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1015) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) + +2023-08-24 17:09:28.635 ERROR 16008 --- [http-nio-9999-exec-6] c.h.i.c.e.handler.RestExceptionHandler : Exception,exception:{} + +org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +### The error may exist in com/huoran/iasf/mapper/SeoMapper.java (best guess) +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id,title,keyword,describe,site_id FROM sys_seo WHERE (site_id = ?) +### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 +; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:234) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) + at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440) + at com.sun.proxy.$Proxy102.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:173) + at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:78) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) + at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) + at com.sun.proxy.$Proxy131.selectList(Unknown Source) + at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:277) + at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke() + at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:684) + at com.huoran.iasf.service.impl.SeoServiceImpl$$EnhancerBySpringCGLIB$$960c7b1f.list() + at com.huoran.iasf.controller.SeoController.list(SeoController.java:71) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:897) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:634) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) + at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) + at java.lang.Thread.run(Thread.java:750) +Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'describe,site_id FROM sys_seo + + WHERE (site_id = 1)' at line 1 + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:955) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:372) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59) + at com.sun.proxy.$Proxy221.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63) + at com.sun.proxy.$Proxy220.query(Unknown Source) + at com.baomidou.mybatisplus.core.executor.MybatisSimpleExecutor.doQuery(MybatisSimpleExecutor.java:69) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:165) + at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:92) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426) + ... 65 common frames omitted + +2023-08-24 17:11:07.433 INFO 16008 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 17:11:07.433 INFO 16008 --- [Thread-12] o.s.s.quartz.SchedulerFactoryBean : Shutting down Quartz Scheduler +2023-08-24 17:11:07.433 INFO 16008 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutting down. +2023-08-24 17:11:07.433 INFO 16008 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 17:11:07.434 INFO 16008 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutdown complete. +2023-08-24 17:11:07.436 INFO 16008 --- [Thread-12] c.b.d.d.DynamicRoutingDataSource : closing dynamicDatasource ing.... +2023-08-24 17:11:07.436 INFO 16008 --- [Thread-12] com.zaxxer.hikari.HikariDataSource : master - Shutdown initiated... +2023-08-24 17:11:07.439 INFO 16008 --- [Thread-12] com.zaxxer.hikari.HikariDataSource : master - Shutdown completed. +2023-08-24 17:11:11.461 INFO 23708 --- [main] com.huoran.iasf.IASFApplication : Starting IASFApplication on SC-202209231229 with PID 23708 (D:\IdeaProjects\IASF\target\classes started by Administrator in D:\IdeaProjects\IASF) +2023-08-24 17:11:11.463 INFO 23708 --- [main] com.huoran.iasf.IASFApplication : The following profiles are active: prod +2023-08-24 17:11:12.164 INFO 23708 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode! +2023-08-24 17:11:12.166 INFO 23708 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data repositories in DEFAULT mode. +2023-08-24 17:11:12.207 INFO 23708 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 33ms. Found 0 repository interfaces. +2023-08-24 17:11:12.478 INFO 23708 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$afaa218a] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:11:12.575 INFO 23708 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'spring.datasource.dynamic-com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:11:12.577 INFO 23708 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration' of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration$$EnhancerBySpringCGLIB$$1938925b] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:11:12.583 INFO 23708 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dsProcessor' of type [com.baomidou.dynamic.datasource.processor.DsHeaderProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:11:12.587 INFO 23708 --- [main] trationDelegate$BeanPostProcessorChecker : Bean 'dynamicDatasourceAnnotationAdvisor' of type [com.baomidou.dynamic.datasource.aop.DynamicDataSourceAnnotationAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) +2023-08-24 17:11:12.836 INFO 23708 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9999 (http) +2023-08-24 17:11:12.851 INFO 23708 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat] +2023-08-24 17:11:12.851 INFO 23708 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.21] +2023-08-24 17:11:12.935 INFO 23708 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring embedded WebApplicationContext +2023-08-24 17:11:12.935 INFO 23708 --- [main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1413 ms +2023-08-24 17:11:13.224 INFO 23708 --- [main] com.zaxxer.hikari.HikariDataSource : master - Starting... +2023-08-24 17:11:13.392 INFO 23708 --- [main] com.zaxxer.hikari.HikariDataSource : master - Start completed. +2023-08-24 17:11:13.393 INFO 23708 --- [main] c.b.d.d.DynamicRoutingDataSource : 初始共加载 1 个数据源 +2023-08-24 17:11:13.393 INFO 23708 --- [main] c.b.d.d.DynamicRoutingDataSource : 动态数据源-加载 master 成功 +2023-08-24 17:11:13.393 INFO 23708 --- [main] c.b.d.d.DynamicRoutingDataSource : 当前的默认数据源是单数据源,数据源名为 master +2023-08-24 17:11:14.244 WARN 23708 --- [main] o.s.w.s.r.ResourceHttpRequestHandler : Locations list is empty. No resources will be served unless a custom ResourceResolver is configured as an alternative to PathResourceResolver. +2023-08-24 17:11:14.849 INFO 23708 --- [main] pertySourcedRequestMappingHandlerMapping : Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)] +2023-08-24 17:11:15.295 INFO 23708 --- [main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor +2023-08-24 17:11:15.303 INFO 23708 --- [main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl +2023-08-24 17:11:15.303 INFO 23708 --- [main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. +2023-08-24 17:11:15.304 INFO 23708 --- [main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized. +2023-08-24 17:11:15.304 INFO 23708 --- [main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' + Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. + NOT STARTED. + Currently in standby mode. + Number of jobs executed: 0 + Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. + Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. + +2023-08-24 17:11:15.304 INFO 23708 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. +2023-08-24 17:11:15.304 INFO 23708 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 +2023-08-24 17:11:15.304 INFO 23708 --- [main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@5c78f456 +2023-08-24 17:11:15.377 INFO 23708 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed +2023-08-24 17:11:15.389 INFO 23708 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s) +2023-08-24 17:11:15.418 INFO 23708 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references +2023-08-24 17:11:15.528 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_1 +2023-08-24 17:11:15.529 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_1 +2023-08-24 17:11:15.532 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateDeptUsingPUT_1 +2023-08-24 17:11:15.542 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_1 +2023-08-24 17:11:15.543 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_2 +2023-08-24 17:11:15.575 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_1 +2023-08-24 17:11:15.579 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_1 +2023-08-24 17:11:15.583 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_1 +2023-08-24 17:11:15.585 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_2 +2023-08-24 17:11:15.588 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_1 +2023-08-24 17:11:15.590 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_1 +2023-08-24 17:11:15.590 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_2 +2023-08-24 17:11:15.594 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_2 +2023-08-24 17:11:15.595 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_3 +2023-08-24 17:11:15.609 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_2 +2023-08-24 17:11:15.613 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_2 +2023-08-24 17:11:15.614 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_3 +2023-08-24 17:11:15.650 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_3 +2023-08-24 17:11:15.652 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_4 +2023-08-24 17:11:15.653 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_3 +2023-08-24 17:11:15.654 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_3 +2023-08-24 17:11:15.655 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_4 +2023-08-24 17:11:15.655 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_4 +2023-08-24 17:11:15.657 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_5 +2023-08-24 17:11:15.659 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: batchDeletionUsingPOST_4 +2023-08-24 17:11:15.659 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: checkForHeavyUsingPOST_1 +2023-08-24 17:11:15.660 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_4 +2023-08-24 17:11:15.661 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_5 +2023-08-24 17:11:15.663 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_5 +2023-08-24 17:11:15.663 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_6 +2023-08-24 17:11:15.684 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_7 +2023-08-24 17:11:15.686 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_3 +2023-08-24 17:11:15.688 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_1 +2023-08-24 17:11:15.689 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteUsingPOST_5 +2023-08-24 17:11:15.690 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: findByIdUsingPOST_6 +2023-08-24 17:11:15.692 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: saveUsingPOST_6 +2023-08-24 17:11:15.692 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUsingPOST_8 +2023-08-24 17:11:15.705 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: detailInfoUsingGET_2 +2023-08-24 17:11:15.708 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: pageInfoUsingPOST_2 +2023-08-24 17:11:15.713 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: addUserGroupUsingPOST_2 +2023-08-24 17:11:15.713 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deletedUsingDELETE_4 +2023-08-24 17:11:15.715 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUserGroupAllUsingPOST_1 +2023-08-24 17:11:15.716 INFO 23708 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: updateUserGroupUsingPUT_1 +2023-08-24 17:11:15.724 INFO 23708 --- [main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now +2023-08-24 17:11:15.724 INFO 23708 --- [main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. +2023-08-24 17:11:15.746 INFO 23708 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9999 (http) with context path '/iasf' +2023-08-24 17:11:15.748 INFO 23708 --- [main] com.huoran.iasf.IASFApplication : Started IASFApplication in 4.662 seconds (JVM running for 5.452) +2023-08-24 17:11:15.751 INFO 23708 --- [main] com.huoran.iasf.IASFApplication : +---------------------------------------------------------- + Application 'iasf' is running! Access URLs: + Doc: http://2.0.0.1:9999/iasf/doc.html +---------------------------------------------------------- +2023-08-24 17:11:18.659 INFO 23708 --- [http-nio-9999-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/iasf] : Initializing Spring DispatcherServlet 'dispatcherServlet' +2023-08-24 17:11:18.659 INFO 23708 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' +2023-08-24 17:11:18.667 INFO 23708 --- [http-nio-9999-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 8 ms +2023-08-24 17:16:12.332 INFO 23708 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 17:16:12.332 INFO 23708 --- [Thread-12] o.s.s.quartz.SchedulerFactoryBean : Shutting down Quartz Scheduler +2023-08-24 17:16:12.332 INFO 23708 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutting down. +2023-08-24 17:16:12.332 INFO 23708 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED paused. +2023-08-24 17:16:12.334 INFO 23708 --- [Thread-12] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED shutdown complete. +2023-08-24 17:16:12.335 INFO 23708 --- [Thread-12] c.b.d.d.DynamicRoutingDataSource : closing dynamicDatasource ing.... +2023-08-24 17:16:12.335 INFO 23708 --- [Thread-12] com.zaxxer.hikari.HikariDataSource : master - Shutdown initiated... +2023-08-24 17:16:12.338 INFO 23708 --- [Thread-12] com.zaxxer.hikari.HikariDataSource : master - Shutdown completed. diff --git a/src/main/java/com/huoran/iasf/IASFApplication.java b/src/main/java/com/huoran/iasf/IASFApplication.java index 333e112..64f925c 100644 --- a/src/main/java/com/huoran/iasf/IASFApplication.java +++ b/src/main/java/com/huoran/iasf/IASFApplication.java @@ -1,5 +1,6 @@ package com.huoran.iasf; +import com.huoran.iasf.common.annotation.EnableSecurity; import lombok.extern.slf4j.Slf4j; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; @@ -13,6 +14,7 @@ import java.net.InetAddress; @SpringBootApplication @MapperScan("com.huoran.iasf.mapper") @Slf4j +@EnableSecurity @ServletComponentScan(basePackages = {"com.huoran.iasf.common.filter"}) //这一句完成了配置,Springboot的”懒理念“真的厉害。 public class IASFApplication { diff --git a/src/main/java/com/huoran/iasf/common/advice/DecryptHttpInputMessage.java b/src/main/java/com/huoran/iasf/common/advice/DecryptHttpInputMessage.java new file mode 100644 index 0000000..dc1db55 --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/advice/DecryptHttpInputMessage.java @@ -0,0 +1,98 @@ +package com.huoran.iasf.common.advice; + + +import com.huoran.iasf.common.annotation.Decrypt; +import com.huoran.iasf.common.config.SecretKeyConfig; +import com.huoran.iasf.common.exception.EncryptRequestException; +import com.huoran.iasf.common.utils.Base64Util; +import com.huoran.iasf.common.utils.JsonUtils; +import com.huoran.iasf.common.utils.RSAUtil; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpInputMessage; + +import java.io.BufferedReader; +import java.io.ByteArrayInputStream; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.stream.Collectors; + +/** + * Author:Bobby + * DateTime:2019/4/9 + **/ +public class DecryptHttpInputMessage implements HttpInputMessage { + + private Logger log = LoggerFactory.getLogger(this.getClass()); + private HttpHeaders headers; + private InputStream body; + + + public DecryptHttpInputMessage(HttpInputMessage inputMessage, SecretKeyConfig secretKeyConfig, Decrypt decrypt) throws Exception { + + String privateKey = secretKeyConfig.getPrivateKey(); + String charset = secretKeyConfig.getCharset(); + boolean showLog = secretKeyConfig.isShowLog(); + boolean timestampCheck = secretKeyConfig.isTimestampCheck(); + + if (StringUtils.isEmpty(privateKey)) { + throw new IllegalArgumentException("privateKey is null"); + } + + this.headers = inputMessage.getHeaders(); + String content = new BufferedReader(new InputStreamReader(inputMessage.getBody())) + .lines().collect(Collectors.joining(System.lineSeparator())); + String decryptBody; + // 未加密内容 + if (content.startsWith("{")||StringUtils.isNumeric(content)||content.length()<10) { + // 必须加密 + if (decrypt.required()) { + log.error("not support unencrypted content:{}", content); + throw new EncryptRequestException("not support unencrypted content"); + } + log.info("Unencrypted without decryption:{}", content); + decryptBody = content; + } else { + StringBuilder json = new StringBuilder(); + content = content.replaceAll(" ", "+"); + + if (!StringUtils.isEmpty(content)) { + String[] contents = content.split("\\|"); + for (String value : contents) { + value = new String(RSAUtil.decrypt(Base64Util.decode(value), privateKey), charset); + json.append(value); + } + } + decryptBody = json.toString(); + if(showLog) { + log.info("Encrypted data received:{},After decryption:{}", content, decryptBody); + } + } + + // 开启时间戳检查 + if (timestampCheck) { + // 容忍最小请求时间 + long toleranceTime = System.currentTimeMillis() - decrypt.timeout(); + long requestTime = JsonUtils.getNode(decryptBody, "timestamp").asLong(); + // 如果请求时间小于最小容忍请求时间, 判定为超时 + if (requestTime < toleranceTime) { + log.error("Encryption request has timed out, toleranceTime:{}, requestTime:{}, After decryption:{}", toleranceTime, requestTime, decryptBody); + throw new EncryptRequestException("request timeout"); + } + } + + this.body = new ByteArrayInputStream(decryptBody.getBytes()); + } + + @Override + public InputStream getBody(){ + return body; + } + + @Override + public HttpHeaders getHeaders() { + return headers; + } +} diff --git a/src/main/java/com/huoran/iasf/common/advice/EncryptRequestBodyAdvice.java b/src/main/java/com/huoran/iasf/common/advice/EncryptRequestBodyAdvice.java new file mode 100644 index 0000000..be6744f --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/advice/EncryptRequestBodyAdvice.java @@ -0,0 +1,77 @@ +package com.huoran.iasf.common.advice; + + +import com.huoran.iasf.common.annotation.Decrypt; +import com.huoran.iasf.common.config.SecretKeyConfig; +import com.huoran.iasf.common.exception.EncryptRequestException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.MethodParameter; +import org.springframework.http.HttpInputMessage; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.servlet.mvc.method.annotation.RequestBodyAdvice; + +import java.lang.reflect.Method; +import java.lang.reflect.Type; +import java.util.Objects; + +/** + * Author:Bobby + * DateTime:2019/4/9 + **/ +@ControllerAdvice +public class EncryptRequestBodyAdvice implements RequestBodyAdvice { + + private Logger log = LoggerFactory.getLogger(this.getClass()); + + private boolean encrypt; + private Decrypt decryptAnnotation; + + @Autowired + private SecretKeyConfig secretKeyConfig; + + @Override + public boolean supports(MethodParameter methodParameter, Type targetType, Class> converterType) { + Method method = methodParameter.getMethod(); + if (Objects.isNull(method)) { + encrypt = false; + return false; + } + if (method.isAnnotationPresent(Decrypt.class) && secretKeyConfig.isOpen()) { + encrypt = true; + decryptAnnotation = methodParameter.getMethodAnnotation(Decrypt.class); + return true; + } + // 此处如果按照原逻辑直接返回encrypt, 会造成一次修改为true之后, 后续请求都会变成true, 在不支持时, 需要做修正 + encrypt = false; + return false; + } + + @Override + public Object handleEmptyBody(Object body, HttpInputMessage inputMessage, MethodParameter parameter, Type targetType, Class> converterType) { + return body; + } + + @Override + public HttpInputMessage beforeBodyRead(HttpInputMessage inputMessage, MethodParameter parameter, Type targetType, + Class> converterType){ + if (encrypt) { + try { + return new DecryptHttpInputMessage(inputMessage, secretKeyConfig, decryptAnnotation); + } catch (EncryptRequestException e) { + throw e; + } catch (Exception e) { + log.error("Decryption failed", e); + } + } + return inputMessage; + } + + @Override + public Object afterBodyRead(Object body, HttpInputMessage inputMessage, MethodParameter parameter, Type targetType, + Class> converterType) { + return body; + } +} diff --git a/src/main/java/com/huoran/iasf/common/advice/EncryptResponseBodyAdvice.java b/src/main/java/com/huoran/iasf/common/advice/EncryptResponseBodyAdvice.java new file mode 100644 index 0000000..8d2c2b5 --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/advice/EncryptResponseBodyAdvice.java @@ -0,0 +1,81 @@ +package com.huoran.iasf.common.advice; + + +import com.huoran.iasf.common.annotation.Encrypt; +import com.huoran.iasf.common.config.SecretKeyConfig; +import com.huoran.iasf.common.utils.Base64Util; +import com.huoran.iasf.common.utils.JsonUtils; +import com.huoran.iasf.common.utils.RSAUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.MethodParameter; +import org.springframework.http.MediaType; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.server.ServerHttpRequest; +import org.springframework.http.server.ServerHttpResponse; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice; + +import java.lang.reflect.Method; +import java.util.Objects; + +/** + * Author:Bobby + * DateTime:2019/4/9 + **/ +@ControllerAdvice +public class EncryptResponseBodyAdvice implements ResponseBodyAdvice { + + private Logger log = LoggerFactory.getLogger(this.getClass()); + + private boolean encrypt; + + @Autowired + private SecretKeyConfig secretKeyConfig; + + private static ThreadLocal encryptLocal = new ThreadLocal<>(); + + @Override + public boolean supports(MethodParameter returnType, Class> converterType) { + Method method = returnType.getMethod(); + if (Objects.isNull(method)) { + return encrypt; + } + encrypt = method.isAnnotationPresent(Encrypt.class) && secretKeyConfig.isOpen(); + return encrypt; + } + + @Override + public Object beforeBodyWrite(Object body, MethodParameter returnType, MediaType selectedContentType, + Class> selectedConverterType, ServerHttpRequest request, ServerHttpResponse response) { + // EncryptResponseBodyAdvice.setEncryptStatus(false); + // Dynamic Settings Not Encrypted + Boolean status = encryptLocal.get(); + if (null != status && !status) { + encryptLocal.remove(); + return body; + } + if (encrypt) { + String publicKey = secretKeyConfig.getPublicKey(); + try { + String content = JsonUtils.writeValueAsString(body); + if (!StringUtils.hasText(publicKey)) { + throw new NullPointerException("Please configure rsa.encrypt.privatekeyc parameter!"); + } + byte[] data = content.getBytes(); + byte[] encodedData = RSAUtil.encrypt(data, publicKey); + String result = Base64Util.encode(encodedData); + if(secretKeyConfig.isShowLog()) { + log.info("Pre-encrypted data:{},After encryption:{}", content, result); + } + return result; + } catch (Exception e) { + log.error("Encrypted data exception", e); + } + } + + return body; + } +} diff --git a/src/main/java/com/huoran/iasf/common/annotation/Decrypt.java b/src/main/java/com/huoran/iasf/common/annotation/Decrypt.java new file mode 100644 index 0000000..b72e6fe --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/annotation/Decrypt.java @@ -0,0 +1,28 @@ +package com.huoran.iasf.common.annotation; + + +import com.huoran.iasf.common.exception.EncryptRequestException; + +import java.lang.annotation.*; + +/** + * Author:Bobby + * DateTime:2019/4/9 16:45 + **/ +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface Decrypt{ + + /** + * 请求参数一定要是加密内容 + */ + boolean required() default true; + + /** + * 请求数据时间戳校验时间差 + * 超过(当前时间-指定时间)的数据认定为伪造 + * 注意应用程序需要捕获 {@link EncryptRequestException} 异常 + */ + long timeout() default 3000; +} diff --git a/src/main/java/com/huoran/iasf/common/annotation/EnableSecurity.java b/src/main/java/com/huoran/iasf/common/annotation/EnableSecurity.java new file mode 100644 index 0000000..0b8f79a --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/annotation/EnableSecurity.java @@ -0,0 +1,24 @@ +package com.huoran.iasf.common.annotation; + + +import com.huoran.iasf.common.advice.EncryptRequestBodyAdvice; +import com.huoran.iasf.common.advice.EncryptResponseBodyAdvice; +import com.huoran.iasf.common.config.SecretKeyConfig; +import org.springframework.context.annotation.Import; + +import java.lang.annotation.*; + +/** + * Author:Bobby + * DateTime:2019/4/9 16:44 + **/ +@Target({ElementType.TYPE}) +@Retention(RetentionPolicy.RUNTIME) +@Inherited +@Documented +@Import({SecretKeyConfig.class, + EncryptResponseBodyAdvice.class, + EncryptRequestBodyAdvice.class}) +public @interface EnableSecurity{ + +} diff --git a/src/main/java/com/huoran/iasf/common/annotation/Encrypt.java b/src/main/java/com/huoran/iasf/common/annotation/Encrypt.java new file mode 100644 index 0000000..8b49c77 --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/annotation/Encrypt.java @@ -0,0 +1,14 @@ +package com.huoran.iasf.common.annotation; + +import java.lang.annotation.*; + +/** + * Author:Bobby + * DateTime:2019/4/9 16:45 + **/ +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface Encrypt{ + +} diff --git a/src/main/java/com/huoran/iasf/common/config/SecretKeyConfig.java b/src/main/java/com/huoran/iasf/common/config/SecretKeyConfig.java new file mode 100644 index 0000000..1329ddc --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/config/SecretKeyConfig.java @@ -0,0 +1,77 @@ +package com.huoran.iasf.common.config; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Configuration; + +/** + * Author:Bobby + * DateTime:2019/4/9 + **/ +@ConfigurationProperties(prefix = "rsa.encrypt") +@Configuration +public class SecretKeyConfig { + + private String privateKey; + + private String publicKey; + + private String charset = "UTF-8"; + + private boolean open = true; + + private boolean showLog = false; + + /** + * 请求数据时间戳校验时间差 + * 超过指定时间的数据认定为伪造 + */ + private boolean timestampCheck = false; + + public String getPrivateKey() { + return privateKey; + } + + public void setPrivateKey(String privateKey) { + this.privateKey = privateKey; + } + + public String getPublicKey() { + return publicKey; + } + + public void setPublicKey(String publicKey) { + this.publicKey = publicKey; + } + + public String getCharset() { + return charset; + } + + public void setCharset(String charset) { + this.charset = charset; + } + + public boolean isOpen() { + return open; + } + + public void setOpen(boolean open) { + this.open = open; + } + + public boolean isShowLog() { + return showLog; + } + + public void setShowLog(boolean showLog) { + this.showLog = showLog; + } + + public boolean isTimestampCheck() { + return timestampCheck; + } + + public void setTimestampCheck(boolean timestampCheck) { + this.timestampCheck = timestampCheck; + } +} diff --git a/src/main/java/com/huoran/iasf/common/config/WebMvcConfigurer.java b/src/main/java/com/huoran/iasf/common/config/WebMvcConfigurer.java index a5e4615..9ebd7a2 100644 --- a/src/main/java/com/huoran/iasf/common/config/WebMvcConfigurer.java +++ b/src/main/java/com/huoran/iasf/common/config/WebMvcConfigurer.java @@ -47,7 +47,10 @@ public class WebMvcConfigurer extends WebMvcConfigurationSupport { private CorsConfiguration buildConfig() { CorsConfiguration corsConfiguration = new CorsConfiguration(); corsConfiguration.addAllowedHeader("*"); // 允许任何头 - corsConfiguration.addAllowedOrigin("*"); // 允许任何头 +// corsConfiguration.addAllowedOrigin("*"); // 允许任何头 + corsConfiguration.addAllowedOrigin("*.iasf.ac.cn"); //允许信任域名 + corsConfiguration.addAllowedOrigin("http://192.168.31.125:8088"); //允许信任域名 + corsConfiguration.addAllowedOrigin("http://10.10.11.7"); //允许信任域名 corsConfiguration.addAllowedMethod("*"); // 允许任何方法(post、get等) return corsConfiguration; } diff --git a/src/main/java/com/huoran/iasf/common/exception/EncryptRequestException.java b/src/main/java/com/huoran/iasf/common/exception/EncryptRequestException.java new file mode 100644 index 0000000..6f9cbc3 --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/exception/EncryptRequestException.java @@ -0,0 +1,14 @@ +package com.huoran.iasf.common.exception; + + +/** + * @author imyzt + * @date 2020/06/02 + * @description 加密请求超时异常 + */ +public class EncryptRequestException extends RuntimeException { + + public EncryptRequestException(String msg) { + super(msg); + } +} diff --git a/src/main/java/com/huoran/iasf/common/exception/code/BaseResponseCode.java b/src/main/java/com/huoran/iasf/common/exception/code/BaseResponseCode.java index b41faea..0e22f2f 100644 --- a/src/main/java/com/huoran/iasf/common/exception/code/BaseResponseCode.java +++ b/src/main/java/com/huoran/iasf/common/exception/code/BaseResponseCode.java @@ -24,7 +24,7 @@ public enum BaseResponseCode implements ResponseCodeInterface { KEY_OR_TOMEUNIT(10009, "key or TomeUnit 不能为空!"), DICTIONARY_DATA_FAILED(10010, "获取字典数据失败"), UPLOAD_EMPTY(10011, "上传内容为空"), - UPLOAD_FAILED(10012, "上传失败"), + UPLOAD_FAILED(10012, "文件格式上传有误"), VERIFICATION_CODE_ERROR(10007, "验证码错误!"), VERIFICATION_CODE_EXPIRED(10006, "验证码已过期!"), CANNOT_SAME(10005, "新密码不能与旧密码相同!"), @@ -37,11 +37,13 @@ public enum BaseResponseCode implements ResponseCodeInterface { EXCEL_FILE_FORMAT_ERROR(40007, "请根据模板使用说明录入正确的用户信息!"), TOKEN_ERROR(401, "登录凭证已过期,请重新登录"), DATA_ERROR(401003, "传入数据异常"), - NOT_ACCOUNT(401004, "该用户不存在,请先注册"), - USER_LOCK(401005, "该用户已被锁定,请联系运营人员"), - PASSWORD_ERROR(401006, "用户名或密码错误"), - METHOD_ARGUMENT_NOT_VALID_EXCEPTION(400, "请求参数有误"), - UNAUTHORIZED_ERROR(401008, "权鉴校验不通过"), + NOT_ACCOUNT(401004, "用户名不存在或密码错误"), + USER_LOCK(401005, "该用户已被锁定,请联系管理员!"), + PASSWORD_ERROR(401006, "用户名不存在或密码错误"), + METHOD_ARGUMENT_NOT_VALID_EXCEPTION(400, "参数错误!"), + ILLEGAL_CHARACTERS(400, "入参中有非法字符,请修改!"), +// UNAUTHORIZED_ERROR(401008, "权鉴校验不通过"), + UNAUTHORIZED_ERROR(401008, "无操作权限!"), ROLE_PERMISSION_RELATION(401009, "该菜单权限存在子集关联,不允许删除"), OLD_PASSWORD_ERROR(401010, "旧密码不正确"), NOT_PERMISSION_DELETED_DEPT(401011, "该组织机构下还关联着用户,不允许删除"), @@ -55,6 +57,8 @@ public enum BaseResponseCode implements ResponseCodeInterface { EXCEL_FILE_NULL(40006, "导入失败,导入数据为空!"), DATA_DOES_NOT_EXIST(500, "当前数据不存在"), + XSS_FILTER(400, "xss攻击检查:参数含有非法攻击字符,请修改后继续操作!"), + SQL_FILTER(400, "sql攻击检查:参数含有非法攻击字符,请修改后继续操作!"), ; /** diff --git a/src/main/java/com/huoran/iasf/common/exception/handler/RestExceptionHandler.java b/src/main/java/com/huoran/iasf/common/exception/handler/RestExceptionHandler.java index d7e437b..a45df77 100644 --- a/src/main/java/com/huoran/iasf/common/exception/handler/RestExceptionHandler.java +++ b/src/main/java/com/huoran/iasf/common/exception/handler/RestExceptionHandler.java @@ -1,7 +1,9 @@ package com.huoran.iasf.common.exception.handler; +import com.alibaba.fastjson.JSONException; import com.google.common.collect.Maps; import com.huoran.iasf.common.exception.BusinessException; +import com.huoran.iasf.common.exception.EncryptRequestException; import com.huoran.iasf.common.exception.NotFoundException; import com.huoran.iasf.common.exception.UnauthorizedException; import com.huoran.iasf.common.exception.code.BaseResponseCode; @@ -10,6 +12,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authc.AuthenticationException; import org.apache.shiro.authz.AuthorizationException; import org.springframework.http.HttpStatus; +import org.springframework.http.converter.HttpMessageNotReadableException; import org.springframework.validation.BindingResult; import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.annotation.ControllerAdvice; @@ -52,6 +55,20 @@ public class RestExceptionHandler { return R.getResult(BaseResponseCode.METHOD_ARGUMENT_NOT_VALID_EXCEPTION); } + @ExceptionHandler(EncryptRequestException.class) + @ResponseStatus(HttpStatus.BAD_REQUEST) + public R encryptRequestException(EncryptRequestException e) { + log.error("Exception,exception:{}", e, e); + return R.getResult(BaseResponseCode.METHOD_ARGUMENT_NOT_VALID_EXCEPTION); + } + + @ExceptionHandler(HttpMessageNotReadableException.class) + @ResponseStatus(HttpStatus.BAD_REQUEST) + public R illegalArgumentException(JSONException e) { + log.error("Exception,exception:{}", e, e); + return R.getResult(BaseResponseCode.ILLEGAL_CHARACTERS); + } + @ExceptionHandler(AuthenticationException.class) @ResponseStatus(HttpStatus.UNAUTHORIZED) public R authenticationException(AuthenticationException e) { @@ -75,7 +92,7 @@ public class RestExceptionHandler { * 权限全局异常处理 */ @ExceptionHandler(value = UnauthorizedException.class) - @ResponseStatus(HttpStatus.UNAUTHORIZED) +// @ResponseStatus(HttpStatus.UNAUTHORIZED) public R businessExceptionHandler(UnauthorizedException e) { log.error("Exception,exception:{}", e, e); BaseResponseCode em = e.getBaseResponseCode(); diff --git a/src/main/java/com/huoran/iasf/common/filter/XSSFilter.java b/src/main/java/com/huoran/iasf/common/filter/XSSFilter.java new file mode 100644 index 0000000..65cd564 --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/filter/XSSFilter.java @@ -0,0 +1,56 @@ +package com.huoran.iasf.common.filter; + +import org.apache.commons.lang.StringUtils; +import org.springframework.core.annotation.Order; + +import javax.servlet.*; +import javax.servlet.annotation.WebFilter; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +@WebFilter(filterName = "xssFilter", urlPatterns = "/*", asyncSupported = true) +@Order(2) +public class XSSFilter implements Filter { + + @Override + public void init(FilterConfig filterConfig1) throws ServletException { + + } + + + @Override + public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) + throws IOException, ServletException { + + //注入xss过滤器实例 + if(arg2 != null){ + HttpServletRequest req = (HttpServletRequest) arg0; + String method = req.getMethod(); + boolean methodB = false; + if("POST".equalsIgnoreCase(method) || "PUT".equalsIgnoreCase(method)){ + methodB = true; + } + + if (methodB && req.getContentType() != null && req.getContentType().startsWith("multipart/")) { + // 过滤 + arg2.doFilter(req, arg1); + }else { + HttpServletResponse response = (HttpServletResponse) arg1; + XssHttpServletRequestWrapper reqW = new XssHttpServletRequestWrapper(req); + //过滤 + arg2.doFilter(reqW, response); + } + } + + } + + @Override + public void destroy() { + } + + +} \ No newline at end of file diff --git a/src/main/java/com/huoran/iasf/common/filter/XssHttpServletRequestWrapper.java b/src/main/java/com/huoran/iasf/common/filter/XssHttpServletRequestWrapper.java new file mode 100644 index 0000000..f40a4bb --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/filter/XssHttpServletRequestWrapper.java @@ -0,0 +1,224 @@ +package com.huoran.iasf.common.filter; + +import com.alibaba.fastjson.JSONObject; +import com.huoran.iasf.common.exception.BusinessException; +import com.huoran.iasf.common.exception.code.BaseResponseCode; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; + +import javax.servlet.ReadListener; +import javax.servlet.ServletInputStream; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletRequestWrapper; +import java.io.*; +import java.nio.charset.StandardCharsets; +import java.util.Arrays; +import java.util.regex.Pattern; + +@Slf4j +public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { + + /** + * post请求体 + */ + private byte[] body; + + /** + * 是否是文件上传 + */ + private boolean fileUpload = true; + + //富文本验证链接 + private static final String[] whiteList = + {"/iasf/sysContent/save", + "/iasf/sysContent/update"}; + + /** + * sql注入正则 + */ + private static String badStrReg = + "\\b(and|or)\\b.{1,6}?(=|>|<|\\bin\\b|\\blike\\b)|\\/\\*.+?\\*\\/|<\\s*script\\b|\\bEXEC\\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\\s+(TABLE|DATABASE)"; + + /** + * xss脚本正则 + */ + private final static Pattern[] scriptPatterns = { + Pattern.compile("", Pattern.CASE_INSENSITIVE), + Pattern.compile("src[\r\n]*=[\r\n]*\\\'(.*?)\\\'", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL), + Pattern.compile("", Pattern.CASE_INSENSITIVE), + Pattern.compile("", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL), + Pattern.compile("eval\\((.*?)\\)", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL), + Pattern.compile("expression\\((.*?)\\)", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL), + Pattern.compile("javascript:", Pattern.CASE_INSENSITIVE), + Pattern.compile("script", Pattern.CASE_INSENSITIVE), + Pattern.compile("ScriPT", Pattern.CASE_INSENSITIVE), + Pattern.compile("meta", Pattern.CASE_INSENSITIVE), + Pattern.compile("vbscript:", Pattern.CASE_INSENSITIVE), + Pattern.compile("onload(.*?)=", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL) + }; + + public XssHttpServletRequestWrapper() { + super(null); + } + + /** + * 构造函数 - 获取post请求体 + * @param httpservletrequest + * @throws IOException + */ + public XssHttpServletRequestWrapper(HttpServletRequest httpservletrequest) throws IOException { + super(httpservletrequest); + String sessionStream = getBodyString(httpservletrequest); + body = sessionStream.getBytes(StandardCharsets.UTF_8); + System.out.println(httpservletrequest.getRequestURI()); + if(Arrays.asList(whiteList).contains(httpservletrequest.getRequestURI())){ + fileUpload = false; + } + } + + /** + * 读取post请求体 + * @param httpservletrequest + * @return + * @throws IOException + */ + private String getBodyString(HttpServletRequest httpservletrequest) throws IOException { + StringBuilder sb = new StringBuilder(); + InputStream ins = httpservletrequest.getInputStream(); + try (BufferedReader isr = new BufferedReader(new InputStreamReader(ins, StandardCharsets.UTF_8));) { + String line = ""; + while ((line = isr.readLine()) != null) { + sb.append(line); + } + } catch (IOException e) { + throw e; + } + return sb.toString(); + } + + /** + * 过滤springmvc中的 @RequestParam 注解中的参数 + * @param s + * @return + */ + @Override + public String[] getParameterValues(String s) { + String[] str = super.getParameterValues(s); + if (str == null) { + return null; + } + int i = str.length; + String[] as1 = new String[i]; + for (int j = 0; j < i; j++) { + as1[j] = cleanXSS(cleanSQLInject(str[j])); + } +// log.info("XssHttpServletRequestWrapper净化后的请求为:========== {}", Arrays.toString(as1)); + return as1; + } + + /** + * 过滤request.getParameter的参数 + * @param s + * @return + */ + @Override + public String getParameter(String s) { + String s1 = super.getParameter(s); + if (s1 == null) { + return null; + } else { + String s2 = cleanXSS(cleanSQLInject(s1)); +// log.info("XssHttpServletRequestWrapper净化后的请求为:========== {}", s2); + return s2; + } + } + + + /** + * 过滤请求体 json 格式的 + * @return + * @throws IOException + */ + @Override + public ServletInputStream getInputStream() throws IOException { + // 非文件上传进行过滤 + if (!fileUpload) { + // 获取body中的请求参数 + JSONObject json = JSONObject.parseObject(new String(body)); + // 校验并过滤xss攻击和sql注入 + for (String k : json.keySet()) { + cleanSQLInject(cleanXSS(json.getString(k))); + } + } + // 将请求体参数流转 -- 流读取一次就会消失,所以我们事先读取之后就存在byte数组里边方便流转 + final ByteArrayInputStream bais = new ByteArrayInputStream(body); + return new ServletInputStream() { + + @Override + public int read() throws IOException { + return bais.read(); + } + + @Override + public boolean isFinished() { + return false; + } + + @Override + public boolean isReady() { + return false; + } + + @Override + public void setReadListener(ReadListener readListener) { + } + }; + } + + /** + * 清除xss + * @param src 单个参数 + * @return + */ + public String cleanXSS(String src) { + if(StringUtils.isBlank(src)){ + return src; + } + String temp = src; + // 校验xss脚本 + for (Pattern pattern : scriptPatterns) { + temp = pattern.matcher(temp).replaceAll(""); + } + // 校验xss特殊字符 匹配一个空白字符(包括空格、制表符、换页符和换行符等)//这个可以不用,因为有写数据用富文本编辑的时候有换行 +// temp = temp.replaceAll("\0|\n|\r", ""); + temp = temp.replaceAll("<", "<").replaceAll(">", ">"); + + if (!temp.equals(src)) { + + log.error("xss攻击检查:参数含有非法攻击字符,已禁止继续访问!"); + log.error("原始输入信息-->" + temp); + + throw new BusinessException(BaseResponseCode.XSS_FILTER); + } + + return src; + } + + /** + * 过滤sql注入 -- 需要增加通配,过滤大小写组合 + * @param src 单个参数值 + * @return + */ + public String cleanSQLInject(String src) { + if(StringUtils.isBlank(src)){ + return src; + } + // 非法sql注入正则 + Pattern sqlPattern = Pattern.compile(badStrReg, Pattern.CASE_INSENSITIVE); + if (sqlPattern.matcher(src.toLowerCase()).find()) { + log.error("sql注入检查:输入信息存在SQL攻击!"); + throw new BusinessException(BaseResponseCode.SQL_FILTER); + } + return src; + } +} \ No newline at end of file diff --git a/src/main/java/com/huoran/iasf/common/shiro/ShiroConfig.java b/src/main/java/com/huoran/iasf/common/shiro/ShiroConfig.java index 5c5ad3c..56d9eea 100644 --- a/src/main/java/com/huoran/iasf/common/shiro/ShiroConfig.java +++ b/src/main/java/com/huoran/iasf/common/shiro/ShiroConfig.java @@ -146,6 +146,7 @@ public class ShiroConfig { filterChainDefinitionMap.put("/sysFiles/upload", "anon"); filterChainDefinitionMap.put("/seo/list", "anon"); filterChainDefinitionMap.put("/sysContent/queryArticleColumnParent", "anon"); + /*filterChainDefinitionMap.put("/index/**", "anon"); filterChainDefinitionMap.put("/doc.html", "anon"); filterChainDefinitionMap.put("/swagger-resources/**", "anon"); diff --git a/src/main/java/com/huoran/iasf/common/utils/Base64Util.java b/src/main/java/com/huoran/iasf/common/utils/Base64Util.java new file mode 100644 index 0000000..eb7a4d8 --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/utils/Base64Util.java @@ -0,0 +1,31 @@ +package com.huoran.iasf.common.utils; + +import org.apache.commons.codec.binary.Base64; + +/** + * Base64 + * Author:Bobby + * DateTime:2019/4/9 + **/ +public class Base64Util{ + + /** + * Decoding to binary + * @param base64 base64 + * @return byte + * @throws Exception Exception + */ + public static byte[] decode(String base64) throws Exception { + return Base64.decodeBase64(base64); + } + + /** + * Binary encoding as a string + * @param bytes byte + * @return String + * @throws Exception Exception + */ + public static String encode(byte[] bytes) throws Exception { + return new String(Base64.encodeBase64(bytes)); + } +} diff --git a/src/main/java/com/huoran/iasf/common/utils/JsonUtils.java b/src/main/java/com/huoran/iasf/common/utils/JsonUtils.java new file mode 100644 index 0000000..70c5be7 --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/utils/JsonUtils.java @@ -0,0 +1,30 @@ +package com.huoran.iasf.common.utils; + + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; + +import java.io.IOException; + +/** + * @author imyzt + * @date 2020/06/08 + * @description JSON 工具类 + */ +public class JsonUtils { + + private JsonUtils() { + } + + private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper(); + + public static JsonNode getNode(String content, String key) throws IOException { + JsonNode jsonNode = OBJECT_MAPPER.readTree(content); + return jsonNode.get(key); + } + + public static String writeValueAsString(Object body) throws JsonProcessingException { + return OBJECT_MAPPER.writeValueAsString(body); + } +} diff --git a/src/main/java/com/huoran/iasf/common/utils/RSAUtil.java b/src/main/java/com/huoran/iasf/common/utils/RSAUtil.java new file mode 100644 index 0000000..8a36ff8 --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/utils/RSAUtil.java @@ -0,0 +1,103 @@ +package com.huoran.iasf.common.utils; + +import javax.crypto.Cipher; +import java.io.ByteArrayOutputStream; +import java.security.Key; +import java.security.KeyFactory; +import java.security.spec.PKCS8EncodedKeySpec; +import java.security.spec.X509EncodedKeySpec; + +/** + * RSA Util + * Author:Bobby + * DateTime:2019/4/9 + **/ +public class RSAUtil{ + + /** + * encryption algorithm RSA + */ + public static final String KEY_ALGORITHM = "RSA"; + + /** + * RSA Maximum Encrypted Plaintext Size + */ + private static final int MAX_ENCRYPT_BLOCK = 117; + + /** + * RSA Maximum decrypted ciphertext size + */ + private static final int MAX_DECRYPT_BLOCK = 256; + + /** + * encryption + * @param data data + * @param publicKey publicKey + * @return byte + * @throws Exception Exception + */ + public static byte[] encrypt(byte[] data, String publicKey) + throws Exception { + byte[] keyBytes = Base64Util.decode(publicKey); + X509EncodedKeySpec x509KeySpec = new X509EncodedKeySpec(keyBytes); + KeyFactory keyFactory = KeyFactory.getInstance(KEY_ALGORITHM); + Key publicK = keyFactory.generatePublic(x509KeySpec); + Cipher cipher = Cipher.getInstance(keyFactory.getAlgorithm()); + cipher.init(Cipher.ENCRYPT_MODE, publicK); + int inputLen = data.length; + ByteArrayOutputStream out = new ByteArrayOutputStream(); + int offSet = 0; + byte[] cache; + int i = 0; + // Sectional Encryption of Data + while (inputLen - offSet > 0) { + if (inputLen - offSet > MAX_ENCRYPT_BLOCK) { + cache = cipher.doFinal(data, offSet, MAX_ENCRYPT_BLOCK); + } else { + cache = cipher.doFinal(data, offSet, inputLen - offSet); + } + out.write(cache, 0, cache.length); + i++; + offSet = i * MAX_ENCRYPT_BLOCK; + } + byte[] encryptedData = out.toByteArray(); + out.close(); + return encryptedData; + } + + /** + * Decrypt + * @param text text + * @param privateKey privateKey + * @return byte + * @throws Exception Exception + */ + public static byte[] decrypt(byte[] text, String privateKey) + throws Exception { + byte[] keyBytes = Base64Util.decode(privateKey); + PKCS8EncodedKeySpec pkcs8KeySpec = new PKCS8EncodedKeySpec(keyBytes); + KeyFactory keyFactory = KeyFactory.getInstance(KEY_ALGORITHM); + Key privateK = keyFactory.generatePrivate(pkcs8KeySpec); + Cipher cipher = Cipher.getInstance(keyFactory.getAlgorithm()); + cipher.init(Cipher.DECRYPT_MODE, privateK); + int inputLen = text.length; + ByteArrayOutputStream out = new ByteArrayOutputStream(); + int offSet = 0; + byte[] cache; + int i = 0; + // Sectional Encryption of Data + while (inputLen - offSet > 0) { + if (inputLen - offSet > MAX_DECRYPT_BLOCK) { + cache = cipher.doFinal(text, offSet, MAX_DECRYPT_BLOCK); + } else { + cache = cipher.doFinal(text, offSet, inputLen - offSet); + } + out.write(cache, 0, cache.length); + i++; + offSet = i * MAX_DECRYPT_BLOCK; + } + byte[] decryptedData = out.toByteArray(); + out.close(); + return decryptedData; + } +} diff --git a/src/main/java/com/huoran/iasf/common/utils/fileUploadUtils.java b/src/main/java/com/huoran/iasf/common/utils/fileUploadUtils.java new file mode 100644 index 0000000..753a3c4 --- /dev/null +++ b/src/main/java/com/huoran/iasf/common/utils/fileUploadUtils.java @@ -0,0 +1,119 @@ +package com.huoran.iasf.common.utils; + +import com.huoran.iasf.common.exception.BusinessException; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; +import java.io.InputStream; +import java.util.HashMap; + +import static com.huoran.iasf.common.exception.code.BaseResponseCode.UPLOAD_FAILED; + +/** + * 文件上传校验工具类 + **/ +public class fileUploadUtils { + + + // 缓存文件魔数值 + public static final HashMap mFileTypes = new HashMap(); + + static { + mFileTypes.put("FFD8FFE0", "jpg"); + mFileTypes.put("89504E47", "png"); + mFileTypes.put("47494638", "gif"); +// mFileTypes.put("49492A00", "tif"); +// mFileTypes.put("424D", "bmp"); +// mFileTypes.put("38425053", "psd"); +// mFileTypes.put("3C3F786D6C", "xml"); +// mFileTypes.put("68746D6C3E", "html"); + mFileTypes.put("D0CF11E0", "doc"); + mFileTypes.put("D0CF11E0", "xls");//excel2003版本文件 + mFileTypes.put("6D6F6F76", "mov"); + mFileTypes.put("504B0304", "xlsx");//excel2007以上版本文件 +// mFileTypes.put("5374616E64617264204A", "mdb"); + mFileTypes.put("255044462D312E", "pdf"); + mFileTypes.put("504B0304", "docx"); + mFileTypes.put("00000020667479706D70","MP4"); + mFileTypes.put("49443303000000002176","MP3"); +// mFileTypes.put("52617221", "rar"); +// mFileTypes.put("41564920", "avi"); + } + + + /** + * 文件上传校验 + * + * @param file 上传的文件 + * @param allowedExtension 允许上传的文件后缀集合 + * @throws Exception + */ + public static final void assertAllowed(MultipartFile file, String[] allowedExtension) throws Exception { + + //通过文件魔数获取文件的原始类型 + String fileExtension = mFileTypes.get(getFileHeader(file)); + //原始类型与允许类型集合进行比较,判断文件是否合法 + if (!isAllowedExtension(fileExtension, allowedExtension)) { + throw new BusinessException(UPLOAD_FAILED); + } + } + + /** + * 获取文件魔数值 + * + * @param file + * @return + */ + public static String getFileHeader(MultipartFile file) { + InputStream is = null; + String value = null; + try { + is = file.getInputStream(); + byte[] b = new byte[4]; + is.read(b, 0, b.length); + value = bytesToHexString(b); + } catch (Exception e) { + } finally { + if (null != is) { + try { + is.close(); + } catch (IOException e) { + } + } + } + return value; + } + + private static String bytesToHexString(byte[] src) { + StringBuilder builder = new StringBuilder(); + if (src == null || src.length <= 0) { + return null; + } + String hv; + for (int i = 0; i < src.length; i++) { + hv = Integer.toHexString(src[i] & 0xFF).toUpperCase(); + if (hv.length() < 2) { + builder.append(0); + } + builder.append(hv); + } + System.out.println("文件魔数值为:" + builder.toString()); + return builder.toString(); + } + + /** + * 判断MIME类型是否是允许的MIME类型 + * + * @param extension + * @param allowedExtension + * @return + */ + public static final boolean isAllowedExtension(String extension, String[] allowedExtension) { + for (String str : allowedExtension) { + if (str.equalsIgnoreCase(extension)) { + return true; + } + } + return false; + } +} diff --git a/src/main/java/com/huoran/iasf/controller/DeptController.java b/src/main/java/com/huoran/iasf/controller/DeptController.java index 88a7e62..fbafe3b 100644 --- a/src/main/java/com/huoran/iasf/controller/DeptController.java +++ b/src/main/java/com/huoran/iasf/controller/DeptController.java @@ -1,5 +1,6 @@ package com.huoran.iasf.controller; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.aop.annotation.LogAnnotation; import com.huoran.iasf.common.aop.annotation.NoRepeatSubmit; import com.huoran.iasf.common.utils.R; @@ -31,6 +32,7 @@ public class DeptController { @Resource private DeptService deptService; @NoRepeatSubmit + @Decrypt @PostMapping("/dept") @ApiOperation(value = "新增组织接口") @LogAnnotation(title = "机构管理", action = "新增组织") @@ -44,16 +46,18 @@ public class DeptController { return R.success(); } - @DeleteMapping("/dept/{id}") + @PostMapping("/deleteDept") @ApiOperation(value = "删除组织接口") + @Decrypt @LogAnnotation(title = "机构管理", action = "删除组织") @RequiresPermissions("sys:dept:deleted") - public R deleted(@PathVariable("id") String id) { + public R deleted(@RequestBody String id) { deptService.deleted(id); return R.success(); } - @PutMapping("/dept") + @PostMapping("/updateDept") + @Decrypt @ApiOperation(value = "更新组织信息接口") @LogAnnotation(title = "机构管理", action = "更新组织信息") @RequiresPermissions("sys:dept:update") @@ -80,7 +84,7 @@ public class DeptController { @GetMapping("/dept/tree") @ApiOperation(value = "树型组织列表接口",response = DeptRespNodeVO.class) @LogAnnotation(title = "部门管理", action = "树型组织列表") -// @RequiresPermissions(value = {"sys:user:list", "sys:user:update", "sys:user:add", "sys:dept:add", "sys:dept:update"}, logical = Logical.OR) + @RequiresPermissions(value = {"sys:user:list", "sys:user:update", "sys:user:add", "sys:dept:add", "sys:dept:update"}, logical = Logical.OR) public R getTree( @ApiParam(name = "deptId", value = "部门id",required = false) @RequestParam(required = false) String deptId) { diff --git a/src/main/java/com/huoran/iasf/controller/RoleController.java b/src/main/java/com/huoran/iasf/controller/RoleController.java index a5d4107..ddd1cdd 100644 --- a/src/main/java/com/huoran/iasf/controller/RoleController.java +++ b/src/main/java/com/huoran/iasf/controller/RoleController.java @@ -3,6 +3,7 @@ package com.huoran.iasf.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.aop.annotation.LogAnnotation; import com.huoran.iasf.common.aop.annotation.NoRepeatSubmit; import com.huoran.iasf.common.utils.R; @@ -44,7 +45,8 @@ public class RoleController { @Resource private HttpSessionService httpSessionService; @NoRepeatSubmit - @PostMapping("/role") + @Decrypt + @PostMapping("/addRole") @ApiOperation(value = "新增角色接口") @LogAnnotation(title = "角色管理", action = "新增角色") @RequiresPermissions("sys:role:add") @@ -67,17 +69,19 @@ public class RoleController { return R.success(); } - @DeleteMapping("/role/deleted") + @PostMapping("/role/deleted") @ApiOperation(value = "删除角色接口") + @Decrypt @LogAnnotation(title = "角色管理", action = "删除角色") @RequiresPermissions("sys:role:deleted") - public R deleted(@RequestBody @ApiParam(value = "id集合") List ids) { + public R deleted(@RequestBody @ApiParam(value = "id集合") List ids) { roleService.deletedRole(ids); return R.success(); } - @PutMapping("/role") + @PostMapping("/updateRole") @ApiOperation(value = "更新角色信息接口") + @Decrypt @LogAnnotation(title = "角色管理", action = "更新角色信息") @RequiresPermissions("sys:role:update") public R updateDept(@RequestBody SysRole vo) { @@ -92,11 +96,12 @@ public class RoleController { return R.success(); } - @GetMapping("/role/{id}") + @PostMapping("/role") + @Decrypt @ApiOperation(value = "查询角色详情接口") @LogAnnotation(title = "角色管理", action = "查询角色详情") -// @RequiresPermissions("sys:role:detail") - public R detailInfo(@PathVariable("id") String id) { + @RequiresPermissions("sys:role:detail") + public R detailInfo(@RequestBody Integer id) { // return R.success(roleService.detailInfo(id)); SysRole role = roleService.getById(id); QueryWrapper wrapper = new QueryWrapper<>(); @@ -113,6 +118,7 @@ public class RoleController { } @PostMapping("/roles") + @Decrypt @ApiOperation(value = "分页获取角色信息接口") @LogAnnotation(title = "角色管理", action = "分页获取角色信息") @RequiresPermissions("sys:role:list") diff --git a/src/main/java/com/huoran/iasf/controller/SeoController.java b/src/main/java/com/huoran/iasf/controller/SeoController.java new file mode 100644 index 0000000..0c9f046 --- /dev/null +++ b/src/main/java/com/huoran/iasf/controller/SeoController.java @@ -0,0 +1,76 @@ +package com.huoran.iasf.controller; + + +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.huoran.iasf.common.aop.annotation.LogAnnotation; +import com.huoran.iasf.common.utils.R; +import com.huoran.iasf.entity.Seo; +import com.huoran.iasf.entity.Site; +import com.huoran.iasf.service.SeoService; +import com.huoran.iasf.service.SiteService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + *

+ * 前端控制器 + *

+ * + * @author cheney + * @since 2023-08-24 + */ +@Api(tags = "seo管理") +@RestController +@RequestMapping("/seo") +public class SeoController { + + @Autowired + private SeoService seoService; + + @PostMapping("/add") + @ApiOperation(value = "新增seo") + public R addUserGroup(@RequestBody Seo seo) { + Seo one = seoService.getOne(new QueryWrapper(). + eq("title", seo.getTitle())); + if (ObjectUtil.isNotNull(one)){ + R.fail("seo已存在"); + } + boolean save = seoService.save(seo); + return save ? R.success() : R.fail("添加失败"); + } + + @PostMapping("/delete") + @ApiOperation(value = "删除seo") + public R deleted(@RequestParam Integer id) { + boolean remove = seoService.removeById(id); + return remove ? R.success() : R.fail("删除失败"); + } + + @PostMapping("/update") + @ApiOperation(value = "更新seo") + public R update(@RequestBody Seo seo) { + boolean update = seoService.updateById(seo); + return update ? R.success() : R.fail("更新失败"); + } + + + @GetMapping("/list") + @ApiOperation(value = "站点seo列表") + public R list(@RequestParam Integer siteId) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("site_id",siteId); + List list = seoService.list(queryWrapper); + return R.success(list); + } + +} + diff --git a/src/main/java/com/huoran/iasf/controller/SysColumnController.java b/src/main/java/com/huoran/iasf/controller/SysColumnController.java index 1adaa55..00f095d 100644 --- a/src/main/java/com/huoran/iasf/controller/SysColumnController.java +++ b/src/main/java/com/huoran/iasf/controller/SysColumnController.java @@ -2,6 +2,7 @@ package com.huoran.iasf.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.aop.annotation.NoRepeatSubmit; import com.huoran.iasf.common.exception.NotFoundException; import com.huoran.iasf.common.exception.code.BaseResponseCode; @@ -9,10 +10,13 @@ import com.huoran.iasf.common.utils.Constant; import com.huoran.iasf.entity.*; import com.huoran.iasf.service.*; import com.huoran.iasf.vo.req.ColumnWeightReqVO; +import com.huoran.iasf.vo.req.OneLevelChecksThemAll; import com.huoran.iasf.vo.req.PaginationColumnReqVO; +import com.huoran.iasf.vo.req.SubLevelColumnsUnderALevel; import com.huoran.iasf.vo.resp.SortColumnRespVO; import io.swagger.annotations.*; import com.huoran.iasf.common.utils.R; +import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; @@ -65,12 +69,14 @@ public class SysColumnController { public SysFilesService sysFilesService; @PostMapping("/listWithTree") + @Decrypt @ApiOperation(value = "栏目树结构", response = SysColumn.class) public R listWithTree(@RequestBody @Valid PaginationColumnReqVO sysColumn) { return R.success(service.listWithTree(sysColumn)); } @PostMapping("/listWithTreeMenuVisible") + @Decrypt @ApiOperation(value = "栏目树结构(前台可见,只展示试单可见的栏目)", response = SysColumn.class) public R listWithTreeMenuVisible(@RequestBody @Valid PaginationColumnReqVO sysColumn) { return R.success(service.listWithTreeMenuVisible(sysColumn)); @@ -78,8 +84,9 @@ public class SysColumnController { @PostMapping("/findById") + @Decrypt @ApiOperation(value = "查询详情", response = SysColumn.class) - public R findById(@RequestParam("id") @ApiParam(value = "序号") Integer id) { + public R findById(@RequestBody @ApiParam(value = "序号") Integer id) { SysColumn sysColumn = service.getById(id); if (sysColumn == null) { throw new NotFoundException(BaseResponseCode.DATA_DOES_NOT_EXIST); @@ -96,6 +103,7 @@ public class SysColumnController { @NoRepeatSubmit @PostMapping("/save") @ApiOperation(value = "新增", response = SysColumn.class) + @RequiresPermissions("sys:column:save") public R save(@RequestBody @Valid SysColumn sysColumn) { QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.eq("father_id", sysColumn.getFatherId()); @@ -107,6 +115,7 @@ public class SysColumnController { @PostMapping("/update") @ApiOperation(value = "修改", response = SysColumn.class) + @RequiresPermissions("sys:column:update") public R update(@RequestBody SysColumn sysColumn) { boolean updateState = service.updateById(sysColumn); return updateState ? R.success() : R.fail("编辑失败"); @@ -134,9 +143,11 @@ public class SysColumnController { }*/ @NoRepeatSubmit + @Decrypt @PostMapping("/batchDeletion") @ApiOperation(value = "批量删除栏目", response = SysColumn.class) - public R batchDeletion(@ApiParam(name = "ids", value = "主键", required = true) @RequestParam List ids) { + @RequiresPermissions("sys:column:batchDeletion") + public R batchDeletion(@ApiParam(name = "ids", value = "主键", required = true) @RequestBody List ids) { boolean ret = false; for (Integer id : ids) { UpdateWrapper filesEntityUpdateWrapper = new UpdateWrapper<>(); @@ -180,6 +191,7 @@ public class SysColumnController { @PostMapping("/sortByColumn") @ApiOperation(value = "栏目排序(依据id更改)", response = SysColumn.class) + @RequiresPermissions("sys:column:sort") public R sortByColumn(@RequestBody List sortColumnRespVOList) { for (SortColumnRespVO sort : sortColumnRespVOList) { @@ -214,11 +226,12 @@ public class SysColumnController { @ApiOperation("获取某层级下的子级栏目") + @Decrypt @PostMapping("/getsSublevelColumnsUnderALevel") - public R getsSublevelColumnsUnderALevel(@ApiParam(name = "id", value = "id", required = true) @RequestParam Integer id, - @ApiParam(name = "siteId", value = "站点id", required = true) @RequestParam Integer siteId) { - String ids = this.getIds(id); - return service.getsTheSubColumn(id, ids,siteId); + public R getsSublevelColumnsUnderALevel( + @RequestBody SubLevelColumnsUnderALevel subLevelColumnsUnderALevel) { + String ids = this.getIds(subLevelColumnsUnderALevel.getId()); + return service.getsTheSubColumn(subLevelColumnsUnderALevel.getId(), ids,subLevelColumnsUnderALevel.getSiteId()); } @@ -259,8 +272,11 @@ public class SysColumnController { @ApiOperation("获取一级下的子级栏目以及下的全部文章标签") + @Decrypt @PostMapping("/getTheFullArticleByColumn") - public R getTheFullArticleByColumn(@ApiParam(name = "id", value = "一级栏目id", required = true) @RequestParam Integer id) { + public R getTheFullArticleByColumn( + @ApiParam(name = "id", value = "一级栏目id", required = true) + @RequestBody Integer id) { String ids = this.getIds(id); return contentService.getTheFullArticleByColumn(ids); } @@ -280,15 +296,13 @@ public class SysColumnController { } @ApiOperation("某一级查全部") + @Decrypt @PostMapping("/oneLevelChecksThemAll") - public R oneLevelChecksThemAll(@ApiParam(name = "id", value = "栏目id", required = true) @RequestParam Integer id, - @ApiParam(name = "isSort", value = "判断是否为排序接口调用(1为排序接口调用 0我栏目管理列表调用)", required = true) @RequestParam Integer isSort, - @ApiParam(name = "ids", value = "主键", required = true) @RequestParam Integer siteId - ) { - - Integer pid = service.oneLevelChecksThemAll(id); + public R oneLevelChecksThemAll( + @RequestBody OneLevelChecksThemAll oneLevelChecksThemAll) { + Integer pid = service.oneLevelChecksThemAll(oneLevelChecksThemAll.getId()); String ids = this.getIds(pid); - return service.getSubColumn(pid, ids, isSort,siteId); + return service.getSubColumn(pid, ids, oneLevelChecksThemAll.getIsSort(),oneLevelChecksThemAll.getSiteId()); } @@ -300,8 +314,11 @@ public class SysColumnController { * @return */ @ApiOperation("查询栏目下的文章(若选中栏目与子级全部栏目类型一致返回全部文章,反之查询选中栏目下的文章)") + @Decrypt @PostMapping("/queryArticlesByColumnType") - public R queryArticlesByColumnType(@ApiParam(name = "columnId", value = "栏目id", required = true) @RequestParam Integer columnId) { + public R queryArticlesByColumnType( + @ApiParam(name = "columnId", value = "栏目id", required = true) + @RequestBody Integer columnId) { String ids = this.getIds(columnId); return service.queryArticlesByColumnType(ids, columnId); } diff --git a/src/main/java/com/huoran/iasf/controller/SysColumnLongPageController.java b/src/main/java/com/huoran/iasf/controller/SysColumnLongPageController.java index 5a58038..74fb592 100644 --- a/src/main/java/com/huoran/iasf/controller/SysColumnLongPageController.java +++ b/src/main/java/com/huoran/iasf/controller/SysColumnLongPageController.java @@ -2,6 +2,7 @@ package com.huoran.iasf.controller; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.exception.NotFoundException; import com.huoran.iasf.common.exception.code.BaseResponseCode; import com.huoran.iasf.common.utils.Constant; @@ -61,8 +62,11 @@ public class SysColumnLongPageController { @PostMapping("/getLongPageInformation") + @Decrypt @ApiOperation(value = "根据栏目id查询类型长页栏目信息", response = SysColumnLongPage.class) - public R getLongPageInformation(@ApiParam(name = "columnId", value = "栏目id", required = true) @RequestParam Integer columnId) { + public R getLongPageInformation( + @ApiParam(name = "columnId", value = "栏目id", required = true) + @RequestBody Integer columnId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("column_id", columnId); List longPageList = service.list(queryWrapper); diff --git a/src/main/java/com/huoran/iasf/controller/SysContentClassificationController.java b/src/main/java/com/huoran/iasf/controller/SysContentClassificationController.java index 951947c..9c9778d 100644 --- a/src/main/java/com/huoran/iasf/controller/SysContentClassificationController.java +++ b/src/main/java/com/huoran/iasf/controller/SysContentClassificationController.java @@ -1,11 +1,14 @@ package com.huoran.iasf.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.exception.NotFoundException; import com.huoran.iasf.common.exception.code.BaseResponseCode; import com.huoran.iasf.common.utils.R; import com.huoran.iasf.entity.SysContentClassification; import com.huoran.iasf.service.SysContentClassificationService; +import com.huoran.iasf.vo.req.AllTheQuery; +import com.huoran.iasf.vo.req.CheckForHeavy; import io.swagger.annotations.*; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.springframework.beans.factory.annotation.Autowired; @@ -39,11 +42,12 @@ public class SysContentClassificationController { @PostMapping("/allTheQuery") + @Decrypt @ApiOperation(value = "查询全部文章所属分类", response = SysContentClassification.class) - public R allTheQuery(@ApiParam(name = "siteId", value = "站点id", required = true) @RequestParam Integer siteId, - @ApiParam(name = "templateId", value = "模板id", required = true) @RequestParam Integer templateId) { + public R allTheQuery( + @RequestBody AllTheQuery allTheQuery) { List list = service.list(new QueryWrapper() - .eq("site_id", siteId).eq("template_id",templateId)); + .eq("site_id", allTheQuery.getSiteId()).eq("template_id",allTheQuery.getTemplateId())); return R.success(list); } @@ -60,17 +64,17 @@ public class SysContentClassificationController { @PostMapping("/checkForHeavy") + @Decrypt @ApiOperation(value = "分类校验判重", response = SysContentClassification.class) - public R checkForHeavy(@ApiParam(name = "siteId", value = "站点id", required = true) @RequestParam Integer siteId, - @ApiParam(name = "classificationName", value = "分类名称", required = true) @RequestParam String classificationName, - @ApiParam(name = "classificationId", value = "分类id(新增不传,编辑传)", required = false) @RequestParam Integer classificationId) { + public R checkForHeavy( + @RequestBody CheckForHeavy checkForHeavy) { - QueryWrapper queryWrapper = new QueryWrapper().eq("site_id", siteId). - eq("classification_name", classificationName); + QueryWrapper queryWrapper = new QueryWrapper().eq("site_id", checkForHeavy.getSiteId()). + eq("classification_name", checkForHeavy.getClassificationName()); //id不得空表示编辑校验 - if (classificationId != null) { - queryWrapper.last(" and id != " + classificationId); + if (checkForHeavy.getClassificationId() != null) { + queryWrapper.last(" and id != " + checkForHeavy.getClassificationId()); } SysContentClassification sysContentClassification = service.getOne(queryWrapper); if (sysContentClassification != null) { @@ -82,6 +86,7 @@ public class SysContentClassificationController { @PostMapping("/save") + @Decrypt @ApiOperation(value = "新增", response = SysContentClassification.class) public R save(@RequestBody @Valid @ApiParam(name = "文章所属分类对象", value = "传入json格式", required = true) SysContentClassification sysContentClassification) { boolean addState = service.save(sysContentClassification); @@ -90,6 +95,7 @@ public class SysContentClassificationController { @PostMapping("/update") + @Decrypt @ApiOperation(value = "修改", response = SysContentClassification.class) public R update(@RequestBody @ApiParam(name = "文章所属分类对象", value = "传入json格式", required = true) SysContentClassification sysContentClassification) { boolean updateState = service.updateById(sysContentClassification); @@ -98,15 +104,17 @@ public class SysContentClassificationController { @PostMapping("/delete") + @Decrypt @ApiOperation(value = "删除", response = SysContentClassification.class) - public R delete(@ApiParam(name = "id", value = "主键", required = true) @RequestParam Integer id) { + public R delete(@ApiParam(name = "id", value = "主键", required = true) @RequestBody Integer id) { boolean delState = service.removeById(id); return delState ? R.success() : R.fail("删除失败"); } @PostMapping("/batchDeletion") + @Decrypt @ApiOperation(value = "批量删除", response = SysContentClassification.class) - public R batchDeletion(@ApiParam(name = "id", value = "主键", required = true) @RequestParam List ids) { + public R batchDeletion(@ApiParam(name = "id", value = "主键", required = true) @RequestBody List ids) { boolean delState = service.removeByIds(ids); return delState ? R.success() : R.fail("删除失败"); // diff --git a/src/main/java/com/huoran/iasf/controller/SysContentController.java b/src/main/java/com/huoran/iasf/controller/SysContentController.java index f5fee2d..549cddd 100644 --- a/src/main/java/com/huoran/iasf/controller/SysContentController.java +++ b/src/main/java/com/huoran/iasf/controller/SysContentController.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.toolkit.SqlHelper; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.exception.NotFoundException; import com.huoran.iasf.common.exception.code.BaseResponseCode; import com.huoran.iasf.entity.SysColumn; @@ -14,14 +15,12 @@ import com.huoran.iasf.entity.SysFilesEntity; import com.huoran.iasf.service.SysColumnService; import com.huoran.iasf.service.SysContentFileService; import com.huoran.iasf.service.SysFilesService; -import com.huoran.iasf.vo.req.ArticleModifiedSortReq; -import com.huoran.iasf.vo.req.ContentHeavyTitleReqVO; -import com.huoran.iasf.vo.req.ContentReq; -import com.huoran.iasf.vo.req.PageContentReqVO; +import com.huoran.iasf.vo.req.*; import com.huoran.iasf.vo.resp.PageContentRespVO; import io.swagger.annotations.*; import com.huoran.iasf.common.utils.R; import org.apache.ibatis.annotations.Update; +import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.web.bind.annotation.*; @@ -63,6 +62,7 @@ public class SysContentController { @PostMapping("/pagingQuery") + @Decrypt @ApiOperation(value = "分页查询文章列表", response = PageContentRespVO.class) public R pagingQuery(@RequestBody @Valid @ApiParam(name = "分页查询参数", value = "传入json格式", required = true) PageContentReqVO sysContent) { return service.articlePaginationList(sysContent); @@ -70,8 +70,9 @@ public class SysContentController { @PostMapping("/findById") + @Decrypt @ApiOperation(value = "查询详情", response = SysContent.class) - public R findById(@ApiParam(name = "id", value = "主键", required = true) @RequestParam Integer id) { + public R findById(@ApiParam(name = "id", value = "主键", required = true) @RequestBody Integer id) { SysContent sysContent = service.getById(id); @@ -97,8 +98,11 @@ public class SysContentController { } @PostMapping("/save") + @RequiresPermissions("sys:article:save") @ApiOperation(value = "新增", response = SysContent.class) - public R save(@RequestBody @Valid @ApiParam(name = "文章管理对象", value = "传入json格式", required = true) SysContent sysContent) { + public R save( + @ApiParam(name = "文章管理对象", value = "传入json格式", required = true) + @RequestBody @Valid SysContent sysContent) { /* QueryWrapper queryWrap = new QueryWrapper<>(); queryWrap.eq("column_id", sysContent.getColumnId()); @@ -116,6 +120,7 @@ public class SysContentController { @PostMapping("/update") + @RequiresPermissions("sys:article:update") @ApiOperation(value = "修改", response = SysContent.class) public R update(@RequestBody @ApiParam(name = "文章管理对象", value = "传入json格式", required = true) SysContent sysContent) { boolean updateState = service.updateById(sysContent); @@ -124,8 +129,10 @@ public class SysContentController { @PostMapping("/delete") + @Decrypt + @RequiresPermissions("sys:article:delete") @ApiOperation(value = "删除", response = SysContent.class) - public R delete(@ApiParam(name = "id", value = "主键", required = true) @RequestParam Integer id) { + public R delete(@ApiParam(name = "id", value = "主键", required = true) @RequestBody Integer id) { UpdateWrapper queryWrapper = new UpdateWrapper<>(); queryWrapper.eq("quote_id", id); queryWrapper.eq("quote_type", 0); @@ -137,8 +144,9 @@ public class SysContentController { @PostMapping("/batchDeletion") + @Decrypt @ApiOperation(value = "批量删除文章", response = SysContent.class) - public R batchDeletion(@ApiParam(name = "ids", value = "主键", required = true) @RequestParam List ids) { + public R batchDeletion(@ApiParam(name = "ids", value = "主键", required = true) @RequestBody List ids) { for (Integer id : ids) { UpdateWrapper queryWrapper = new UpdateWrapper<>(); queryWrapper.eq("quote_id", id); @@ -151,12 +159,14 @@ public class SysContentController { } @PostMapping("/checkIfTheTitleIsRepeat") + @Decrypt @ApiOperation(value = "标题判重——只对已发布的判重(新增,编辑,点击发布时候都要调用判断))", response = ContentHeavyTitleReqVO.class) public R checkIfTheTitleIsRepeat(@RequestBody @Valid ContentHeavyTitleReqVO content) { return service.checkIfTheTitleIsRepeat(content) ? R.success() : R.fail("该标题已重复!"); } @PostMapping("/newlyPublishedArticles") + @Decrypt @ApiOperation(value = "站点最新发布的文章", response = PageContentReqVO.class) public R newlyPublishedArticles(@Valid @RequestBody PageContentReqVO content) { return service.newlyPublishedArticles(content); @@ -189,26 +199,35 @@ public class SysContentController { @PostMapping("/articleEnableOrDisable") + @Decrypt + @RequiresPermissions("sys:article:enable") @ApiOperation(value = "文章启用禁用", response = SysContent.class) - public R articleEnableOrDisable(@ApiParam(name = "id", value = "文章id", required = true) @RequestParam Integer id, @ApiParam(name = "isDisable", value = "是否禁用(0默认,0启用 1禁用)", required = true) @RequestParam Integer isDisable) { + public R articleEnableOrDisable( + @RequestBody ArticleEnableOrDisable articleEnableOrDisable) { UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("is_disable", isDisable); - updateWrapper.eq("id", id); + updateWrapper.set("is_disable", articleEnableOrDisable.getIsDisable()); + updateWrapper.eq("id", articleEnableOrDisable.getId()); boolean ret = service.update(updateWrapper); return ret ? R.success() : R.fail("禁用/启用失败"); } @PostMapping("/articlePreview") + @Decrypt @ApiOperation(value = "增加文章浏览量(点击一次算一次)", response = SysContent.class) - public R articlePreview(@ApiParam(name = "contentId", value = "文章id", required = true) @RequestParam Integer contentId) { + public R articlePreview( + @ApiParam(name = "contentId", value = "文章id", required = true) + @RequestBody Integer contentId) { return R.success(service.statisticsOfPageViews(contentId)); } @PostMapping("/hotContent") + @Decrypt @ApiOperation(value = "热点内容", response = SysContent.class) - public R hotContent(@ApiParam(name = "siteId", value = "站点id", required = true) @RequestParam Integer siteId) { + public R hotContent( + @ApiParam(name = "siteId", value = "站点id", required = true) + @RequestBody Integer siteId) { return R.success(service.hotContent(siteId)); } @@ -222,19 +241,22 @@ public class SysContentController { @PostMapping("/articleTopOperation") + @Decrypt + @RequiresPermissions("sys:article:top") @ApiOperation(value = "文章置顶/取消置顶", response = SysContent.class) - public R articleTopOperation(@ApiParam(name = "isTop", value = "是否置顶(默认为0 不置顶 1为置顶)", required = true) @RequestParam Integer isTop, @ApiParam(name = "articleId", value = "文章Id", required = true) @RequestParam Integer articleId) { + public R articleTopOperation( + @RequestBody ArticleTopOperation articleTopOperation) { //是否置顶(默认为0 不置顶 1为置顶) UpdateWrapper updateWrap = new UpdateWrapper<>(); - if (isTop == 1) { + if (articleTopOperation.getIsTop() == 1) { //置顶时间(置顶一次更新一次) updateWrap.set("top_time", new Date()); } else { updateWrap.set("top_time", null); } - updateWrap.set("is_top", isTop); - updateWrap.eq("id", articleId); + updateWrap.set("is_top", articleTopOperation.getIsTop()); + updateWrap.eq("id", articleTopOperation.getArticleId()); updateWrap.eq("deleted", 1); boolean ret = service.update(updateWrap); return ret ? R.success() : R.fail("操作失败"); diff --git a/src/main/java/com/huoran/iasf/controller/SysContentLabelController.java b/src/main/java/com/huoran/iasf/controller/SysContentLabelController.java index 5634d13..fdb24cb 100644 --- a/src/main/java/com/huoran/iasf/controller/SysContentLabelController.java +++ b/src/main/java/com/huoran/iasf/controller/SysContentLabelController.java @@ -1,12 +1,14 @@ package com.huoran.iasf.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.exception.NotFoundException; import com.huoran.iasf.common.exception.code.BaseResponseCode; import com.huoran.iasf.common.utils.R; import com.huoran.iasf.entity.SysContentClassification; import com.huoran.iasf.entity.SysContentLabel; import com.huoran.iasf.service.SysContentLabelService; +import com.huoran.iasf.vo.req.LabelCheckForHeavy; import io.swagger.annotations.*; import org.springframework.beans.factory.annotation.Autowired; import org.apache.commons.lang.StringUtils; @@ -37,8 +39,11 @@ public class SysContentLabelController { @PostMapping("/queryAllArticleSubjectTags") + @Decrypt @ApiOperation(value = "查询全部文章主题标签", response = SysContentLabel.class) - public R queryAllArticleSubjectTags(@ApiParam(name = "siteId", value = "站点id", required = true) @RequestParam Integer siteId) { + public R queryAllArticleSubjectTags( + @ApiParam(name = "siteId", value = "站点id", required = true) + @RequestBody Integer siteId) { List list = service.list(new QueryWrapper().eq("site_id", siteId)); return R.success(list); } @@ -56,6 +61,7 @@ public class SysContentLabelController { @PostMapping("/save") + @Decrypt @ApiOperation(value = "新增", response = SysContentLabel.class) public R save(@RequestBody @Valid @ApiParam(name = "文章主题标签对象", value = "传入json格式", required = true) SysContentLabel sysContentLabel) { boolean addState = service.save(sysContentLabel); @@ -64,14 +70,17 @@ public class SysContentLabelController { @PostMapping("/checkForHeavy") + @Decrypt @ApiOperation(value = "标签校验判重", response = SysContentLabel.class) - public R checkForHeavy(@ApiParam(name = "siteId", value = "站点id", required = true) @RequestParam Integer siteId, @ApiParam(name = "labelName", value = "标签名称", required = true) @RequestParam String labelName, @ApiParam(name = "labelId", value = "标签id(新增不传,编辑传)", required = false) @RequestParam Integer labelId) { + public R checkForHeavy( + @RequestBody LabelCheckForHeavy labelCheckForHeavy) { - QueryWrapper queryWrapper = new QueryWrapper().eq("site_id", siteId).eq("label_name", labelName); + QueryWrapper queryWrapper = new QueryWrapper(). + eq("site_id", labelCheckForHeavy.getSiteId()).eq("label_name", labelCheckForHeavy.getLabelName()); //id不得空表示编辑校验 - if (labelId != null) { - queryWrapper.last(" and id != " + labelId); + if (labelCheckForHeavy.getLabelId() != null) { + queryWrapper.last(" and id != " + labelCheckForHeavy.getLabelId()); } SysContentLabel contentLabel = service.getOne(queryWrapper); if (contentLabel != null) { @@ -83,6 +92,7 @@ public class SysContentLabelController { @PostMapping("/update") + @Decrypt @ApiOperation(value = "修改", response = SysContentLabel.class) public R update(@RequestBody @ApiParam(name = "文章主题标签对象", value = "传入json格式", required = true) SysContentLabel sysContentLabel) { boolean updateState = service.updateById(sysContentLabel); @@ -91,8 +101,9 @@ public class SysContentLabelController { @PostMapping("/delete") + @Decrypt @ApiOperation(value = "删除", response = SysContentLabel.class) - public R delete(@ApiParam(name = "id", value = "主键", required = true) @RequestParam Integer id) { + public R delete(@ApiParam(name = "id", value = "主键", required = true) @RequestBody Integer id) { boolean delState = service.removeById(id); return delState ? R.success() : R.fail("删除失败"); } diff --git a/src/main/java/com/huoran/iasf/controller/SysFilesController.java b/src/main/java/com/huoran/iasf/controller/SysFilesController.java index c470442..6bd2a71 100644 --- a/src/main/java/com/huoran/iasf/controller/SysFilesController.java +++ b/src/main/java/com/huoran/iasf/controller/SysFilesController.java @@ -6,9 +6,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.aop.annotation.NoRepeatSubmit; import com.huoran.iasf.common.config.NonStaticResourceHttpRequestConfig; import com.huoran.iasf.common.utils.R; +import com.huoran.iasf.common.utils.fileUploadUtils; import com.huoran.iasf.entity.SysFilesEntity; import com.huoran.iasf.entity.SysUser; import com.huoran.iasf.service.HttpSessionService; @@ -75,7 +77,7 @@ public class SysFilesController { // @RequiresPermissions(value = {"sysFiles:add", "sysContent:update", "sysContent:add"}, logical = Logical.OR) public UEditorResultVO add( @RequestParam(required = false) String action, - @RequestParam(value = "file") MultipartFile file, FileParameters fileParameters) { + @RequestParam(value = "file") MultipartFile file, FileParameters fileParameters) throws Exception { Integer userId = httpSessionService.getCurrentUserId(); fileParameters.setUploader(userId.toString()); //判断文件是否空 @@ -84,6 +86,8 @@ public class SysFilesController { uEditorResult.setState("error"); return uEditorResult; } + String[] allowedExtension = new String[]{"jpg", "png", "gif", "doc", "xls", "xlsx", "docx", "pdf", "mov","mp4","MP3"}; + fileUploadUtils.assertAllowed(file,allowedExtension); return sysFilesService.saveFile(file,fileParameters); } @@ -113,7 +117,8 @@ public class SysFilesController { } @ApiOperation(value = "删除") - @DeleteMapping("/delete") + @PostMapping("/delete") + @Decrypt @RequiresPermissions("sysFiles:delete") public R delete(@RequestBody @ApiParam(value = "id集合") List ids) { sysFilesService.removeByIdsAndFiles(ids); diff --git a/src/main/java/com/huoran/iasf/controller/SysNavigationStyleController.java b/src/main/java/com/huoran/iasf/controller/SysNavigationStyleController.java index bbf3327..cbb7459 100644 --- a/src/main/java/com/huoran/iasf/controller/SysNavigationStyleController.java +++ b/src/main/java/com/huoran/iasf/controller/SysNavigationStyleController.java @@ -1,6 +1,7 @@ package com.huoran.iasf.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.huoran.iasf.common.annotation.Decrypt; import io.swagger.annotations.*; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.huoran.iasf.common.utils.R; @@ -36,8 +37,9 @@ public class SysNavigationStyleController { @PostMapping("/searchAllBySite") + @Decrypt @ApiOperation(value = "按站点搜索所有", response = SysNavigationStyle.class) - public R listByEntity(@ApiParam(name = "siteId", value = "站点id", required = true) @RequestParam Integer siteId) { + public R listByEntity(@ApiParam(name = "siteId", value = "站点id", required = true) @RequestBody Integer siteId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("site_id", siteId); List pageList = service.list(queryWrapper); diff --git a/src/main/java/com/huoran/iasf/controller/UserController.java b/src/main/java/com/huoran/iasf/controller/UserController.java index cfb07e7..9c830e3 100644 --- a/src/main/java/com/huoran/iasf/controller/UserController.java +++ b/src/main/java/com/huoran/iasf/controller/UserController.java @@ -1,10 +1,13 @@ package com.huoran.iasf.controller; + import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.aop.annotation.LogAnnotation; import com.huoran.iasf.common.aop.annotation.NoRepeatSubmit; import com.huoran.iasf.common.utils.R; +import com.huoran.iasf.common.utils.fileUploadUtils; import com.huoran.iasf.entity.SysUser; import com.huoran.iasf.entity.UserDept; import com.huoran.iasf.mapper.UserDeptMapper; @@ -56,6 +59,7 @@ public class UserController { private HttpSessionService httpSessionService; @PostMapping(value = "/user/login") + @Decrypt @ApiOperation(value = "用户登录接口") public R login(@RequestBody @Valid SysUser vo) { return R.success(userService.login(vo)); @@ -68,10 +72,11 @@ public class UserController { return R.success(); }*/ - @PutMapping("/user") + @PostMapping("/updateUser") @ApiOperation(value = "更新用户信息接口") @LogAnnotation(title = "用户管理", action = "更新用户信息") -// @RequiresPermissions("sys:user:update") + @Decrypt + @RequiresPermissions("sys:user:update") public R updateUserInfo(@RequestBody SysUser vo) { if (StringUtils.isEmpty(vo.getId())) { return R.fail("id不能为空"); @@ -80,18 +85,20 @@ public class UserController { return R.success(); } - @GetMapping("/user/{id}") + @PostMapping("/queryUser") @ApiOperation(value = "查询用户详情接口") + @Decrypt @LogAnnotation(title = "用户管理", action = "查询用户详情") -// @RequiresPermissions("sys:user:detail") - public R detailInfo(@PathVariable("id") String id) { + @RequiresPermissions("sys:user:detail") + public R detailInfo(@RequestBody Integer id) { UserListResp userResp = userService.detailInfo(id); return R.success(userResp); } @PostMapping("/users") @ApiOperation(value = "分页获取用户列表接口") -// @RequiresPermissions("sys:user:list") + @RequiresPermissions("sys:user:list") + @Decrypt @LogAnnotation(title = "用户管理", action = "分页获取用户列表") public R pageInfo(@RequestBody UserListReq userListReq) { return userService.pageInfo(userListReq); @@ -99,7 +106,8 @@ public class UserController { @PostMapping("/user") @ApiOperation(value = "新增用户接口") -// @RequiresPermissions("sys:user:add") + @RequiresPermissions("sys:user:add") + @Decrypt @LogAnnotation(title = "用户管理", action = "新增用户") public R addUser(@RequestBody @Valid SysUser vo) { userService.addUser(vo); @@ -147,8 +155,14 @@ public class UserController { } @NoRepeatSubmit @ApiOperation(value = "密码重置", notes = "密码重置") - @GetMapping("/resetPwd") - public R resetPwd(@RequestParam("userId") String userId) { + @Decrypt + @PostMapping("/resetPwd") + @RequiresPermissions("sys:user:resetPwd") + public R resetPwd(@RequestBody String userId) { +// Integer currentUserId = httpSessionService.getCurrentUserId(); +// if (!userId.equals(currentUserId.toString())){ +// return R.fail("只能修改自己的密码"); +// } return userService.resetPwd(userId); } @@ -162,24 +176,32 @@ public class UserController { return R.success(); } @NoRepeatSubmit - @PutMapping("/user/pwd") + @Decrypt + @PostMapping("/user/pwd") @ApiOperation(value = "修改密码接口") @LogAnnotation(title = "用户管理", action = "更新密码") public R updatePwd(@RequestBody SysUser vo) { if (StringUtils.isEmpty(vo.getOldPwd()) || StringUtils.isEmpty(vo.getNewPwd())) { return R.fail("旧密码与新密码不能为空"); } - // Integer userId = httpSessionService.getCurrentUserId(); - // vo.setId(userId); + Integer userId = httpSessionService.getCurrentUserId(); + if (!userId.equals(vo.getId())){ + return R.fail("只能修改自己的密码"); + } + boolean password = userService.checkPassword(vo.getNewPwd()); + if (!password){ + return R.fail("密码长度不小于8位,至少包含数字、大小写字母和特殊字符"); + } userService.updatePwd(vo); return R.success(); } @NoRepeatSubmit - @DeleteMapping("/user") + @PostMapping("/deletedUser") @ApiOperation(value = "删除用户接口") + @Decrypt @LogAnnotation(title = "用户管理", action = "删除用户") -// @RequiresPermissions("sys:user:deleted") - public R deletedUser(@RequestBody @ApiParam(value = "用户id集合") List userIds) { + @RequiresPermissions("sys:user:deleted") + public R deletedUser(@RequestBody @ApiParam(value = "用户id集合") List userIds) { //删除用户, 删除redis的绑定的角色跟权限 httpSessionService.abortUserByUserIds(userIds); LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); @@ -192,6 +214,7 @@ public class UserController { @PostMapping("/importStaff") @ApiOperation("批量导入员工") + @RequiresPermissions("sys:user:import") public R importStaff(@RequestParam(name = "file") MultipartFile file, HttpServletRequest request) throws IOException { Map map = userService.importStaff(file); return R.success(map); @@ -220,8 +243,11 @@ public class UserController { @ApiOperation(value = "修改用户头像") @PostMapping("/updateUserAvatars") - public R updateUserAvatars(@RequestParam String userId, MultipartFile file) { - return userService.updateUserAvatars(userId, file); + public R updateUserAvatars(MultipartFile file) throws Exception { + String[] allowedExtension = new String[]{"jpg", "png", "gif"}; + fileUploadUtils.assertAllowed(file,allowedExtension); + Integer currentUserId = httpSessionService.getCurrentUserId(); + return userService.updateUserAvatars(currentUserId.toString(), file); } } diff --git a/src/main/java/com/huoran/iasf/controller/UserGroupController.java b/src/main/java/com/huoran/iasf/controller/UserGroupController.java index a17a493..4c57f6c 100644 --- a/src/main/java/com/huoran/iasf/controller/UserGroupController.java +++ b/src/main/java/com/huoran/iasf/controller/UserGroupController.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.huoran.iasf.common.annotation.Decrypt; import com.huoran.iasf.common.aop.annotation.LogAnnotation; import com.huoran.iasf.common.aop.annotation.NoRepeatSubmit; import com.huoran.iasf.common.utils.R; @@ -37,6 +38,7 @@ public class UserGroupController { @Autowired private UserGroupService userGroupService; @NoRepeatSubmit + @Decrypt @PostMapping("/add") @ApiOperation(value = "新增用户组") @LogAnnotation(title = "用户组管理", action = "新增用户组") @@ -51,16 +53,18 @@ public class UserGroupController { return R.success(); } @NoRepeatSubmit - @DeleteMapping("/delete/{id}") + @Decrypt + @PostMapping("/deleteUserGroup") @ApiOperation(value = "删除用户组") @LogAnnotation(title = "用户组管理", action = "删除用户组") @RequiresPermissions("sys:userGroup:deleted") - public R deleted(@PathVariable("id") Integer id) { + public R deleted(@RequestBody String id) { userGroupService.removeById(id); return R.success(); } - @PutMapping("/update") + @PostMapping("/updateUserGroup") + @Decrypt @ApiOperation(value = "更新用户组信息") @LogAnnotation(title = "用户组管理", action = "更新用户组信息") @RequiresPermissions("sys:userGroup:update") @@ -89,6 +93,7 @@ public class UserGroupController { @PostMapping("/list") + @Decrypt @ApiOperation(value = "用户组列表") @LogAnnotation(title = "用户组管理", action = "获取所有用户组机构") @RequiresPermissions("sys:userGroup:list") diff --git a/src/main/java/com/huoran/iasf/entity/Seo.java b/src/main/java/com/huoran/iasf/entity/Seo.java new file mode 100644 index 0000000..4a5de4b --- /dev/null +++ b/src/main/java/com/huoran/iasf/entity/Seo.java @@ -0,0 +1,44 @@ +package com.huoran.iasf.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + *

+ * + *

+ * + * @author cheney + * @since 2023-08-24 + */ +@Data + @EqualsAndHashCode(callSuper = false) + @TableName("sys_seo") +@ApiModel(value="Seo对象", description="") +public class Seo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "标题") + private String title; + + @ApiModelProperty(value = "关键词") + private String keyword; + + @ApiModelProperty(value = "描述") + private String description; + + @ApiModelProperty(value = "站点") + private Integer siteId; + +} diff --git a/src/main/java/com/huoran/iasf/mapper/SeoMapper.java b/src/main/java/com/huoran/iasf/mapper/SeoMapper.java new file mode 100644 index 0000000..94bef03 --- /dev/null +++ b/src/main/java/com/huoran/iasf/mapper/SeoMapper.java @@ -0,0 +1,16 @@ +package com.huoran.iasf.mapper; + +import com.huoran.iasf.entity.Seo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author cheney + * @since 2023-08-24 + */ +public interface SeoMapper extends BaseMapper { + +} diff --git a/src/main/java/com/huoran/iasf/mapper/SysUserMapper.java b/src/main/java/com/huoran/iasf/mapper/SysUserMapper.java index 51f2b37..810a2f4 100644 --- a/src/main/java/com/huoran/iasf/mapper/SysUserMapper.java +++ b/src/main/java/com/huoran/iasf/mapper/SysUserMapper.java @@ -19,5 +19,5 @@ public interface SysUserMapper extends BaseMapper { IPage userList(Page page,@Param("req") UserListReq userListReq); - UserListResp detailInfo(String id); + UserListResp detailInfo(Integer id); } \ No newline at end of file diff --git a/src/main/java/com/huoran/iasf/mapper/xml/SeoMapper.xml b/src/main/java/com/huoran/iasf/mapper/xml/SeoMapper.xml new file mode 100644 index 0000000..287da9a --- /dev/null +++ b/src/main/java/com/huoran/iasf/mapper/xml/SeoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/java/com/huoran/iasf/mapper/xml/SysFilesMapper.xml b/src/main/java/com/huoran/iasf/mapper/xml/SysFilesMapper.xml index d38b95e..ce6bfb1 100644 --- a/src/main/java/com/huoran/iasf/mapper/xml/SysFilesMapper.xml +++ b/src/main/java/com/huoran/iasf/mapper/xml/SysFilesMapper.xml @@ -9,7 +9,6 @@ f.url, f.file_name, f.format, - f.file_path, f.file_size, f.type, f.deleted, diff --git a/src/main/java/com/huoran/iasf/service/HttpSessionService.java b/src/main/java/com/huoran/iasf/service/HttpSessionService.java index 58dd00e..bd9e7ce 100644 --- a/src/main/java/com/huoran/iasf/service/HttpSessionService.java +++ b/src/main/java/com/huoran/iasf/service/HttpSessionService.java @@ -171,9 +171,9 @@ public class HttpSessionService { /** * 使多个用户的token失效 */ - public void abortUserByUserIds(List userIds) { + public void abortUserByUserIds(List userIds) { if (CollectionUtils.isNotEmpty(userIds)) { - for (Integer id : userIds) { + for (String id : userIds) { redisService.delKeys(userTokenPrefix + "*#" + id); } diff --git a/src/main/java/com/huoran/iasf/service/RoleService.java b/src/main/java/com/huoran/iasf/service/RoleService.java index 7558497..92134d8 100644 --- a/src/main/java/com/huoran/iasf/service/RoleService.java +++ b/src/main/java/com/huoran/iasf/service/RoleService.java @@ -33,7 +33,7 @@ public interface RoleService extends IService { * * @param id id */ - void deletedRole(List ids); + void deletedRole(List ids); /** * 根据userId获取绑定的角色 diff --git a/src/main/java/com/huoran/iasf/service/SeoService.java b/src/main/java/com/huoran/iasf/service/SeoService.java new file mode 100644 index 0000000..3112e01 --- /dev/null +++ b/src/main/java/com/huoran/iasf/service/SeoService.java @@ -0,0 +1,16 @@ +package com.huoran.iasf.service; + +import com.huoran.iasf.entity.Seo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author cheney + * @since 2023-08-24 + */ +public interface SeoService extends IService { + +} diff --git a/src/main/java/com/huoran/iasf/service/UserService.java b/src/main/java/com/huoran/iasf/service/UserService.java index b187c69..b62fb31 100644 --- a/src/main/java/com/huoran/iasf/service/UserService.java +++ b/src/main/java/com/huoran/iasf/service/UserService.java @@ -53,7 +53,7 @@ public interface UserService extends IService { */ void updatePwd(SysUser vo); - UserListResp detailInfo(String id); + UserListResp detailInfo(Integer id); R resetPwd(String userId); @@ -66,4 +66,6 @@ public interface UserService extends IService { R updatePhoneOrEmail(UpdatePhoneOrEmailReq updatePhoneOrEmailReq); R updateUserAvatars(String userId, MultipartFile file); + + boolean checkPassword(String password); } diff --git a/src/main/java/com/huoran/iasf/service/impl/PermissionServiceImpl.java b/src/main/java/com/huoran/iasf/service/impl/PermissionServiceImpl.java index abd481c..9a9d1fb 100644 --- a/src/main/java/com/huoran/iasf/service/impl/PermissionServiceImpl.java +++ b/src/main/java/com/huoran/iasf/service/impl/PermissionServiceImpl.java @@ -238,7 +238,7 @@ public class PermissionServiceImpl extends ServiceImpl selectAllByTree() { List permissionList = baseMapper.selectList(null); return build(permissionList); diff --git a/src/main/java/com/huoran/iasf/service/impl/RoleServiceImpl.java b/src/main/java/com/huoran/iasf/service/impl/RoleServiceImpl.java index ded14d3..a01edcd 100644 --- a/src/main/java/com/huoran/iasf/service/impl/RoleServiceImpl.java +++ b/src/main/java/com/huoran/iasf/service/impl/RoleServiceImpl.java @@ -104,11 +104,11 @@ public class RoleServiceImpl extends ServiceImpl impleme @Transactional(rollbackFor = Exception.class) @Override - public void deletedRole(List ids) { + public void deletedRole(List ids) { - for (Integer id : ids) { + for (String id : ids) { //获取关联userId - List userIds = userRoleService.getUserIdsByRoleId(id); + List userIds = userRoleService.getUserIdsByRoleId(Integer.valueOf(id)); //删除角色 sysRoleMapper.deleteById(id); //删除角色权限关联 diff --git a/src/main/java/com/huoran/iasf/service/impl/SeoServiceImpl.java b/src/main/java/com/huoran/iasf/service/impl/SeoServiceImpl.java new file mode 100644 index 0000000..c513065 --- /dev/null +++ b/src/main/java/com/huoran/iasf/service/impl/SeoServiceImpl.java @@ -0,0 +1,20 @@ +package com.huoran.iasf.service.impl; + +import com.huoran.iasf.entity.Seo; +import com.huoran.iasf.mapper.SeoMapper; +import com.huoran.iasf.service.SeoService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author cheney + * @since 2023-08-24 + */ +@Service +public class SeoServiceImpl extends ServiceImpl implements SeoService { + +} diff --git a/src/main/java/com/huoran/iasf/service/impl/UserServiceImpl.java b/src/main/java/com/huoran/iasf/service/impl/UserServiceImpl.java index c4d9bb4..ace81e7 100644 --- a/src/main/java/com/huoran/iasf/service/impl/UserServiceImpl.java +++ b/src/main/java/com/huoran/iasf/service/impl/UserServiceImpl.java @@ -131,13 +131,45 @@ public class UserServiceImpl extends ServiceImpl impleme } List menus = permissionService.permissionList(sysUser.getId()); + boolean b = checkUserPassword(vo.getPassword()); String token = httpSessionService.createTokenAndUser(sysUser, roleService.getRoleNames(sysUser.getId()), permissionService.getPermissionsByUserId(sysUser.getId())); respVO.setAccessToken(token); respVO.setPermissionList(menus); respVO.setUsername(sysUser.getRealName()); + respVO.setStrong(b); return respVO; } + + @Override + public boolean checkPassword(String password) { + return checkUserPassword(password); + } + + public static boolean checkUserPassword(String password){ + Map map = new HashMap(); + for (int i = 0; i < password.length(); i++) { + int A = password.charAt(i); + if (A >= 48 && A <= 57) {// 数字 + map.put("数字", "数字"); + } else if (A >= 65 && A <= 90) {// 大写 + map.put("大写", "大写"); + } else if (A >= 97 && A <= 122) {// 小写 + map.put("小写", "小写"); + } else { + map.put("特殊", "特殊"); + } + } + Set sets = map.keySet(); + int pwdSize = sets.size();// 密码字符种类数 + int pwdLength = password.length();// 密码长度 + if (pwdSize >= 4 && pwdLength >= 8) { + return true;// 强密码 + } else { + return false;// 弱密码 + } + } + /** * 校验验证码 * @@ -231,7 +263,7 @@ public class UserServiceImpl extends ServiceImpl impleme } @Override - public UserListResp detailInfo(String id) { + public UserListResp detailInfo(Integer id) { return baseMapper.detailInfo(id); } @@ -239,7 +271,7 @@ public class UserServiceImpl extends ServiceImpl impleme public R resetPwd(String userId) { SysUser sysUser = baseMapper.selectById(userId); sysUser.setSalt(PasswordUtils.getSalt()); - String encode = PasswordUtils.encode("111aaa", sysUser.getSalt()); + String encode = PasswordUtils.encode("Iasf#2024", sysUser.getSalt()); sysUser.setPassword(encode); int update = baseMapper.updateById(sysUser); return update>0 ? R.success("重置成功") : R.fail("重置失败"); @@ -261,7 +293,7 @@ public class UserServiceImpl extends ServiceImpl impleme public void addUser(SysUser vo) { vo.setSalt(PasswordUtils.getSalt()); - String encode = PasswordUtils.encode("111aaa", vo.getSalt()); + String encode = PasswordUtils.encode("Iasf#2024", vo.getSalt()); vo.setPassword(encode); vo.setStatus(1); vo.setCreateWhere(1); @@ -605,7 +637,7 @@ public class UserServiceImpl extends ServiceImpl impleme if (0==usernameId){ SysUser vo = new SysUser(); vo.setSalt(PasswordUtils.getSalt()); - String encode = PasswordUtils.encode("111aaa", vo.getSalt()); + String encode = PasswordUtils.encode("Iasf#2024", vo.getSalt()); vo.setRealName(realName); vo.setPhone(getPhone); vo.setJobNumber(jobNumber); diff --git a/src/main/java/com/huoran/iasf/vo/req/AllTheQuery.java b/src/main/java/com/huoran/iasf/vo/req/AllTheQuery.java new file mode 100644 index 0000000..268b8ce --- /dev/null +++ b/src/main/java/com/huoran/iasf/vo/req/AllTheQuery.java @@ -0,0 +1,13 @@ +package com.huoran.iasf.vo.req; + +import io.swagger.annotations.ApiParam; +import lombok.Data; +import org.springframework.web.bind.annotation.RequestParam; +@Data +public class AllTheQuery { + + @ApiParam(name = "siteId", value = "站点id", required = true) + Integer siteId; + @ApiParam(name = "templateId", value = "模板id", required = true) + Integer templateId; +} diff --git a/src/main/java/com/huoran/iasf/vo/req/ArticleEnableOrDisable.java b/src/main/java/com/huoran/iasf/vo/req/ArticleEnableOrDisable.java new file mode 100644 index 0000000..3a390f9 --- /dev/null +++ b/src/main/java/com/huoran/iasf/vo/req/ArticleEnableOrDisable.java @@ -0,0 +1,12 @@ +package com.huoran.iasf.vo.req; + +import io.swagger.annotations.ApiParam; +import lombok.Data; + +@Data +public class ArticleEnableOrDisable { + @ApiParam(name = "id", value = "文章id", required = true) + String id; + @ApiParam(name = "isDisable", value = "是否禁用(0默认,0启用 1禁用)", required = true) + String isDisable; +} diff --git a/src/main/java/com/huoran/iasf/vo/req/ArticleTopOperation.java b/src/main/java/com/huoran/iasf/vo/req/ArticleTopOperation.java new file mode 100644 index 0000000..3fd9d80 --- /dev/null +++ b/src/main/java/com/huoran/iasf/vo/req/ArticleTopOperation.java @@ -0,0 +1,12 @@ +package com.huoran.iasf.vo.req; + +import io.swagger.annotations.ApiParam; +import lombok.Data; + +@Data +public class ArticleTopOperation { + @ApiParam(name = "isTop", value = "是否置顶(默认为0 不置顶 1为置顶)", required = true) + Integer isTop; + @ApiParam(name = "articleId", value = "文章Id", required = true) + Integer articleId; +} diff --git a/src/main/java/com/huoran/iasf/vo/req/CheckForHeavy.java b/src/main/java/com/huoran/iasf/vo/req/CheckForHeavy.java new file mode 100644 index 0000000..f5fd922 --- /dev/null +++ b/src/main/java/com/huoran/iasf/vo/req/CheckForHeavy.java @@ -0,0 +1,15 @@ +package com.huoran.iasf.vo.req; + +import io.swagger.annotations.ApiParam; +import lombok.Data; +import org.springframework.web.bind.annotation.RequestParam; +@Data +public class CheckForHeavy { + + @ApiParam(name = "siteId", value = "站点id", required = true) + Integer siteId; + @ApiParam(name = "classificationName", value = "分类名称", required = true) + String classificationName; + @ApiParam(name = "classificationId", value = "分类id(新增不传,编辑传)", required = false) + Integer classificationId; +} diff --git a/src/main/java/com/huoran/iasf/vo/req/LabelCheckForHeavy.java b/src/main/java/com/huoran/iasf/vo/req/LabelCheckForHeavy.java new file mode 100644 index 0000000..a219292 --- /dev/null +++ b/src/main/java/com/huoran/iasf/vo/req/LabelCheckForHeavy.java @@ -0,0 +1,16 @@ +package com.huoran.iasf.vo.req; + +import io.swagger.annotations.ApiParam; +import lombok.Data; +import org.springframework.web.bind.annotation.RequestParam; + +@Data +public class LabelCheckForHeavy { + + @ApiParam(name = "siteId", value = "站点id", required = true) + Integer siteId; + @ApiParam(name = "labelName", value = "标签名称", required = true) + String labelName; + @ApiParam(name = "labelId", value = "标签id(新增不传,编辑传)", required = false) + Integer labelId; +} diff --git a/src/main/java/com/huoran/iasf/vo/req/OneLevelChecksThemAll.java b/src/main/java/com/huoran/iasf/vo/req/OneLevelChecksThemAll.java new file mode 100644 index 0000000..eaba97a --- /dev/null +++ b/src/main/java/com/huoran/iasf/vo/req/OneLevelChecksThemAll.java @@ -0,0 +1,18 @@ +package com.huoran.iasf.vo.req; + +import io.swagger.annotations.ApiParam; +import lombok.Data; +import org.springframework.web.bind.annotation.RequestParam; + +@Data +public class OneLevelChecksThemAll { + + @ApiParam(name = "id", value = "栏目id", required = true) + Integer id; + + @ApiParam(name = "isSort", value = "判断是否为排序接口调用(1为排序接口调用 0我栏目管理列表调用)", required = true) + Integer isSort; + + @ApiParam(name = "ids", value = "主键", required = true) + Integer siteId; +} diff --git a/src/main/java/com/huoran/iasf/vo/req/SubLevelColumnsUnderALevel.java b/src/main/java/com/huoran/iasf/vo/req/SubLevelColumnsUnderALevel.java new file mode 100644 index 0000000..46fd8ce --- /dev/null +++ b/src/main/java/com/huoran/iasf/vo/req/SubLevelColumnsUnderALevel.java @@ -0,0 +1,13 @@ +package com.huoran.iasf.vo.req; + +import io.swagger.annotations.ApiParam; +import lombok.Data; + +@Data +public class SubLevelColumnsUnderALevel { + + @ApiParam(name = "id", value = "id", required = true) + Integer id; + @ApiParam(name = "siteId", value = "站点id", required = true) + Integer siteId; +} diff --git a/src/main/java/com/huoran/iasf/vo/resp/LoginRespVO.java b/src/main/java/com/huoran/iasf/vo/resp/LoginRespVO.java index 6f3fc69..46ee0b9 100644 --- a/src/main/java/com/huoran/iasf/vo/resp/LoginRespVO.java +++ b/src/main/java/com/huoran/iasf/vo/resp/LoginRespVO.java @@ -23,6 +23,7 @@ public class LoginRespVO { private Integer id; @ApiModelProperty(value = "电话") private String phone; + private boolean isStrong; @ApiModelProperty(value = "用户头像路径") private String userAvatars; @ApiModelProperty(value = "用户所拥有的菜单权限") diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 286bd26..5d259ad 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -6,8 +6,8 @@ spring: datasource: master: username: root -# password: 123456 - password: iasf#2022 + password: 123456 +# password: iasf#2022 # password: HuoRan@2021 driver-class-name: com.mysql.cj.jdbc.Driver # url: jdbc:mysql://127.0.0.1:3306/iasf?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT%2b8 @@ -37,7 +37,10 @@ file: path: C:/files/ #文件预览url url: /iasf/sysFiles/preview/ - ip: http://10.10.11.7 +# ip: http://10.10.11.7 + ip: https://new.iasf.ac.cn +#knife4j: +# production: true #生成环境禁用查看文档 #本地开启 # url: :10000/iasf/sysFiles/preview/ \ No newline at end of file diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml index 349b649..bef7ffb 100644 --- a/src/main/resources/application-prod.yml +++ b/src/main/resources/application-prod.yml @@ -8,12 +8,12 @@ spring: username: root password: HuoRan@2021 driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://139.9.47.170:3306/iasf?serverTimezone=GMT%2B8 + url: jdbc:mysql://139.9.47.170:3306/tmp_iasf?serverTimezone=GMT%2B8 cache: type: redis redis: host: 127.0.0.1 # Redis服务器地址 - database: 0 # Redis数据库索引(默认为0) + database: 1 # Redis数据库索引(默认为0) port: 6379 # Redis服务器连接端口 password: HuoRan@2021 # Redis服务器连接密码(默认为空) jedis: @@ -30,10 +30,10 @@ singleServerConfig: file: #文件上传目录 绝对路径 末尾请加 / linux - path: /usr/local/huoran/huorantech_website/files/ + path: /usr/local/huoran/tmp_website/files/ #文件预览url url: /iasf/sysFiles/preview/ - ip: https://huorantech.com + ip: http://139.159.254.212 knife4j: production: true #生成环境禁用查看文档 \ No newline at end of file diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index bdbfb99..885b97a 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -4,6 +4,13 @@ server: servlet: context-path: /iasf +rsa: + encrypt: + timestampCheck: false #是否开启超过指定时间的数据认定为伪造 + open: true # 是否开启加密 true or false + showLog: true # 是否打印加解密log true or false + publicKey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA08Nz0zscnWtddmaNylIPt9v5ZO6U6pYyGochRrbpI+ocwoyV4E1uUu3J9/mmR8pyMBcYzE5KkBytlaiLnd6dMqo4R60aihN/TqfuI/03LzgAS/egT/Q4VB9yZSyZCmJhrgTtSX5kxotAbewp0gqsWpi+6BUYDuiwJ0WNlhDVV4FOQIppmvHh0RqYDhjiPNAuy7fEtytT+IY4rxm6LggvmNtIq5k2oLbDxEeI1GOyFHT6sLGMkmBLmHu7JYcrlyUGyGWsxh8hVame1zQsScivrZu757BTGhN4xObTivIdAbR7uFeeX4lp0X1JNtIe9TwB/aZzKJjZMPXeV7BJ01g3MQIDAQAB + privateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDTw3PTOxyda112Zo3KUg+32/lk7pTqljIahyFGtukj6hzCjJXgTW5S7cn3+aZHynIwFxjMTkqQHK2VqIud3p0yqjhHrRqKE39Op+4j/TcvOABL96BP9DhUH3JlLJkKYmGuBO1JfmTGi0Bt7CnSCqxamL7oFRgO6LAnRY2WENVXgU5Aimma8eHRGpgOGOI80C7Lt8S3K1P4hjivGbouCC+Y20irmTagtsPER4jUY7IUdPqwsYySYEuYe7slhyuXJQbIZazGHyFVqZ7XNCxJyK+tm7vnsFMaE3jE5tOK8h0BtHu4V55fiWnRfUk20h71PAH9pnMomNkw9d5XsEnTWDcxAgMBAAECggEAUm5n3NbKycBsblV3ZkVRVwmq6A4zK6nxsP/fBS7YTCGqtlSRVvHtOxzTHNMyVgnJL00eWxEy1yxCqdolFvv8ByfZppUMmqkCSnT2L043OAs9mlS3M8hmUOC44AdfP3qSeXHziENKKTs1hlSC5v8+njmNPrxPVCZhw7fAaKT+1wOKE353QTNxacNua+dDx8zVO0xEznW+FKnYZ+ft2rHkiu1NkPRrWCpGHXZLXINT2FoQ7ECHkQUjD5IoRg2lvXNvjQPhs9BwnNsl3ODe/8PWbB0Lgtg9dLEmivyaNpTx/2Nl0QmFflIfp0rZs4SMnsJK56hQ8d5uhYbcpnn/gSbcAQKBgQD1gN/5oBxJAw2MVv3N8VcC/CWPHI4Er9vEVgrQSrO9QYBHSRX9/aoHmI4iK5opjHq6LYEt9JoGSdMPbRL2o16pkyZchuB/7Q5no9AD7iDSvvvt7qNqo2qkWpPA9pjodoWQaLAmC6M39ypNo3aSvrkuN11tOmU5bnaa94bofjoFcQKBgQDc0UgWiD0uTXSYCi1/GHCUuWi5X/HtsMS8Mz5SIln7x+X2rM0OECSQqYR4AGUZv81xh5mJetYDwJUvQXYGdaon8DP08VKD7uVEELF6SVf7woGVUSYxZdMss21cqksM3MXhyJ8QxO+eJSjGqwHf5AkB0KtMfnMKZqJIfXJsoVltwQKBgQDM3skJpSU1gIizznxqebWk1gn5zVhubNq2kx7fBxfLHXgRBNqHZEGZqSMjPMOfXI2mBAdC9FX8XWr1+o3SqC580EE5AY0i9A4LStZyESvu8lWGDpjsioaZtMSMSLz9cLqw8cvdU+TW9TmmJHz0pJggCy+50Ptb2+S6GUnJhlyg4QKBgDgiK4Uu1P60SfNsguxQNi5Yg7q8HTAjQ5/kFu+iM+XBh0AR5X6xs9niff5Te1/0VjGKGwnL5CPIDSSaK3qw5rSIZ2zY+/T2AeovpC5F/svNQkvG+UKNdAVlB2QLFlEKvnMLIQSOS6uUHq2CQ1O7EF8ZwLINYwk91fs/iJr82VMBAoGAEq3LN/LmOlB1OL6MaTTCEkvQq/wROt8poeLebycFcmZrsovR3MQKYuoY7IEjRw+ZvOauCJNM7mCpmeUVWAc3TPgWeQMzGALdb1X5u9xK8eq9WTutlSS/OSNGIYRJuSpO9efDdfoMHuR2Mleibs1yvxD4A2CXC10bSHE5huM07rY= spring: profiles: active: dev @@ -16,6 +23,13 @@ spring: jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8 + # 解决API 成批分配问题 + serialization: + # 某些类对象无法序列化的时候,是否报错 + fail_on_empty_beans: true + deserialization: + # json对象中有不存在的属性时候,是否报错 + fail_on_unknown_properties: true # 文件大小限制 servlet: multipart: diff --git a/src/test/java/com/company/project/CodeGenerator.java b/src/test/java/com/company/project/CodeGenerator.java index b738510..ee39259 100644 --- a/src/test/java/com/company/project/CodeGenerator.java +++ b/src/test/java/com/company/project/CodeGenerator.java @@ -41,10 +41,10 @@ public class CodeGenerator { // 3、数据源配置 DataSourceConfig dsc = new DataSourceConfig(); - dsc.setUrl("jdbc:mysql://192.168.31.136:3306/iasf?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT%2b8"); + dsc.setUrl("jdbc:mysql://139.9.47.170:3306/iasf?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT%2b8"); dsc.setDriverName("com.mysql.cj.jdbc.Driver"); dsc.setUsername("root"); - dsc.setPassword("123456"); + dsc.setPassword("HuoRan@2021"); dsc.setDbType(DbType.MYSQL); mpg.setDataSource(dsc); @@ -61,9 +61,9 @@ public class CodeGenerator { // 5、策略配置 StrategyConfig strategy = new StrategyConfig(); - strategy.setInclude("sys_template_style_configuration"); + strategy.setInclude("sys_seo"); strategy.setNaming(NamingStrategy.underline_to_camel);//数据库表映射到实体的命名策略 -// strategy.setTablePrefix("sys_"); //生成实体时去掉表前缀 + strategy.setTablePrefix("sys_"); //生成实体时去掉表前缀 strategy.setColumnNaming(NamingStrategy.underline_to_camel);//数据库表字段映射到实体的命名策略 strategy.setEntityLombokModel(true); // lombok 模型 @Accessors(chain = true) setter链式操作 diff --git a/target/classes/META-INF/spring-configuration-metadata.json b/target/classes/META-INF/spring-configuration-metadata.json new file mode 100644 index 0000000..4f6775d --- /dev/null +++ b/target/classes/META-INF/spring-configuration-metadata.json @@ -0,0 +1,67 @@ +{ + "groups": [ + { + "name": "file", + "type": "com.huoran.iasf.common.config.FileUploadProperties", + "sourceType": "com.huoran.iasf.common.config.FileUploadProperties" + }, + { + "name": "rsa.encrypt", + "type": "com.huoran.iasf.common.config.SecretKeyConfig", + "sourceType": "com.huoran.iasf.common.config.SecretKeyConfig" + } + ], + "properties": [ + { + "name": "file.ip", + "type": "java.lang.String", + "sourceType": "com.huoran.iasf.common.config.FileUploadProperties" + }, + { + "name": "file.path", + "type": "java.lang.String", + "sourceType": "com.huoran.iasf.common.config.FileUploadProperties" + }, + { + "name": "file.url", + "type": "java.lang.String", + "sourceType": "com.huoran.iasf.common.config.FileUploadProperties" + }, + { + "name": "rsa.encrypt.charset", + "type": "java.lang.String", + "sourceType": "com.huoran.iasf.common.config.SecretKeyConfig", + "defaultValue": "UTF-8" + }, + { + "name": "rsa.encrypt.open", + "type": "java.lang.Boolean", + "sourceType": "com.huoran.iasf.common.config.SecretKeyConfig", + "defaultValue": true + }, + { + "name": "rsa.encrypt.private-key", + "type": "java.lang.String", + "sourceType": "com.huoran.iasf.common.config.SecretKeyConfig" + }, + { + "name": "rsa.encrypt.public-key", + "type": "java.lang.String", + "sourceType": "com.huoran.iasf.common.config.SecretKeyConfig" + }, + { + "name": "rsa.encrypt.show-log", + "type": "java.lang.Boolean", + "sourceType": "com.huoran.iasf.common.config.SecretKeyConfig", + "defaultValue": false + }, + { + "name": "rsa.encrypt.timestamp-check", + "type": "java.lang.Boolean", + "description": "请求数据时间戳校验时间差 超过指定时间的数据认定为伪造", + "sourceType": "com.huoran.iasf.common.config.SecretKeyConfig", + "defaultValue": false + } + ], + "hints": [] +} \ No newline at end of file diff --git a/target/classes/application-dev.yml b/target/classes/application-dev.yml new file mode 100644 index 0000000..5d259ad --- /dev/null +++ b/target/classes/application-dev.yml @@ -0,0 +1,46 @@ +# 开发环境配置 +spring: + datasource: + dynamic: + primary: master #设置默认的数据源或者数据源组,默认值即为master + datasource: + master: + username: root + password: 123456 +# password: iasf#2022 +# password: HuoRan@2021 + driver-class-name: com.mysql.cj.jdbc.Driver +# url: jdbc:mysql://127.0.0.1:3306/iasf?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT%2b8 + url: jdbc:mysql://192.168.31.136:3306/iasf?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT%2b8 +# url: jdbc:mysql://139.9.47.170:3306/iasf?serverTimezone=GMT%2B8 + cache: + type: redis + redis: + host: 127.0.0.1 # Redis服务器地址 + database: 0 # Redis数据库索引(默认为0) + port: 6379 # Redis服务器连接端口 + password: # Redis服务器连接密码(默认为空) + jedis: + pool: + max-active: 8 # 连接池最大连接数(使用负值表示没有限制) + max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制) + max-idle: 8 # 连接池中的最大空闲连接 + min-idle: 0 # 连接池中的最小空闲连接 + timeout: 3000ms # 连接超时时间(毫秒) + +singleServerConfig: + address: "redis://127.0.0.1:6379" + password: + +file: + #文件上传目录 绝对路径 末尾请加 / windows + path: C:/files/ + #文件预览url + url: /iasf/sysFiles/preview/ +# ip: http://10.10.11.7 + ip: https://new.iasf.ac.cn +#knife4j: +# production: true #生成环境禁用查看文档 + + #本地开启 +# url: :10000/iasf/sysFiles/preview/ \ No newline at end of file diff --git a/target/classes/application-prod.yml b/target/classes/application-prod.yml new file mode 100644 index 0000000..bef7ffb --- /dev/null +++ b/target/classes/application-prod.yml @@ -0,0 +1,39 @@ +# 生产环境配置 +spring: + datasource: + dynamic: + primary: master #设置默认的数据源或者数据源组,默认值即为master + datasource: + master: + username: root + password: HuoRan@2021 + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://139.9.47.170:3306/tmp_iasf?serverTimezone=GMT%2B8 + cache: + type: redis + redis: + host: 127.0.0.1 # Redis服务器地址 + database: 1 # Redis数据库索引(默认为0) + port: 6379 # Redis服务器连接端口 + password: HuoRan@2021 # Redis服务器连接密码(默认为空) + jedis: + pool: + max-active: 8 # 连接池最大连接数(使用负值表示没有限制) + max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制) + max-idle: 8 # 连接池中的最大空闲连接 + min-idle: 0 # 连接池中的最小空闲连接 + timeout: 3000ms # 连接超时时间(毫秒) + +singleServerConfig: + address: "redis://127.0.0.1:6379" + password: HuoRan@2021 + +file: + #文件上传目录 绝对路径 末尾请加 / linux + path: /usr/local/huoran/tmp_website/files/ + #文件预览url + url: /iasf/sysFiles/preview/ + ip: http://139.159.254.212 + +knife4j: + production: true #生成环境禁用查看文档 \ No newline at end of file diff --git a/target/classes/application-test.yml b/target/classes/application-test.yml new file mode 100644 index 0000000..c2d41ef --- /dev/null +++ b/target/classes/application-test.yml @@ -0,0 +1,30 @@ +# 开发环境配置 +spring: + datasource: + dynamic: + primary: master #设置默认的数据源或者数据源组,默认值即为master + datasource: + master: + username: root + password: HuoRan@2021 + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://139.9.47.170:3306/iasf?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT%2b8 + redis: + host: localhost # Redis服务器地址 + database: 0 # Redis数据库索引(默认为0) + port: 6379 # Redis服务器连接端口 + password: # Redis服务器连接密码(默认为空) + jedis: + pool: + max-active: 8 # 连接池最大连接数(使用负值表示没有限制) + max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制) + max-idle: 8 # 连接池中的最大空闲连接 + min-idle: 0 # 连接池中的最小空闲连接 + timeout: 3000ms # 连接超时时间(毫秒 + +file: + #文件上传目录 绝对路径 末尾请加 / + path: D:/files/ #windows + #path: /data/files/ #linux + #文件预览、下载的url, 末尾请勿加 / + url: :10000/iasf/sysFiles/preview/ diff --git a/target/classes/application.yml b/target/classes/application.yml new file mode 100644 index 0000000..885b97a --- /dev/null +++ b/target/classes/application.yml @@ -0,0 +1,59 @@ +# 端口 +server: + port: 10000 + servlet: + context-path: /iasf + +rsa: + encrypt: + timestampCheck: false #是否开启超过指定时间的数据认定为伪造 + open: true # 是否开启加密 true or false + showLog: true # 是否打印加解密log true or false + publicKey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA08Nz0zscnWtddmaNylIPt9v5ZO6U6pYyGochRrbpI+ocwoyV4E1uUu3J9/mmR8pyMBcYzE5KkBytlaiLnd6dMqo4R60aihN/TqfuI/03LzgAS/egT/Q4VB9yZSyZCmJhrgTtSX5kxotAbewp0gqsWpi+6BUYDuiwJ0WNlhDVV4FOQIppmvHh0RqYDhjiPNAuy7fEtytT+IY4rxm6LggvmNtIq5k2oLbDxEeI1GOyFHT6sLGMkmBLmHu7JYcrlyUGyGWsxh8hVame1zQsScivrZu757BTGhN4xObTivIdAbR7uFeeX4lp0X1JNtIe9TwB/aZzKJjZMPXeV7BJ01g3MQIDAQAB + privateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDTw3PTOxyda112Zo3KUg+32/lk7pTqljIahyFGtukj6hzCjJXgTW5S7cn3+aZHynIwFxjMTkqQHK2VqIud3p0yqjhHrRqKE39Op+4j/TcvOABL96BP9DhUH3JlLJkKYmGuBO1JfmTGi0Bt7CnSCqxamL7oFRgO6LAnRY2WENVXgU5Aimma8eHRGpgOGOI80C7Lt8S3K1P4hjivGbouCC+Y20irmTagtsPER4jUY7IUdPqwsYySYEuYe7slhyuXJQbIZazGHyFVqZ7XNCxJyK+tm7vnsFMaE3jE5tOK8h0BtHu4V55fiWnRfUk20h71PAH9pnMomNkw9d5XsEnTWDcxAgMBAAECggEAUm5n3NbKycBsblV3ZkVRVwmq6A4zK6nxsP/fBS7YTCGqtlSRVvHtOxzTHNMyVgnJL00eWxEy1yxCqdolFvv8ByfZppUMmqkCSnT2L043OAs9mlS3M8hmUOC44AdfP3qSeXHziENKKTs1hlSC5v8+njmNPrxPVCZhw7fAaKT+1wOKE353QTNxacNua+dDx8zVO0xEznW+FKnYZ+ft2rHkiu1NkPRrWCpGHXZLXINT2FoQ7ECHkQUjD5IoRg2lvXNvjQPhs9BwnNsl3ODe/8PWbB0Lgtg9dLEmivyaNpTx/2Nl0QmFflIfp0rZs4SMnsJK56hQ8d5uhYbcpnn/gSbcAQKBgQD1gN/5oBxJAw2MVv3N8VcC/CWPHI4Er9vEVgrQSrO9QYBHSRX9/aoHmI4iK5opjHq6LYEt9JoGSdMPbRL2o16pkyZchuB/7Q5no9AD7iDSvvvt7qNqo2qkWpPA9pjodoWQaLAmC6M39ypNo3aSvrkuN11tOmU5bnaa94bofjoFcQKBgQDc0UgWiD0uTXSYCi1/GHCUuWi5X/HtsMS8Mz5SIln7x+X2rM0OECSQqYR4AGUZv81xh5mJetYDwJUvQXYGdaon8DP08VKD7uVEELF6SVf7woGVUSYxZdMss21cqksM3MXhyJ8QxO+eJSjGqwHf5AkB0KtMfnMKZqJIfXJsoVltwQKBgQDM3skJpSU1gIizznxqebWk1gn5zVhubNq2kx7fBxfLHXgRBNqHZEGZqSMjPMOfXI2mBAdC9FX8XWr1+o3SqC580EE5AY0i9A4LStZyESvu8lWGDpjsioaZtMSMSLz9cLqw8cvdU+TW9TmmJHz0pJggCy+50Ptb2+S6GUnJhlyg4QKBgDgiK4Uu1P60SfNsguxQNi5Yg7q8HTAjQ5/kFu+iM+XBh0AR5X6xs9niff5Te1/0VjGKGwnL5CPIDSSaK3qw5rSIZ2zY+/T2AeovpC5F/svNQkvG+UKNdAVlB2QLFlEKvnMLIQSOS6uUHq2CQ1O7EF8ZwLINYwk91fs/iJr82VMBAoGAEq3LN/LmOlB1OL6MaTTCEkvQq/wROt8poeLebycFcmZrsovR3MQKYuoY7IEjRw+ZvOauCJNM7mCpmeUVWAc3TPgWeQMzGALdb1X5u9xK8eq9WTutlSS/OSNGIYRJuSpO9efDdfoMHuR2Mleibs1yvxD4A2CXC10bSHE5huM07rY= +spring: + profiles: + active: dev + mvc: + throw-exception-if-no-handler-found: true + resources: + add-mappings: false + application: + name: iasf + jackson: + date-format: yyyy-MM-dd HH:mm:ss + time-zone: GMT+8 + # 解决API 成批分配问题 + serialization: + # 某些类对象无法序列化的时候,是否报错 + fail_on_empty_beans: true + deserialization: + # json对象中有不存在的属性时候,是否报错 + fail_on_unknown_properties: true + # 文件大小限制 + servlet: + multipart: + max-file-size: 100MB + max-request-size: 100MB + # redis token信息 + redis: + key: + prefix: + userToken: "user:token:" + passwordError: "user:password:error:" + permissionRefresh: "user:token:permissionRefresh:" + expire: + userToken: 86400 # 1天 7*24*3600 + passwordError: 360000 # 一个小时 + permissionRefresh: 86400 # 1天 7*24*3600 + allowMultipleLogin: true # 允许多处登陆 + +mybatis-plus: + configuration: + log-impl: org.apache.ibatis.logging.stdout.StdOutImpl + mapper-locations: classpath*:com/huoran/iasf/mapper/xml/*.xml + global-config: + db-config: + logic-delete-value: 0 + logic-not-delete-value: 1 + logic-delete-field: deleted diff --git a/target/classes/com/huoran/iasf/IASFApplication.class b/target/classes/com/huoran/iasf/IASFApplication.class new file mode 100644 index 0000000000000000000000000000000000000000..9b6e63738684e19dad5347208b08c57d2a16b7b9 GIT binary patch literal 2183 zcmbtVZBrXn6n<`A*d(kJ0|Hem0oxKN&DKh5O%SCNS~RpsT9oOho8=}f-Q1hGyP;(m z{)YcUol$Vce({?>%JJ-OfE^k-9o-N2ZO=XDdCuGY`=38v1DL~)IT)}E+{)oI-0sKc zn9Cx8I~m+H@I?mq`tc>oIaDwo3}0oi(2uY2O%98=&yaLglObPKx@mcCV{X@~s%BH@ z3Paz#BOQN%WQx<945=lxEf_9U9Vs4nT6LkH^14eWblK+aCf81|?;fW79mivssM@M! z?R1pp(sH=huvQmqD~s*6>)70Plq5T;7I!4WNbz}fm+x`Q<+5qjeC^0)B{a-+lT;1$ z_|4GI&vY@&M?BiW-G=5Z@lxp*maU{OUisFNk`1TX(E-dD1Ue3W6OyEmdkixdDAB^A z|JJhHbF`8zA%iQqpZaT3r)Z?^S0adWUi(<+7>HL;J4v( zt|$fU87^;hr0=xErsFvQP$`ukx{6dS^n_Md%C~sOS41==Gh3*HpukSph*MF2_-$0g^R zcprI&aXNfk4jOo1Vi_w29-4TBRTGym$naP0=70Wj*_hu8QwN7r1;;Dsj+B&{6NN?F z7M@plwo&!Ux$FaFmkZe)-*1;K>)^0_a2S=!wz5k*e#`wII4B{{YU)XSSJ*zoXcYGn zMe(EzOOn#nz_%v8L)E~ViN|M+dHC^KW;p|T^tFw~2&@?Ubf=T&-C{B+OkdFKi*_rmpVw;2YS!jDxy!@c4~ zaJs#MTFYt2iQS|sDE0>OW{)BNli78xs4o3|hU;-Ropi~V=ekGKUc$ggDy3B#7Pq%G zr5uAv+QNqYNO_bCV??2sAVCc1212J-hfieV9hx%i{M$h--H{DNBzs_u$23aFu*r{} zSF*xwUuhzo4FLyl62rB)!YD_&5r{usn4kyHpx2S%!=RLDm83QG0vd;CXVJ`PPS5-f z_A@OK7^bl=JRHIYv^FCFj9`>@S&ZQ_DG4tBM5>cC&*u{}M@Uw093#cB_6ySazP>+U zY$a#&nPX%VsBNW=koyh&wXO7Q-i*$U@m>;VHYbrGT_dD(36@atNK(_!!92|12JL5Qe>2>d{sr-HS(5+& literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/advice/DecryptHttpInputMessage.class b/target/classes/com/huoran/iasf/common/advice/DecryptHttpInputMessage.class new file mode 100644 index 0000000000000000000000000000000000000000..819c09a7905ea861470ace3c47a40ebb827093ea GIT binary patch literal 4926 zcmb7I349dQ9sXXj$;?hB2?i5bz`7_x!r=-+0?TC*v4G)_05)Q+!|o)RFxg#aW`T&d z)~dDku(jG2v=?o)ceP3mqhM=K+tOmIy=(8gwf9M--*e93$8U}EE7_B&<;Rf6&msiT=RdTsW!>e(#g4d|HMT3T0tI&qqB=l<) z+^*nt^8F4CQ}B8XwRnSE-l*YCxKqQM@s=vwg|{lWTg5#ZrsHjr+S}#s9aT7pLn`jA z!hLwBf_JHSw}vQgRq-Bq^j-yrHC%vwD&D8!{SxH^D(;uh2Q+*TAJXt)d_=x}RDyj> zE+1F%35ollC;|ZzNrxbiz z!IJ{zcDhHPt|RUA#9X_3X;Hv zWn$~Otk1y_CA2%891y7Q=ri^jF)JP0kjiAePR}uoeqL9uvQn0}M&S0w$tn71n@ra= zdd!s_iFALgH=A~hRLnBm?ik%xf&YHO{sIx+Pr{*jix0|KS)~%^h!ifmkU)N_dN5 z7MN7>F5&4St`pE0j(ZKyq~}Q_(Q7!a>2c@wruQ+1X{@URYCPJ_^^E>Zd#{<;BLQ<> zp=~=oBe7?bk?~!d%LfIYQSezNGSgDQHZobaKVfEM(6|adCopA`>Gh_QTMd~7o}U~_ zkLl&YVOnETiNMzg6J&`%Bfbo>NA)$ubtqvPlJ1)Znk zmpDPanCwwEo5`ddFPcr6DL>=QWHj)9{J@P0ex>8r_>I8w5^-ndogZ75!{3%my#mvm z`yzY?YAT*Uu8lDk#%!Fy}HIvUjcId#33tPJxz6Eml zr&5xC>G(HJ>i7>%3WQJRkAfF;oMHkAp^Gwk*A>vG5~S_dq-d|c+(hkdLn5en_FK|I)L1W6H26b!vm{3ietp%m{>~TC# zw?$b3+w(;_Y`LBJGEJdbsHa%2jETZhJx7XZWQ;_w8MJ&iCiS>D=(RgM%chQs<*w_` zc$9wTIEl%tQ${75=Ss<;zVJ2>OPXtXa6VyLkylg4u5uO2pBO4^jtXQvGp}ftg2Y^Z z$dRJuW}U)vHQ;(?KRb>@>@+iM9yB)z_)aXuZcnoYOJ7L6`qG@1Qfy?+g_27fj_H+i zQBe}o(PuEoiRZULpOe5v0rBEAf`;aYPc9KjR->03&%Khhtb|!XE?o^#%s0OkRsEf^MG}ikzQJ$C1{VSEzO1uY!mSr13{ME7hH*SdN*ojfB~1+brpm zV+ZsK)eDX&fSa)`R+M4_G!>oX=9S1?X;U}WX1Hea(jDB>5-j}wyxCAhzNTGm0&^y% zwXL%?M`(KEuC@Ye6?xgx}*MrCYBAXxcU!4sOwyJF8R5P|{|8WMQnw>5leA{6BIgbi|2tqyw=5$Y3j<@B@uN5=ayp>(XP7LLpbl4e|)|?o>Pv9 z8V^5!n?`X#*AV8$H4>gz*EonK$%A4Z!Ui5urv>qdgUOl7{?KPT!{aJKjOF|#AdV-o636-Z|18$vIjrS~ zc!{V%t7yPlF$ z1N9UQq$=o9(5t{AsDeHG6J&T29o(He^%O2bZ7~qulDMs)pMMfVLRL)zDIsP+D*++N zakSos6h#YBd7znuH|tYAQ0@*p>5kYQ2jAMWy9q2~Ys Xa|-!E#*>N2H4~AqEsC7=S?v8USH^v# literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/advice/EncryptRequestBodyAdvice.class b/target/classes/com/huoran/iasf/common/advice/EncryptRequestBodyAdvice.class new file mode 100644 index 0000000000000000000000000000000000000000..90dc0b6d9d9487f9e8b909965b5ed229cdc54c53 GIT binary patch literal 4359 zcmd5@qnYlAG8M-IkJrH~^ z{R1x8yEBVeWk}R2b?skp;liE2!Lt1B?SW}vMnh4SE~fAMobP<+-gD0U{O5N+02sh$ z33Osgey$~O9n(!XfY%e4!E6F^ctZ~7b-bCt4cwH2TM4{{x8;U+bmUPnR4f`(|(DQIY)bligB74rj&#-vjy2zN+>F6^wkTJkk$w=}fngc^<7 zw&R<=<=7h1lUZlUSSUNLX&aX5G0NNTu`B$mVs*^1^A^<__0DJ2 z24i;X0m|r_DcioaB<3y8$`nNvjHlsTU_{Ba>_Xl(m&A(W-ZnDAv^^tlW_`z94Fel3 z`_78xiX6o@3|qG4kC2X@-gynNF()Soc+#@PwenI%xN|18DW0-sao%(-Ij&5``~^#? zuSZ61*~$uIB4Bey+$jsszu@FnN7Vw=H+tn#$#H#3neVA-Mb>eJF(v#3CpT?M+kCoc za?xBijiPB63|HifBI_G-t0fVhA1j)kH`Gi2?dO^BX$`5z*Q6ogn{Gk)Qoe>m^)zc} zrt6l4OL)Q7w$Ro94A~B#Xy^_tZdec)Nm8Debi!OyafR>c&?zNyI9=0{1>Z06LRR1y zmpPmgo@W*W?_Yp%I5jdfLS4{n{slkn z)ehz61=G$I#l%v{UzK-E!OFi(%PQh&>P#x z>jxEzP!V}CsJa+~c{HdiHJk{?;NWO)aM401`HFjL*;FeI1>%Ert>N$%Xj^Td)HY>b z*|&;DKpyjYgXLW-7mExWVQ7_9DU)i4tJ3yt`ruH}}=?D=QHez1wSA zrTuzIu$pG=DRq&mz?P~?4FffFg**_dx2vaU?dQ9Sb-MySR4+n@ux!-+vZij`emOM6 zh3h&l3(>G~v%aj~!!_*Og6pivdV8pMp6~Pk{|vD@L<|ubQusG1BBO|E83I(x;J`gk zvERV<7~42oh9rKU;b??sG`6j&htN`~bwnN^`T()7ITyjR{3h6fa$^iDC)i5{`|%u3 za>Uz-UPP6wU)aVuH=bTcd@$A(dxVBHBvO>8NAGpT+8fu=w1(rUZ;)8WzBL?7#kiD8 z%Z21mXncU?*uBbj%84ocDIx$hH&9~>b#_o=CsNd!Mn9g%5c=>6PT>MxQ1}J{3>ADt z!@X&Rd7QiZlr`f#X%KA#?LWnHF}z3}fn{>-G}i_=(}c($=+trMB+hc!9HlH!3b+S& ziN6TWQTEFitZ-1`s6o!B@ADf~7D(nn0g}CuV09B+g!qTmdW2R;Z%CQ15^+@ZB;uIr zNyPCG&WOSpSHL>s6axwXk8THep5jMIPvE3qDMSM7rx)}!^n8z&n`!A0{+b_R|NX&u zSNzApIES(J_OAH1=!k;GM4+on)~ebgXsfvAD94})I>8^J_HLYKMjGXnyFj8Ql+l;D z+D-jqbVi&j&FoDmH}!84(XY&xMD;84B@xoSeTs;F_KhuWk~60{Bi*zQ(HlB0j_bJ8 hqWEZw)#2hYxw!He&bs>FIV*zKXi@}MH(%`}@E5eI%P{}| literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/advice/EncryptResponseBodyAdvice.class b/target/classes/com/huoran/iasf/common/advice/EncryptResponseBodyAdvice.class new file mode 100644 index 0000000000000000000000000000000000000000..1ea68ebe40b498b29cd6066715b702449ca0995b GIT binary patch literal 5014 zcmcgw`FGUT75-!o*34K0Y!kwyG?+lZ3r5AEp|M@3HcJWE;9_C|bU`!o#ukjFiKMY{ z6KI?6O`PtFX}UK}m$W6DF@YxOk}m0g(Vu%xe(y<>e(y=PWjsSm>FGJP^z`1n_ucp1 z_08*Vz4S7Go%m}Sn=mdPP8u#sDcp&N((vG?5uhwTCv;4vaTZhZX3=s+&7)(Uu<~kwgsEYB)UkrHCp2uUOw|*c?swfH_wVi{ zYh91+*g-D=YiS+Pkl5|!DP+}v?TAC=@vQKUT0D_Ll1hwNo-Mzl$wV+_^N9CW1I)@# z*g0YD4e>rA{1PD%{ce7$PpxqOq+c$TTrZ%Q-j<3`bwOLBs8_MNbrpA{RvZ@jPpl zO%`yXDiKygF)pQYPkTiT$AX|FJuOtn+|SQJ;rrI8pnrywJ#D?pb}NSiD|cqlDyc1W zd|UbdlRCbmVf8hL5#Mt+f$z;KE6uYiD+;uwH2*Qr4rrslx5Pj>oIOn>yDNfH*#}f? zUlUjgzCn?q2^@2hI)oRBQd{6P1SkAFBfIPB51e9c=w*oiIPk-WKWgK*`l3e zBBQ7*L0-B|1h0lBUr3h~dHR#oCiM8t)qz<=lbgqwLuU-xbuR=7lezOUm4EFhZJ{(pDDn+>HKg6Dti z!O5OnF{&4(7|hoT-AR!(rQwSrFvllyW|&3eC2x6Mh!?9!wyag@VYlq%#6DXVq&uos zmF==jYUrv6lvF2cJNdW*G7vnsSQK7VmJIAbr-2{hM>>9N;3@pXz+Kp)<4FTg6@U5HinNLQw41JB@>23pak<5vcLjf)04u-(A3cuqsZVug=f*TD0V zg>v+k)6D-dVIRIa%+UtTv#0Di-WG4L{8(ebK0>2G!X&cN^S2LrF+BHN@PPjp0L zM7~)juQ#qyP=)4bjoC@f>-eLAKjF`e&_$JFdajE=iexp5`P^pUFL<4) zXOSz`{b<-#4gP=Ae6U6?N({YB!~RM&<-c)Z4eJ)AFYOXEv{c%qQjKHLT$G}^h9z2u zr9;D=mE=tIAa)m*Ipge?uSdlQSCR`Yk3w8YnGfMQia!nY}mJtSj93E zAe(}5cY*_hOhb#ce<}Aucd@04W)cnGJm9;|19HTsVNy0{YLh;H-ov)Uk2?=etO6`- zv$>MTD8xgOXcK+R@{fwMJnRzKBQX;8iu1goNbl;O3IsJxw6w}zY4deYc4W9u?#Xy; zIoZElV3@{YDbc%JL=hI4%xOp@-TysUM%j$k8i-kU(IkU)*BWxU1L$nvG$tVUdG z=eUmVZG5L?QR3KC>+d2L69_u_yqhz<Co5E5^O3RkB{=JHffm_F1er)G>#;86?|Yfc{KdM`LmpsTnlzGd+v? z8R&_pk>F0cA|O|SzeNCRv4YPwKHIs|HZ)N84(cvFd$ULE^5i5h-sct7V;HIxll4Tr7rRnw?v70AGB(tr{UTM|A%B}u#*$zjKqH^KP){ReXr>K3)J7hvg<$O=a2$Ja3j1)H7)){Y5lT3ZgLn*wl>wgM?>xIma}Wbakz*SMafl9boWLID zsGi*GIX^(?&l8{z;0Wn<-~@&_mz01l7;hR!@qjYkv@)Y~vT2Oq7$KIU2dSfUrfEt) zp`2nGC-FhLbv+)%hwx$OF(XU*KGI7g@5PEYu~ElI{)w$RPVw(8m^v)=cj|4rLP}XZ zs|=r0w$JMjR literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/annotation/Decrypt.class b/target/classes/com/huoran/iasf/common/annotation/Decrypt.class new file mode 100644 index 0000000000000000000000000000000000000000..28d954394ed3160f95bf4dd845e4504df71994b8 GIT binary patch literal 542 zcmaix%}xR_6ot>_$3a8||1mMB3nCk526c~a>R3Kv13jWVtds@zwR zXOdDx1k1QS>&SeA^|Y8WR$d9&dmV)iU%DO>a#eQ1>ByW8)kG1Bttg1=9^J9q^>}vn zm~e0tGq$IKfvx^7wc9EjusJ8BC(4WD$m7La&10Vf)1Ho4;H5^bebuZI4j0ocHUdji z!j}I*?zHDRQvt2k!)^PzQ6n5JE~#oKiXXu}p(~E|?dM2`DzIHO?%Se$9nAOk6AmFi zYrWYWvLmUMX4YI9v&6~-LPBQzABhwpg|w(8QOOQ0F)~>GHR{L;n~O=TVolbP)UC^Q S{t3h=U;~@6Vr*d>JHQu*UXq0X literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/annotation/EnableSecurity.class b/target/classes/com/huoran/iasf/common/annotation/EnableSecurity.class new file mode 100644 index 0000000000000000000000000000000000000000..227db99ce55371f3e2f3881d1d23ab7d359a00a6 GIT binary patch literal 729 zcma))$xg#C5QfJ<3Hw$SaX>5wj+g^TAWj8}R8bbS1qpF--D&EQ*uilMc{L6^01t(j z6p0q86&##+@_+x>nVFBzw|4+IfHe=6Jy`KzmBCciBv#^u3Xnm*s6{=%D$2wvm+rMi zM=)5gB-*JE?^UcwEog0=aLVYI!A3b_cp$XT#gD*i!use=800!4NGS8pV6GToh}zZC z2nimmJ=_)kE$9HP-t5_wTen?|mJaYRkPQ`1NbU4^_y|Mfm67`tEA{UP`4>+A3NV6f2Z z{!P7&(lOZVed;szhGv%mgArPzG>bsHvFBUEY)q9J1QMkv1QsUO9K}^)SBX<8ug1Uw@KA^g zLZm|^2LHLc-`RKHeSW=v0Jy+GfV}{{0Q&-+2Uld8u1rD#-O%c+T=?_3S}K9VsIcCo z^ki}~O=xJX^U51%bAhAVijj%3GpYUpGFI7){G~u^sgi=9JZl(-mA^{1 zQ)gFu`xQr^SGPWy&PjWLe(hROqgHGnAh5=3ohJakZT##lwE66_H{jUjGX!A^9c)(? Jp^F{t0^c=&fu#Td literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/aop/annotation/DataScope.class b/target/classes/com/huoran/iasf/common/aop/annotation/DataScope.class new file mode 100644 index 0000000000000000000000000000000000000000..5b6444e10e5fa6758a14a53241a32dcb6911506d GIT binary patch literal 449 zcmaixzfQw25XL_PZJpw(q;|pU*DKr4t2cx? literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/aop/annotation/LogAnnotation.class b/target/classes/com/huoran/iasf/common/aop/annotation/LogAnnotation.class new file mode 100644 index 0000000000000000000000000000000000000000..fc202dba09c6c11a92b659c09ce37ac0adcb481f GIT binary patch literal 281 zcmY*UyAHxI5c5$=c?%Fb8-j%lurVPaCL{*F;HcV?s!dRv@^K7&03U@&77D`+_W5kz z>-~5F*kBl-7oZbI}&B+#P*zxR>jV7T9-&M89D-l?t{YThc$0^bM0B9OXI{*Lx literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/aop/annotation/NoRepeatSubmit.class b/target/classes/com/huoran/iasf/common/aop/annotation/NoRepeatSubmit.class new file mode 100644 index 0000000000000000000000000000000000000000..aebfdac2f9980a5621e99c9f6eaf48f844a43375 GIT binary patch literal 494 zcmaixO-}+b5Qg9KwTfRLcreCjJP^Iu3nx99fYC(2EUOn!Wiw#OZoAp-lJM6&_yhb= z#^K^(LgJz6yzMhH?K@xJAD;laIP!4lq2-}1P%$bdf%fIq(_Af-jFg$lu}ig?-3m1C zjImBRZB37+Dvz8%b(L`=P#@bo4e4G-oZlK+pAu4ToKIryu2;1Lj{V#?9n-7M^dzF9 zSSE0~)=&L*k%3BQI+MpjijCum+n`xgM!~6?oJO3ch zHqzmeLC=2~29JZjKsU6pe9vvFjMOTdO4hM8QrSeVz5TBT0*%7a(PT~`n|D?mttA%5 wbOZ!SyvjT&QQ`TZ%BseyoWbL(Ee=cAMxFN)j&}HZ_YH!uhkYEZ6rq9U4=HJl`Tzg` literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/aop/aspect/DataScopeAspect.class b/target/classes/com/huoran/iasf/common/aop/aspect/DataScopeAspect.class new file mode 100644 index 0000000000000000000000000000000000000000..543847a75547b1f130f0b5da7340e3c42b10d6eb GIT binary patch literal 6171 zcmbtY2Y4Ih8GcWebhdohjuQxCCd5e{6MP|zLKH%5$26w46D%hXXzQM(vwg9ACv>NP zA+#aTNhfqc_n>spmQd;p3WS!@meRfV-g_@b-~Ydpbh2!dr#!Z9{P)fG8~=Cr$PD3Ue<`0f;S3*Z)(J?xJ|{IRlFsEq)_@+yiLX1>#;R~ z<#R-3fdY_o(=o ziWvn>uIaj#W2eo+ZYyIdSks?zru2!TQ!s4ZGTbrU^&jb5JTITFqE0DD4i#437d`1t<3JGIkqR>qdD|A2MC1Sjd>RC_zS;1MbjHb>UGkoq7iCLJ+Z@aGdWxQc zRsBw3JYdb{tUNu?=)O)M|$RB+NlgbG>)OmD);ZZitTl?akD_OdUx6txk#H^e1f89<@A2b6`)6RJS$K|qV;7-6VD4LdC?k@wsmwD15Wbe zs#9hx>e)03v@45dVfxa7kC2 z!OiE2uAX6T@nB~y*)Md-s9zFdr)zN^P$EnCg^dc9EdYt2AXmNU5+X7JX^BM;D|^z+ z1`$j6l6|U?r(@rozf`>Xaz9$)X5nZ_as~5gTg%St*p!h-%T41V zO9)(2u6Dm&c8d5uRUavL)(+Wj+`K4?G0}ytatf2W%U)zU9?MYgai;QAYI`XS=VQHw zXQNkxj+b|<1Z@ys^M?grsD4!{(-}6 zgc|;dhZUSTkGA>u>MB6|0_N^r!6>LZmj7(gY*b?4nq#V>O!niRVxho@ilFpyPdc_e z=(Q61QaQ66=aVaHD_t7u7E_>D=(ES1?&*@ul|fIb5;;dpZx@5d?2?fUwa3ZjxS=r) z+qoBVvr{d%cPcOT-ekC8Rp?TpJ49XU8dfsLsy^nt*eEF`$9yu4DUOXLSEULT5?6Kq zVJd-t;oky{P;U$R=IYDEDE%Kw_e|0FmsN=wE85adeOtlIS{cI=Bk0mfu2-qywliks z*b@|-A9iC7Az`?xWKjHxHR1yt95MLBJ;&dBPN_095K^Y395v&^tYB@}ni|S*hLk6b zxKAdq`7bv{!=4^6yvzjqM_ATeo-t4-)Qp_vv5#gksk#c|bcM-zMQuPh3%JZ=kU?3P_bDeA*A%s(V5mI|PTHTxp04zWWplz0ppXR|MBIQ_ocbIm zB(l-%&Hk=_R2@42t0YsZlF?*N8`*4EE~nt!*=>pU)qOj|mnk`i^OcYru50>lSB-;P zhex`4dbVyK99D2%&8%^Ba#%E}+BxMYc|}sLngiK65=?v#c3_IlYRMLAJ}c*mfC!h%DaUp_L%gvyZSETG8cFwT-PSwO)!)D1 zgy2tf8cVS}gE8jjl|>`xs(4((6G}uwLCiQd4@#X9Rd8BmH?-{C&ZMdL%i)s4kuhdu zJf}cF8u>a{x>J=nrS?0{WRVbPeYR~DdUA%#FBJ+N4F@KW=Z{%it9yOl;8*w4;6l@}ML^7W)@3}UcacziE2^fX_jb!iQuiHfrPn*$; zIw@%*B}PaP?>K!1k&3v4Ts<2xoFhdZ=TikDg`F4SS(LPeyfKA0kT?lFeZHQH2_at# z$VYdT8>z3JM7MO@gSr_+2Y8OHIfQrwgJ&FsdK!>=hM&>7IS3C7!s3CIS1eL1;JksGZWVc{YLMEPXC3S>4_Tmx@5t=R@)BHs#cRBS8 z5%@h=itX4zs4u0QWu)@yFDuhuR;J%c`pZdmGUAV8g^DXwJO_`VQ=FDOj&`0^Jhv3B zK>`&KFG`dof-^vFVe38ypJ@kCrZC0rvVqoEW_iC+)0jJvlvt zQ(8|=MrW|>2$mD$m=KbTAHr!7%wWZ($r$5xE1K>_+s?bO@&HynAYgySVYG{At*#31 zU9`fF#VR!L`U-vr9w80}{lAtBdzil05ud&E>w1ji28sC=THk|3cs}Xk!jCfM`y{@i zr1oJ{V%`J~8D#1CQcS|c81*gVvvFRX{{VdW;9LLz literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/aop/aspect/NoRepeatSubmitAop.class b/target/classes/com/huoran/iasf/common/aop/aspect/NoRepeatSubmitAop.class new file mode 100644 index 0000000000000000000000000000000000000000..ed4c3b671fd2a29564a9193c3487ec52466f50e7 GIT binary patch literal 5081 zcmbVQd3Y4%8UKBoO=hzh0|Z1C1;IkhE+nH|wE-<81Vc`m1TfGxoopt_B%7UeW|o9r zimk;;QK{BeYinz%y(>})35ZzfX>aX)*8<}6)TjUSzxvevzL`z32^&EE*qQHo-|szs z?=k!0|BgKeU=_|O7ziT|Nd;CRZbV8>ZV$tTBd2Z{Y3x!k7)Bw6Ei_2hO}!9niNXvvCd4I?kxg&WzlT{!D_3EBF<ddre-y`VtgsvRaIkp}Vc=&H>Z)RVvVJE1m2TNR|0U^mOm@ExpCI;s&jd z?5VTNvi3fR?Ej^YSM&k!%5MNG;-NRiTsnK%6F}P zBRLtIt<)wd0ap-D=;i>Gn%7`jTAyPjsfS0PReL);lh<$T<}=lo5-7bi^9vLwC%I8z z&E>g7;EGmPkM}p~DGy4FHw9l)@O35-<_QJgU@lPbO)nb1MNicX#f_AQb_JZzY&6_n zt80rc!R{J1Rb6tv4%v|RkS6W6OHZU}>Uv|yh^HmTve+WVV}&1&6|oBGZre&E44ac! zSw%%Ox~Q~t(fSE)Ws|KCr4JeW@&3B)Z34@EC;A}HcqBT#8w6#!G7F&NimqiEqT;Pq z+KwBWOc{f7Cj*;7R3S6dMRoVWin_;gLfoPK49ne}GPG)IfJihLX#(X_laxd<^OpzW z4JotLa2#4s!kMcoDnX)|Q!}NC6t*(wnz`Oe z)TtQ8Q57Q?6<9h|X3m+9HTpT>P`jk#>PeUAQgIB&6+Elr1fElI62}3l*n~5&NR`FxJC?LvJ`~*K$@iX~YgSRXA zxr$%lmyA0VzrsrjURLpI{6@iVRs0UWSMdk@kuW&-)X_8hPQJEx|CxjP&))yQ>0<}a z-t+LeJMTXG;QrGm9y@n(@9AUrz4pX`S4a2!``JAT{-om1_=|$Ss`wlJF0i;ZZMEph zj@I_Z#+tU4&D9+>P1P;!TiP}^H+9suu2{WB!9P^If`6(wjWY_)s(2MI5$w4$m%!`^ zMaK=oqB@Ngvuf&j(Zj&;YWGFTj=-u5F`usP5RMl^lvhtCMUC&eNlLc$+SZ_7ghM@s z%LMK)-OVn`E^FQ*<8SGOdy!3kFTespM(j;!w(M->bBX$i^g<2Ix?FhA6||We$;gux zwAPY<6qv)?&#RsSH&dmz$aqrm4NtHYh-U0_p@8mLA^Xabk5qc%cYh27cl7>vc)XVHsP4YS#{T6%H&L5 zTTIhtTD2{@+e=GM3b+ghR({v=#{xG_qhnSIn$p%&zFyt&8nH<(9+QtQR#JW+JXL`4 z50P0D0NYH*dEX?8*W@&JGm8=iSz2aJP`?EpnFl&HJn^(`)8|?nKQOlPdw}=0)>Jn) zZEO{|)~BEDsI-+tjr{)cg%a4G!`N9;WMt1;8I$WGSLMzRUAn8YIp-%9TXoyew#g2! zIc3=X=Me>5IE`ndPL4)=2D^1L!91Ts?&x&z%Mg?OoT;U%ZqQ{27Nm5WO%rWR=;S!U z$mKTaBhzlOPnI!l_9Pj$^|E2ta*8-D1L+-448QNM8>C#(OJw1Yc=q|6$w6UoR9RiS zv6!FQdHf3?4<)kE<0v58JMYaN1B`r*3;2GAcS^`Mk+XH2)$y$0dtU4)00WeAafJ(~C{l+SqKI1!F$OmNZuWIA4i1&UIktP59dYP(E00h5a)|+Iq#NGzn5&cxjxFMs<^qzg5^kL5XIZpup2O6R67XSbN literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/aop/aspect/RedisServiceAop.class b/target/classes/com/huoran/iasf/common/aop/aspect/RedisServiceAop.class new file mode 100644 index 0000000000000000000000000000000000000000..a8d3788cf4ce77080a5cde07640a0e07ce6fe28a GIT binary patch literal 9549 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 Ic16{H0S$23&j0`b literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/aop/aspect/SysLogAspect.class b/target/classes/com/huoran/iasf/common/aop/aspect/SysLogAspect.class new file mode 100644 index 0000000000000000000000000000000000000000..976c9380a4defbe1523551707b746df13f5269ba GIT binary patch literal 5151 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 U`{~B;F;|P>lhBOXTb}}d0S=rtmH+?% literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/config/MyBatisPlusConfig.class b/target/classes/com/huoran/iasf/common/config/MyBatisPlusConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..ef97f4b11d4179eb02a93216ea200732fa1169f5 GIT binary patch literal 891 zcmb_aO>Yx15PjZ!5<(gRNn5_TB~)M`Aud4((h3P_fr?g2RMMhhZ)a!-t)Y%zkUDw6~H~*XrY0P1~yxWu+hY&;4e3DrGcvq^#@8T z|B#_F98DRj+vY$rti?*p=S4P?c3;d=%JgD07wJ@372=a*)gLOya5tWtj2{-p3eA;p z3r=xnG&#Lc34gYn2(R33TDa{pGiK=LB2k*sMnBbF+PTcVu?#!IQOPzFCQ}Ed;MsB( zz&U}reD9@p1mP4C-0|Jtu@HTg=&9?;|KQquS!k~^IaN-P_QzTqUp7wCZ^yQl==Rhr7pJ9sB88^DT6?A-txr^#>EM^a+&L0&1;hP6WnGQ4uw^^rHkvrY z@F={-zs!%JmMz_zw2f=H&JbSnZ(f(78)WcQ=!CzR9m%<8=s4+jlt?MqU*;sfKa77? z?fEdk@o0*hsMB{1D*_98$hIir~SpCB1F8Z+v)C|dHR{|p5A%&*RQ_=xCxQOS=>mH z^r40EB${!f1Gn&zwtQ^ib`nX9kY4dz8r+iHa&mhaUf32HqfIcJSE4BWh^?x4AU&7i`&8CbTaLe@q`Os8 zydu8!)Kh2E^8$xg11|)uD&Z6~qGK?Yl(!>PAca3M6uZ301MV1~^<~TP{)t+*!974^ zn2LowF(Zm_Nct$G*CA*2a6rz&rwlD-GYs|v*A*&L=Dsf|Co`v_J!n8F9-S)zFFeih z9g}ej4~);AoCvnP;u6;x3WOqm1Itx6kQK2eeMtp!&vm`PB-PYMTv914fp|uFZA^8h z1$W75a>c8vf|!-2@D5ea*b~0X85WM--9GG2qbi*HuCCdPDZhHD9R!j5we0e8m1=xE z7Ihym!t)Rm0o;sVXi7A)tj>eXRNWIc&Y_jEHlJ1iievMR5-FQPl@(D_xe0N{()^{18|P7WoP8edVAc(oiv-Z9)wowCzdC^D=b!z_~WLkThGifHQNGq_&?#<;|# zV(5*rb(NG?*|!Ut^h12BjRfW>_d*@tXOCL@@6_oi^)^;6h&_K@2HOlj{%5MkxI1MM z8O}7=uIUz1=NnsbCoNlswk;8ud^5}*QD-LwJLuztnWy%g_p)-AT3tT@oAai7wlh=j ziWL7g;Rb3iACwvLskkYpj+sqVD7Q;Wl;kspv-?cU$q!o_@#xwy?+=P#xy~j!?bKX) z>(`LQYMJgfI)mmSw83zJZYbuf5q9h7gf8i?`XaK0p8DK~Df2%ZZM=;$bobN0CNTZA zpyzqg92yyoEyK^jelf2v(6iMT&tZUMJDh+waFI0N65gbnqh9<6jR_k03pC}@zoGfj zb0l7%rH0mZQY}*3jM~0FQbTfaw1$qCu+w_1!OqdxS=T#j=+b)kPiRZm(4*zvQ0~j6 zeAs3V%#mdgDf-ZiU;}CTo{X7|42NVJ z8{xF}GHotFpPefdp(a{)n-Je4U)RV>7ZQKsmW7msq3(_j43n*e(IOCV7^5_e%^0O; p6FJe=e$sVN-+v5NAovf+cAft3(!Y;pU8S4#Aliv+7K^Rze*@-Bp~(OM literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/config/MyThreadConfig.class b/target/classes/com/huoran/iasf/common/config/MyThreadConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..30dbabf59b9f23dfc23ce2a5dbb5598288f518f3 GIT binary patch literal 1231 zcmb7D>rN9v6#k}#u3akEdO^9URA{-aiN-%QCQu+^Dj;AJeonX3GO(S|*n(>C)$@G!(!RjO>aNehAU6pxT0L{j*g8l)}$?T{RF@t^# zFw9)CE(e7SW--T*?;1f}ITW?!K>LSO+KPA+3kUNVEMSr0Vb_p9e_n2>s!g<|1L+?# z^qoVQb)|$U1w0HzXvKRB^Z(OahQXGMfUAbLSv?Sb#4z4n8FlX!%^riZvs&8RSlMBi zykG)4RO;14*IZ{)M9t6EM4iV$)GmCD`!rls=k(vFtHYxM-sjiXpZ`NfclTLeUdAF8 z#qOMQsxIJc3;Wwdtz8t2^fRt%fiT5Fg|2aiF1mdZV0O4@9VFzDWn_D2PryF5+(Wdc zTAM={rteIffDvQ~FlTP*+p literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/config/NonStaticResourceHttpRequestConfig.class b/target/classes/com/huoran/iasf/common/config/NonStaticResourceHttpRequestConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..2c0c12b0548a78d9c2713fb36830a3d29455fe15 GIT binary patch literal 1143 zcmbtTTTc@~6#k|yT_}rSMG>!f;ZhLh#kU$`Z6uJCLfWRrCo?V6c5!#6&d!4TD}5qr zVtn>T8PBwZKtjaCYk>g`Of+E``Zry&#{)nI39R-IF5x$Ji=oSPdq%$A&W&1 zOAHgGMx*wAbG!0}AzwKVhk}Pfb$Q*IKy`}@Q)R7UE0k@DFp&(|7l8`wONR7Hp~;Xb z>wVHrR{|xgNz{_2AzC46@)g|{VN;mE-ABrd?FBKz>q=Wkyq9Pr6c0q);dGC*BB44# zmsho_TVaECO~yJgZMkJ_za~E>GPaZsnNVVrU1?AMGwiMmlK;eGX%0had5>JU^Q#XP zBllvVqD_~_eOF$`h)5o3^ML{z$pg(#0SVtT!+;FS{|L=6-U&jvCv1;lcGyfspiar1 zmQZJQr0wbbJ>f!IX{Z~y`k=;5vZ7d5*S_IcVwkTb$_9~a25~?gE-9s5&xkFC)k}+v zDW25!xG#BGM}4iNvPB<0rWjuRFC#Pq)!piPy-{jxm)G4ud06(bf&$ILV6HB-f??xt zJh*1mk165klo6NbDnt1)uOrzyF9VZlINO5W_zQr#XQ=SsN!zuA?H^fa*F6`Ndn6E)JCZBJD{32wGZn6O zI<7U8pNYCy1~1YXHk|)Ail_%Za8>mVcWi0bx#AL;OgiDZEhbgEHVyn+ylRwz{{kZ= z{B7Mg?1%0gS8Y3yKcJ&}g}-~%OiB!l0pah3dOL{!!#-ozYf6W23To<5s51*RTn3|` znl8<0U-$x>{l;}YWh>#ic&~RQPgX1+cfze4(RI%}d1944Pf@oOKUY>m;^d_g+_%~d zZ%UoL6ZmlgsfOf7;+#RB^z8-iI`X1{OS2qV{;IMakld`iX2LBPVvzj2w>iIRLO+-$ zWMROBK@vFf%?7N^6a0YmLWijRaaF z1nLYhLPa@@)*j|D)MJGozzVro3*v=D3lfER3z8&K-*oN>$`MGSG$Dc4F|a}wJwq@7 zx3yPSfjcmY7K1SuzdXT0P5+XG?~wkAA2CcLaB|-7NKOXH6L1%!2yX**jG_y(El6LZ z7}`69K#z2Vk#^K&1*%R>VQ>#~lQ>~i3=fN9>IpMVM>0K#X6gwu%_7rW7bY4|z?9KU zlaWmEFq0L@^e~z!9%foZrll@Sv@8Krzh;`krna}Eb9RX@__K3%E0Ii(;R#0FoZUDs zRG4WEnbx~7(c%V7S8eEOhsgR+l7f9QNT2)nPwuHQemd|kxYeX orjF;<-tjGDDs^F^2OTiw^mt~qoP&APSscUy23S5kg=YYN0SJsQMF0Q* literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/config/SwaggerConfiguration.class b/target/classes/com/huoran/iasf/common/config/SwaggerConfiguration.class new file mode 100644 index 0000000000000000000000000000000000000000..37042769edf86cd5edc4bb7be8d47380f24cb25c GIT binary patch literal 2405 zcmbVOZBrXn6n>Vsgs^=ft!+UpXemuvn+r&>LO}xsio_BLO~q>4o6SvfVY3@|Hx&Mb z2s8Jb`*O~G?sHx?fBpN%p8!UXkDwca zAq=%+7#~H@gpmlka7SsQYWO&eyAgbXu?WU-FMd=^47g0mP5V@k>CFzzck z6UMBPb74GCa$XIehp-SrN<-T{X-RKVLvt*i)zC6+=Y@uIDQSs^)pAZa%RFb&N;G8~ z+{|)Es(F2}#Vbiy!$``o%dAwj9d0qn-2$U|*|tbn1zBX77ra;$&a^+PI^2`CHLl@| z;Rx=DCEiqvo?7EieqM_R>#y}|OfQ7sG0^G~y2oxKn_RxztZX}RpaZLA58{B$i< zEl-w3R=Sd~B`wPitO(lel!}c z2xnayf)Q+WnCv1MyXqKXRw}N#j(Tunm9KLRqi+l7Fk2Iixe4eU-uE1r%~&cPg{8A-l7g4g!6U2p#XDN5jym6D5Q%bUehOa*)FYXAK7vcAXF-sO_#RmK=I zRSlMG*Bcueq(7!3r?y+NLy18h2A(T8H#7{Nz8*E4R|(2YZWY;LZdDi_RZpX5xfQAE zZ?8a?H!BqA_RQnt+}zC4vtgAkr!uB=8IGOOL^Z6Z#~2-|(*M_8+FW7!WF(Jk2!7i- z(4HvZ8Q;=&>OrR`-fhImZk{ZO@2b=gA8;#AxwqqiI$1}KyCThvHC`m9M`NkIaAiEz zG{@sXh1+(~6gwSQ8L_k@^3tGIO9&SY?#K(*aAZY&?lg3I z!YR9pg-no@j~tV}HtWREMMSJ(@9+8p+n1ThM+dr3qJQZ1Wd; z&`Y`=96%pA0qGy$8l6(cCEpn^@CHpQuh6`O7IM>CLt71@X!teSYlyr?M-6%nXMQ7# z!24B%Nbf@jdF&*Am&jue`boP^|9$&z9jM>hPv;e;>%I?at)wdioIGkId*9&f$`;N= z&)3iyjn;4>da;IgqL*s8T*H;aSI5zgoAe{)7B1jJT)}N(BtZ|4@4LFUesvRK{-tpO V2;#7XEJ2naOOU08#1m)+*nfwI%Nzgz literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/config/WebMvcConfigurer.class b/target/classes/com/huoran/iasf/common/config/WebMvcConfigurer.class new file mode 100644 index 0000000000000000000000000000000000000000..6ff5de0248ea0cea62a3695494f1a0b39455f66e GIT binary patch literal 8654 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/exception/BusinessException.class b/target/classes/com/huoran/iasf/common/exception/BusinessException.class new file mode 100644 index 0000000000000000000000000000000000000000..f7344a3931f7286b5a5461dbdaa86159aa19b47e GIT binary patch literal 760 zcmbVK%}N4M6#lM`nv>%e9narqQDxI2?<9~dhRR3=$uYxGt^R*XV`i$@Rj#}Uoq_bP#b81< z%U#bFlfLj()X#@TFjktOxm>RkYGTy-^y?_HpFLKt3fc_mTD{NEsx7Da{Yyk>>s$t7 zZ+Izu;mAPxWXrtrLf@8WD)L`laIk+X?nD6@WD8hFk>OzJLo9GG>_jYlBHR)0g>Il6 z`F$dG>HQ7*6&O;H3{`2Wb6BC6r;bx*lrxPdum>tqFezr^VFjyH7iJ5T*QjHWQHnpo zFGxKmz}6pNizFg&n{tY>*&uLZ?-?w~P>LCz0lSB_ AkpKVy literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/exception/EncryptRequestException.class b/target/classes/com/huoran/iasf/common/exception/EncryptRequestException.class new file mode 100644 index 0000000000000000000000000000000000000000..e9fc028ff737bc0c4e0ea595c3613d7b7c5c9cfd GIT binary patch literal 460 zcmbVIJx{|h5PeQV0%=N15e$fhjSq<|42YsGs7wK&7Ik-1lN!Z#aU29ciwTK=AHa`7 zT=*Oi3uo!>-n-MgC%?QtJp(wvYJ>(lAyz_k8G>V}rRy`SZKv1#mL~<*c`|ZV>b$oz zX7EqUR4}wtsl|DvCc<9wNkL3EH5o6)+{zk%lD?bClHn-Lj7nyev0NvTmsbg4WppC$ zGBJ0Ox`EE@{oD=3O(jY<_~LsE4OQl~{4YBUoipKPW_rObSHcNPr=pRmY$i@+?P>E5 z)%{v4hK~h?!~a@i*!ZzDthAF#eEY^0Jo?u<7(Kc~I3U!g>QN1L_a4C>sPhm~j^5dr f_F7mZy#BF;C7RR`poy52TGW&4CKZNd${yNpBT;rq literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/exception/NotFoundException.class b/target/classes/com/huoran/iasf/common/exception/NotFoundException.class new file mode 100644 index 0000000000000000000000000000000000000000..c29507c3be535de22c543d05091b7464e35404ba GIT binary patch literal 760 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 Z#zzD~AmxD|l(q-~nSDg!$RC}L!591eJP!Z> literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/exception/handler/RestExceptionHandler.class b/target/classes/com/huoran/iasf/common/exception/handler/RestExceptionHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..1ba5e68042ae16bbe6716def9c394088fafd2554 GIT binary patch literal 8732 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/filter/XSSFilter.class b/target/classes/com/huoran/iasf/common/filter/XSSFilter.class new file mode 100644 index 0000000000000000000000000000000000000000..0e6699762659c9c483d791472cc3779c3e82c352 GIT binary patch literal 2236 zcmah~+g95~6y4*Sj4==((7H*Xw7Fm|QJ{gghNekq($JVoF@c0jQ(+Ib5+fN&rtm5B z2m0KXWTjoJD^Gdo7xgKtdnDsxWf5L9GiT1(=gdBPM*qC~^KSsRV5HE6ISt>pBZB)$ zJV@aOJWOI(+=b!`qG8 zD~4(Lr6(O3I0}UGR6MVyKjbG2NoE|mzb-I)9+|G&67Lth?ijV2bjWX%C<50*2Y5ei za8CB0?2sqbVAT-4YFK5x;5nvMCYl!P-V+cTtk7`EHw6Yl;LW3)U@AX$Z160<28#jU zq`;++<7qxAgo0-jUo03kUv!kZhBXajN-MEdj(x=D7wo!Il#HWNJDYO5p-v=_S*cr| zxhL05*Q9puT9)k@zET9Pgi;&LO?_SN1ci`?)UL1JMQTZ)?a+0D9f9_`Q(ZPZ3e2Ly zBKipP8}5-+EYxc?+wo*6%6lpVM)S5)*4>&Sc2{ZgSKE2Pd*Vp_RL&)*Q=R1(s`DI#ljnlB_pW@1K&!c-$>yWb z0u{(xpw~w?ZGC>}lw(_2dcottWW!lsAfanCQE-fpyn^^cX%ZLtP58!c^l_dJ9MF%CxDxmn8AScyDc_&A zaA3b5*iSGO5Cp2(C%DA#Wm;7gpJITsxH7BFL3|eAiklqUXmiKkVt@1vBDq*5_8L)v zTs%6R=!s?GFA@I@9X$zuc8o-9I?=in4$?;4wqxrk)BvGG&Ngf=mFvh}CEUlL;_TzJm;0ui78XjR7>s)PP z6ct(=O!%kXV(HtQ4bfNQPKy3lkmOjwRmR1L^bFS-9VgxvvcyQJ!!~(xi8w|=lx-Y0 zd=_1HO3^YwYd2!=Frr~n!?VYZZ*hAA-{B4+@6O}if8ne^8H&g4=9*B?_*y`op=wm)!75kM+Oacf+hg!5VJOr>z_k`+&Yz&f z{0w!Qdn8OFsz2q5HwCdnm`NhE&X6b+D-4;%t(s^V8HL)#B-v6g5kI;ix*;zaT&b7o z#x}L0EuXwzmD&g@lVPmT;bF_yUAFz+zh^BAp3Sy*VdSWIO1~1dRZT2O%hSYBlbo{a zLM1JRwII?m+~_vyqU_-oraYvP@!+E0!vK62(;m*^9Bt3>mnT2NFmBWCwHq&4&!#e* z*hOq6!#H%uo9X+&6q|ovRlw$FAL-JG*k3com|e+1&}80 z$kRvP06aK2MW+SQ3DVipdGaxh3T1xE56vLuJeN1@1Jh_pRfNaBXh zX$R@Il#B8(JChjyHdz*+zw{N(HzYsNxfl3-2iWVz#K6N8lO)f1`YzxiNn2@|v_*0f z`!PQBU^p=b!=?YY`SH-3moXAof45UD!1nX;xpT402R+A_4~8okr6MgKebxYRJJ!J% T#{}sluHqU_)5+3iCqchIu)9RA literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/filter/XssHttpServletRequestWrapper.class b/target/classes/com/huoran/iasf/common/filter/XssHttpServletRequestWrapper.class new file mode 100644 index 0000000000000000000000000000000000000000..3c4a29a39301119bd1146333f44e44159362fb14 GIT binary patch literal 6745 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/job/task/TestTask.class b/target/classes/com/huoran/iasf/common/job/task/TestTask.class new file mode 100644 index 0000000000000000000000000000000000000000..c55dac20070296abdf5d706f8347b8b3a4ee41a3 GIT binary patch literal 820 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/shiro/CustomHashedCredentialsMatcher.class b/target/classes/com/huoran/iasf/common/shiro/CustomHashedCredentialsMatcher.class new file mode 100644 index 0000000000000000000000000000000000000000..84c6a07c858f7657d51951fa484784ef9b1d2e5c GIT binary patch literal 1772 zcmb7FZEqVz5PsHna*2IuN@!Xdpu98`=gmh+0;O&XX-a9qDNzlP=(qKGZEthFweI%P z1jHYKztAs8D5W4FKJ%Lp;<>XGMUH_~*6qveJTtS;%&ht53!PO$hu$*q*PgkqyuvWx6J}BZtTr1%tTz61)a6`a}R8z-y8Uj~pzUg|M#6&Xm zw2WI`tfD>bEAL^dQtxl70v8`9q19crqhs9&)J7N@E3GzREU;2DQQM1qkq+CfNOsi| z6YYAw39Z_4fopWp-7#9jTVy z7nrF%mV43*WZ3rVHVuJlYcJ+uM+S)^Y-}%G2+Yra*S}3ABdW5i4l2FOU**XE_X6WL zbg1nufqZ#kN1(82ngmbRbf_LA-39}dq$&;3_%hg$kxusmVZnAZxx0BH0Zd5OgkIdy zk?}T@*qZJ=8Fy53lfft^K?d=bw0=iL40)z$hUEf}%Gv#8Pf}}ONhY@Ad*rf{+VHd7 zWkgm_r+Ytand-tLl4Mi*1(r{T>-!)(ng#@xPKV0836!Mot2oYV2u#(j^mn&pFQbs9 zFK~8C*^X&$%e3sQipXfOZj#7XcXdkr<^LwIlGcukisDT%)0ml8!m2R)4?4VpW?2A&s^NYeFvYr_yThR)!|lqflLcrPkU@cM*X9z z@anqT3)FBqs7PS(U%(^ELBMS*yUj-Obx#HY=gJGmTI|clW93^G-ni`bRM=$qmyaC} zI`BB6FB*_V;Dj}O(Xi>G?wubdYSf#=2-LogEi*nlDgsvOr4zTVD?f>}J^0${AT1T% zw4P))V$<`UCjfE()Ej6q{5Stkhk*sAZ4!&O_!ytzi=E?-B?N(&xGQou!};axgtaq} zmpGs2cOk|rRN<40IgYPV&EqUMk1alf_$kA^#&J9o&f;~h-M#`Y;SKH>CcWn}@Q=u& zK-v1zbL0g6K>oqv&nWzcv2UJXoJ;2r6D#}Yz+Zz+{f< Npkf;LBF7w-{sGZC@_YaQ literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/shiro/CustomRealm.class b/target/classes/com/huoran/iasf/common/shiro/CustomRealm.class new file mode 100644 index 0000000000000000000000000000000000000000..7482ee9ece580152ba23f19ec246b334f0b8ee43 GIT binary patch literal 3500 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/Base64Util.class b/target/classes/com/huoran/iasf/common/utils/Base64Util.class new file mode 100644 index 0000000000000000000000000000000000000000..281635c5850654bf5fadfc01a24ef6fd5ce66db4 GIT binary patch literal 795 zcma)4%Wl&^6g`u~c4G`l8z|*bXnC}87R;vVrieultinSoL_%GSooO;vGEd}K5qJ2fnLTNHA4=Oe{?#MhJggkrVXIT9y=4~6dYeP@;K@1+NA>c}Sjp7Ngt zhWORzTpl}RbP?eRL;a0(1JipitQbirEv*wueL->1POkz9vQsCiv*h{WeKWSXe69SM zwaaCndG-WLs7832U<-9(TihtYHk!UEW!U~t73N^xWk)i142?_VKNm7=8QbULSmXma z)3hK@67o!GVNYk;G9*)3r`uCHmEa-`nRC+iXCca%T1&QUo-un4^V7jS|#+_?&PjfxC+$(C^MH)?UBwg3PC literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/Constant.class b/target/classes/com/huoran/iasf/common/utils/Constant.class new file mode 100644 index 0000000000000000000000000000000000000000..0711f6c5107f8310e8f696a4d817f10f92fa2205 GIT binary patch literal 1758 zcma)6U31$+6up}-JH}1Yq-j$qUujE|Kr0Fb3Jooav}r_S$(3Y7C?FI^P1M>FmF+P7 zSqu*_Jn+T~KZ@bpm7QopA3B*i$LHSNyH|Vm=AVE6{ELY0P+X%6WY$R1_AD*YLxvp& zi{WdAT?U(>!Qe2s3{8ed3?75e5HPeD+7xLnHKMdSm=?Gf1pGL=#){W9b z%^&1RdU#LJIU`H^gD4%eqwX-S(w?CCrt}(??^~|phr4pGO5X{pwS4JWW}zRWHfu+3 z$RhH+pjpqgf@ z-*9oLZe!*7Qov~Wf!h#txfC;HGYECZ42>Pj#)r(G$qBk}CV~#_Z4}nMz`_@V&DNG} z`Dj$o@;JtKQ;M$yveC5lK#sq|w0wQb<}H`brld2xRK(}l-KQ74$ z)N%B-^-vGsY}k-aD{Nc7g(C#520Jo5o3;2ZgVROJ((_y|G+ZZu*L>qmJ=m#IBxq(c zNt3~SL6d9iZ9!8;b`ay9>?DnyVQ)XqgJ{2t$fBKfqHa6N6V{{P)Zi%T3%X%&ByX)4dn{=Uv=8 zE~~?zJ`3r``Ei_MHnlj98_wl=4ET9MU6;ze7dv3xzsgs6}p6s7AMF0l!zMLf2>x4lH9lu3$Q@ nVmLN18@DkUcQFMI@cy^acmulvGU+kYK2$<3Ds7?01R4JUDNbKy literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/DateUtils.class b/target/classes/com/huoran/iasf/common/utils/DateUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..49115a26754596bbf72ebd5ac1bbe23e6ad5af7c GIT binary patch literal 873 zcma)4TW=CU6#foNSxSLYDk@l&YOR3QeK9_?#-wR!YQnaSAc;@Szz${WUdS>S{a5wH zCYt!@gFni6W+B>0AKXpOoXdA^-^|ZnU%vx*j(P?u+&59pAc1u)9+-G&VuP@jjFkvfS9lYd#v{U#&YfkYu}Mh1 zbOTqtA{e!Lmyp~G9Z6Vjxq&>I_&phQM9*VSu@&}(*Ap?QjzH z<$vI!T6#s2sS;F=~c%wjhNz$eX|cNZ1fiE^J4vBDDm_y-&V;knsMg`R^mYH*e>2!;9URR(+ zeP=#1pxa$yAWe-gW+g?sTiAw_CzKUV%E&1Q#FADfoXT6aFvEt(9SBp-SY|ly80lO% znh{2Nw_Gy8DLLI7bTtZ=`(LEsMNObrL8UHzC|DA+?4hv8ieyTk2$BoSt#G@ONxNWrmdQQM^&|!dZ9PZm6-hVW>VzYb2je2^CdML?zPRqBtifHv78%{q zZ5n%w-2WgCltkQWS!rF!c;z|ARxo|iy$XFKYkP3e1E%IpSb00Cw;7V{S~rf%SxDXz z4NV9sSoF&5N$P9Xf+fvmoNOpFk}{Gh!xSMN)R2Lx!9teESFc^8;Uk!&e|J|~(>e{d z+|0pIFehu}oQ%kkm@UP^J9;t|O44|0t8he{WgiyypoTmSDG0s{cdLFtTe8e@%#Js?xmvtXmfDY z@xIW@)`4UGlH+|%{f&L0Kw}{ASlNGcWpMTJV^5C}ICxezCtd@Y1*Y_}$jXW4UyK z*K(I-6O@;VmXxqL@e=aUc3BEmO&0W(zCHBOW?LBr(MisiJkN<%{A#qX*}X_d9b-Rt z#pf46j1-&KGn*SFgEI3(exf#2BAaE`RM0dD^wPFd#6Ix?*nCvSdR({}{ud2tQN=j% z+z=a~?8~fNmOn&}+YP&Hkz|cMhvY9&#{mViWDQ@qCUoM-2!{=s9dgnO(Thc>;LkDO z!8|O*GAMY9QW+{KFE5d+Df>(0X_Nycat-B%5_tyY#u9lBgiecl451{(^{sHyhV6j0j}yod;Ee*_>QAWCuunEnt6FnDs98Jf&Y=GnlKs1R6-x0&BCIar7FTrodvpbz<%#YUIROfT3=+>&DF0xl2dy5aDIrxVJi#)djbjH8UL|zvjXZ@S}`( zHVz~tE}Hv1=iYnz{qy++;1(wy4m})sIA$mq5lV(et38;Dh2UD486UYwnb{pftz(RJ z!YOOIaw-z-7(k%dM&#vN?LI?kYNJq4SRUCV3S>`dBCPu#fz%yGOq0aPo0Od4beI^Y zLiwU%HPJF-j~Omk77%}9`A|AZ7;9*q;zH}wQ^TW7*?=zflhKxlt zla4yCHrIVELmEF`zRPreukR1K4A+4T`CDQmVYm|Ulv5m9!xN`;%-1hxsAj@GPUbQo zsV=hA%Bh(gO-3r`=;i6d@&!^HMT$yk6vLy$7PbMh<+TD~cBm(ZUF?xPBX6H@6^SZp MI7r=BFo`-Ezdc%xH~;_u literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/ExcelImportHelper.class b/target/classes/com/huoran/iasf/common/utils/ExcelImportHelper.class new file mode 100644 index 0000000000000000000000000000000000000000..1149855e979bdf46e0eac3790adc46ce85b8998d GIT binary patch literal 5625 zcmbtYYj_mZ8Gg^~W%e@3hCsv-5Cnt}h$|M+ZV<~Qfxsqc0>PkFC!0yKus3#g1*(>+ z)Vr-(t592|Scn%YiWP`hwbp8DTYIy$wzkjHU;gPYfAs0&qowbencXajF3^UDGv7J$ z-OhKu^M2p#+y8m#6#$Fy_Yk7k8b%(L913zM25|$ng|QtwB=r?Z-6)5fLbw@U4Phs~ z7RD{OHGtdX$}SaOm-E|0h~N$tcZN`py8^gd#XTW3$fbKjn2fCDaAePY5#|&%Pt6N9FKcIebqJkICV2Iqa3g_vNrJj3@8| z75h~j5b!TaW|D=a0-nZsJp$ep*?vIB#&SJXH%&#~4Qe3HzXA?%M$H*t;++Fk* zhLV=Rh4Dl-9UUrW^F}6`G^~Lr=jm)FS}Y_}RMH<`v|j{-EUT zF;Yd__07f&Ml@w)2BY1Dd@?gg29eT#%z8|UpBi%px23m zm6JXWNUm*s7u{y|MbpJpA(=Dsg=j~KYD=cfmU&ejFR7OMWgr^jb|8}3X!|;OD7iv1 zo8dd}096Srv~`_{b%B5s?WCt9rL)dP=A52aDxOmDw2EhV87QAOjs6Whb%7QCOCapM z$&8D}lU9M-3J&J8#hl}u&rBOhCXX*Sl+DmtZ$EcWmd)8dC(Wh(YbV`6If30`KNY)@I+HN1}31e(Tx)OKb;1x#Jl-Q8BY za2kG!H>58=6PWlJmrlc*SV-`p_VIdUc2($IU7@$6%}$qP`Mj}1=DLQ}Xy-N3@D_fq z;TL$DXQknna`G$uTEiu{RN$h|0cn|SHWEaa7cIiRWtFi(#XA~)gWt-X{7zubSPh?@ zg&Ka3!y5j8cQyP`4u6uvdvf@*9Nw41U*zytyvy9u@B#iNaKTvZ)r$zPjvZJV*4OoI zHWR!})5jdq*g7IGqZ)?m8hDW3mp+wjkc4D z5sP;>m2o{@S(Q{SID0z3vAue!kZgpHs%}f3^+Xin+4A_Z&b7>ls_0kZr(Rj;N>k!l zw+tmyEwZPnr)}q0BmVL(Y-4XL3d9 zplQ(ZqN{_x^B+hnijCmn<7?B+VRj}z;pEnXbpb0eW6t;CvrJ}n`5;i;`84X#x zmhryKIaOMe3Rn%LWNNV$vP+;c|iE6uKC~mhpx3G-YL!LkS*H!IVklq+?gPHTcZ) zr-)2iS(}{(LgQ@BXv3j$y3%e#BwN>L_rci}PMZ=S+3IvIQh3#9L*p^}``OV|=A8qA zY?W~yKNO<;Z~?qvdya)1FXAl9r{L4qbQI!w5(>V+(Qhx-@jD0590pvB#he9Y=^z({ z#Y%Xfa;+$u4#4L<*fat~U%PNKM-WgT-vk9~awz84{l^gA13!6odByOF7p6^}(!W>Q@*JdLkL~Ol zel-D;;NvHg%Fm@*oJ~q6bq;1=3Yst#mth*dgmbZiD;%tAkTHe)Wfq7fE3 z<%U;NOA})FBLDly8Ac11FeK;T3hG(P2y)A~occgpgILBj1|HXAIVpv9uce)(^ll|N zrbAUv&_kb!R>42u6UH|WuY`ekrP+nS!Gn|@0Ty)H@uQ`I+ zJ(zkNkzTIW2^__Qj$t%)HXp&nVa%LgKgs6MkE5Z?aTYlOHphbJsJosKn8k4sy=~>w ziD8U8k=dX!H-bD|`F;kEdKQm;HV?j$^n4!tBF1DnqtMEjv@t4c=(mj7B1UR9{au5# z)Yw+0=s*8;kb~PtCneZ1GCJ!ROT~`Q6nIb2j7P!!%8(|vEjKdf|k7yEsS z)dp3j*i?Zhlos9Bz^t1_rhpzehI98|+AhCn@Vgv)m5IkOz4tI?9L0IB>VY>E&vDG8 z$yuFxppKGE>Nhd7OqX-G^fFdAj9TaQY#ON}>93G-=n5%kAr^6@IFnKlJrHn(W|YWL z8Ru23b{IAGODREs43}FpORq07^LI zs10WxtErTre+~}V5)L^k;ml(pTY?kmRY(tbMr}CcsDv|*1#JmVq(rb;54!kqezP8O z$vMq>*d^yS>zYe8HtRJmIj>o-b;+h?J>rt{oAo-ETrj_R1kDOI?o!3@r>{yh`t;%X z&oME*HVA#h)CMnafES>KDIa07Ph*nw~0mAC6?iK zu@-lU9^5SkaF4KXpST(Ki#zdv*o_Cpemo=&;Suo?c8j;MN4$qe#Xsep1(x3L>t|wc#~D zkFIyt=<9Un}*>Kh_DL=~QgwvKi-| zVDPHwbNEh!RkEBev%`0W>}BQB5~}%K$yuhWij=v=5WoqZePDdJfq#S5*jHI?(hR=B Lt0;ICC6)UxReoml literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/ExcelStyleUtil.class b/target/classes/com/huoran/iasf/common/utils/ExcelStyleUtil.class new file mode 100644 index 0000000000000000000000000000000000000000..8167a86d081c43b536a1181631449cc38c5de180 GIT binary patch literal 5075 zcmbtYi+dDT75~j{PBgeMaCGM<#>S7i9A3}2JssRW+JGeUhmfp6ehp`MfBd0~5@2`@I| zoA{Ot-jC z?zc*1M=v>}da+_O(C~zUminPoCN-KGlKteO{rrhkW;7-H`xP|L82Y4P=bZVXp>#J0-b9K<@vtx!cV@;0ewmxe( zhE26mu}{I;X~Q`hbX<35t}9e*(08$dRkUmdkW%siHzv4tJxWDWonx6oNz0Q3FdLKmT(xQTGw~QbYDL$z?de%Bihou!XSQDou zQJ2ACs>neF>m|s>>|9ZIymDc1r*AvB1D2g)QM##EzK!TMndO{Wns%$n&74Jo6g+sF zL0H62Z>*DgSX2qa;i0cr{wG9jiKV!fK_6> zW>yI*Hx`~WB8^r@%jS9Zr$)2fXB8*8o^rK>=a0|Zbg)nq+-#B!ozni2Ijdq9i~&=E zv|(}Mx?A!}#l0|8JcRpHJdBen_TytJJ|oltp-u^Pk5DNLsQ4^SD(Jb5?x^B(7?0xz zDqhA9<9J2IkMOFBALBI@Kf%Q~eyZXUex~AeyrH5C-70=A+rLopOZ+O1H&y%^Z>jhV zE~|K3hAT3>gUfMTRdEg1RouYMII6OESH*AfI~DKYeHFjQALz#ay!GtA-@6dUA65Jb ze^&7q`Se#@q+|1`hx2j#O~v2w4>shbWu~AvtVy~ZQFGJB*3zzPy)Nk{4Lk6TRb6+? zr1C;0?Fi2#H^>szt}w~z(xh?DnCzEpfbC%2U^aDfeE&V;BdKhEYKYf;PiS#0Vwby( zdG7AHDV0;uCUDJSk=1HU+g7FIsiHr5O%YsA7&u`Z(H-79rTqLHbFw8joJk*%r$}lr zJA8cTh}^!nA%O_j`ha}73ijT@jf*k3&xAFUafB_EM$PK1>Fr?<7TOG*Td)nb-auRE z>I^UP+ED`E6{e)mvg=Q$X#QxLkFs#l0S*dZM~l3jKFe{eSp~bp-4bM%IEqWWy^JwM zm#DRM-kS5g?tRXh(=+_8g;{gdvd#1CV|wv$(VQ;L@+rXDlzdEO73>R*_zJwVPv8V( z9SApWB^hGmo-oj(d>xs5BnH%Ip-7i85a&kXT(+-Ze>mP{9B!62Q`QMvpUWHP=)P#@ zn3$0Ca!{HB^Y#|$=id`s!_4+1i7ugr_&imxsWb2j$vHN!eHW4RF7KM!cJ5hTb?(fIj`JGIxEJ^F`^UK&;2hzc?7jh|yXOWXZ@Xvj=eQQ~ zOJ@h7*og%3Jit|(cN)Do$QAkUAP!ODCrHQmDB={6`PkCmN;{S-Rd5)6zS8@NN0i38uOfPxL#2ETr=lN#z^PqwwD@tr!Dsgc268XyTG4@lwcvmnsEtQyaC2sW&1TYTbsB1$E zX?&7`1Z^UMK~8BGaSEUEYD3WCD+S7)Cf}`KKU^9^2jB)3QH$18Nm(BG_G5=q2+bwAjW*lmm*}YKq(Z zylO-X##k(#hihrgccZU#-dEaFSDI|7DZPTV*RigO76Q0}^;NVkLefTN;4vb3oJgL) zR{l>&7oH3t>Zu{>sUh025+c4|eMF{@XiFVYB8X^16&n|!@M`TjqIjMtUcjArF@Ru8 z4Z)Tgg7%dV@X72WxWrikG0;=RCI!c6dRrAAa(zJJ!wW?F0=}CGM=^BP60# zY~fT7ob(>xC8poY49hEM$E(_ja zI7?Kv6Z}>M4@BFet#?(iErRwafqhiwjw-gxT!-dG@(P-873*=G&~CDIS6wIvJb5)J z+kGh1fzPwoNNsJ0&O~n@e+MQ|U~Nf7uW8^>@DTVJ{5T1N6(sF+8)x~KY~67aJ1@M0 S4bnW7KzrN3)fD$4nEoFXr}YZ} literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/GenUtils.class b/target/classes/com/huoran/iasf/common/utils/GenUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..4b8526777b38dd946d240285f2704fe354af3354 GIT binary patch literal 3802 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/JsonUtils.class b/target/classes/com/huoran/iasf/common/utils/JsonUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..ed7c09aa431b85ef42aa008a98cd1cc14647dc8e GIT binary patch literal 1257 zcmb7EYflqF6g|_HZd;az1qBfWM4;uh^7satAi+e^(ngTPPiDFuU`xA8cDIWE%0~i; zCjJ0_l<~~AlqQf6_QTGdlQZYud*<%`{rBq+fOV{Akj6|JDa>Y RhB;J9k9*{CT0KvwERvIWnU^+V}9dfx^U;fWIn zP0yFE<;dX3Vhs%@ZH7)guy&dMgN~TaI9B0al%kX?)Z}Mr)unrE?T5bO9&g-4 z@^`hP#kHW;wmmmgZm5gBAKG@mdV7A`^Hnq?W#6+^5O5N@4yAl0s|UVfv#+|%Y>&)+E^+Sm{GCtZYL+-F98*m3 z^Gow{6d2QvGD;w(4JOjh-5OWHwP*ek;yZ&F2Kdf!1s;%`#ULZIMIw^rE{!1!BOVEq z$&3^0|AE;21>(iUg$pFU5$RSMVHu;5(qxN`hj>H|&tZfShl4+aQ9S0UF`@|~PcY6X z9U~Pa>9m}HcG^`Eb=|2}+Mer#$p|0sDm#S9oU0*KL6!EFfL!c3YTM`~kM8bZw=&rNkmW-<`ef4xPQTnVBW> zW_zBwxy7ClDYTHx#yhkJNKM3zy0^fk&V}!ul?jhfyL7P-CoIJ;-)~h64sT#P}SG!TDw_O(G6J(sL5ADPX;$- zi>+2{2A&|O+t_}Wvg#1HjsN}c=yfkV5^1q6c}eyJDh6Y4Ki+zNF}qp=r} zy0~4F6lNgmIq*(8%z73AudOE1+gO&Z&K=o3mazqv%3clIk*5}YbE~->^*nF7gIB+x zy&#O)9nbH@!bc81#uW!Syzbx-h8*NEPs6`|*!t`Kw|{>3=%2gy{{88D3l#^SV8Ov6 zu2}fg!Bs3-_{_oQ#=DAT3)dX17~k@Ko2)oPlG|;&QoE(RgsN`hrX)4yD=?f|?XHVJ zX}>@M2V{Ildjcb+i9IdKHt8#wA|Ku6vTKAm3$oQxx-M|8wAX!a#O=|u*HyBt;#jVm zf^-w>R+J-A3+s0TMoH_%!+D;N+Q`fFWE7`E&XP;dBS3L_ngf2Oo1PhH4!8E&QKWR@ zuBxVNHNr?S;>k44S6T>IkqVTI6;AWNtpK*li5$b4)qd3OhNG7Df8@N)UYYKC^!?6pKM*$~O8hM;zZkaA%fw-sm3cQIk zbTSFGI)DY@SWhr&aE-W$0fYJ@1~*|F?7lR;JhGI3hlQuaen#GZ?BG!7rCR85C}0dl ng1nW+5GQb!LY5rHchVY5PfJ`gm_Ru-nZy)EDcLkW$eqvsUaO5! literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/OkHttpUtils$2.class b/target/classes/com/huoran/iasf/common/utils/OkHttpUtils$2.class new file mode 100644 index 0000000000000000000000000000000000000000..a3a2524b566f19a804461bcffabd8fb29e9fcaf0 GIT binary patch literal 1635 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 XS^hFVhd2IvM9Mptk&DZD7FYZdm_k=r literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/PasswordEncoder.class b/target/classes/com/huoran/iasf/common/utils/PasswordEncoder.class new file mode 100644 index 0000000000000000000000000000000000000000..b96b5d08211caa2833a41bcad772d9734897222c GIT binary patch literal 3292 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 A%m4rY literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/RSAUtil.class b/target/classes/com/huoran/iasf/common/utils/RSAUtil.class new file mode 100644 index 0000000000000000000000000000000000000000..2efad6234ddfe7e5231dd1d790a5b071cba09f70 GIT binary patch literal 2949 zcmb7`Yfltc7{~v^US@Y0E`qD9){52(i^|%nh@jPF1*I$(Sww+a9A*c0WZBuy&M36D zn#QC_o0^!IHcd=lnfSJSgQO;YfPSdb|Ct?ESP*TDXU^q0&-M45<)455ehuI>9!9VW zqY+%gn2byWK8(w_9>PQfH*ix7lVX^Ppcd0Iz7*eEGQNtSPF$emiHBBpgX==3*k}n3h^d7;0%Q!S$k9NI15U zFD1q@$?KfZWmzw1)^gF7(9$;DyE&-%bgzVfrfNA_tPu-;R<%_L;i5B}H?%>0Swd(* zU+!JDbsDZ+I&<a$(W9%>HUU4O7Xzx5O6Elk5(CX6f7Vw z;jjz*`${P;ElN1_A^0)>w8uOtD8N)u#McTel*E$ZHw%MR~xx#QV08+E?rlj!slWd!-UbUomo)+Co3|T(+G1%pmfBo}Q?o>9hcrG-UPm=k0ll`9~7(3fM;q|Udh`-arDgda_ zFP=vUyW0k;%nE}dcsXnK8wHgK3o#u71Le%zqX*1|T;38nvdv1rQ)`>|)aA_*#TqIZ zDEFX*uK$;UO6&IE00R7d0)Lib*o_uG@iDGy5X2t-+gn+G#MQoa>yLSZuM=819^j1x zzY@QJ_Lq?Ua#bAU7<4xq@CoNiSpbJ{n5!_3;3$>wa!r6v)N$|kW2>kcdIjI)@t5!q zHw9NAcl%@h6DtUH2V(vegjW&i4#tB1SYQQ8`|D2m73wBmqP{!i>kRukYol^Boc#kS z_uJ?^M^h}=9t}4-D`@DByzrLpsk;*k#Uj2~N&+fL4q9T=*wQnw0?^ookfWDr_jZ{F#Wti@AmR#8 z<1Admz`>9OEBzH#LLMv6JXV?oD?2x^65Ys3;61GLyEN>O@Epx9ES!EIEtGU|S=}C& zA^JSbERC>Cqb$%hMl;58WmuSTmgG8%af6wjBra22O+#myY|P*Rq4)tRejz|lktG6p z1((?hE;gIC3=Z%NS3F#v;i`wrZxvh~V}LdUE$vbaB10qOO?>pxLhGBSNUIJvc(%V@*ii$h{6B> literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/RandomUtil.class b/target/classes/com/huoran/iasf/common/utils/RandomUtil.class new file mode 100644 index 0000000000000000000000000000000000000000..26d5c7b31c61d9d9e572ee468645708d7cd02ef7 GIT binary patch literal 2400 zcma)8TT>fl7=AW~-6Y)-NE!-ltvy&tur%0KYyq)_iqHmnpr!VtU6KWsCcEioQ=y)< z^;{3PdgIg!o$*HLOt3QJc*MLPRkaJ#658vhjy~^XPw080q!ouPyQDc(3RjGI zp(FPjrr``o2&OZW5<){(L6;EE8Kyp7Eluh6d2OmlNg`+Ewc?~^8)EMXL(Z&Gk&wyd ztx|TjY7th}&??he?n{>G;;MMSE)XN*HqYqJF!2oE$K`hXi+m~vJ;MNm^0Lj zQ**+Y_bEmxX&9x`zSMI@#pxUMytu_UZrj>|D`twOn}`Hylz#@3EK;9P)_dToDM6Xl zDzjr+SwhmMFj5za%GuV`9J5Yd@u5CFHK*rAT_syW%4g>X(z>>W3*|-~kNOO}K>d$9 ze_S%afSV^AEq{Y}-8&&ONlFEz=rv|IraQA%;f!W$CEd|&qK@?Ei{6dLCU_5deb^B9 z8?P5u+|mKTDHYFPzlt<6DxOA%3L6y_4yr0Tk)iAL#FNmnD)N$0a7)GOm{+lY+bZ6` zn=0PI+X~)M@h;wD4OdN83e|ArvSHM8^cme&@xJi#0q&@{iw_liq~c?IB4MlRz(<_H zs!=QmgHQ1pZzC!epR2fsLkhl7@g=^ZG}bVDyfw&}jF6CXW>qL9I{_ryGF2yr$F>3l&G_gBY|#-d+P5R`v`Z6NgWV zu9XN_*2-nwq{ps}JoE3=unPb++{gSLfW|m=@%{nIKWYMg>fDOYFz={c$T{; z4&o3c!Z^b);@7f>z#@Vz9nCd_?$!|gnL^3usEuZaSIp9$S@R-fnkAI~u-ZYZ=g>n) z3?|(pa)o|>T1Mp35~5?vh;iOD9_$IFLY)txO1O_b`JH9S$n&O0(gEKxo2BzNs@8A5IudeKDa9sKlX(9GiRq%_TnKF{?F zEX@ehJd2~aj9%PCAHL!GJD&WA0rw8BvJ`2=segoJNb)5;%2f#Gk#kqFC=6};IEz(3 zPx)lydzS!k)kxmvjE2a1sUQv2LJ#7 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/SMSTemplate.class b/target/classes/com/huoran/iasf/common/utils/SMSTemplate.class new file mode 100644 index 0000000000000000000000000000000000000000..99fb3bbca7266a158b6127757bb53f42c71cfa53 GIT binary patch literal 634 zcmZ9}%}&BV5CGs={J}pI@&8|Mo-74wLOeCFz$Vg~-GX{*Dya%7t%2g%g9qcyi?84t zc<|r@_#pZg#!(@zJ${*)o!ObU&zDyK$iYq=mg2BXAR(&47OZUOR*h2vsl%3Y?I@n( zUnnB%H2sSMOezF^H+1~4?sz?S3|0s%a%yo#>(oBdg*Y~O(Jq)pItHr*=Jc9Xp@zi@ zy2VVRA6O%>bZC~DVb>{VrT@Wo0`tE?dQzZAQrQOfstL+%PRmSKTz+yBtEy&^l}@8m zY+*BIluTaj=T~&2O#72;6POS|uhVc#P0uBe#2r{}`^s}dcklcA1a=!iTe<879miLi zPWN0vw*z14g-x%kNcmX(w=nap_+H~k%F)O=P=r?cw78C6rY zw3;6{ol`X}li!b6i#Qi?HsZ`E0Rl0+GTsS>U>G%mioqy4F8Mn?E_nhyDR~N=kUWi^ Wk(@-&N=~8YB+p}40t-LA7ry`!z=DbZ literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/SendSMSUtils.class b/target/classes/com/huoran/iasf/common/utils/SendSMSUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..c85a399fed458b31f8258c2e6ffa04a72d081c8f GIT binary patch literal 3127 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/common/utils/fileUploadUtils.class b/target/classes/com/huoran/iasf/common/utils/fileUploadUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..b6a7035cbf005c32e38c4a47d4e8586745d4d2b2 GIT binary patch literal 3802 zcmbVP>30*?75_a;@{Gk`gRo6ZaKI!1TeguGA%jibVl0DO$#!FdODH5`Ymj9mjnIt1 zq-~luG)wm-NgLX9p-t&RT0&Ce05$3Qp{HN_AEcbqPyO1QLqmUWMzTe1P7l>NdhfnF z_ub`pmy!PR!L>yIVf@L@Wwr|4IO*q-_G2?L3bOKGD#%sg6!Ly3u-3pv!H?58BcIJl z>a2pN6nsj-r~O!mSwB95r~UBZvvPSx@;)b*&sX7DoKx`yd3er`=kbCRcu~O@rMX!Z zUsCa9Nq$AeS5PKKRh(DxT@~L`@tTV7tN4L} zA1e5ffIl;oN*fbrbA~0bAvUX@)l3INPbIUuUC0{(dsa&9by;aW zn+%QH`BXO9x02IOJ(YV?*_7Qc;Aw6-Ea2U5CaAF{mdY9I6{nSzr0rBr&)cDRiIUj#9bFlY(eKhD+ekTBC{Hun>KPbH50RS zal@W56JxrJ);98FtxX!XjP0PICycy6^!`z4SQkT0o@u9cDdQ`Dp=V zs*p-M(KM`ZZNPoh$F@^2$`VUi#fm5cx4C)6y;XDnxU^^!wJM{OKLt?%b?GKpnXxl=ZohCS%junQ3lF~l{zj-L_&r~k@YNy8KvTh~3R-YBIxG*GbE zN0zmecm)?V{0u*rhJHb;HT)8n2)Kqf@GA|Uz!43>u(eM`D*6wncvr*k@Oy#vj-B#3M0kgW26qn)MLP)pY%Zzc5BMXwyZ7ws2uH&` zf|AZZeXo6J!i_>>ujvbnYcgg6Ww{vpChrU}PvV)Ds~iW3rl5>KW+h z?g(=l2*35 znlOO$g1!Bq#b)>c3)4n*5HIwZN(Bh)?b#%4PW9>z>j$Fi!5y@zB8Jozc@AXQK z=5l25VkXZn0>`nD^dMb~^5y}o zVPrLwe1I`E()Dc^rQVNI^B98M+Zo|b^1I3J;klRmKJNYGMadf`9V2f9jiR)N*)e8!-F`^=$=3)o+N}*gyJR|MqP4yRZqd2Av5C<;r>Q%jo( z`Y)w+Fs=jKCFQn}Y@TX(K7gv=gb?-rqFk|Y3_g;LqawL97XIo451hM>%}ib6Tc}`< z2ObJ+na9>iNj3$xmB@z!kCezq1KXF$9VN0k&{86U0cOk9&=zPfk-@;u5*Z3~l*rCN zmn7xv5YFs~um-_|`Z+o3*hO2}Gp%@t(_{;0(pGjs6U*{pqWuUm1ZR$Y^ehuEFvEKl GNc{(m@u#Bz literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/CaptchaController.class b/target/classes/com/huoran/iasf/controller/CaptchaController.class new file mode 100644 index 0000000000000000000000000000000000000000..a52269059dd5379dac78af5284dd6719039f4a50 GIT binary patch literal 2593 zcmb7GSyL2O6#nik^e_%+a3Q#B+)$tsLtFqchzlxP07=wrm!8W^<4kwk-2-E`D&JF; zCm)i^L*7!Am&8g6gI4kb@;{>SPbB$n&xkXCBvQp)`kr&{ch33Fx%0>04}S;HjW5#J zjxht{X~Zy=#ygm3L@OqfJk@{YG^TLPz;p^{H{e~oXW)7YH&VE%ckie0K?)!0 zSR0TAX42RS%Rn{_g;{MdXCN;SFSt2@mSNY=nL%N;d(Iqob2;Vr3S@khwS!6J&)b#~ zI5cdzMKfP=ed(CC3}(%sa%4`_$WgCtqU3~jQBB){JyTEvj^lTc=f@!%<=(~l2^36f%g;rh;E`Q;rhE@3}aOOya&MZhLXHJH`?c{o^c(tnq6`J`l z^vod+IxPG^@E#pgy&A6|w5=5rwrgGF=|=2sIlt^)ZHPF@~d_PDj3R9 zaM!(2U{~bo!mL^Kz?_kRdgdeVOoXZ&3N%fI(z-Pwy(mzmfC1aUoPk@Ug}|l}73SUS zxb$UFh013P4-ON5upl)NYEl)L1D-wRDL=|4FG$YILP=-n$=8qm{O#V;AHMwS$GcCy zyDQLLA(W?MII9gWxc)73LCu&mwv(-~X6@<@hr~0fymCNbLh~5`%&D?FP7}%xhAh2^Cz)>n?j&V5k5_p2Jj^;0;8oBa3 zD+x2W6J)Rt`vvyuCQw7U0pAYuyWM(i#K5N+e1^|6*nyoasplm=HZ!Lz7Gce& zN@rn1)l&am=xmxRVqRP30$Yx>uhmixti-=ow`P+MR5;*dD* zId$=0$9oTrou=uYfavA49J;0*es`7H6#YK#X1yzE>+Wr_~s{0&^dMV^6JE-fc& yUxbpkw6y+;SARyEP8NF`$4atx)6x)kF%#p2 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/DeptController.class b/target/classes/com/huoran/iasf/controller/DeptController.class new file mode 100644 index 0000000000000000000000000000000000000000..a66f38ffc994f6ab62e13895b89c3af864e62939 GIT binary patch literal 4234 zcmb7H{dW}Q6@F$(vSBkoi~_NIh=7`p;Lf@uZ&G1;ALhV0I)Gqb_P z+SY=ViYVAtM39QDmG+z#+T(#VoVLIB?_f9ZKX`ij+?m<$g@%)pydQJld!KvnbMO1+ zKmVQo7l5t!B!*R(S&EfNwIK~F3Oj}-%(NmS8}8+_7s zm&N)OJUo`QJTq-fn65dQGIm;)?dhIrTdsmN!$d6O;bxOJZPG$-9m=?Ed5)b* z8IBKhS7}L$Q9Y3m^a=*L>JA!o!^>&oIafsbyXyoPkF;%RSf~w^ zQO=%Gpd3=LY~0i1GyC*R=tTQI!<)7f`*lZ88=m3Np{MKAg=Td-QyIq*d(6lfx;LJk zOq(9TG>U|ew<7qvjkuGeZwj^z+fGt*GmdE`r^NbE+nLdh8k5?jX(cKR?YCWzh%*%A zx#n3tm1RzvH6e?z#I!Z{sGdwR-epU!wlianW(>z?0?&06KD?Iy?9#%`6AL%rF1+`7 z{{7!8*zSYSGkSd5(A;U$u{AyGO&_aJM83S5H66pJudW?{R*EHtg9}BgSkv~ zF?5E-zzCWNKQ7vYOlfIj_0bX^%5cbx#ivYSX1LyfoybvnG-0GjE{17qmk&Wp=~hx3 z_ayg=qPfYl9rZ`qF~|bZ9n@4u{^X~3&i|o0$L*y|m0+lqatdPE48sxXXwxcJorMcu zGRT3(TmQaXc=KwJJ1a_hg9AdbI$efY*e$c4ke9Y&%_PUvPLqTWZ zcc0(B`dI+!_SHWYj=xoe)KULQ>Uq(HrhC)HCMRi28s0(2Apcr~=tImw2*mSuI}4wl z&0jhd0Lh;`cl+{{B9K%+hcn5(Dk+V2#-X@)03`>HCU@+H9Dg>q2evDfvpzol}%tEYo-#0!#Uiji#pNh9}GKycRcn7Ccyo*y&oL2E3 zcBt5h_f?$1SryOW0~NoQ`6CbO% zfQt&cYo8o_BM)W#RK6e3dZmQ|xz(@`-P* zsGE()4VOIJNXxZ2t5wsJm5n^7nr8MYX;3Sx;15}z!Dj)_ZEn;91#x%_y(CX6qA}e) z>5P}FF%+b?UveN#aUdtAdO|3Ce(=d^@*+JZuS4Evn2IRSUeGxzWEJ-iO@WaVKW{hj5d57kK+kK z=;B#=_Z7NXznnKS-5kW}UMlYKM^K!Fa~O(C#p3oB7vI1)OPf#8BGAtDR_fg5;%RJm z@eIDr-K9_@pnd%9=WiQt5Ih@hC~P%5Xhs6Em-`Wp%R@hxmHZ6C8uPzyM~r$Uw5tN? zl5flLJibE&p%>3nM7(%{|5%mL?<}GppnItBU{^yAcKeW{l4gOdux4tq#dvKN4Y52P;DILc@>@)rRD|r3?-*B$XNL5YHYIrdAflf&0nc zY94)&aSymRT+H6ShR{ZQXsTpuRL;0$go6Ed#rIG{e24FX??5HH4$vuKS3fyW#y3WM z5wSatgK@mXSaNk3%`PTfe9y)AT|DJ7jV~KGgu}HyydpL81K)>7q)2{9-9K`1KotHM l`XNjrPJjGK1PMQ^hL2)BC8xw=ze1Ck<~Nh;BmVl8{{iyhsLcQX literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/ExceptionController.class b/target/classes/com/huoran/iasf/controller/ExceptionController.class new file mode 100644 index 0000000000000000000000000000000000000000..05a098e004badbd6b4b1d16808a1b1b3c4f0c2c5 GIT binary patch literal 1071 zcmb7DO>Yx15Pi-^6VgE20HNip6zC^X%>f~#AVgJ)ij=mfX>x#*lQ@aX#tvR@Qt_`i zAvgeMeiUN7NfV?Z)ULF)XXee@=b71GzrTG4@C2(lOyN!zcc-z4dl@Wca6f|w3{%gQ zR_+Bua&5iFklHp)$uLt^TJA^Py0k~49+0O{HVqNfgjL=iIa98qLWalXhUxN7WUSC! ziLk{RMmuYQKw7?Y(vUr;jNTsmO7ww_(9J-OgA5yMHy2-^D%SXcYM6X9!x?H+1f{1FC=h9kZx$9UnxEN#DBN4Jf zYNC)Bm;WhdQlV2^zPi6vJ=#4ueDiMS6+^CKBHNI!mG9vExY(0UZ2FR4P??*gm-5IU z%P`$i0abLz-!_AXc`Rdv;py3_=yr|f@^m72Rf~vvV$~?KU*W(fUo4$l4r0Iw9PXaWK$kKX= zEKWP4J-zV->~kE>(K;17=P*s@{18C;xtp z#h9Zw#Em#S=Pc%kt3c>9)q}RH^ezzW8o95(2MbZe4S$xHj{`Sj=36n)>$?s70nBSF A%K!iX literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/PermissionController.class b/target/classes/com/huoran/iasf/controller/PermissionController.class new file mode 100644 index 0000000000000000000000000000000000000000..729aa56a30de91b174072d2fd36a0f9c5889b576 GIT binary patch literal 2871 zcmbVOYi|@)7=EU=Da*FdTEGe-AeXjWhPy}+ZOc*?w!39_Tjge*Zl~LU*_ma|Y|9c8 zH6|u}5HJxVia|sC;s>I}aM7qFCdQcfU4K9e{s&`x&g{T0y&&3j&zbi<@9muDJS9zAr6sL@x^bt1)?~r<%$zZ33Uk;px@_C=bdT|bf~B#O`nY~Z(;q0cq#>Mwn=$BF zx5uE+w(xlye(P7>$0r!X40;~G^^U$X9v zuAVa{9QTwqVGL`-rae-*(O$#r)AM=S(XDn|w+hVBqLt5E^O#oCEla_gnCWO@LeFMd zb@{M_)|EFC^zhG=-qiWeCof#% znFn}8?eSR<*)i7^bthkuS&KQ@GLmuwp6U5m1o=LB`_Ic4?_U4x?!|Wqq@Iz0GxsCv zQ_wJOxaMeazvJfm%@GCdZ8M57*h*eeOBF>Kole;t4Wd$|VD00%vbMbLGAbjaJUw%Y zkoXP6OQc|7pW%%;BmKGr(lcE4Qz+$k=YCUewzXVDxq&vxmR7Lqu^S<2oGuumq8Vy5 zZsxy55MH?eqOt4|{leuMPtS@lmf`6zoG%O?-faWbLSmM#)jgF^iX^t7E|!-+=kuh z`291lm)*s;I&-wm?I0sd+){pQtmLQ35`L;EsFM7``6)_uoR@O0=1l70xSW#4S>asU zaTCf{e5k@R9HlX6wt{20WWcbiD6w*^W)SK893^Sj(D4nbZlhYkE!2ETMP-oP6+s$; zAhMn%v|2;=wa1_ctV5f87HCHY7Z*}kPlF8t8?i~S%qncg7LLrTxXfQot3PDk^*2y^ z8+BE<1GSGr{SD0ff{XmS!=J2A+Aia-kH6P9{EXHOC9|5V`0zV~j(m;zHxd4^xk1Ld zfyR&UR)v}ljb(?%(#itqK=XyS&~zEelCoJUE6i)JA~1g@!8NX2$8myj0zY90 zzwxc|J1ti*(u&f-1vu~su@&2RNKN>K@wf4SchIT{p}(+Q#m?5njiDC)w-9SK312Rp es#t{_pZEJ}IV0|7gc6RO*u%9KDDU-g-S`j5{5c^2 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/RoleController.class b/target/classes/com/huoran/iasf/controller/RoleController.class new file mode 100644 index 0000000000000000000000000000000000000000..d67beb780ab307f857113edefeefbb2508b3b76f GIT binary patch literal 9731 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 V%MW4px7~3LaD^O~R2+2QehNyHVGIBO literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/RolePermissionController.class b/target/classes/com/huoran/iasf/controller/RolePermissionController.class new file mode 100644 index 0000000000000000000000000000000000000000..e21a9b45cf6131fac6b2a4ecf201421dceec6b99 GIT binary patch literal 1838 zcmbVMQIAta6#k~$ZKYdbL17n{U33N9U4&5qMIk0gLSj=Zp<5>9A=^T0rJXwkDSwHdKK$ z%3YOi{Yd7w3OFOMKi>!V2ttn=-GRZG3G_RST2Y6W6#)hIWzIVXf6Sl6ynC4(z0`Jakf^1qD>Xjk5#U6lODJ-6u-xS40)@&dfk*PYFXU;^^ zZbf)I=mO&xb+l~DODa?~9qBNx-G&wE>Y)iLSN-;?4d0Wix+se#C~s`~l6BEVRj<>L zJVu+U+F)PDr5Ax@9bFX&9L^al-Kwfo*uMU)IeD&bdIb|=;m_ZHYTtU;{`hw1gX`_v zcUs?l+xhWk=aZj1H@_1vxN_c|Zm`ZsqP5F_nd_wFJw4o_n* z5%**-xIK9V!eKw2@!t+pI6#MSE~e=)<8TnqIu<({hY1hzJfA~+#(e3A fyBi4{;a7qjd>dvkg1H{}JQlcjl9wAhxbZd+(+5m0e<_p}|@ompmPTNm$W z4Dl16RH89pFp?Mz7(!b~2%r5QrT8C+@i{Zwy|fE7n5KJf@B5zTecsENzyJN~E`aU$ zDvUaeRN+~SsyH4-1x7-6CyX#o$i+z&r>gNT-c#{@7^m?;2znSX#N}o}&O``faxosl zgdB|!&V+DQPLuLHrNUHUDF{2l8W#4X5f=)!MB`RUo5)zUZfb_^jA@R4qz&h#Iu+Cn zWlYydiBZEbVoA|snwG1(hGjYmc110FTyxU4VUCa4dP+=L_E{|^bkots^tfx;SxwI? zXgwL%nlfyWpxMejhH1Fn3M!ggMim76tOPNwjvA&I$fRPzKBn_F1+`Htt|v!z+mP$r zX3(85czx><58{^T+Ey|tZ0ST_e#HwTdLl7G4-eW_Cas{md5N;1pKewvcD5`zBv&cR z)H1G-bhIJbt00#OHZ2h>vO*!tqz^$ypX8vNRIqZ`)#GRT^|a>+BdUU6YWjscVI_{} zl0#S6^le93YNtd@iy3C3nAIbeB! z(#Bv~*j^;5R(1c|8*@MZ~Whx5w?OZFGpg!l`;}mMoVR5WZg+8 zGmaLwY{4HhVR#j#d5YT6B6Z$gMXYWdi2+qNdzyZ^7+p_KDGF3$;f=Ns%*tqy*C^R({A4ZVHd1ko`%k-afzkfgX z<8`*N2tLBc5wzlb1fSqj3f!N*GxyDvxobBc-1;Sg&+s|-{Bm5_`@%Eimy*B7+LdK= z+DJsuiwn}!mkOE}17gjTZS<^`LQ@%xoe^;|(XdpzxS1;mjSKgfDb~+zDQH>@Vd-1T20|Ev^1(RZKTgX^hFtL2ITt%l*bQ-$ zFT876Nx#*2J;Vn!!gj(sFq{F)9mpg(UsuMx7QR`*FRl#8oB7%^X*7WRdf?kt>a(B6nM-q1@yoKy_ajXyP9b@dfY#ws6HK z94{g0Dc|K7scAS)T*Esu%0{q*`fT|VV>nurjH^EA$W@v n`ziDGf=khYOELrj^n1Spo=yYJ3{vNamu5#X#IxbNjbr}-_zkHv literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/SiteController.class b/target/classes/com/huoran/iasf/controller/SiteController.class new file mode 100644 index 0000000000000000000000000000000000000000..ccc8ae9ae871f2c5bafca79d04ad7bd68404bf5a GIT binary patch literal 6458 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/SysColumnController.class b/target/classes/com/huoran/iasf/controller/SysColumnController.class new file mode 100644 index 0000000000000000000000000000000000000000..0144213861aa13ac393a85c8d12028ba5df89509 GIT binary patch literal 15145 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 VI$0k7BVEH7L}{G*tP@!O{{zrybZGzp literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/SysContentFileController.class b/target/classes/com/huoran/iasf/controller/SysContentFileController.class new file mode 100644 index 0000000000000000000000000000000000000000..8bf5df562ca577acf793b08928728ffd42ab231e GIT binary patch literal 4453 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 DX`F|! literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/SysFilesController.class b/target/classes/com/huoran/iasf/controller/SysFilesController.class new file mode 100644 index 0000000000000000000000000000000000000000..af24be227eb6203a34f1a9f8003bc4d888356e86 GIT binary patch literal 6840 zcmbtY349dQ8UMfCBs--vEj-J7;USQ-C;AhyR*#9Cd8{) z6;X@QL#ooMP_5bnvBeNT)Lyo=_kGtM2}ciG+uGA=|8Hh@Gs$lF#dd$ceKYgsd*AW@ zj`zKJ>5YTW0hleugfS0Kgz#h-0X(7L;|i9`+fOL?qyk;ueySRc*b~N6*c-;v_;eVb z!M++igKh=;!x)PmIUES#U>H%!l3cje|MFn3{ z@Z~VRf|n%wuh!se_`2l$jWE86Zz=e87~jEnL-<}8(kg@Tvm!!PCVD>?jH4!;SZH-tWck#?88#7OCOOt(6WxGpfgIc}!a z_MB;H8P(A2^{VZ?Qey*28wJL<S#}YXvG6nF#_mvf0S! zD{|>J-MT^}3Y67s#6{Das(#3hH5FJO>5KW9oyMpn;G@;*vb_v+cxNNho*%WZ;I<#H()|I zB2c$nciPRwDoy&<(JkUNwb?LLyHiUhiBEql+3JFGHipaOJKBV33`8fIq#QC2Wdx|E-#jF!PQfOKmXCk$p7Ly9cduB4*1IscTv8N*vvv7XWd z&KVM)p|lqmA(!?mDln~_$TAkmG-8r85y;WLU~kGeIs=Qg)M=@d*{LTMZ*ugEED|KV z+DDnsHyRytwD@(53OBDqI2yt+f%8lBAcASeyJlwn0ky(x(X+bd#ByzEL#9C0ksW*c zc0VLAXGk~(2jwc$_C+PjLqcqd77UNQOK*qpTY-pY|MA_o9eaE$qgu_YuijuJ zZj$jlRB0)RM$Kt2Y;}Y|Ntm4(Z@UA6EkFQY1d zy-K&zhTG8CTv_bo<`yJRKEc*m+-r=)@ts@xwlf4+TQdoX{=%+RTC#jWDW6-z07fbF zndM4$d9E^3AAaoEQ@i`NZaKc|nIre@J+f^NJ4ZF;)3LU|cdndeM-g*7Ou3&4j4O1k z{r%KgGB$>4B+GRG-0qzI<;1ys4_bbyo7DXcM73JbR^ZeVIEPXy94*Q4&Zp4PJ-d!> z-x9$REESl<_)$;LS1}ZfG#$9WZSGdElZxPX_&pu$PA@U^RKlD6173;XGAs_^j}iO{ zuW~bs;Lms^gug`aSG*R&-y--sUJ*b9|B%H0#J>clNCo@{gwp1K{g`f9rWL`z@fx$# z%}8J0%0jduo8*|y$T4ZG=a?|#95U_?}iN@;SUw`be2TMzg496b8uLDv6>s1hN8i=_?!^L|G2 zHs(x6j|hdRh-wjLB*BFV2h~U+Ts1@M|Y%wAtMv6M=TX!Go zd-UmJ`yPwnX1qIstsKNC5siq^cu-*0V5GUv4t-V_fV0c}4n{Ku5yDIwyR z^3>pUU;<<6{Zz%iY{phk@ZeXM)SX2+%VOn`CrsHEo-}}Me`BaPWhG z$Ub2RD;mo*)e?$eYtPjgHAf-i)WxA3ck-;+| zo?%6FOf%*6!*27zu#vE_88Ga{>8#U5I)5xIYS;J)gnLAWpG2n9FBR)GNj}?8l#lP> zY_Zg3wX8}kk96>$l*?z6uNOLD%1OKI7O$MKwiQ@QTLZG=oZ}rfhE+lHrwG@?ke!Ri z`4xt{2=i^Q&j$pbJco?7bXI+RVOLYaUXV#huXE|>JU}kWUcbl)3Q0<1Xl%lXME7x!-bJ#wV3mZiA?tu^-}T-UQIZ zQ8ESQ;Bt-;j{t8+GoJ*OV+AVR#Wq!`;M}A`2(<1;aK)@>MYOUTRqJL&Ls7-O=|=Tl zl6Y*RF8N~Wumq#1!zpAVMa=NnA;foK#F3z#w62Ko{Y8ZDhmQ4xO}fCFAQuTB3mfoI;6NZ&G*#^ypFR& z$V7`yFkL6q23;rUq)GBGqjCcIWO>ayV~i zJF^>8dvN9hsE$tSLH*uCm`>bhEN_U;g0RfSh_T=W!^}^CdsZsBrO}!dL?%Bh1*SBW@>Cr+OkZo3>p_e3lX$iS6m0UPVN& zbZs;tVOWybu@+0by*14yZBX#B5u9_zQKptjcx$5zZ1BL zJcR73@=4fAy=4;CO4DY_aJis@-|!15CqM5487gA>QmwYAb}csNQ>_-a;5{yNEpBCS zd8t;#nYFmB;OEU`b_@Tv@-O}D)Ax2?!fkQ&t&u*ygH-Y-WD}V8YN^f_mg?+K=iFP? zSr!Gx<7Qs`dJc-mJAJy|RZiEtnL}QYyOID%2uHa19>7HbFmC$u(F6EK#>-8vvSU5! zBETcC4foLcLNt&QXYS>URF$sZ#>;m819+bc=`@0rPn-AqLf`}VAc^kdI-%y1!Q(Fi_MH9$K98U8%xrcy2_Zf8!0z{c z@ArQ1_rCAly!GGnuK~CXe~Mut(lPWwk6|17V=$13^C%a?0JaO+4Z`LkO~4Y#xo`F|mF#iv40e5XIwSJs8EIC=N&PL=;D2Xu`K5I2yq*2{FS;cWd^5 zp422XCX!Z0>C0KRYAU+wY*ifpNJ$J)wMdxJl`~yEqixb1z1Ps%Ow)2zSGP<@!VQUS z>VUdKQHPL9m*!YGJE`$z)pFg`-4zl-P4hQN2)A1)K3kj6O>J#1)2rDVR5FwhPgqIS z*reLJ*ayh4+o$t|MI(evTBd7ThN0O?ciy3>?L!E@8O^F`t<&6UNoZ>taaW@zZa%oz zGJnK54U(};CFkmfqjZs7#Q+)IID)R6j|BPtoMz{HY&DzJYzgh&gt0w!` zs9Db=5geCLw?=dOtkindRx_Hb*>up7gk`4{Cu{3wdaFQhx9ompyVk4p>Sn4mGS*v; zOKw>bl6&QVYUJqrN`)~=K64Ygr8wKwbefJW#*?G8W%YHmsuyy+*LZ2y&UcQVzI^oL z-(Ng&<>d=kE*!o5=7G`7QVNhH9pjZdb%XiwK|U zZarNb!LtQoW z2Q)uF8zn3a6!DbR%>k=lQ&>=as+3Pg`+5fQXx8;^(~>UDQDt~JF5#w<)2nfa-~@|x zw^vA4>muT&46k*I#TycqjoTnWd=xDbR-8ONTt7zQQSPv-dg&S1=$Ye}jvQDt(qM(~ ze=qVlZb|8u@j=`Y!ILtc!pR68m$6s0uy4zF8qY8eS6Y_qxU8^#336(y@N6CS*H$7_ zhv!0U#FgR;G9JV8ELJkUgYU}NgTo|=$auj6UX*c4pkKma8Q&Ao%h)et5f;mM1*anz zlyL@UBRD7HJTA!iK3)~jYY|+O@dF{z2^p{B4VK5W=C<3K>S`O<9cBDbh$#~}RIMb` zaJ!LFWU?;G_z~Wa@nalj7>Uk%_5R>mmeH@fij&J`E!$PPSLaNxs>pa#T(4vmHS#ik zA~y3%Lox`rQ6f;rPX+bN;XS{smC5*-Ac{8y3`8STR#C+k3D*^nrHRfeR*dydHs!Qx zwAtxghHN`_B(-c%3t5JlNU7O=63i~9mRHt=@86QpJY2RhT0JA8_^_`vJO0>a9Y@kg3$quqcvL3L%yIJ#ni&euR9%?tea=e z7%eik#PD3nQDdd`OuR*a>Gw!_s-hfQ4J$d=Yk zN8wPZvzG~!xKCB)43E{3vorM-!>ELPzNxRC@0_L7lHNJ<7G(I31QhM zz=yDuJJvMZj!JP^sz!+afQQbaVomcPLT3>^gh>m}^BiJ7h^ij0ks*B4!$$&q^$*pquPY6#Ec?q*Enp9AW# zfV*a%Ey4<#B0&>uqWUSyZxSo?o9*im=tphvVYE=sFdoEmw9+CgNF}V`W9}g4PGV{h z{x|9)Xqz@|8deffDe9TR??{O*pS{`Fo-FMidH&o z>hpX@7$9`VU)ui4wV`*{Y7uja5qdMhwY51uZ4lEBq9N4!H0qnf$&Z7 zMh~7scy4^22UmNcc8Zw)FQ-3~V?n032^VB~op3>>(}W8$JxjPC(~&Zn_VT2_>0!bJ zPTL6=IQ0`QaJrB1-1yC&cHQT}G<<*B`J8AcCiI>M7-8H;nhJc%i^o~ys1C(rFOq~)URG(? nO1j_j6C>`|_&t7u8O&<1_=R9mv@Gt24F_(p%a`pw?eG2vOTJrm literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/SysNavigationStyleController.class b/target/classes/com/huoran/iasf/controller/SysNavigationStyleController.class new file mode 100644 index 0000000000000000000000000000000000000000..35dda6957e0b7e022b4bbcb21863e8553dbf9dde GIT binary patch literal 3891 zcmbtX`)?Fg6h3$R*loK&Z2`enmn*b zNFdRO2_YdNS_x>P35A46D;53Ozk_be|6q*YotfQkcc*31G})QC_nvdU?>uk+`scUD zM6{JIR?>1h>7|b<$wMc7bV@uwuAo|yt0+X_N{SE{Z-ZWnisz76QG7Hko~Ol1%tvwY zRDGm*DdD9vjJyWdN0cyUv?UPM;?hu3(`8jsWMfcrwxnRn=#@v5sB9{l8Z=We9<+tp z7_IJ0s-_a>{feQ4V!TsTHPbq0FxnZ=^r&PcbVZF0>T;ZqYWis@#AVfx2Ia7+=_yIh z3P_zvQyW!u9)a5Oc12apJ&Z~k8v7ZQ?$siIxGbQkyf+ySas7x4Ym90FT3C+t%eo@I zoyAgfNP+oX1%$$yYU)}n#&s7?d$XIc?~f^l*_GM{Zf1(nwuZp4JR(amS&d2uRFg-! z-qz@%KOWaqDQPM(L+TSW48`OJB8+NX z8i`oakiweI@uNl*5d%ZA1f|0{;;`mR$Wa~ua7NX(J%L0LE7)B*-&LtZ#$Chz$839n z6S(Cw7YDcP0g8@1V9zUG-NVfxEpkW}`DAh(ao*;dW}`eLg%mZCn_-7E!|Z{xk&l2< zHX_H8$f0T^x~zwXI%Bb}R1g7U)Lg&{wIM>Aldj!7tfvyfvl|17CK;o06j_mT!jL)> z%0Wcdst24~k^bt+%r7@)E=;Dc-kf=GD}CjB`sNkHP3J}eQFS%Eusa#8pI>}gr_8Iu zb&H_0B!H|`g*O4jMyDWQf$2`qp=hR!xsj&0hXFJ@#;V>YJyRzMlF0 z?)3QN?EN2*gHNW$rZ3$YHZ(OoHid04PbMOk`YQXyG3J#r>*Y`WxSPH8BO6(o0D{jnF8v!%v@3%1>wMQ$~&Xb9ceK^ivm|6QZACcGy`pef$3GgFAluoWAhW zc{+!UnW^iukH5`qd`TCuX6Jyt#%M>rMNF1r1|#xxZVVm_4f8NY&6+}Gxl<5z&vDP# znL9yk(YBnK=&UprE-~7iZ{V5t5=2+bZ${mA(H9j%XAEPkTO4yor`Je^!`wi+Y;~bg zM6>WlIc^i82{t(jFfnk6QskI&R@_`NR;>$$;|vT8H*07%>l=!&Svn{yu{^{~NENgm5 z>^@#RRPP)jD0&(1e)|Bep;z$5Xf4)DE#a$Ff;XbIkH~ZUA(iyB)RZ>=N@d5I9#DD9 zBzZm5+d4tMdpJ{K>8-KOH?VeJhFv>LRT-VDaGML+OOkl3Z(j4YJ8N6?~<82ps-?s5~LYkpB?RCNvcktFZc&j|r zQGbIfCdmI2`D&I-(9*fc*tk2WiuUB-uFK-Cv(Pf^S5r6bgX;Y-2dTel1?%?GI~g7w zt~}n&@HmjiLpa&-{ddUxh_W^QX= zO(eYG3-QTFNl1KBOf*K*=)1qeE%Z+izq#AAUAk-x+1)vN?ws?TbG~!V{pb0ge-Y7D z`f!l)^xgpV(v=~4pFZfPtNnD1(c#F%X+tkayQ(6|XtETU246~z6`CvI7P)I(@r89a zv)}dxqf_Nnd)1H?z7m({>3^XqrEk8ENv)dUex8R&^Q}X`f5){*Wt zS>;uwYx|j=H_p$BBtc)0Mt)VqDY!hwJ5_zYqzrd!qFx7Ud);z;I#F|pv{|!(GQ9oZ z@9mA>n)klL_u0mej1F1p5)1;Mr#cts65b*?o@?GB^UU8n&oMR2kG{iCNpZ9M(O+Tll>lB;LMscIUwu{*OC47hK+<^LOZ7xL?3!j*1!lIT%bppWF>G OMHgEkF45&ICjSp0F8NOY literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/SysTemplateController.class b/target/classes/com/huoran/iasf/controller/SysTemplateController.class new file mode 100644 index 0000000000000000000000000000000000000000..2025d25aa4ec9d455c8cc139572189ce4c0978b6 GIT binary patch literal 4345 zcmbtX-*X$)75>(eBS%*1M37*+CLx9tI}TZ(iA!zA#dQq0$g#1Nq=6Q*l2+1&)vmHX zY}}Rt4S}?ok|*GSVJ3O$WCo^%LYt&?N}v1EKcZth`6oL4?*5QgmK-$nMZ5RzIro0& zJKs6?>Rv0Kvi>~2l74?i}YdKw=G7QsE9L+Rr2~TBAt0dc1OEXGE zOR1=!)GMKr_BO6?8#_`ddjWjR4c2H6$$B#nOF2P zilvEhFd28s8fkj62}IsB9Lv;o)ryi%2*E5j-m7c2GhduGb+=-KY2jjnL&GhWt5i%w zb{$Q(s(QEm(1;xw~6#nMl)r5RVkH7Q(Z>3JXO`^tE!)AF7)V~ z_inCV{b1vRcQ-$|wsGV7#>Zc;U;gmU^&9_r^Q}97`oqS>OB>g2uK)e2gf2_9t5hy` zeWac6B<#^mqqLxuR6*a8(3ynsZ^4x3>d}>!TP&Hr`~KH=um8n|9ir`X%4(SS*}}7` zV`s~1fZ_O%4?E5EN>nDR;gx%T~W{QT^+F6SwrdkqCcoNSkW<@KQ zu3TBmu{YXP-L>VsX{r1%3Yyo+WzSK5A>z&;%KwjlJME)h6n*mcQT480x^eg7ji8df z@(wFxKO2m;q7__457ihj6O_pT`I{_yH?MrU`N1CeGN$ z+g>|Rd;-5t;V|Av;LQ}?!f#S|5c_%4;EJN{80>PAo!|h-9B%B;-zvu(ndF<3F6vrg>wtwrM97k>_jN5ke zdDW)ej>Z@$Dv?u!y8+Vx<4wzx?Slp+W4X`{fKU-S%YNKlx(NQT0x z7G&+J(?|93IIX(8yB*pJw}Ap;v>nBu-QJTk*{Rvg(sFiYZXq+3omtMFTbN;uKEVGM z;6Djo;nC0E?{c(*&jE1&iPC7AV_j^S6ZWij{yt1EnNNw&&cin$ea@E-Ji=dL1U!mE z{7v}=_#Ve%n;{I-N;toUINyMyhrdL}SBRaviFmp*ehWMPio`z=OLxV>_no(q>_BGZ z7P>#9N6gzL>3JXHddIz;_W7#?I}M|gr9Z+QkI+M)@Mj+5n+SY>)<^j+zXZv~<9LE& z*~XLjexCouc!{my)B~J@#F+|l?yBJ=w(o3%ZGxnph+rEGuszs>&7T=dD zKg1X@2@d~FE;{*~Cbpgt!Pjl2X(Db~gFyx}Bk9gRV;`kRvqyKH8_DzJ{9M=nBT#J5O5=jrMD{!D9CW<$)UeN}c)9HRcudhtC>hJMQNIY#bR*o%0HUzwku K;pbk-z5G9Pvg&sL literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/UserController.class b/target/classes/com/huoran/iasf/controller/UserController.class new file mode 100644 index 0000000000000000000000000000000000000000..f1a94c8862b711e98e607e720afd2d94198ab837 GIT binary patch literal 13343 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 K(|G~Qu=NXzxQ>kg literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/controller/UserGroupController.class b/target/classes/com/huoran/iasf/controller/UserGroupController.class new file mode 100644 index 0000000000000000000000000000000000000000..e6fbe377207ebed19bcac774ff5f4eade1e2a2ca GIT binary patch literal 7052 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 W6nqjxnCXMhVvc7gxPL7TcJeX)!XXR* literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/BaseEntity.class b/target/classes/com/huoran/iasf/entity/BaseEntity.class new file mode 100644 index 0000000000000000000000000000000000000000..6844344b361454b2d9eba1e11ea646e17e5e2409 GIT binary patch literal 3064 zcmbtWTXPge6h5;%d&y=F(3tIp;fHckqTO_br&kjsQuyY1DDY6^L9)X&9!d!+r>KLjB+20K z3J=$lR7p~mO*2Ure`^W4p^#b=C8>}ytx(T}y6GBKxnwv-z9LVVrsWFPuuMmxfn33= z>Y`%gMPBIFgyXI_mZ^)Tk3O?-ZtkohE5%WT+8k*caQ;w6Q4i8T?j6qyt7;Ujx?Ww) z1K6om>P{G9Q6OvsBPMSfj;m0A&aianmME2^9ddT`Q#E7OD$2^dZPldht|D&irl{0W zP5h6q)*gQOkwOW1TU2WmF7O1lD@N4-ByT_X?4ClA6UUKk!Ir|6(?yh-&aH@>La)0< zMb9BT*Ro)gOySmTfb?$K9`olFVV3j-*EY=3=md@=AAb7ngHJY$qC#3py65ZCUY+-7 zp6Kg;Iur7?D@_M{>ma6Nn2wI#7>LbFd>+v1X_Tx`XU;I?T)mo?wnv&mnVeM+l_de* zL1M6|x@7}Z9rj|D>y|A{-4M<-U82$Msy-N_*UN(wF zX|fO$P(NmvhC889w6A{&{Q*5bGnhkyNz8M8lbE^FtJD!~%9dM}wn81;;ogvfJH3tY%C-ep6t2&TnkNdp9^SoA7KAy) z(NTC=IAvc~vH1(rvr|aSmQKBbtC9*MC0)x`xk5V|%!joP_XVqN7jTF9%5}Enb&N|; zXoMe;Enk6u)xJhO^qfXVczBg;9$wR^pRx)aWYlM>TcZm!tX(L`P@YF`Zao&-UCPr z-tR5?*EcicDL~X}(!@hC6jng+mIR6qQ5@ujl=ni%Az?h0HntywYY6J8{&Wz3L3ZPY zMk&HPC*&)pL!rr$`&(nSw2iQ0WpF<8Ere23$fQ^>?7yqN|-v@v64C4UsBQ)s6 z*$FEIuQ2=&X+S+jI&wG;-!Y0~PL#P%%Ej#W6!{oK^y3Xu?|DckF!~-t^df9N4R1P$ zKc^H#d&!HI#!gVfF?xBKUcnqx;u0@);tV_ZgDue`S89i4@23=lPd{Fj&CNZ zcZ)`zw}P1Q(_2G^czrgc zud)F0hzEIwrUG%~npqC4QJk}kdaZgkBnwfYv+(xC5{EPgu@VI7M-ZQqH?fGv0zsJ9 z-|>y%dubs14aL;E13y#ZbBaap4*W!k*}?2OCA}$(wn6-U!F!mbFiABg?Q@v5kElbx zQhSg33vItc+E9}K?$@C?fp|_D-7t+f?=n*u3Kh0t-N@qa)94wX2 z0c#f}6UjfRBSG_;_7`<0=sbRs&0=Rztje!sP$XXm?t6@@+pN4ysO=5e!WAiSG68)# zuSa-ZvBb1}4LlX!lj+ehb$oAnw9EuuZCI(R@{{Wc} BZrlI> literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/ColumnEntity.class b/target/classes/com/huoran/iasf/entity/ColumnEntity.class new file mode 100644 index 0000000000000000000000000000000000000000..0f081d51a4218b1c162b4dd883cdb39e729fe7f6 GIT binary patch literal 4174 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/Site.class b/target/classes/com/huoran/iasf/entity/Site.class new file mode 100644 index 0000000000000000000000000000000000000000..9343ded09d0c67a270a9be6e9da3990f77430a59 GIT binary patch literal 4171 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 Hx&QwF07e0w literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysColumnLongPage.class b/target/classes/com/huoran/iasf/entity/SysColumnLongPage.class new file mode 100644 index 0000000000000000000000000000000000000000..9c10ca7afbaa08cccf46f107fc8bb2dc7bd1e460 GIT binary patch literal 8205 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysContentClassification.class b/target/classes/com/huoran/iasf/entity/SysContentClassification.class new file mode 100644 index 0000000000000000000000000000000000000000..5536be09b1e7f6cd2cdc5611319c595582a12af1 GIT binary patch literal 6144 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 ZU3AbW35NniK1P|SlJDBp_s|%E*@Ae zNL(l=zAT?BmaJT9gOx4YLBz~|grJ7Zh@jS0S6bIt>8zC-O%LQs_NZN0B*<7-&XqFb z_J&L`voUKg&E@hXs|41fp#D|E`SJ8dD?gqY$(PgPlN(_vPGrl)v{l8W*IV!#7y(zH zG&x}l>Z{9bU}Qbe?6vgb^=kz6tjgrm#cQomyqAZ*m|i-O8O)E^*|mlIgk302!Xzf#~OJn(wwN?RjR6@r=s=>z_Glp)=DKC)}%A11fM^DsFfA6C=8B#n1UcOF*lA90Cr$3rD+ z_^Lr`!l`4N#W)Jl--oT-3f@VmV^(oYwgU8p0c_OTbpwMdu#?b31-n?zq7^qf+Z65c zY)GWbUHfR4XO$ye?t)5?T)UX#P+26st7b7IP{tkW@&>4NRfEw=d0809%AtI@Fl=-A z;DoO2KBw_{E$F1<9gOHwDS74{z56B{XGb1;;K=5i-+18RdV9IErhH6-DN&p(Uapqs za$XsoE~U$K+@8+T>0B1)(Ndk3v9^N61w0&JaS@9_7Hep&P8;YfoCAD=IBuWS>0bJ* zPFIkn(`Q)Q$l5TC=w!3DiNz=n$5>=oT*=}p%IY-E*8Aw|f;!wAj$GjL%b6_BbkuU~ z(spM?mgw|%dX2?D(46|_S5smMj_AJmm88H3#%fwfVvkfa@KxWQ1duke?Fd&0x z8&<)9te$OH4FfV=88}uI$A@VhCWmZVPZwhrg`hCaF6JY22^Q!C7*Jl2AH^t*Pl3r zI-lX|jBe-S9G&TWrmr))q>poKrt{gp&giZ_&iYK}#lFrt$|H$6JxzQz;4`$acP};g zCpVW6r@KsU)?_Q0z-&-pkieTkqxd}(Y~0oREX4==7EV!?FP42ux9;f@m>=fV7w)BgmN03zXbRaU*DiJfNf*1}JH2MwmgG0)-9D18OxR0JWM? zBf_Al0!56d2h?W90BSRJBgP0z9P=}c`S{Rg6pcW(P0d<GMrZ-LK;-BqXh9kjWAp`RA!iD| zCO1-7SbK|_!gTlB)E=gL@J|zOQ>RoT{|}W^!F>(|7vL{8sx6#@o#68=$d$$$IQw=d z55Qn$1F0`xA>62bMU6IybRs3}vb%dUsN|e~M1H zg6CVz02_>evS?hq(v&oVjtO<^IB7<(Vrn%*jww_%p_-*vn;CXYC}iaou9#A$=9sjq z3FR%l+Rcb#LS-wjNX67)MjcbMYC^qBuTC@Om{97AQzPN4^|8;x{|h|)Kq1@JBAP5KtJATIGQ z(}U1LRHA3-+t9*D^ZV%`Xc|3&#M}ujLeJwH?8DHa_})24-+>mRf8$%zBhYlwP95|p zv^Xbo!#-+%2NMA#vk*vN{F46;9`BADcp^o?3ZQ}s)J`c_$OChcGiMbzTnl#bJ_hBY z&2n+Q{B6oH;^*l49@DJcqsMS}8Qu+{NMgq(ae0mdQdIi8Qn_r$$0@@2@d#bcx}b`d zo1~LhaDSJ7PSypSmRb)QIVDbnf%;2 rtoK5nqP{)8O;~=#-l|$b1AW&)Jx2V4MjN8pjd<`Y#vXcHDo^|uX2$Ry literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysContentLabel.class b/target/classes/com/huoran/iasf/entity/SysContentLabel.class new file mode 100644 index 0000000000000000000000000000000000000000..1d1393d2227fcbee6f5780ff484066e8ae90aaa8 GIT binary patch literal 5331 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 X^Smrys9ri>#QtzI{s|or!b|@FKW<{> literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysDept.class b/target/classes/com/huoran/iasf/entity/SysDept.class new file mode 100644 index 0000000000000000000000000000000000000000..0b8dc41074208f92e5c6cc16457308142e6a9afe GIT binary patch literal 6582 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 CXG%N( literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysDictDetailEntity.class b/target/classes/com/huoran/iasf/entity/SysDictDetailEntity.class new file mode 100644 index 0000000000000000000000000000000000000000..4ead2db82125cd5de180eca00b635f907ebc9a5d GIT binary patch literal 4866 zcmbVOS#um$75-Y9>F(L2@o2F-ae|BmXdjy_K+6t}E!ikYim@CeF^kgDw53)?Gs<+2 z6Nj({5(r>I*aHN@67ygRsKRm;P*hSynJS)n;+-dc056#E-DNbRQJYes(%e4xp6@$- z?pbc%zy9aY~Ulri52^@#R zxRT=9*TwL%7``EfSH$p5F?>r5-?s3bH2QJH#&^Z@dp5pr<5e3!5VIfJ_>qm*Z2Z{9 zPsGCO7Jh2sX9n`2UkkkQqF)PxYUPocDFens26CsWl`!%u(V|zb`$_IZ{22y1f|7y4 z?7DZ!E0(>=YH=Z|1(nrF1J1d6B?>nD#UKop%l?CvN;UE#8VwDM&#qKAipySgBPdnt z#f{6$)P$SmdRX+famDiY_+?=t5msxFfu0suXDX4u z>er|=OTkJs!<|?{SQ2|muhe`m^3QVzjEZ8_qo7=z;wmW_rC$Z5A zx@UumKVRQi_G>b3A}iGuX3}Fm8ArXCh}Hrc8t5l6?w^Z)PnF6#f<+d%TKzB85sD<1@sgN>bJ23uWD$#vzOc`T>|(E~I#G`z_7topKMdxwTwDr39TfOc zhF5}^B4pby%B_C&Xj0QH!N_Qaa?FmZ$_@7RLbYC7@!5iGoC7f>KOxSuy|%Ng74Z%> zN_TiUToRdFD#;EqFd|O6y){}E7x2L>9uPx-b=F=MPhvfbvKTf{$)YNxO+1xFO-LWb z$Ff+(S{5T1&7vrV2{9bSd$YJlNcZ9XEG98(V1N4|eX<^uOQL)C$An-gC>_t@7kGmy z8yk>idt8dLa4A}21EO>#=ql4QHlQk)s@&K>vxYg(D4mEAXU1?ApTfFMUZbd7GPlg+)8wT0xD<+tnd@^UT=}eB)rfEgpyX zbv?}AAZ*-$cj4WX-@~)I14H~V51fy2p5b$xzlo5G9U?a^iX%!;JYynxWMUds%jwL|023d~X0LFU(L%;3N1u9-@@Qqxc&> zOv%J0T*oXW3(w)#n4`pd9A3ser4(MrOL&-48gKHrI7=ymoA7DrG_v>y$8-GU@K2_9 zfl`-|W)YvK)NSN(Cmx}c$0A*P431_08(kJ2P2EDjg~#}B8@F&kiK+ir#N)J{G#G$9 zx5!gY)f&r^H%OrpMJA%yu`7!G3ebom<8p@n8V!qQXweYoAjcErUne|GLx0Xs9viuV z>~Yp>V*X%$a*d^F=SQ!?8s9?h39)Xv388QjT4RfXRVvF(N)>BWl58j0P}#02Rpz#e z6|7h(*ODq0uVz^dRob1jG6~mMJ9}sWq%nGVwG^sYJ=bD?Dm^N;ZCl{kTXeB?`h= zMc3Or8;p%2Lhpn*y3T+%SJ1=d8iuWGQh6WqkdC^W_1MQO6) zb()xpBR09WRcm_sHuR>2|An9trjK87Rl@vIh&h{r_1pE^wx;NlM@v=#bPX8dwy=x* zJ9Pi1jeK`3nOBS$a=x8B7)$2WB!;}Nojejt=9MOfTxcgBi6!$Y6hrQ5C*L1S<`pW2 z+}ln*7E9*UD~8npt}lpE191hr|=FX^B#3qVL-_lv3`id7T(!j c;H_s-Ntb8`K22{r@R{v9@Mq~Cuc4p&FLX7CO8@`> literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysDictEntity.class b/target/classes/com/huoran/iasf/entity/SysDictEntity.class new file mode 100644 index 0000000000000000000000000000000000000000..d1e87e03714f6f116b77c4ffa5be5ab5670684e1 GIT binary patch literal 3381 zcma)8TXR!Y6#h<vk`hqk5CK11V_DP$hVQgvlS$o~~TI*YDZ~p%Gm)`-rg8Moa zVo;Ee;V=qN~(Rt($~->L!EfM=j4 zc54Pc6yJ|@tn0X^An96F+bqpnRo8YZ*C)mlC|49DMxBc5nH6u|EY&QPA&MVGLC7vB zNKG!AYi71&R+h4}Ue&HF4Jk;^)GD4`w&rcuUMN`?Diy~wJvwz23{K{qa(2OV%67r2 zWy|Xel(?&IiBo6dUtfQmJzYF4tg z=`Ln17Ta6T&aS&-cHSHJcZ@@En&Al!W=S2dXjK*H!eO^S(eODw8TFa6*fGhLn+{)4 zuVq|{>f26V*i>Js(8x;6dS-rQ%3SpmVwdaqm_STfUePIBGphvHWAibbyjd9+wIf+H z-J&d0IMX}9;IGY0OpP-;(nQv+l{^JuKXkQQMyhw$!|Ld6JYPF!S8VS*)ib^G^t5Do z6HI=8rndo}ttQqfp7wh#N@^zPp#QhM|xsE&pNeg-eTLaiBe7QpA=KM+vfG*5b>~S40qkVU0@q2=oW+ee|;9m zI8Mcp70cV0A);~2VkV9`v0TS|9GCEB99MBIj^lVfjvldO#L|mC1qWO2kBc?CR1odC zw<)8HT^Nqz6MV|@4IC3d4=acc9FtI!P7EB|2HRKtj9t3qnm=1Sl%Z6`c3dueHKjN-LBvn zsQezmv!svm_6^}V{;{0gzrcM5zuo+M(Iqn^O57kgAq71Yumimw6rR8v`0v7AdyznT7#0F)2XEAjI=J4 zj6g|G8x2ZEE=naM7fVNlQY=u4rek%b$OFb7#%Zn^a|8C{Wv;6-FTTOAa>oqu8qQGO zg$d3;<|6+U+|%bP8kylj0*+9oBXOHu}EWqAdZmZHIKG^HSjWtvQzDbtydnG}n- zi&O;x*=4avp~%*P*p{>+Zn!J%D=yF^t*E#w%HntKy)W}Jd4;Ke*JBxp?_$M>}i%B6)r5D1O`!|dKuy~QhODtYy@d|_>7J`M3MHLG_ivWut zix3NgMK~lP5t>ae7$S;q5i>;G5Y>jLF+{=;wT3Wxy3P>whG;NEqam6MF~ty;A({=* zVu)5lOl8QlkeD74ZGsYo^k62HU6URxWb(PQyH6J+&J+}1oX-`Csa$bQDm#=8Abk7} zm+Q;)2{M;%Ol?jjv#H#MWKVH0liRRRkhN+kSIlfmugMfL>$2(7a=CmlRRn24(43{2 ze6ny!YQu)~U@}#*Bu^X2EX(($vnvPl1L?uy7Vrc%^OAys2lnnebp1nu<}K~bZ%VF9 zWy&pNSf7^lKVFdo-p?s0Ad1U_$W7pq{;Emq+81AHyk+Wm>-!k_8$3}0zdvy33 zK_NV}bTN%&I9{)hCAMxmbj$YV_g~3tOa0)T_l|8JKDhI46}Hg_?;5%7-UFZeJm`<; zQ7p}G$njorUZuPm3sCCTgW#w8i*4mefAa&onN7){3>*gLE|agoRI zVB6JWw<5(Ny@TmgF?~8d*b?dq3>7okB+p>osIsr^lK?*w0vD02D3xRuodE~X1iP2_ zELpXhL%j9Yk$uCXH|;)j)1#PAUp$n`VxKh3c0K(S>o%r)iwozRhi9-Dn?z8}(o8PB zd}!0U^q@?4-ii5M?A{diFw$R7`iuP;kj;|U*FTgWOy!c9RAGHGjSX7dlI+=1zy+lX zOXLvOCGr#Zv|btU&KLVRO+w7r!SOWYj8f&K+H7i8>Tx;Edq(ZJYGo@;lmKeyxBzM* zEE&`WiYRY2h$?Dl4{2gOEYYfsq$laawE7@ieb4nN@=88*-(5jf70dZneC7D&A8} z^q4uW={VFS~X3yzHs;peq zy=)0`33_laT^P!u%vH%m@pq^s=_utuSnBF=2RhW#4RtuxQCZbfi*&f2Pq?G>D1se2 z@PQ5$XQN|0ra?H#LSZNnM=zpO6{%>4I{?9xGr3IhR9x@uIcsn$8`4GgsGmK@wH?P_ zbU~QU=2uJ<3U4Hp=gvsoR0uY;RG3jZM;(m1wT21&u3`_5?oxqgr?bZ^wt>-Es!;P9 zJ+e4Qpy7U1L1sj^x_zFPV7{H0Gf>wR$8fQ$?3vEhxC>vPph7XBFzHBesDiMoSU_>b zLXUJTFw(K$c_$VcqhitMu6#}?c!d~X?qFc(3I;|_FreySKr00U11A^`SO&ux=wM*z z4o026oKh_KT8v^|-8-_WCqFdUo90`_J9}b9J%&$5mA)V3p5qKc9S#?^6xQ-4!Csrm zho09g-Z8q9iZLp%c#MXzabvWPhGVp!#phT&&f@bdo}e$p=!-1A#KSMM_zH_BdG4z$ zzQ*F~EWSbCjM1m)t{Cm1y)jxsXT)eJi{&gtuZ>E#RWWE%Ob_1m*>{A z=x4E!MV2-RYAQcLE*i>Y<&ngk7|hw3zEfgihBykz*42hWatbzHR~tu(qgEPmu3;4F zYAfPx4=oIo%(W7Rb4{{!AhEjI#w&|LIJE^MqpM9;7pNfQ`T{M|)ut*wGJl{n))TtLU3XlvEj?O*uke<1eU-GETrP!%A zHA0gb7)a-^$>+KEk+V@JRWTiGq}&9&bK*EGp4#!d5eG!q~c z6qtvI{Cn_y6dv$9I_KU)0sjM?Um)=b3RFGN`2>k&U2}JnPY&mH?x8BB?I!>7E(qH{ z@2eEG{7+Kt4vNjQ{JSaOAcA%Pkf0s30*nbhN#+iUTLCNR0)^}lKq1?(LJTrAC}bHf zkYR@bGVF*IW>7?f!dAou3fobD!gkDxGAO1&&|IL19S104S6gugRclb(s&;{*b`3yL zJ7Lu@D4{_$R>B2}*|h-0Y}2Y`kf}knmgxe;?K*(scD+@{pn46ev+7--YP$iTYP->D zU{Iq5HCT-

tOLP>nssYGTk74QjHcxIhWp0w`fOTNZU7%XK1)y5H)oNi- zs|K}LtuByhPX)-dr&&`OG);r1TGL#hI(s@mb#|LIok49HG~H@*f$Hscfa>iTRy%`c zXi&Q~!vXmpz%Hnw&5%LlC6P&&pb>GQ%1L?$ZNVI}lP;xq!rtKPrOPnqqhow$(z`HM zMGJhV)4QSh=`7zYdJnV!o#Sh#_d*NOW}lDV2Q5UGi5Kbp&p;e2B$kB(P)rf@Xr;k8Oh@|MIk3y>z zuNRByN@%87Ejs8bXm#Q|F^xV3tzK-QSLkYJ4dOlY0$l^GQQSd4r)!}#iS6`5`Z%;H z;!E^dx(=EpzD_&odT7n!An-RpYY~6Msy9Mw^~LETx(V7;UmdE+&CsU#=A#_l0&TkQ zMAYw3Kx^}zgSvhzw07SG)IzsGn?biDtovv|$as;eLv%;@C29=OC-L79FVPgGhX0RM z+J+kl2;@ZqPadZvRnO=oWQmVWT*x@NeC5eSjSAo-7t-Z2ghV)umw{36(FhV1GW0IM z>yVRs5(`hByN4Q1K~3~8Z%r)hNBJ`nojWKrZ#Okw$n!zl&j!n{Ee01wWeV8=X+k}e zPKFh5Ooknlrr@{X@qSm^8)4O)GwTo$kg1 zH^ff52bz!K;y&7eyr`n1#kF)VG(VjtHq)n}1?X+!e7X->kS-B#r2CEh|6g{N&**{ZPY}&p_#ma{m)R_D>$e5v4PP?rca`S`wA|&H1_dC0|gv_gYi$C z(y*WlRzjA~YH(;GxP9P|>2ikB#@ za%4Vwq1q!^sI=A*yXoc3BV4Yu;{W2Q7p*(;MN8}ckIq;cH5m;G^(v+$zWIqB z^UQMRC7#Y`A$m9;UGDs5PiM3qJ)CEiJ1_Ng{uX^3hcleZ$;LOI^n-IdKTA`*tARS| z2gi^4LEXdJ20#3GSR#-5-|?ojDy39SFHN~rQhwK)vbj=9)h^SN%O&Mg-jpqsQmX!% zrd%Z{zvoTaS}CRK%xTKilJfiBlv69ERINNsxkgg{00(D}CqAuGO4S6^l;=vyA9+(w zuar`?4>jfalJdviH{Mn$rD{BC$_pgrPrNDHE2UH|OHH{}QvTGNaz>?;s@bV2QL(Om)?{|S4ye+xSDdK zq1+DEhBx`*bN=vQ=dF9TmD+H|a=@6c(Y zo54C74V~sON=Ij*(@ZKIt%OeVSfxi;KThdr7R)zar*w1&=9>$Yj&?w&`Ff?}_kX8( zywdT5ztcQH>G*{|-#k(2_(?zCJW1*J4L{$sm0rjCLZzdHI^R4Q`ffU<{Jr5m2R@}M ZzmI-{JNMCVzf`ztJ`l28r+jMCb(=2W_D*gxl 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 R5I?{6$Ho`vD_`%A{THWV+T#EK literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysLog.class b/target/classes/com/huoran/iasf/entity/SysLog.class new file mode 100644 index 0000000000000000000000000000000000000000..93122898b4697347c2f9a81a3e9a9e88d762e460 GIT binary patch literal 6455 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysNavigationStyle.class b/target/classes/com/huoran/iasf/entity/SysNavigationStyle.class new file mode 100644 index 0000000000000000000000000000000000000000..e71aef00ca5dd4899dccd3733f7e25026882bbba GIT binary patch literal 5279 zcmbVQTXbAy72anumot+ynaSkR4pd1nb>+&mSP@TKAZ=O+CTVOgSiF>znbYKy$xN6z zQw-igv{s=-kx~j+6k9BjBC8}yE6NM5<+D%vwX{%_>WX-``E^iw)ycQK27)j^nQ!_?>-pb@lsrkhj zXo?HjQZZ$$<5H6b?1nS&<+m3XOojUEG8@iJ0?k%~QKU=}sp2EXEcWGcUrY@y zSflxjnH?|W7tDga2$R4uKA=Luzy9jV^=DpJD3&vhS+io_6ZT>jDsA=B)xRCTxOQ%3 z_3BB4rpV$+bABOf*sPX{wO3zWd-1n$RJ3fIK_T_pYiF)K_G^w;Bwa9pokVaDaT&al zZDmtKkYW?s>hZIySKeMby?p)jWreoYb!ri;{g#;(@j7B-v|Es`L2@5Cj@Ez*Ri^`?nRL}fi;8|jBejRjG>nEn{f z2teA%?c;cYoimDavi{Kw!wA>-!QoLfq5?ixFpH(EjXn{(; z$u<@W!toeA4yToE%2q{Kg$N(m32||-9_6WvDl`@r%pCf5z}@;zdAP^vhT|el8}Q{( z;TjPe@wn-P@vG3Sq|#0F5$XcJ6;~4M++1vSQr|}d`BcYrs9Zw&g!QQ^N$mgACE;&xUOf++{`tOG{pkNWlPCo1HvY}p= zvRNFLw+oktyj}Y1bt&7-ak)dde8Agfpk9}QO2$!Fu&wIr(Sg%Xj+K$URh08B^ zyA0LqQceQL<=w*N7rhUz*6UIZ4#(vl;SygUd2rvocs64MboTY0r+|N{?_CN%Pl1M| zzTZ)Jw7++mB4P=qajYLi_YeG@8k7F_sQChE14;ifX=OxI4*(L?gUJA6g6~n{0!5R7 zWY7g_(nA0>>1r~>Ak_hdlBx?7)58G8^hh$ypojwsCnGLUTyF#@u4~Cg25AlmoD0;f zM*(Wqo03rmH94SYvdINX=rMp2dOR6pP}~8*IdlN1qaP)3`=Pv(lQJ7oeJLgcAYP|0Pg$9ki@24$9--iN@CVo($m0RDLMKHOH;J{Gi5 zpbRKu{2N6MEa-w&kkwKL9NGx3;5`(MiCSY)vGUeAhG8$mitPug9rMTsm{&afCj^`z zeYh&i`lY9kLcX76u2Act6>3YgFViM2<7L{MNJ>7+{7sU_pxT_cS@JRFw@4ndX>;O3 xl5b}I!;()he+&3!>Zra`xUYX1r^I~pEzy=wh&ypBcK2=U4;SI@&~eFp_uu=xR9^r9 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysPermission.class b/target/classes/com/huoran/iasf/entity/SysPermission.class new file mode 100644 index 0000000000000000000000000000000000000000..5511edeca2c330c99c5831cd4d95471b6f495531 GIT binary patch literal 9558 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysRole.class b/target/classes/com/huoran/iasf/entity/SysRole.class new file mode 100644 index 0000000000000000000000000000000000000000..b65ee4ee21d884578caa0ea14ce1700fc1bb8707 GIT binary patch literal 6690 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 BxH|v< literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysRolePermission.class b/target/classes/com/huoran/iasf/entity/SysRolePermission.class new file mode 100644 index 0000000000000000000000000000000000000000..d13c5011c62b57c00260f3d5959baa944ed20286 GIT binary patch literal 3351 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysTemplateStyle.class b/target/classes/com/huoran/iasf/entity/SysTemplateStyle.class new file mode 100644 index 0000000000000000000000000000000000000000..7bb31408571cec4c5ae9ab01069424e4460038e5 GIT binary patch literal 4360 zcmb7HTXP&o75-+mvom|s)hlHkW8_43bXjHXTnLQpfZ{kuJ;DT=}cW%J;Q;sQ%14gp?56^}eo#S>MQE&T_F@b&aayIM^O;gWmK z#qdord`k@97Q=Tmd^ZLiFX;H5_a~(yrSa=;`>7#uZr)Fbi5|Muj}}+_@2@66M;XgVP5EOh)I7chM#G8Q^Q*d znjNcboB0W=?AXP^@u5c*D32>h9xN6d*DSabX1-#nT(bD5CUn6vVu z01P>&w4-y?d{*{OY-t3%|Sh>!s!Q&vx!JRu(Sa zJpGDPd$>x+oy&8U)|y(3xn;XB&0GlyTb@62>(aYST{7JnT342Szw)QcD@zN@AH1v} zW;?^h!t|&)%`{Cn&o3;`U%YYcz16q=yn5j(w{JU#?HpZuq-*u<`IU2LyZ5eMKfm(M zZ*N>XBMqJV=wB?w$$GdXR->=3%>F9jVMtT4k?9V#&oRw%lanSu)=k zc4us_QKHr}m15Z}WNp)VCTp>&?p$_k&Kb96OL^0^#>CD=qoyr)h;&GG_tX@jN(ha9 zQCtN&B`-?BwhiF*iV5tfSEZ!LT2q;*r^`~Pj-0W*J77Yw=jIX1ohjx<&9XUbxg@m$ zjWPZzDEX^M)h6&4A>swtUxt{fb{U>7m!Z2w8N-@e&sEGkr`eG4=;TRj${px=lBcP- zkt4o~)hoI)R+&?Z!gq;drF#}njCw}NP{CDP?DTK!P_ z@JPkZ=R`-h)lbuH=ME(BbDT@y3m6pAdGLH;f zGo97q(D;~$i3+2r5e;7y2Bjx~FAMlRTRg=HJcF?Wj)`F!yrY_{yOK=hc03dB?=kPG zuwN9n2D@sON>+ii?GHLjHRp3fb=ZXs__dSriFoYd!?hC%J`IghCv^pP@i7YFZvJPF zsNX~VPHNqhdmQwlj|zp|$XMvdz0}x89~kG?2WIJDZ#O&cql5k4?0A3lT^IYvBV3I`}BBmfWN^VAeU8jc%-|A5fDb-_CW zgUPOd;D-9(U4g-*VnA@XKDa9|n8XbTR_lYi1A|HMfZ#}da3(OAhan(Xs}Ifw1|P-{ zdnu}I@EhVc(%W|xq2OM%ON8Gm(ML(i#~G*c*9kOpC0`0o*|61=lDvM(jF)m4BSEVS zZ#AW)y`OTgm-0w(N_DF#<$>{2-tVP68ocqyR#VEO=BIqnOF0^xQrl`uc}V?~4|yqh zW%_h^i8U36^Tc)NPb?wY8e2rXcM*w2BwHJ$+$7{?DYx*`+A8HXA#am%N?_Wh+#%#U zC@&&i&%oOAeq#N+^E#Hj4Tbq_;(BiP^Z3bH38Cn zke1eKKy5~ppf)3xjtWrB2Sw8?*ZOoRBTi7tNTlNel<+~6YCs)ElAsQwF`X2kMjw<+ zv)D3I_%iq3fa)FD?w#86vM%fA?l#78oV`oo7AAOahR}t7;w!W@@ICkkPEZQ-mAr~4 zD5<3S0-mH4K_2t?DkTkNyoRSJ>39Rr;%k(mI0p+~rxe2?AKh zOiD@on-9<=rAAC~y~9Xp`fW67$bE!%4HkcNAN6#hNN z$yC7#QKitPD#_bPU9XbL+K4Lo87DmY^Wmq77hdQvQ$(5QV)MZM@BxohJDLY(NGZL! z?-I2BMSSXMVQ(_R!jTU99$gSkx>^j?bCF|Ske*i8Tx~|gb4Au&WS)#l8Jg!J>HH{d z&DCM(o=abMk&2Ak5loDy#aUm+X$}W0~~&czA2;{73}i^qd|ey*iUpboK-G+gmk>$&BPn%(#BuODmdlf G`TqjpUROB) literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysTemplateStyleConfiguration.class b/target/classes/com/huoran/iasf/entity/SysTemplateStyleConfiguration.class new file mode 100644 index 0000000000000000000000000000000000000000..d3b5eebe22709209f6cfce999e013a9e3315675f GIT binary patch literal 3023 zcmb7G-E$LF6hAlFO}6Q_q=gou1u0bQCsC*fDOAdr7F(#Kt%8VblOiMpn@B zv6I>vEm_daTyoTO^_*@G2}&F)o32sRrwzxLDd;1nX}Ow0GIJ1i*N-7}34yKxmk%f<{-KTs~t=(d-Xpw=-fgCc7vHIfXBlAAYB znk`Z*$K_oin@#TKvTe{CLr|1fQoCSUE45of>zWdN$eOv$#@~)(WxW8F# zQa#Wjg-t%9qNiOgb81{GdDLK9FdjH0qnUd-XNY;t$@}br>QSULacFdWFLH()v2~|h zaM1-`LXBP3Co5fxr^M1$+0N+ui~^cu-Ban^$W;*3`Cns$vaWw>pnEsJe{k!vpvJ83 zWNf3v^C)QZ{H2Tczr5i$@}D1na_{`-4=!I@R3F^DGXLp0UwwG)!u_9aU{|GH>QkwM zR;#pumu^}uXk~>ipXgm>qmX5?I-i9u(3#9Q4)g4#)<=V&FZf}Ftn8-f;M2B5Ej{yel7 zAg^`cvJMJ_4qC5M7rh7#ECs+ud;{Q1*Z^}+ZuAhNz%kZ-1W)2C@RfUSlep!bK7cji z8QW+hWYq@%`Z6@ZOk%Bd{)R$dFL7Q|*BNBjaSkta?yT#KzNq6YEp_gy>-;KhK~XsE z6uu#RBfWj!QmFo=+kHfEX)cIQ$ZPPE1(Y~4*;+qj_*p~x)CD0ocpBsalEc^gex;W2ew^CsseJr_ek>_z;CE_FNO!5_ zDyahrX^xgJAk>r$h?TF4<3R0!6rlnp zbT6bR*%;e>kQCqu)22q1zo|J&Z$6^-D2?J@5szq`HB2oqDZ5g{T7G!-A(F75D$=!g&HL4y+SyGqf4 zIa+a??P^Nmjf52JC`^vO)tr*OE%4$wDGAxz>Zo7pVgJA&!!R8}@eUvznI`BUq!7jM zTu&hDFs;Y5zYR$O9V>z4QgboSQsglV5{fAV3Wy)9j{&dfAvUy;yZ~6hNVTQ_7O8?& dkV~xqBe}F!_DSzq<_BO3HoV5u^o~RC{tM0DbISk# literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysUser.class b/target/classes/com/huoran/iasf/entity/SysUser.class new file mode 100644 index 0000000000000000000000000000000000000000..e0f1beec011124f110f61114147aff8dc06c4170 GIT binary patch literal 16040 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 ZfUd|rA-aBJz<8CnYlK*gk*kR%{|gA?Gj#v} literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/SysUserRole.class b/target/classes/com/huoran/iasf/entity/SysUserRole.class new file mode 100644 index 0000000000000000000000000000000000000000..e7c023bf3b690c16ced26910d5efa99d6b0099a0 GIT binary patch literal 3285 zcma)7TW=dh6#mxUn;oY~-6oCOKrf^v*SbKt)M-l7Hl=|i4M`ekfzpk=Nj7!7?s{Da z;u-OTgoK2I#4D9hg`k2IQ3=6Ik@y|F@E<7UJG<-H4hBWCXTCXezBA`Gv%mlS)6W1- zVk3zjTu(s9yE5F6!IELgKt9R2AcHMh%Ys&9Se3yM*_wfyN$kRP6GfTVWhj|&O_WXC zGU17!V!$_0RSs!9# zmMRJcrW`k0dCyv*YSyanWXH?Sv|F%?vz}YFJ%59CwA)s(YAewH`0>G?pM9fXWGe5j zXO}E@-6^=$?E1zM%~s0AYNf$ccERGIlLZ=3{f#pD!#ko)78a;2tnn)gmw9TnVtbPe zQukc3ry!a4Y|FP77@C64F!ZYL6tfp7CGo_L&I#PR=-9=;!)2#fRFK^fGay|gfoJKH zGxHO33k0W~lH;FI5bqyYr1R&QLe4lSWAe00XuP|>g>8wfbK3S--NLNpS?jiMd-OX&&enm%TL%(19=Ip6SwBw<>h`Uw zRiv4&#v?B;t=V~hbl{o-#g(+xJ3QKAB3ysf_7oVBzCMQ`nt>#MZGo`XJgIP_whT9G z4Ha$HmK_1JsmVfiqo{q}xAHfqt#VL8-fUh-o}af$6A}*Ls#RGHyMQe*NpEN8CZ{JD z4zcdpm1>cMc;KtiS98qht9jAZ*La-iyYs&1lvWh%t(7gf?xB=jk(_s{UfyP3%B^VV znB$VU6oxU9!hRe`p-+aRG91Ix3XaHS{{N;+VHV>lJcpAhoE7xEpciC#5ih0iI_4DY zt5+y=>Ri<+7NkBM4c_!Sg|QTF<2@PPXYULj3S%D&a2P#t`|zQ9{9G#oDO|%_46S}l z*a*x>AmW2IZ}VCeoe$({G09fBY?s&-BaMv}C9Lu4G`Y)EHtE+Iv7rH*^>LU_cMtg9 zLPbncOx(*)!2zzGAbzrfgE+(m!G0XJaRg6s#WGMSCY1ZH8hGiTjPgA() zq$j6an~d+&q!e61WU?J+VJ6k4?1}4wo7k~ux2iH`md={so8Xc@ghsV!$vsV!$_3{f&8B_m@tD5Y`2;i!r}?Io!)UhZeh=qxo*C`Jm$<;&Be(PuOi&i*Rs0wiiB!CToBW@LhH2Qi zM5Lq0y-6Yi9-qipiA;RTr{OiC1U_e-rihYcfDdPfVg7|(24)_i+rVZ1Oyv=JLYVju zSZkegEQ%^Ga#ZJ2bXXc(lWItuv46!G_P4ebr^e_c&Zx{6f->_Jr-)ZZ`G_VA8Y*{= zo>s?#V)k~9uCkP7=g=J(Bb#WyA@XESm5q!V?U+*FaH}n+1zW6bKr%C0Z7Y@2gDrh) zixnrUw{?*&g}y}2$FYuiEYMSpWw=5VV_KK7$bjN}Sf}v@k%}`c-`t`MgLcN1@7-}dLT@sn{j%CUmC IgEo5SA2R-LoB#j- literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/TableEntity.class b/target/classes/com/huoran/iasf/entity/TableEntity.class new file mode 100644 index 0000000000000000000000000000000000000000..16cb21f0d5446c6207c0428938489f826ed50794 GIT binary patch literal 2277 zcma)+TT|0e5XU#^jg|oAR_~}>OHrbLAQ!9Bkq52FScmseVhOehlcqX+E1kh{#s@!u zAIkB+CvDn>lbOEk$+_(A@9ck1{{H*@hln<4KSLRMo~ATyv)N&@%Vv+w3pPbIFH`g? zMXwb~d&WuKJTw}nLKEe4oy9y0eokqj7y{1Cy#TSJZ%2?3PT8?Yj zx@9y!>)5osOTFaOTMhe-n7}Vp6?3>{{je?1s_SK|>0vWnv1+#AwOnM~3T^KVl%U8_ zs&%8;^x6GyTijzbST8%@Ojn`go@HBJQK49V`B3-rOZ~>gE zQ9m|Zi|6gdxOZmZ7V}Y9;#hEPt!8>+#mAb;FUyLmHTzCY=dT}P(CmBDJ9AEt3>WwE zOcxl#h+hg68AhD$EP=fvNVJ5cgNc-YKYQf!1355LMgXwXpqc1guUFjdYm0+Rnh_Uj zN1tq$r5l_9a{VG*UUY=o2_GLcEk|YDO5Jv1fqJK%UBAJCU4J^>*=5b!EjQj9puLu< zI4!qo9$4IK*`B^x<#(si4Z5k(Flic%uojj}YZ(G*Xo+2lx5Xf{IJo`{IweajzC z&dsVv5Ap6Z_)DZnZIkX3w7Vjr2sHXrj3$!Sy zQ#{PHDrH)tJnqd!?yFNg%(Mok^#~^Ji-2iVFfCJ|9kwg{6(zz(-(E>PmdP${78`y-=6oVmHyNfbN~jfjDpxld zuH-&wOA)mEl7dQ3flZ+`DN`!UbRcC~moufpOmD&TE`o_)b-*+&m^P$LLt&;vDbq7K Y(@>b{BbX`?O#Fulm~w(?6IP|I|7Q_;UjP6A literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/entity/UserDept.class b/target/classes/com/huoran/iasf/entity/UserDept.class new file mode 100644 index 0000000000000000000000000000000000000000..6fd474fea4fd36a4bd974c2149b33711690beec3 GIT binary patch literal 3611 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/GeneratorMapper.class b/target/classes/com/huoran/iasf/mapper/GeneratorMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..8475f73e96b472c3106765926fa2147ac2f7c4d0 GIT binary patch literal 1218 zcmcIk%We}f6uq7{O%tHyQQkYCsBG|tU8+h22~;VCiXb+uZYE~pXvQA=h{$K~J1qDB zeu6(ioSA{PqNzF(V&SoUUp~IaXTJaZ`i+R5(fuyn>C)XU-4nFwRj$&opXcv*oGUNr z%g!*hg&eaj^u$J4EXEwPFZ1Z7`W%$;+8T*%rj3^+V}c*1BhJ*I&Yec<*htO(qf{p7 zu#lsLf2E9a9IP8WIsb&zIwcDgc*23@L0wbO)k77gc5=jy;ZqJUS8=iul+3N5-biNv z5giOa{ssPSEBJf=Ngu5sdIF8>sU5TnWq&Ef*w~IJ*~5%Iq$D%Nauvf2Dl)3 zuD+KeUlRnOVXWZyv9b#7Q3vZa?0N}xF|AiijD-4h3G+sR517Qb;%OZz8?*^;mC^ww ZOilPTxUSQUWv(q4o1mL?3keC`{srs%f&Tyi literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SeoMapper.class b/target/classes/com/huoran/iasf/mapper/SeoMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..a7e46755791a3387203b2ed19c5a2a05d5c2c53e GIT binary patch literal 297 zcmb7=Jqp4=5QX3R7k@xJf+uhqyNHE_Rm37En8a0Al5E)Q3b~qv2k=nh8b!p;VrCx0 zJif==?w2coIYt5c0R{nv0)to`3bxKj0gg_5X3DrY&^9^A)P_;2b4pm}YNs9Lb;4Fv zW#%eMwULx_SxQ4IuH>eXi^gzt+HgUNt3AoWDqB-5b+`-#hOu@gm1~uG;Mi|pzS)y3 mFn!{_-EY9>PGItzQNU;UD`ZbVpyjLW-vO^WP4A-D%-{id4qA5r literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SiteMapper.class b/target/classes/com/huoran/iasf/mapper/SiteMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..8162050150d5a7cdc5300572872647d63b8c14db GIT binary patch literal 300 zcmb7=Jr2S!4256#D?bBVfeYY;t%!kv3B=G7xFwXJwyDwtiK{Vi01kyn3lfNp!S<8o zr|-%4$Mptaj!}SqfI)zvz#vj-!PXfm5N}R=X3DroX&0YlV#7_MbBbB#YOfvTmzb@p z%FI=iXd@}-vXq8aT*+-C7meZQwBdpjR|k@XRrW%WvNBwT0>els@C5NP>o`;Wk@PSd;SH8Xeu&cIv5 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysColumnLongPageMapper.class b/target/classes/com/huoran/iasf/mapper/SysColumnLongPageMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..5f873809368cc04a784eb31ba8a9fbd781f30ef5 GIT binary patch literal 420 zcmb7Ay-LJD5S~3X@lFL>;cCm9#x5eLU=>je*iYh`+atRZ_D9I8S@-}xlsK0Y6vg6- znOWGG@9+KN^$h^d;3$V#4hK0LDwtNLbrh4=3bmD#k+c?n^=?$Tdaw#dE$h2 zs41GzcPU`QUZbVH*B-AZ=-csmJ{~L+dva(fJfn8e!~v@zTyvMKE7`U8)av4*P%x`F z`9|NEPUz=%NQkZkz)I7jTek>fRgq2$DX*cxL30|HZmA1+kqA7T2rOV6G*b;-;L$nQD zKNf-TkU$NCOj9$MtVo9d!T=f6Z<*%f5KB~6+7_?0OhT`;O;pxSLOS;FOd45ru|sJ` zDQ#mdL~f(31BVM=)EdZTm5vP;-2f6!LI`ZUDcq2_7ZR@yQH5<>26L`f4mpHL^2iAW zKN68up*>mGA@^D_xbKFB<2Q@SkeQr*lCg&S9e*RMu{5NxU59dCrmHGMMN3Uo(*bg- zgQyED_(2TKAWPXu$`}=v!Jpgk9Iiyn)A+H9J*`NmJwfABvuxj?sGIR%uTNE3){e8&?&k{#L%2J zuo702u43>dElCf_iVdW4Ns75VTzv9QS?1p(&q~BF5XL8~w(hFn)wAHyx#+1P=z^z;V8Qz|X1lYrNy(puzM2Ogz=slNyMiJp zc*smbCg1$#%iH_QD*#-;Q4X^l4stkDFs-<;6q7d!*5!)Uge} zvrE_wHAN16n*wU*4R+M`#^Wsob3bmc#s|yfJXvH43p6%z9IzU~+}S9nc}pSig0)CF zTU-|kW|d1`n>%iW;`F!DZHMy>qk@yiB*L9};=pxlZme~26buT^O6MD-p7hcnkH|=0 z1-KQGzL%TnzQcab^EZKlC`FB zBo)lOP!uF=PRF@f$Sbt^*Le5wlS3@!&%%f>;a?hVq*Rt!p(Lv52TI43Wh|OOuqSk2xmO9ekmzrDissuXquNKS>gt0pV9i{c#+TQ$4l@#GJW6%m>||2f=+_TTQsw_W~#Y7zv{aZ1-1MUw!5 y4U8IoJ5nc5hX$^jxN8vbFl}ONKnvQKJ4N>vM#mslTVUI;Q}*ma7jqNgJ%CSUfZPfI literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysContentLabelMapper.class b/target/classes/com/huoran/iasf/mapper/SysContentLabelMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..aeacb6270dcadb15383297e0326db0ca9c72e39d GIT binary patch literal 414 zcmb7AO-sZ;49%?Cx~qa$_Xl_qbMaOYRPa<;u(0>E#_lYgnKB7mm^>>m<(ggzJF+b<>NPj9C>v+6CTH}s zOK66gq7HqR0yfSw8tQxYct?RB$LIC9uu9I8MNQ!a*+v})tcGy!Y?NO~HFw2LpAUh1Ihj&H4XQIt3v6r7jNw@5uTD@HvEMEV)PEs)S% vY;O52?OXky#0pM#%}^jm|I3X`fr5#|p7;)u_a#r@0J5>>a40pC{uJN~+f#xv literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysContentMapper.class b/target/classes/com/huoran/iasf/mapper/SysContentMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..2c4dc153f9f6afbe8867367846e04fbfe12a338f GIT binary patch literal 1921 zcmcgt-BJ@V6h0}?0wN*;f2BDD+1)HjwqqZ}m+`^} z@Fjc%-@x(PY=?rh2>xB9$tLG~=kGhGU%r3(Ohhl~ag83<=uwSU7|jdgR1nKu5vf!- zrPGG8j?u@pMxYbk5;{?#&Uw;p;nikwZn^y6WNIPG@d-7{vlDF&Ai3^!+qpI(eQ=d3><5{(QKVKpV*u=|m`;;B}A7Xl7fwwhniN5qOivG8%<-$!G)y z7)>-)ggA18n{R&-!>hqD*z9Z&HbWGz|5d28w&co}m5aUr;)B*Yqp^;NbEI)Dl5RI|#mcs2xKYvtFsr$h`)#?Y<2*_C z^;_xoMP#?M!R1yS$300#Pu3boq9b@L(ug;mQE7y_`>Wikm=}bDxe*lt_5CG;&u0aE zQm)IJUE5>VW-P2#hbr(vqd<&it#Yy{g$dgIAin-xik$P~e^O(RaYoC5FA(w)s-nH^ zmWt6g{S=Is0`-v5yWdK_@9iOd!D#U~m!{h@SCRz;gRdasX>)ZR?qX6D z9Q7<{pW@<9>qrK!?A?Kbt{g!k%cS9Ngq7R=c(Elv+`OsDrp`?uk#987e4m>o%8Q}_ z7%iRc*fWi~`in*_fk5qN#i%|#Zj;jIpKW4%_B*kRo)I59=Ld&hWyGk0HG)5r>L}(f zjp1Cy*F=SC*v5+^R)r?%8usZ5ei%(*UAHt2mFcUi+@Ki%7FNa>-NaT}m<8Ic;b?P1 y9GC}M=`+w4PS9?9@u?!hp0^9YU!x0bJrJ!#u-5hC_u}sT;!~I#G~f#ji{)n}!zEO6rgowe6^4+v#T; zsT(Q|+V^erR9h$1ao>xhTlVrWUav;MGFr!mH2W746Lc7;9Q>X1A-~QQ=B16UmV4bM z)06FFqrX@aD4agVBS*&45KURc)<_gpW9^aw=!{eU)$lFiwg{U^$n p_Lrf;@!!x2DcrwOPZbm<>FlKcMXI~0POyjR*fZ>>K27r(@CCsac#r@9 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysDictDetailMapper.class b/target/classes/com/huoran/iasf/mapper/SysDictDetailMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..880f243b68f1e75f82840e60dce928c0acfe8a8f GIT binary patch literal 333 zcmb7AyKVwO44fr_s2!9Xts<9*mspo>pIB2uv^U5Qu(nI%FUq(2H>wUxtY8Q|@DsYPJX9 CO=#r+ literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysDictMapper.class b/target/classes/com/huoran/iasf/mapper/SysDictMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..8038abb2d24641ee9213895b78b77379b8c09651 GIT binary patch literal 315 zcmb7AyKVwO44ehR0cjB5K#iMp7o~_G6^P=#z_%=9$=&T~A4vCWDe?h)6w0!pNYYW* z9?SO3$mh%F7l0=`W*B7{XP5|#3w>zV2de}=)<-@uRoonCTOO74`C6KqN;b9LnLu?{ zve&Myf+K0HqMF-QS$busHVHnbgZE%8H>BC^Ni|;kj*8ALwe+jh!Ka9Ht~n{Bm_hA=mSNJDIVRpeA>ToOtcK*zCF^Dd7(DV}0xU z8iBElF?(v0Cp^xxDwsWC-!bhovLrsXPC;2}v$XDBQ!5y2>QI`=tXx0+1;*}>F!ufj z@9^antes~v(wHx_)2)c#2eh9g#^;NXQLQ(O4Utj`I*dBsC(=iNtWL&SS5Ud3D3jrh zSiV*eHLmD}Frp;H)7BLSzJNQB8pYZuP1)iBIX=nF-yj)pn#=~=qltorH^LNowtJl@ zSnUVfhjHTvj71^=x!$AqXNtx}*ZmcRa$nIaz;9p1VE9!93Q8g)^5RrkI13fAt8yAE pK~2kqb;q6KpM4 ys*T5A{uDn>vkQyB>jmJy-|xvQwZQW=yFg^T34SCXa2Mk~z6r5=NcjnSYroZb~}jXIZ!;Ep$ye>slSPr@G78 zDce@wQlX8cn%h^Abxw<#* q+nb&*uzfQwI490y05?VlFW$4O?7q%cI7?=V`jl}K*lU|j(i|$XQycz=!z(XNSS_uSV z=y0~Bvwz=rzW0yUHvqVVlN@F_9OZDVU|Q+cQcRu|^yP}ygdN!yAL|u2u_zm7uqJ2p zvrA}(nxYPUmjX74J=#S2Zomyl w6veo~p9Z&Y_)lBG>F=#%kQ=niXXHPx=B<@R`zyV}q&f!pUCihc-Pv_}|Z2$lO literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysPermissionMapper.class b/target/classes/com/huoran/iasf/mapper/SysPermissionMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..ec45305839e29d87ab65f5408c0aee07f5c61c4c GIT binary patch literal 621 zcmb7CO-}+b5S=2hf{3UW&qfpVU@zVG2Y-M+$~Y`U z)Oe7?q|=${d-G=c{_*+-09SArK`(;+2o4x@9V*QH$S5434h&At;;EPku7u8c;;qzq z|9lw=UMe0-=lcwL1N0L!9ttZ8^k^M}$P&oIn7mdZb1i(Z$RPd)-gTUrf=`06LUSqH zGe_;EpYvqyhG+}voHV+BL%heMK&b+sq?4(_FaBGtjTfHEi2pP;Hs_)g*#x;vDeSmd z7x3y8fi-4A1?utTo8-rIO7rMf9i_q)a%=)G<`qb(g5#O7$O}=HX!)IRIH=qWB(xI~ zY=-wz5%tjziA$`@#R3>y{2t1R^p6*`kM+`)3K&qQ1>ZnIlL3Po*%tj0R%cL$2Ki08 fHE6qZY?IZX1#LPzi|QS+j-y;{mD`1GRkQaAC9c0H literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysRoleMapper.class b/target/classes/com/huoran/iasf/mapper/SysRoleMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..38870ebd99292ed0d128b7f91b9d434314e40506 GIT binary patch literal 309 zcmb7=J#NB45QX0+fPplKGo)r3I!6=~RG>)s1Y%vr&v#IpX1ghGc zy>?9*92Le2RopaUX~|ADo&4w)zJsw`lV1-Z zY+vLr{_K3+TkceNdd4fx%I!2xsP!XkYE-*F&Eb@A-{Xz28C~|-tD$3%dKuMKi zex#Xs@6&vIUf%&M@t9$fVVYs4FfH`4;SilD=-rtwOf@%0dM(dVg?v|8LnT|I_coI0 zN)Fn$b@WtOCuF#7#nFbny!7p=KR89}xFOB{K+*&qIx0H27WFz##i1!!huivR!s literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysTemplateStyleConfigurationMapper.class b/target/classes/com/huoran/iasf/mapper/SysTemplateStyleConfigurationMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..89d59c59cc3624eba658f9d8879dcffd153661b7 GIT binary patch literal 750 zcmbVK%SuBr5S`T8+WM*waN$l6>c(tbh!sHvL8vHJ-A`}F+mw5gOCE)bf9Apu@T0`( zZLJSnR2M@|CMPrJB=h?A`~m<6uvvw*Dy&ywL%?=S{;p3QpC@#$dt`ZYM`@OzCjp1e z_5g<{6V$Q1)ShCptzS}m<6Q76k!|ICOF-j_eBbnL&|*rStP@c8lfsuh0cD?O+@aP{ zu|^*(+XOe-zr3P(WI(pf=u(GNR|XA zBV$RXm}O+;89KTu;LI-0jeb;du!YvbQoUn>jp#xpET#F=^*8>w*Z$~N1swf+w~443 zD)0w?PR7`=0CtwjKUl5^5K!WnInm;5$s%XdkD2AlRZlp`~vh$W&_Ex|9Om=8F z>DZebsq;a|a^Fj!XO8kZ!pD*DnSEeKn&StFOF9kI4Dn5DZ#YSl1|#)TtuSkR4xPMc yQ`B$ISB@9&51th64n}_8JxTvfQdpcvQ7D%Gm1Ux!a8c^Ad<_L%jr|&vaaMb>uxiZ! literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysUserMapper.class b/target/classes/com/huoran/iasf/mapper/SysUserMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..741db4e083fe4f95fbfc7a140051d165c589678e GIT binary patch literal 975 zcmcIj&2G~`5S~e!raw?hp}-k|R4&Y=HzOo^K#G)#suA2L_SD(R-gS4^5qS%qhXW75 zQ}86HV>{45Q>hZ-u-+Zd&d>LKv)_My{RRL>@N57F19&okrwE&M5I-^@B78XvXhK!gf#h=(8;rB0W^Qbtigi=J{yODck~Vf)JI|I3hjW@a@^VQZ7x~ZR zGI@1-fz)}SQX*#@nTBmjguN4qQ2I$kZGkPzP_NU zDX9rUf5t_vysfEP2-}%zV2YtVcL>Sh=z?cV1>2m4HcBpjA>s|C|E36`XEFp?%J5-w zA!+QWTRCOj5O7tAr(+Is(jIRTBZ@xGX*>_jbg3HJ_t@1wmG`DlDEkXf7yr7!fbgOj z?&Y@2uFxNMb>yxQcl{#JtSUe}sFx8AzWEcErfq1ILp2D)uF$HocUu%r8K gPd^CvblnfIt050yPmLy|kMOX)+6C;xqt<$S1(XOl9RL6T literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/SysUserRoleMapper.class b/target/classes/com/huoran/iasf/mapper/SysUserRoleMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..fd0bf8a7735597d04f9b06c13931ab405cb09218 GIT binary patch literal 321 zcmb7=J8r^25QhH+f_XHlat11*;nQtlYRcKv`d|Xp zUCv&+whE34V})vNTe0-QPIi5}?hihKvD}bm_fFDy?K{dk_vXaDno82=RAH8xU<=vk xDjGlCOn-EiR}zKA)&5rP*YMxI!sB0dg~)gp{8&L@5MvnMgxHPx{D5&^lW$cMWNH8a literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/UserDeptMapper.class b/target/classes/com/huoran/iasf/mapper/UserDeptMapper.class new file mode 100644 index 0000000000000000000000000000000000000000..e0c1052c87c793486cd9b4f35687202a4fb68615 GIT binary patch literal 312 zcmb7=J#NB45QX1Df@5eRaRyqZNoSNIic*0nP!2FQ1FU6xt^J9_)hKd+915{GL<)2i z^CQj7d!Od#c=!hJf>DB}1ZjeyLb}r1hJCQ2u$h$31|W|2Pm7yG_u`RFGyUCfCF$SG>r!#L`G1H zR8{{!)$M+{0+?bDp&OwWp)b(es;p$^jTFe%M?Nv-TxRr>9A)a_b*c+WSQl!iJr(DK zow8N#Ev4E>D!8hop#@vHsoPn7aPZo2Ns8^BWa*SU)323gWwfv2c`VT1YHw1xRC%x+ uy=MO!lLv*s_+kC7^fdd}78rg~3k15ausZ?*jS$W7AcU?}=QcWZjs5_iX<`@v literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/mapper/xml/SeoMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SeoMapper.xml new file mode 100644 index 0000000..287da9a --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SeoMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/target/classes/com/huoran/iasf/mapper/xml/SiteMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SiteMapper.xml new file mode 100644 index 0000000..450e622 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SiteMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysColumnLongPageMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysColumnLongPageMapper.xml new file mode 100644 index 0000000..a8893be --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysColumnLongPageMapper.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysColumnMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysColumnMapper.xml new file mode 100644 index 0000000..5200724 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysColumnMapper.xml @@ -0,0 +1,200 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysContentClassificationMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysContentClassificationMapper.xml new file mode 100644 index 0000000..be99075 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysContentClassificationMapper.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysContentFileMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysContentFileMapper.xml new file mode 100644 index 0000000..32101c1 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysContentFileMapper.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysContentLabelMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysContentLabelMapper.xml new file mode 100644 index 0000000..020ce5c --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysContentLabelMapper.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysContentMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysContentMapper.xml new file mode 100644 index 0000000..a7d2030 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysContentMapper.xml @@ -0,0 +1,275 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysFilesMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysFilesMapper.xml new file mode 100644 index 0000000..ce6bfb1 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysFilesMapper.xml @@ -0,0 +1,48 @@ + + + + + + \ No newline at end of file diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysNavigationStyleMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysNavigationStyleMapper.xml new file mode 100644 index 0000000..e466f85 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysNavigationStyleMapper.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysPermissionMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysPermissionMapper.xml new file mode 100644 index 0000000..14ab577 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysPermissionMapper.xml @@ -0,0 +1,14 @@ + + + + + + diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysTemplateMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysTemplateMapper.xml new file mode 100644 index 0000000..187b49a --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysTemplateMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysTemplateStyleConfigurationMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysTemplateStyleConfigurationMapper.xml new file mode 100644 index 0000000..b36c0e9 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysTemplateStyleConfigurationMapper.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysTemplateStyleMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysTemplateStyleMapper.xml new file mode 100644 index 0000000..f5149e2 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysTemplateStyleMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/target/classes/com/huoran/iasf/mapper/xml/SysUserMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/SysUserMapper.xml new file mode 100644 index 0000000..ee24f1d --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/SysUserMapper.xml @@ -0,0 +1,152 @@ + + + + + + + + diff --git a/target/classes/com/huoran/iasf/mapper/xml/UserDeptMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/UserDeptMapper.xml new file mode 100644 index 0000000..35fd249 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/UserDeptMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/target/classes/com/huoran/iasf/mapper/xml/UserGroupMapper.xml b/target/classes/com/huoran/iasf/mapper/xml/UserGroupMapper.xml new file mode 100644 index 0000000..6a9d356 --- /dev/null +++ b/target/classes/com/huoran/iasf/mapper/xml/UserGroupMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/target/classes/com/huoran/iasf/service/DeptService.class b/target/classes/com/huoran/iasf/service/DeptService.class new file mode 100644 index 0000000000000000000000000000000000000000..dd8c83b77647ac9eb3af9e686a09b2d857f4f905 GIT binary patch literal 751 zcmb7CO-}+b5S^m1f++a?an%D}>_KlBPsW4<#kj_Ux3V3fx@D)XkMWkYI!4!7@TV3&L>AE-~l5wmN6Wwj^|_lI{9T=!d4V5iip#i_ynIwsjiu)YAx~e}d%v m`a}3yCHOmScgi?&9Ri^t{{Yk?G|>{>7S$HEA0m+2K=%z0Swn*W literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/HttpApiSessionService.class b/target/classes/com/huoran/iasf/service/HttpApiSessionService.class new file mode 100644 index 0000000000000000000000000000000000000000..c941138ff1e41585019964e1c2d639c41e4db717 GIT binary patch literal 2884 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 HapeC2=nyDV literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/ISysGeneratorService.class b/target/classes/com/huoran/iasf/service/ISysGeneratorService.class new file mode 100644 index 0000000000000000000000000000000000000000..e3aa7378a55b44432b478efd185dd155fef9b556 GIT binary patch literal 681 zcmcIi%}N7749?X4*!t6Y65pT&aW38}f(lBZVqv}Yl--TnDYG+WX13VJ=<9g!0elJH zM9fyj9ux}VVF<~W1KJJf2xxoKl!Obd?=jZo1uVP6#O5+ao2%3o zGGD|Pl%MIsOL`1sys}2Jn(EGr{y~xnDlBBQ@Hb@0VX&^> z`<)@Nj$}>&Qw%5vtDXWnw-hEe9ic}6jcd1X`H_^>-3PH~P>qse3xoHALzH@*~551*R0B3rnGu9fEeqrtiu5xKca z=%nl*;JB22T|WN-%b#jkmv7#?c*=KF7r>hEi2+oq0=A&aUX8tG1?p@X{I*LFnhdvK Rhto^ACSaEhFSi2s-vLTf*~b6? literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/LogService.class b/target/classes/com/huoran/iasf/service/LogService.class new file mode 100644 index 0000000000000000000000000000000000000000..fdc84e9ad8922843e87b2024d26b84d307e94f61 GIT binary patch literal 311 zcmbVIOA5j;5Pk7iKMOsB2XGd;tGE<|f{UIYt+7VhM4CkG)m(T04<*K`C@x*h%ww4M zVXn9H1;7l00Nnt+0DXpDEHlNeD+R+Y+Vdl)oU4r1$zG&3j8a`t!gV1x+EGy@+)8uE zogs0uLK&$Q8Brc(Drgly!MrBzoG!T{$<3C8veH%*S0>U~xCj~gv36xDmNNIgL%)4- pCyxXS$uRm&%P{>TZij)P;j8JN1CLsDZ=+Ms;122RV66ZE literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/PermissionService.class b/target/classes/com/huoran/iasf/service/PermissionService.class new file mode 100644 index 0000000000000000000000000000000000000000..8bf9056c9de9f7428d7d677139aa4e99eaff5eb5 GIT binary patch literal 1310 zcmb7^&2G~`5XWajn~>0^A%*Zw`6yCyVGnRXO@%}cNRbk#FmT_*gS(aOjds@&el-p} z01t(jwbR%%Mx+PJ-kI5%|NM5=zkdJt2>`F*umMjS@T>vP8SDmVPfaBH`d4Z6;@Z4yq#RI9k}Ops`f++r<1x(gPKAo3uM!@mQ(>ilH06Gre>KsJ+Yg;G*K%2BK3y%UfXZ%5A@5 z4|N8Fik@rqZ)j~X*n(|Z*J-s)*NtA+>8U}JTrIdkflJp80GW27O{P3#kJcTyS+%=M zuKnu7x5#z-QkGshlnN~ixX?S*uDj&A2loqk4>EZV%h8WkiJGJ_*Zdd`vi6?*0oQhG A6#xJL literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/RedisService.class b/target/classes/com/huoran/iasf/service/RedisService.class new file mode 100644 index 0000000000000000000000000000000000000000..789aa0a60cbda347c3253ebfbb4297632567b67b GIT binary patch literal 3459 zcmbVO*>=-b6y36uC^ibgDN_atffk$r)IuSIP=*AD5;8!XgoX}Ou`h{;ExD2$Lg#^g zMEe1K>O;$FO(|=&eeO4Pb#-4!b`;xPP#!Gl4(IH1_TA@P|MkyrzXNy!-z3q4Oak4Q zOyVluO5z%(R9sJB8Z$|>Vm5&}+>mQG+51RYt=$gR&9r7(lID?A0qnixlH1IouFKdl=^p-i|qp_zCSyMabSZqJLtf22sK z8iTlO<*TWrn|N(>IwiwVU6He`Jn2)WczC3WpGTV5hf$S1v!G{%M<&#g;qeG8(wH?@ zEyF8I8b_XOd%iK23(_A`yzb+71{)$+d$)_{L8&UBBipw&b*&<=AeptxPEJgkQj4jm ztWHQ_DCnLqTb@}IOQvg5pqDMn_6*OoEfUhaBwS`MY>&Z^5nrxj8V*2c=tZB3yBb!p zroz;459-pktH8QLk_fui~hN2Uyea5k6M1uYSjP*(~IR!_yzs@CiQE@EJbWFoG{se5v6p zd@ao%vO4O6Z&sk&LYP~*Cvuc{hmTo3ODZ`nbvN>Yor?9oX1J6|UCjk(W6|0fx9x&3 zEGjFtm3BDEl359sm%?&P%T{rwKFfw9%CWoYP=t);)bnVj&aAmif*kydqADCR zx2+jh=Nq?Dg6vehef+y8xIC^lA!_P>Ftw%CHltJ$78};_sLSdF5{V|53JaL*w0m|i zrC>KH-jaN1Ti4dN=T|LH`bjrq*%2)LCX&u2LNr{ z3kI|0SgSeKa13d#hmMbNqrxsdNK@(9U~JNHpEC44c0NVx@*}i8hWdvO^a$-0B!1+2 zJd#O2|2H1SF1p+T?5hFxg@8l8l_IzKDFw*GI36P3q)*99r$nkCIW+tPJL1@)E$Ig~ zK>7xKphLm-8c=5lL>D;09AiFGBF1TOLguOCwGb`Cx6CtDMSB7*hCk6ElZ&!=B9c_9 zhLvi@;_EmWdcPHV?;7OU?EJQNOr5u6I#KRUq8+FBzxhlArmF_iwVk`vcJ5B`4}EZI z1)e}FJ@-|!3AppmtlvMhT|RPDf1@Pw9ECOJBM(xIw67soPfgARWXiA8j5F>B(GjoF zdYXp3C2^KZQbKclOKN*1{8OZsAET@5r3!YFi`^CMsbFtC$rmHp_ts+Q#b{Kjqx5-> zzZgU2fBzcU4>==+)8nU0?=!={V&8WG>BAN5_fv221>5DPIl;2KLcwNOfLDF!KubL} x=$;Td!J`?$n?$%k1dX`C%tg*fLAOKs8{H}{RZm6+8N+4&IgSawWieg>{sr@UM412p literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/RolePermissionService.class b/target/classes/com/huoran/iasf/service/RolePermissionService.class new file mode 100644 index 0000000000000000000000000000000000000000..be1371a3837ff84f3260e73903f542a9950051f0 GIT binary patch literal 466 zcmb7>&rZWI494xTt!(_i@&s@IAK-vg#1U!IP^VSeJ#EdFsZF*dt>~+9-~o6jL|Wj` z!G%L&Te3g@zU2Mm^$h@S;Us{=0FDAUMmQ5$HrF}N*c8%QsTIQA#Wd9gtx9c#A}Q=M zRhkTMsoNQC*a+uG=Db}*;pGD1^oiX{XER|$!H$hZ=v5kF6w9R&t~88br)yCO%7t1| zl&m>*VY@F8x{#SJsi+e#Yd3jmiC-M628%44N~TPc_$#^p1h$9yw8FRxF}0B{JKMOZ7sdJ#4l6ou=ywT}$8c3Y0_@ouC8p|}*`9YV+45QU%l3xoxnfdep$c9*KlN=Qg7asnp|!6>n-*pA?8EI2?9Rbc`M#FE9# zJdNh*dz!!h;|ahg#u0`QMiF9xQK||pov&Gdmpj==Dy1%HmF+lp$uc(;Wztk?Z9G+n zOgd$MOK*wyjpY3 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SiteService.class b/target/classes/com/huoran/iasf/service/SiteService.class new file mode 100644 index 0000000000000000000000000000000000000000..022c1da2881e4c058de4b838f67bd15fd174d107 GIT binary patch literal 311 zcmbVII}XAy40ZUld=~D&jtAI^7?F@FG4up!F<{gts7VmL8UqL5P>8gER53ExezN>N z^5c2C1Hb~tAq+wohA}i)1_3%((I9xWm{pwmZDW8V3cTAX0+zqyH4u$hdQeR m2$v>(mo}(+ZgX5jPMZpyR9Sp93ECn%;+?nc)lXFkr_3 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysColumnLongPageService.class b/target/classes/com/huoran/iasf/service/SysColumnLongPageService.class new file mode 100644 index 0000000000000000000000000000000000000000..b478446f2ab1db89839463c72a17a77cd8a8faa2 GIT binary patch literal 350 zcmbVI%WlFz44f^G6nfzY_=UO>y#;YWs#GZwNcjRMxM5MUi?X|@`L!PU0sW|okb+bd z^}@mS96aM0e|>*^0(izlg!>4i2xEm&stdzD)S}>$9UquVHU+J+o#Z}Fa$8Zxw$d9L zsA@9y+U?8WNZ!2|r>!9;^+D%Cujvn%ccg8wH5=0G-bjqszM-^nOIwD@B-RvbE+k&W z3ggs|ylQo5>lb_$xm*fBO6efQ|Da>w2HB?ZzYpd7(5H0F=eSl#% Fqa&KUa9scZ literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysColumnService.class b/target/classes/com/huoran/iasf/service/SysColumnService.class new file mode 100644 index 0000000000000000000000000000000000000000..787a59f5451dc00323bd56c74847fb97d1e903d8 GIT binary patch literal 1468 zcmbtUTTj$L6h5;oyDWkNx*}fiZs0-ZLEqLGkwk-8giwTpw{ClE2c|RZ%yi@aH6Q!| z{wU*VyM@ZK3C4#>=3M%H-?>bG{r>S20N%ihCOmDzvnD)euxR}RyEs7kISr!(m1FR7 ztsCfs$Eh~H;=;Gz_&{@meZHw>ny5n*QSA1xf3VY8KVq=3jV{*Vu5Sp-p|K1aL7vHA zP73P|g^TwMB7^r6p?CdADBlUK3X&0g_t+o!Jat0yE+KUowCvCpDRlQlL?5Mwpu_)! zemhn)HAA=|_e#FbJEC8%7PO5jJrGv(BneoOT18X_7V0v&48BZM)%`2GEcasL$xgJ& z8({e!@lVqn4tA*N5jwjcqnGx|ZXB%@-IBhF_?B`Qq3Kjyo-;y4RZp3;K34k}@64%h zs3BV+gDDYaBeud}X0B#RNQTU|sL*1+su0aazE=#|S`{m{8DnsgiB2}8WUzLb-t~&$ zQXYd@7vp9uWS9}o5n-k5BtL#bA^e(PyNp>-xb~S&*`C1m@8NANE{zvr<1`KL+ zrsy};sxzp=G+7O@rWrH=$Tb5kN*TFkDRPZY4dy5`KRI+AZkz)xyIZch#^!<}=Wl|1_{+#9(T>t{gs&%hqQ>L}c*s{es@fBzD-Hk)4^4&8Ov%56DM}lhr^F zMDWnvb?EA<>f^`$0N@eh41)~A3?qeMAuG!vHb!ALU-O2kV!NW(a&2_T=i1d&va4m` zBGqllLHv6aJ(+DV){C>`O|ubgXjXiI=Z^FiUBi}y{gR9g5?U%+KXEqE!lYvFWhpwH zb2fj;6-I@NjW$!Ml9RjNR=*|gPev7b;@5S$}`18L~_16w4WQ5qzqNS0Fg1#7b*hwMAzyF>VEDe{0k3UL^aB9w|^ zcc<8yo!Q^R_YZ&Y zE!b#yWJ_Uo^72>qdiZ~q!sIrN!t)(@h6)P3SP$`gh^XK70fya7j;FwG A7XSbN literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysContentService.class b/target/classes/com/huoran/iasf/service/SysContentService.class new file mode 100644 index 0000000000000000000000000000000000000000..acbd9d1f0c0279a21e76057735113ec07271b036 GIT binary patch literal 1226 zcmb7E+iuf95S?wBgoIluByG7!+Kf)d459(db06MM_rPQ2?B{~8Z` z03U@IUm`~hm+-KX_jqQ`nKNVm`1$QS035-SDm<#fVHF-T*t1=e1pDuk75z0Nkg2E`knS?20Ne7xWQx~LgAso zP&267SvZ4+2#vHA4um6pVPxRw^rl^1;*9|tP(de{_rVkZ>pi59Ipn3{jUWcy0)%4XhxL!o> wq|go6EufnzbPF0po6|IjZI8|t>=WI=YVF%;^c}cc6u6g0X7TsoL3(@m3&TxiGynhq literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysDictDetailService.class b/target/classes/com/huoran/iasf/service/SysDictDetailService.class new file mode 100644 index 0000000000000000000000000000000000000000..1c07656dec01fdc03a425f14d2a22d1441039761 GIT binary patch literal 773 zcmbtS%}T>S5T32IvGuPWeFFt?4|p= zp(i)Z3MbWzSK5)$lGBv5lT&2J?_8?Bhl2^uP-du88F@=O4bRuNi;Yz>R~{4eDEoB- z0o_OC$0iw~MSfG(31~75kJd^k_WeXaJED|P3(LjNZRWkHhZ`5hqLzg2St{+xmoh3{ zkHLC89A)=)Exg@&yA9z46f1l_jV3Dg;d(lk*Kx|uC|0r`&4Z0`JCP}DtR5(1hEIQy z@ze6MI<$a`N-L}UEujDU!?#_^W4?}ntAD6%(R8s-OMrj|+YW14G+7|9%Xy2lb^`)- SdsWERfDYR{+J}R>a`+8dx&Wa7 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysDictService.class b/target/classes/com/huoran/iasf/service/SysDictService.class new file mode 100644 index 0000000000000000000000000000000000000000..dfad6e16592d95247d41ad8e5f361a71be8bf3ef GIT binary patch literal 326 zcmbVIL2kl844kDcDR8O8A9}10a7)!wi-d&4Aurf$x2dCKx61A!@-+@TfJY&c5TwG9 zgYB_w&y0LH?)CuYm_&GvFp4l17$uw;=|iOj>?)TVNrf~StdpF622jjp4 z@KA`cvu&fa5{QG>o|$iczu8~EfBXc15AY^{mjUbtaKNBuM2??jgbcp7dP+~ZNwrL- z6D?w#EB%enam3>+vN9Fg@{`M#^J(|SD(16HX_0U#%!KEPYrNpjcq&{7i`ujgZ^M1< zgwiTKKtmzV`fUcgCunCXymn-;HSwkGxNBYC)EKKAKP|hV`Iv+*pJC8!_0B~ucxGk9 zd(znU;TeOn49Qj>%4s5Orm54no4BKuUnG(#A6nOc``G&ism5I5oIzOltYf^_f*aI% zgqF{&P5Br43|EQ)USvo`{1s+Wl^FC18=b`%Q!7akz^edWGbqWBnxL`zFSSw&)jWxm zAayWBdn%^XQ@3?v$e37ZmwdQ1em)&9-a-bE7^}oj&F}#cQ8R@LgLG{&{n0s&sU1i9 zNT^tbD&z5TB&;-Plo^f-i;1Dy{Yc~(dDo4C9!LLJ+%aWu3{|Gb#ZvBFR$l~q=LjYS zHy6)w;1X`YX{r21c-B_+GkE_W4bXD=KvMB;|B539`%Zhk0tNF|fGPtbkWQKYyvi0W zG*n2cl2k82KvxZb)OBbO%&993?$C9YP6@Wjv;+6(wM%l9?)&h-!?w%NB-I|Bhd#n1 af~^AIFg=DRg^7Yc^?_I6pTTo4z4!wTt}~ec literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysJobLogService.class b/target/classes/com/huoran/iasf/service/SysJobLogService.class new file mode 100644 index 0000000000000000000000000000000000000000..56386bbfa3e35a784aa21991ba97bd1a07ae2fb8 GIT binary patch literal 332 zcmbVIIc~#144jP*`DoJQ52?b!?qsBk0UH8R>X^(yXuz3G1y=pgE?UQiH2YUlCg{+TZ2i{enJu6CK7C9DX3|Di zsI{&;19!iSZ>fiiA%Xjgi@$bZFS;5ypK@J^`_3 BX$}AY literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysJobService.class b/target/classes/com/huoran/iasf/service/SysJobService.class new file mode 100644 index 0000000000000000000000000000000000000000..fb92ecc8db715605f9ea11b4047086c83828801c GIT binary patch literal 788 zcmb7CO;5r=5S`_t6%a+h@3Rpv?m=%Q97r_5U^HpseQ8%%({9Or5cz8!`~m(b*lwjmvQ7bBX^@G9vCkh*@z{v2op==`G^^zr;*i^KN~K! zNF>!<%|yWIz|Sw;Kh3%45vcl!RRO;i5w_LL*RUvZo|-0bvbwTQu_Z8WEbB2FVeXv3 zMN0jrb%y|f0-hp%B)3GM1Z9jIjLP_z0Ptz!=Til$$XcLk2;Rg~fI6bL)~B}DryA>1 ZJJ4KcRSJ-5wZ8P)n8=lPVJ~yA{{iQv!c_nO literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysNavigationStyleService.class b/target/classes/com/huoran/iasf/service/SysNavigationStyleService.class new file mode 100644 index 0000000000000000000000000000000000000000..ca34ed6189b5afd0932f16f48d7eae20866a22a6 GIT binary patch literal 353 zcmbVI%TB{U44mcB&~o7m_ynv9ZmD`iLaN}fU*H5cxJq_Wb~hrw#(@vuqY&Ew5(07I zV0#Xp@r+;Jo?if5;k3X>fq8+2!Q5)&IHq0<;%3JKQ_HTQyJ{zOEH}09sAAvgy-(DQ z6-Nz^Z3-k$QCv{(C`dnOEp%f)z-l5rB;T_m<*+4jQR7H<47WUJlQq1vacrermj(;# zQ(w!qw%Nn^@1;-Ki@iC6<=)YE@vrlL5)ICN<}$eaN3fZJ!9lLW{6=JSH1%W5rdhlL Dq2_W@ literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysTemplateService.class b/target/classes/com/huoran/iasf/service/SysTemplateService.class new file mode 100644 index 0000000000000000000000000000000000000000..4afde285fc9a774136684417328606a4d866dbe5 GIT binary patch literal 332 zcmbVIF>b;@5S$}`fi!gdAq886&JiV2BqR#+fwfu4A>SSH-68z76nOxTiee0rP|{KC z?ntYd+1c~==NEt(o)Zib3=@nLhMC@34zUsiv)uEMsbssORlb)Zq|3q?%Gnvcagj`& zbI|@!Mo)4IV!d{jyi`YB2)$=l@Ya$(qN~`FX1^t|L5G^M+ONeNN)D3FQ-x9HVpYgO ymyP-4ZhI4&Ud~Z?x!iCs_iOl{p)md%LE-g*41EQKPE$|K$Izf|+k5D@Gx-7S%4v=O literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysTemplateStyleConfigurationService.class b/target/classes/com/huoran/iasf/service/SysTemplateStyleConfigurationService.class new file mode 100644 index 0000000000000000000000000000000000000000..04b266483de159ae82b8c143a88989fdaf04fb83 GIT binary patch literal 648 zcmbVK%}xR_5S}8kf`54T0pwy2dN5hy#l(aJqsig}l-*$|*=W zL?s^3!=y8l_WQ}#_m8(F09?aa04D*Q2GA97o+A0t6eB7#d^QO>9!8kYGes!i=3+Qg z3nepUQaLb$DZ22NRj=L^q%%3xoL?(PRJs literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/SysTemplateStyleService.class b/target/classes/com/huoran/iasf/service/SysTemplateStyleService.class new file mode 100644 index 0000000000000000000000000000000000000000..ede309782e069a433e35b905ac3c44e4f8c5fab7 GIT binary patch literal 347 zcmbVI%T5A85Uf#T1ulF5-(Vl~w#K6g35kc{2YS~Qhs@59c@Xy3IQRj46k%C0F(h6* zbax%Ps;l~N+-m10Ksa({)p^AND-hHN~ ztvH#uu{o0LlDKHRqbOl(YN5IQ2G2d|GyA}f495==mrQC&w{a=W#&Qy!S}WyCsW8?) zhgx2Z?HtUmS1ytdXJZOb;@5S$|c$E2a)4|Lfg=^UksA|WABSUlitHqKf0o#nej@U;|qKpurS8<3Do zirpP)XJQ-L^Dg_h2@EKsgWxsy~$UC=r!Id{n_H#KF_)M{%y z)rU+vWt+-d;=N;SmCW%;zlpU|?m(Ns{N%x>mFA4HHv&dJ_>O*5FyGG zyF1d(&W!f=c=!RZz&OSzMiL`sNOHMV+<7AyzLq=Qa;mu6(yG{r(q+q1*Hmy_%Z>I_ z?+fmvZ7Od`d^@46)QYSytt~5j$68F_S_y9hXadwvt z20iFulJ?(!XMWS^$LHHS0NlcP6iGl9(52r{FkN;<`6P#ep6C~TyW!QEfT zd%tvdPwfQX^x<@gu60u4sZfFRRK$aLN_b}FM~368#n2EdrzSVjMcyB0i{6hmF|^Xg zd>os+QzxlcAFD{a_$YlMZ|6tbELX_{7+mf@Szc|=PQ%!ZEQ4oolU)8MeT4zNIz^HG sO0mSC1ZCP)Xjf)X1t94FYCEZ(N{8esbFbnyOGqC1oCbo9s?D1G_uR%xr*P^T7}B zqbz%77njPWO4Nr<&2+lY>Fzn*KYo7u4gg!QSq4&u*JXI)z^r6GSDHx&)~iidgk+cq zNh89k8W0v~u1`t#RDDrQ)@wZnmiCz*3a?Ei4H?EM2TCL1z;qyd9y##o&nN|&ksy+( zm^2MU2T#3L-GRj<_NZotxe*PJVm78eOOJa+77KDjjC&I+>ae4Ft-yo@h9V+~=7Ay| zB$-cge+SCc^9+Ckb18ZI*mI!bF->`pGS{ok13IE4ppj1+k!HSWOo8aEq&yuJBVCCj z9`;-@ZK1c$qjk09kv{>fkoAnox`9yhJdB0ZT}=lA2R>ArLi$9-24`R%=vc@@a?JW9 zOajegDmB?ZJMHm+A(^elG=%I^lj76>?bv`W_amwkiRa;e<8Gg8T2^M!vV-ia?8Fqb zhy6zC4s(UXGT)_bIw4s0C}5flwT{VW{OP6!BN`DYRxhF&(N;d5xGdHjUCQt_eF5u_ zf2D-G!oxyW6pOswA#)GgLlLpmxHC~})~hEj@>*rrAoftfE19YccuRf^u}TNp6Y(WO zE!zRGsbt<4RP|bs2O}L=PVGjN??+TqGreqr1ph%snDCYOdlSQG}gn7AbsUD-!N9(lFw{!**dh$M%{L zUZpD%=`u4Exa3TSvgi#nAh;dJ3q%hCZWm7Gih=oVNE3Eo(**uy#yAHShzrta{nqY` z1Gqu(yM$|eaSBHjrtvm|w`ts60BD+pxp7ma=rs?QbFT#(xLEYMQZy~Wavr#116Sc{ zZd$XZYj7R&%<{T{>D|Py1h+81+i(X@ckw=jQTMFVTnX-@;em~P2#<2Ob!&PIPjb^! fYkCIN%!I*63dn-!HF%zTzCd#+qkajm>}}&0z~cj6 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/DeptServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/DeptServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..a446d0ce5b187b2206c27ee3ad18a48e5ac3657b GIT binary patch literal 12131 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/LogServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/LogServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..ab714ddf8be852d0e4efc630ed4d20e7ae5aacc6 GIT binary patch literal 683 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/RolePermissionServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/RolePermissionServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..4639fc47378f9c71f14bfb82c724d9c658c0645e GIT binary patch literal 3970 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SeoServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SeoServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..7ba258cf6078b15f95f86589872de8b8853021a2 GIT binary patch literal 677 zcmbVK%SuBr5IwQhYJF5&66I=-{`~W{n zoLrTH#f1`>y(kC{FU_D-BC|VO0$7%Yuoj3qQb* z66anOi^YW!nB>fy%;PYxZ_h6P4zN*00rfIg%UCO8U7*w?L!l*5*xBt0%pTcGEl_Kd z(PwGg)9ym`hU}@gZC?$$%29?towMPZyg;Mfx3RoVty4yl@>kMpH=@3l6emO3p`be- zjuXa_K&3+iqeAL9@k9Q(r)*4@HkI+Xrvmw8n0l%2gEpS5`H}BCS97Xztdc~#yyj{C zjHW2s1PbGv61AqoU%gMX%`I0uHg$b{Oqm#K6R~Wh#*G>&fz9)jQ^&eXo>-(qV{G7I ztYM9I+SU!EPaK)Sl~b|4v+h>HT^VEeaX6LVq< zGrT*zBD_d~54Xv-%t+=KDDFK$JhEd3b8NFPP)CLBLjEqIig`u_#u;l7OZi>HGT#}0 G1$YO~{>tP4 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SysColumnLongPageServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SysColumnLongPageServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..99de12f7d1a0711136bc365a3c4dfc15559b1b27 GIT binary patch literal 914 zcmbVL%We}f6g^JbgoZ$&JiF|!u)r)>fKpYeDj^{a2oaRMXL2(&jO~#hE%RBdkXY~m z@K1<4X((!k2nmhG*YRGwhDg$Gsu$5Ak4#hXMnm>YBX3)2whto+Rg$ zm0E>`JlDu+6OLV#jLn=a->Q;cFFhs#yYG^X+R#h~omX^Zt&1vZXM@1=%=uD=+G|@b zyfSp={70FSvOz9X5uI2iod*DA3=3G!xi3c5@Qg&a|aB$>ikU zE6ygclet1wGv#%AUR`d)6V2%-9W;UbsV+!rQ&(L~({t@BR&oVfQ(amWljkfymXUJh zjGntBO_MXkP**8P`V`3q#w#xe{}bz=Q^r3??bs7D9Gh;zlf(58I~`l0V`QVLOTM6& zx+QRLoncGElMm`t3GDy1k0FvL7n_>o@7QB(VI=V4>J(k3=ISi1yxWA_wAS}OndSjr zmw6pZ?4if6fhUar9yT#xIpk;3%4;kIe+-J(>wJ>SGqCyi3&dx>=wZAv26k|R_hU9; X1Kh+m%RX-L+QV(uw(`zJ@Vme-Iqn+@ literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SysColumnServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SysColumnServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..82c8a8c42d9f07004fadc57848a88c24625ee39f GIT binary patch literal 9340 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SysContentClassificationServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SysContentClassificationServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..aaf429c016c94047bda31db12177857331d47309 GIT binary patch literal 970 zcmbVL&2AGh5dNIB2@QdkLV+H+6%P1P38YjNB@z-+;6PCB-pwQ(*tJ)-x9vU_r%FBW z06Yaxf|yN{RuH0AXtf@X{msueGyd`G;yZwS>~_$^P8*Ngc+$pGg;s8gg1o}3LF#gS zTsm*8W)mj*@#TgTmbN(wrCBN@~MP(0jp1A{#@VS`$kz z!G6vhCdTDFcBRg%M3{ymD}$ypsZo%^=s#mz`#M<4=5{4sGLv3#tX8JqJM1l)EOJ`a z%{gVE+Znpjr}U2N;_lsmuS@jui#ag@{b#E~Bu_3@1?feIE;i6nc=PwXEmFK~YZQ95 zi~nqfO#G?@Zs3e(Xviy)k(9rIb+kmb<$2Zejz}e+P?YtqXnLjt>o3lszR5uY-8mT8 d#y#101tI|4$EL_8wq$MKf!x;e;g$18z;AA0Gok){y={#d2q2UBs^cXLJk)x~wCve5)bDUi|Zo)~yRAF;O?M4P?@N49g>}lIlHAYQ#_( z*?W%2md1D5lJ^{!QO5N$R`G;kW3XW^$+V0)%rm?ig!Iz5yvG=-3GhElLSuSS*pa*t zc@5#ZL(A~u;&up(mA#4I=|iemp?9MIh9Z4ATtkWE1idSXZjxkw%BH!w>(8WhaalazpW$XSl$)cRNCej&f{9b-9sCQS}!UY1fX m3z=ot3t?~*3*_wfgc5Ph4p2@Qcl`RoaCD;&C)N))B4R8>MkG8_oXeeF!r0ejclUAOhm;)KM3 z8y9{QVw@&LBmpF3dB?N!c4pq&@%JBJz5+PFZVzod=;C1)kGgoQ&?!t=l2_PIGFRxc z%6Vfon=sK=5k0KKsk4!6OiW7on;Cwfu=}pEkqa7e;54TbYh5&voec_yiStt(O3!vW z@ur{)=RfL{j178XvgmxR&Gi9&Qbl*cp2m{4bHtY8u|j+A*+^mI)Qw4DJ7G(2t0E=; z-bgitoy27(9~sY$Ki}MlXDsDku5bzD&p9K_MVT)%8eYX-OGxT(4S8x!ti06tHp`P5 zSMb|G}Iag}t@67b1Cbu`Wq3GWW5Cp2Cae$yqe?549Br&B_1NS4Q?v zb=Nb*Q?z9IWv1k9VG|v(UHL5}M+nJ!Q#?KMfz9Wip+3n*3;j75*ugFN?h8Z! WxQ%VGZQPNyg}V}M?7i#c_ko|PaTNLh literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SysContentServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SysContentServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..66dd926b7978b7d015f55940438945c7d85415ae GIT binary patch literal 8375 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 Smi|4whjRhEH{UP35BN2p#Y5!) literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SysDictDetailServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SysDictDetailServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..ea15c60d2db22f4b765fefa38f3402f783fc625f GIT binary patch literal 6232 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SysDictServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SysDictServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..a19548754b8f5dc8a315f172f40474250510deae GIT binary patch literal 4114 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 Xz-{b`Y~zlsE!-7rE$>|=zYqKdf+`?F literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SysTemplateServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SysTemplateServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..f528c678139ac6c0fb243b68ede9635dc9d3c530 GIT binary patch literal 733 zcmbVKO-~y!5Pc?uGyw{P4+(MV4RWXtEvH3DRi#RmQVt}_-ARUIAZxE|FOZ+b3BiFM z&>vNGb_pu#iVLzd_8ULX_&v?HgcT5W+taq){CI37SYk_x!jNF2Ny;iR4Ikr&zI)fDD0o-(l4a} z2NoZ{S?i(*byjRV>^eWuA@gh}7v7|F6iHf1mPTfko{p5I>p literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SysTemplateStyleConfigurationServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SysTemplateStyleConfigurationServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..edc6dfb2053d2c975a2663e17041651b19f936ad GIT binary patch literal 1405 zcmbVMZBJ7%6n?q^b1)r(ZwM;*7QmOr#1F<15+!O#1~G2(z1zxN_1<=Ad(r(XO-zh_ zFn;#W_z#Sy_YMgRlF65z_Vhfbr_XuXUw^*;0Pq-hCozGAGRASOgzHl%;zkLJB`lS2 zlVM^_Y30`$ipwiI3}YLnBN?i7rR8>-w4`l{R!p9mx@n7eM_3is1Lv6UD#!4u-ZlyE zrp5}*m2kV%!|p7etfHaiTn$6)C0zTcyp zPH#!yHJ#VOibQ&8>4N2kinQ>lrS0}9Ygij1Noucre~6yiI+go7i*5;%sE$c_(r*!4 zt{10{%a2}aN7Nl*`GCmbqY}~UNjr4Zp-yaNF||?4JcOm1hj9BE7^VH8K@F4IwtT6A z+8&Go3YvKs^uRFpCM7ZxxucvSc|OzH_)K2Zyyd#F5qCYSbhI0K`oY-u+)-zx2_5GH z3Dzn&gK`D8aGT-jQALl=UrF7!LY`9!fnn{WDn=ogn$i+Z=E7ij zbh0Mf#!5b*==nbgb#TWS%)(B^xT72mS)3;H&-s literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/SysTemplateStyleServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/SysTemplateStyleServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..39d6ecfcec911290e28a17fe1c8bb3a0c6f52c6b GIT binary patch literal 768 zcmbVKO-md>5Pj{sZd^aJM!}o884vcwgJeVyK@c_`9NByCTCSDMbPwG<#`#$}1#<8# z{wPV!s01?XMFy(-y?#^GuezR||2zOVz*Zj}40_n;;ZqNr3JXVUIUXx?cE5}i=1<)< zDXb0I(nXn%$zPdqCd^>yCMFvh&ozD}=i@C0g|EYj%k^#Pys?^1xY2?99ZyJeUSvA0 z!WGHJL`q|oQTlRtE>xnhnDW$`Sb8b)*d!Vom-DqNbzY54K5#OH+M#1`?8es zIgL25H2B0?7sb4@(%;>o^HUuP&vts_O-?_Z|Di)9PcBvk>DP`X%jjZ3;qblBp^((S zzViVT^sK@&{Npp`WFBSgWH^<4a(#(CLAt>}ckegUFCpgeL1KLj46rD1x!HHo$C99q S;99kU)n;A8x~#SSBk&hC{O$Pw literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/UserDeptServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/UserDeptServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..fd8db49e438ba98f104840890d04301b25ac25ef GIT binary patch literal 712 zcmbVK%SuBr5IwQhYJJxSx^!iAVMN?r5kwJ$>cVRGX-(^BZ*oa;)&7;P1Q&jQA0^Jc zKF}5yN??+6ax#-M%**T3Gk|R@mQg^Zgt-#tOIQ#X*&#z=SD;W`YX}VQ+Y2o)T_dAU z(zvPJnQC^Ksnl#sbsNf2hCj&Ra7kWZtJboyyiBcAMw0Sv>9xC|mX;JJU3t#vKqsO8 zP98BA35?aLV^l~TC%?}VG?k6%!lp9rHB}&=bW<<&UC_ppH9vEH%e6C5JyuDg-B;b? z97Y2&Z32bfmn_;HlzjT=v%udk*KO)r`jE2bEcM-I7B{ZcjS^TsO}R|08{~-_w`YtE zY|a|)TeW6gNBYE(>9n1S^{sW+(g*Fd4ZTFm50}vdiWm{t{A-&9qU^~(8!NE-TfsiR zSium_6^{=Onc&6W>8+GjN?RpE~1QaMg_*1Y7$fVK8+dP IGyN>^1_MXdApigX literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/UserGroupServiceImpl.class b/target/classes/com/huoran/iasf/service/impl/UserGroupServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..4e25af791c0cd6c139228af279274564e75cd7a1 GIT binary patch literal 719 zcmbVKO-lnY5Ph-MYW=Ps;L%(4U=Y2n2qGv#^U!YLkXb6lS+O`&$uaVJb zY24KALN&Y0RBE=Rx(($h!+ml*T$2~rskLk@uT$%kk)-^U^xEA~OG}EAuDoP)>};CU zKiLx|BY~+pb&LwBAWz)A17mDp zgVu2Ksx|96(kG5g=gO&A-&=Ppeb7$Z&`Y%JJB?;g#Du{1pL;D3WpDo3UH;*36^9*T z9b-IRJViWff){_7V~LT>F;LumhInLR43iwQYoLNDjx+hWh%%-b6&Po#SdKKjiseo}w6{@*#0Nj3@mtRKuTGw(6a`<(yh zdEUMB@AJ+foIX;xa!+0cxcjG-t z9GByxNjxSu-z#75OTtLu{diO^K9I!Ya{OQtPss5@Nh#!Ed^m{{3Qi{RkrdkTQ3W4U z@Nos75SZ(h-Gi>-?6)mrw_Yq7jzC*i*3N4KCEL*pnyI^eTHgPnbx)?v2sG_46+AO< z^q8*MYZ==L1>4g-(=NCI3%ic$!}>8zAKTRS8?Ie)vIbAqZZ-?1w^g9Jb!Cr0O^2N` z1nRrYg0ZKR?=_qQIvEP2yX>rP_2`Z%*WqT3H(*l2+6q-^%dnX>G&5hcw8*mVV6&5Z z6rAoiJZW!d&fQ*?B%L{d<*mN5nxz-|wa$WP^czlQWw2NBOiSxBT~BIV3J)|+K`)>V zl?{?}wqx*B$eF&kH2rR`AIWGpe9mldpQ649i1ayF70y;ppKx0eJAXH7=GVd`0ShWb;5{J22 z7`6uujoA@UAf=>y|>Nfiex>s_T#3O!yrc4Cm zm}eAR=?JPjp1agaE@aMDMqt{4RDpvjz_T?|K@~}k&>RYTZ5*jxus&!c08?n zXQ|+$hS1$^+n!4x6@$!l>ud4320T%pz~>uqs+vtIAzx7OIKH6bi}(^hJ*DEy_=>=` zndM$ZVN$UU>lHk$;;T5V;Eal|;p+;XQSl9o5P#AynqNA%IgVbI^^-ZF;w;WFF;tA= zyow9>CYz8?8n3(pODFfB%0Q}k3@21Pi|154FJCX%CBpWvcEf@R+-tN5v0+z?N-Fpa{7 z63;9ZKf^^8KbJ@5wZ;jeE<|U<9AsHWziw@F`b&AbWULGbEb1%_Gud;^L83N~r@vos zCGLI^x+mV-Bj``pFalzlzwZMI?N3LMg^lbh&-e|-FY|h4z?~U=8g^3XBA=9S@tLkL%Ojr0>r~}i< zjRC$b2*C7pH5Snj7Ew6jm%aAM;%B^7P=~Q{K^@XjGRHY?m>FnMP&(N58Amq7gS>l^ znPR#-@7yY6KN1eT1W zYMOfpTMHv1yL8YZ_wf29FwxYYh|n=fI%XjF5yD?2lvQgCm2~O+iA;8x1zNa}jH6zx zThbd&pPn^3EZyaaSdj|gEzmsmfw*GJXCjGRrqs}=P}ux%8L*1cO^8Bh=gJ-hzgF=Z z{6WQWoS4vCLN5llKyuS*5o<0%H%GU;*oJ~X(LG(ZJym~gGi`cY-hs31H3?Gj>NuBQ8U5=9lB+8GYv8d{>)!>6%d(96ZX!T z>9B-9#Bbtn{k43mQUS{!+;wG>$^^4ivR4plYJqWW<4dDH;iBS@Sl3#=M}@&b~(+n&L!)uTvN z;WVkMeF-V@0GhFw3QH-?0jE$3dEzzLMrn&thwbPf^=+h*x&%8rxU-Wx2|+@s)@yM) zSx_yph)Pg8%9LMs4(dtNoVkG6htFcpZn-szdVxLdqi7H~iFKUJ6}*t8H`QD~BdM<0 zlxRwjaNY>!Hzk^CMsV%wro|KA?#zc{}GT(yjh{ z3Fj-*e351zhgE4tnDbda(ob`ToWwGYAt!My=OHIi$9cr*WzHi`f9E{n^w&72SE>`^ z66*B-#pwdt52x3hh4wuC9~6L~#5DN;@k@-jj5~3J-z8`lV%AG&QE-=-om%iObdLT1 zgE^7F8%R=xH{wnH_~x+!r*r*#J}CzJxA-G|#~kY8dJ(Dnd2RqEj$#m2xUz%Qe*g+~ BG?@SZ literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/service/impl/UserServiceImpl$1.class b/target/classes/com/huoran/iasf/service/impl/UserServiceImpl$1.class new file mode 100644 index 0000000000000000000000000000000000000000..3b07774ed2214aba464fe0d2f573edf8d2eb3cb7 GIT binary patch literal 842 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/CheckVo.class b/target/classes/com/huoran/iasf/vo/CheckVo.class new file mode 100644 index 0000000000000000000000000000000000000000..1e910493e2953a0441488b5ed2ec448d7fc6acf6 GIT binary patch literal 3344 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 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/ImportUserFailureVo.class b/target/classes/com/huoran/iasf/vo/ImportUserFailureVo.class new file mode 100644 index 0000000000000000000000000000000000000000..adbe76d1ca17d1ecf49cff8da4a49bc9b90f6455 GIT binary patch literal 6599 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 MXqklL-oU>4KXIBo1ONa4 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/AllTheQuery.class b/target/classes/com/huoran/iasf/vo/req/AllTheQuery.class new file mode 100644 index 0000000000000000000000000000000000000000..57e228f2e909c98fad0302356674d45cc1ee7081 GIT binary patch literal 2179 zcma)7T~ixX7=BK&yV-=LqcknvOc-$4#B_H+bFt0WYofIlBv4+RW%oa?X3+^L{+<^S&qfkinvk6}exR%c_nWI@YAPp2CKJ*06nR zd0U{be9PQ7i*?i4DK0y{wPSg+0=c!OehnexW4JzuG0`WUAEm~<70D& zrbV-TQ(V}yS542{rN82syOw~uZ`PaK^#|X4_TbYWZ06HF>!YUaS=&h#CIm9RwYyh0 zLooXNufM$i#V^uMo3kC;zaWszk8LvGC3l;FddjwAtu%MHEN{akFoE8(TQ%#Orf17@ zq*VNxO{Amcs=HgPHC@kiiniJKpt$cAnZLMDuW!_>8%@jmgkaM%KthC~MbfJiP9^>%M0@I|BX3*bTL8KxW--dR6PP zEgPDRHD^lJZQxlvXP^)L28PiuaOS_eYT$KD8h9Qr7?_aKi&8p|lE6@#%MifDrd{8b zO!mbx=R-p04ZMv_xxB;PO^mebnrHQ62HwO1A-6+@?IA1X-k#-fjwj=NjVg|h*f9*` z;+Xy69K`y6+#aX-?0fl=68w@OaF8esa34exLk%iVHITzoH}Nzt$lsGD!_wrL&?L=k z(#>^*=0)y;yE=Xs;tqub69QVG)NqEf5gOnuMtKsFa;_tk+s@x1@huf`=S)XucBzAN z@^NRQqjMf(Od&IuxJyE`@xu2=bjCdxT12>IO(A{b^iw$t$P!7RbI9cX4H?oMg&Yn- zavCF)e{oMSTdgqu6;$PR;WsFsLrvZ;{0gNqG2Vh294Tlk6I@El1xEmI{65@~!`!buA|rXC?xiBHa06mdGBmrtCk5eE2^Ayn?A?ChK}ACNel zovo2VJzF?HYO;m&`%S1QmHRBEYBfOM(0Y7?kJp_WPjp~H+lxrCK$4ZFD6;MtQG z4?Q?e$CC#KoUvndM(K=o9KF;T{|2uudh+7YT7PeLA$;VZGw?poKHtypdEUIg{`38h z0M6rj5}lYxK*42sOvW*lB)uY!*QM^Nkvl`|kJ0HiJ0ug&f zAT@K-+%S!b>8u)yzGpkD1%dQJ&GGFuYss$K%N1+faa`Z@ZP%#^oSd;;qx!zNx@vib z+0Yo{>-N0qnQQb{9COVQP&dp0WQANOzn{?+Gy{_xSr!&`SL=|2}}vI4PD+p+yi0?|x%iRmu8 zEA(%lu^nr+wzh0}*Mo?u8MkCsmQ2r<-=R?P%QpKkW=igwQLee3=@_2ivbyw!7u`IfyX!&J#r4E_pTOLc& zrAs41j8K^s$`6E?TfS+P{6hAIfN&4aFI2Ho*DqV1KwP#uP{+M4sk3c?u#u-d)HNin zi@sTUw`i`{A>)qK_eCq2&Xg>PV=SB1a)3HVFwKnf3)96ZmP9`0S=Cy_=XC1%k^}o@ ztod%RWdg}Xx8{|sE4G|{Z*$bo%H`DYG@j9s!Z97aI3|$$Uz5}EGKO^w;Ixh*$vrQ* zS8!3F=kV@N)a=TNMD9fMdNTIPn2rT3a#+Ltdwq?u@vM$lahh{�=&^K+N@Z%i-qa zn(e}o^$3e7;3ThdC+|sw|Lh)IJ#t;7U5KK)N?}hG$C18)6I2kJqb9x5q%SZ@P)#U# zK1*|hRFJBJ_aMF@6G1=ESX~%nazGCZ@ElI@OGpfP9(4W|k*}%T@0@7rOxT+^M-Mx< zG<80M3{%L=c~S{TY;fp1M4H##9aw~Q%bo)Gvh-7VXVAe)2AhYB{@0KJ++oPxdPuHU zSmj@&ab_zI4Q@hJ?hO45AL#=<3iOml4$Sb*D(2`ajpmPg)F0E`M zzH6c7Rhnq|SXz}fu?I+Pp*5|hW4lJm9p;K2ncvl*hCLk0$l)wo@4_O-e~L8@U=kyg zMG40xoFm6~gcEpyoQfiM>P2!fzC2*`L|pqDZE;+9jP5vI;-4lS<9NU(1VS)!1VfRx zE(GHuQ_7L45(Qc5{$&X^Etr_PSE zgiz}k+Cn_Hjl|nhuH_Y}NGqX6lfY8d*Br3(LDaB}D0|4Gz?>>BV3b^hkLL)+SXz|u z^$;=%m;~nW_Yp`ph92C)v`S?o`cDlfvg7Gu=k$meO lT2lHpT4lo|skVUEB;U?s8y$zQ)BcN`3HuUwjS(Xl{}){piTwZo literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/ArticleModifiedSortReq.class b/target/classes/com/huoran/iasf/vo/req/ArticleModifiedSortReq.class new file mode 100644 index 0000000000000000000000000000000000000000..085172f5c9dd678168a27ca832e21f36cce5320a GIT binary patch literal 2204 zcmb7FO>Y}j6g|(LvB%D&aol{=G(dm=b{y9Q!k3d2(l%{V>@>tB60Ddw(|C$AlZ?kf z`~r4VV!?tHY{-Hvs05A_Bm|ox@f+B-h&@Y6InOhW?bHj9?f357cR$WO_rCFO{~Y}U zU>5Jik;GyQ3NFg!QWTft+?V8XMV?)i(lse9M{zxlI2JX$Bln_QN*Y!)+>qjG6z>XX zb#u32+7(mabn&*aXXI;!y_H|KJ#))+=LAw~4coJ}&2_78ZPd&~+jcy|vmCoFkSSVD zzW%YXMbo^|Ims{XSS4rEtgX7vj_G=zFpj!s)Edk({O8w4_mA$RAAI&XxBGVvGXgQg z^{h(GT;3$02VZ>p$G2Zu6eIJNZFv_2!s*PqfO3f;1%`^2ZLT!7H%#}YK|}({qEj(y z>xOH|=Rm1=Rf`bw#fr0?uQnXlu=AEtzm?x}@~*j?U-VNFrgh6QH_MLet(m(7I{kU*%c_l%tnp+(e4;G zHg200Z!YtJfN*5NolXTuB-rt)rYkTg3!mz=^;ApWt!No^Q9k5bbZG|5o>BRzWbCxa z8uhB*4>o6+*;m(=OG|`DIpUi2M$KbiyRycoy5eh|Q}$fT-Vzw; zA=uZl3-Pkka4Y5&OE&myK+uV1os%r+IEx7#r!k@hvMR-B!q_xJFvaD4wRQ`v#a~T2Lm{Tzj3rN9el~&hfs^>`ou& z@JZ*vzRu6%1=b}q7h0tg=XCZ5g!VrJ&?~#Xw5Ahv9wb zxs=jGv~8gkRGMgoNJ^D9k$Xt)V=$$rB5fn(fVsjr*}rQ(hGQP8$YO@2kD`nmdm7@E zxr}qvg^BzEM`DKKb(JUQDXA!NTwbCS!OM(4iC9$o8>gap_My~k1w|gDl;A{@#PVpOKVh?e)Br}9`QCs;ud@{ln(+3&LdK*2 literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/ArticleTopOperation.class b/target/classes/com/huoran/iasf/vo/req/ArticleTopOperation.class new file mode 100644 index 0000000000000000000000000000000000000000..86556c0a95625216990f663767e32118c643b071 GIT binary patch literal 2234 zcma)7U2_vv7=AX{O*ZM4hS0BI)gV>V^dm*9NZNvh76>M7ZEIDo+@@=@nC{lirv3!4 zobk$GywVwmUf4mM(ZImy=nc;J8@xo2doM+N&hDm7As5Uf=RD^<@8|QrC;8*QTfYF9 zz$$3KZR84;Yit$vTRp(P1~wTI94?6Tb9d>Ia9BF znA^5<44<3vLz1M0EyMAOXJP7w;TC-6dNM<8xznf;7<>8F_AGicZ45-_iIU+~>~)Vl z!!;b{rO~X#ON4~zRmyu>eJre9G0N`b&}9jdE$ZCwWpKqF*lxveB*aC%gF)9jJYn;6 z$h&IcxXZt8k#sJ*dikT0zU8sU>GOt2E$h~tNQ}f(^jgJl0J~9O+{L9rX^x2zM;xP8 zuet=yknzD5=c;QjyN+pXNa#L5sxKw&@nyU2l#TPIXlH-GOKWS!MCBTu!}A)Bpj*QL zx+P?vzPB3Qz^H~7@sfrSfnFBq6!H@K_F454I$JlZ>w?pxZ8FJt6i;h-2diRvm%SWG z?^QcZMus%Ji5a$i-?85=5~Oc!85U=Iw6)Ix53TcdAQLilK)*Q`E%R_tAIJD>k>ukF z@k_qI!6NG6-it8$Y83X@kiyZ+c!n2b^GTHfq4KP+65}<==bEN^j=RKN$=-nU13`!Z zfruxJ;00pMSHN)$@+1l3xu%KtjekVwdkR{OV{MJut2V~r$BjGM8fP%X5F&D(yC5Wz z9sUWS_IdaE8bRKoCZE16?G*l;BEd|C+q(=utxKQoz~zAFk~0}(`49Ifqg95p*PzI| z!@oiP5=wY?_*clKk!%BscO;0+k8sJ$qramgCEvl}9cZH|xq)a?L(MBxQS*_MB6K2m zklaCMN=ZeUO7bpag`eo(ML&l<9x52~I@g0`jI*a9erIulvM{nZjaP_dT%eyGL zR}(}Lyhi_N#G>lII26U}578UNNq$u6A^Lq7<5Twe9U~dCc&Y&zr^vQwnIc#anYIp# zKWTo)l)X$9<|k$>@Hp<#%ZE-;nhyS?3x#_=F*zkqdn67dCM%>+O$_fKI@&<&10h%Q zvbade!Hp`2<<&rY!X|vLK^kG4#3ZH|Qy~GxhWe+~&j50s`tQ%621q8j7zmnW!ni7_Qsnz@bm`!~>$)Eej%1vhXg+2vzZ Y-~@34haZ1Vtq(a9)Ft68J%(`Zf3#JvoB#j- literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/CheckForHeavy.class b/target/classes/com/huoran/iasf/vo/req/CheckForHeavy.class new file mode 100644 index 0000000000000000000000000000000000000000..7d07bf15a173396a860bc73445907e3c03f3eaf0 GIT binary patch literal 2852 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 IyoVS515X;SaR2}S literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/ContentHeavyTitleReqVO.class b/target/classes/com/huoran/iasf/vo/req/ContentHeavyTitleReqVO.class new file mode 100644 index 0000000000000000000000000000000000000000..c283d473e0eda84e9561cf67a9b121679df4f046 GIT binary patch literal 3058 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 MjRl?v+vv&f0EUIWwEzGB literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/OneLevelChecksThemAll.class b/target/classes/com/huoran/iasf/vo/req/OneLevelChecksThemAll.class new file mode 100644 index 0000000000000000000000000000000000000000..177c678e8b3cc61fb48d2299aebeb9542b04fa4a GIT binary patch literal 2704 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 bwEz17`8`1Vl^?eU`A_3eKjHI%#xMONZwE>y literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/PageReqVO.class b/target/classes/com/huoran/iasf/vo/req/PageReqVO.class new file mode 100644 index 0000000000000000000000000000000000000000..32eff49e41220c490c039140f270c4ffa9ed5e8d GIT binary patch literal 2227 zcma)7OK%%h7(LgXvB!>+rfFUdA%s%EdDTf<9(9sJ+NNnroP?wVS~g6aA)eyQxZ`nn ztUy9SED#G+2~}*6P_xORNHmp-s9;khegoUKWY3aP&YhX~5iEgh-TU3|dA{@AnfdMS zJ9hz`z}s=OVI~Fz=jAdR#f3Qc*W@xMZCNSJOKBmB#W>=a(eS$5m*ldn;i85&q_`5r zn*!0IzHZEyHv|sNUC}r7bV0Y))3cUqtQ*d_Kys;Ux#otkVwTL+f-z-TwyV3QZIuKD z=1eXe4uX>3zWo|faVxi%cf(jh1s*62AM*$A8@TAAWb|;q_0M zZTGV;1wvz^0+9*RGTl=G;nctii<}`Cfdg}l!}`- z+1%l|oV}6Gmu*M4(xzT|H@#`62`s%xFiXbOl?8ScUpHKN_6Y1q4K$>%DRA;Th?i}fr*o_ z-Mry&60*-DmGL)w>Y8)K>=$gQ+I>ayva9Fb%j!jsH(o^VK504KnwHQww!B`-`_yv| zv#h+hG@G3!G|CajD3uE?y{aW+p6F-STzlDdOlw`By^dF3E4g2`%TCTXXUa*oRHkxN zww%DzIGn&Cv?tJqc7gu?8fF6H7)>CBfdtZ08kEumCIz~xB>Kfqm(9YOq_C}0H5KqU znZR4PBo~gLX}DjiWkXCOnC}eEa<MER#2?84uMbZ>+&gLMDxn+65-mL?Jb~WJc#?kP@85n;Nxwen*YEqq=tIuA zKEsS@?t;5IcpKt-uiz1`5l`8UXDKIq2Rw)8c@mO&uJyq`AarwIaCgIC4y!?Mcz))fDOB#6*6|5t(j&3A zbv#cBwbr36L`QZIdq?WEj3Nz5C9r6cSekkp6L!MS8o&s%`BQj>HC0mcDy0y=$)lJe zv@mgW;WQ=1Bj*B?$5bdJM+g$aZ{lM*RnH-*=zzNCu;-)HtLVmhde`~ qe(5%v+7dfxmJRQqrR{((Yf^5dyn}=LAE(*}ITiFJFwKl1ocjmx38owX literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/PaginationColumnReqVO.class b/target/classes/com/huoran/iasf/vo/req/PaginationColumnReqVO.class new file mode 100644 index 0000000000000000000000000000000000000000..a4fa0301488fa5dbfd54494748d3a8db88903eb9 GIT binary patch literal 4671 zcmb7H|92c!75~g;XJ>XZn{2jC%R-S9V$IhsXa(7{XedRaNg9$GY(-_749S$uPP#i= zT18Z7M#qAf&+2$V$BR0Ctm7peKM{K` z>o_Oo^BOKFNK85T@?2rmoU;_9hmV-Y%xvB)%w#9rqFtC7P>>lf7hHSJnzT#y;k-3i zC^)X^+D@UQpnKSMvZbfYnHj5?HLIHJ;JiKJOk4S}qBCz5-4pbq9y9Z0KEzo4*+S*j zH&@P{t}I?v5OYt=TSL+dF!2(*Pds%t~EEGH(k%d*R5W@w0iN+ z^i;CtzFztDh03$Px9N0;=k$1%&$g$%sIyay+%1}R!7XJ+9e1>x&+|FjoK-5BGmNi2 zuzv6D(>G53@x8Z~E5BOauHg3iJRD%yb-9Syr3t6#Dwte3^^4V)f3tf2w<~Agp!w>V z7gv@SR?qx$W#Q*HuAZ#Cbh+!E(Cv=9S5Lhlvr~EVQswM(E2qxgxO7?CbSsD!oje27 z?2XBQMGhj{AUcENTZP|(!XJxR=7rd>hnuwAf5%X5dV;sKLY6SZ}w%>1NTw8h%r zjJmTn%eZrR%9+c~mYt$m$l7M{aTeOa5$IKbK;H7P^N0V{u=;VH8D>-Aiaz_$p zb60mw_135pCrso?l()SOQZ2A>b)crG!e+uRq>zXFtZJ0Uz4OQI(om2A9-28wmg>W4 z?^+*?NKR_Ra%Y|CF|$azyH=4$kJB^=aZ9aP5TURW{_A4odM!rEYcW!mF($lSzf94t zL&8hUI$AdKd}dvE`wt(nrrZH>48^H$L0`qzaoky}$f}BRb=G!l%G1x&O760zLp<}?_|V8cCWUgWXqC!&wpMf9Nwv=4Sk0Za@oSwyuv%vjnc67> z(OpNI0_8NFd4Ex0JuoymzK?9$|kbxt3Qo+{7EBe8*ou3x$*dBU> zt}0#j7?3n2ap+*vdkf6t*=95ky4_s!@q?*AFr`a-3H1S zRM2trBv{`4!9J{>L2{fWHs|N90`H0b+9vdGlJ%F1e`sDsb@-r}*0p~Xzm3g!Q#H2p zjd~~F*BT+0z*UyB!ddOP4&^Nmwwq(j+ib@k%7z5s z0eqS(MKF+Kz47l5x!Pcy2{k5TLyVgmjkkpwlj$MG(MIDtLXFuWA;xN>@m-1+1jeM7Vp3AXtm+D4ciUw5RyWHuy zd?eguY@;q^d-^VSc`nDp%cE`7rD*K6DDU-LPT;`0^4xX}`bJ%fJ7Ue{eV$9cX{5_Y znsY0!fOv1u8&IQHdjE>}D^Q!R^!^3$k-nZKB)lbs=FvV5xoH32(VU6Ci?&4={h8Z0@UJzl9`qoP@0hR>*CnaE9{IWG+vnJ zWs-tEQsQ_NUt(6<@gE%IB^qJbR&a=WO{Ces@MTI-zPJB|$0(_6u|MD|lw!!^BECvV zLlNijHA?(}hU0jgQk*+Qn3NJ&!UPUeYNq7~rYITsC*LB|l#=*2-$E9p7CgatN3ccH z|BDt4Gw)NxEdO-necU3&_=ggWphq4hRifex#b@9BJg>NKRKXFErpUT9$?HZ9(!_%w zWRPp*JLr**-!R0Lur-DX`YG{^sTf&)t1vemA8A|#B zE%q-$O_|&aXUk*qRDK$oaGh13sG& zAFS1btN0LwZ=$a=sal2We8YH{Vb%7gYMMX71n@idW)6s;nxCtZi#Wroh_9yUcd+^3 zb+o6qEMcplB&YN(Qcf-*lfG5TygoAN+oaqo!2}yoBwI Tp9!@eWz#-u6ddzf?5Y0)QR1Ci literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/RolePermissionOperationReqVO.class b/target/classes/com/huoran/iasf/vo/req/RolePermissionOperationReqVO.class new file mode 100644 index 0000000000000000000000000000000000000000..fa5729708b7dc6c5eea5244c6997046c8e0466b9 GIT binary patch literal 2747 zcmbVO+jA3D82@dun`}x7A*F>VXpti6jYYu==|#CpF}>Jg6}+)c*JL5t4Z9nZXJ#CI zU}T)}!P~1HXLwLY3xlJhFF51h;3H^x_ff>(+0C86I8Hm~eCIpg<#&GHch2Uwf3E)o zU>|Z_NMbey8FONIDT?_n&I@8VA@*Jt(xQ-FiQ?5RbYWJ-Nim-i!)q#DSMi1r-;Cld z2@%IG8dJ*>da`Hq^SV~lt-Lm6c}CuF#w4WXE0$-Lj78Hmmx{&#%d$P)Gi}S2Fqk!M z&3#AD(^S(NJKBM=Ic+Z+#W}|=8;*B@ag_6Vv0_M2*H%7S``}xX33vGk-_^KdF8eXH z9OHV9Zd#tJ&Dh>Sf;mg)XvuJ0Jx}*dHTRp>F0Ebs@#eMbe|~jc!nRhFCoYs*k#-YC z$#h-fo?0gIL~z!MXBM@r>3Yl&TQKvM?o}LS+1a)|-hrA)`Xtvr{QTCXkN^1M;_Xi^ z-~Q~qTbJMeFULAkD*K!~a<6;qu_EK9WqOkm!s)?93GyM5Dq%y`w2YZbX~}R-=&T8G zWbK?@T+|&?tgA}dE0{d$Q`wwd(h3#Z(Jjr?-M6*#w&ob;w0YKju1?D=8S-l|Z=744 z6@26kPnd|-=uHoHV1P8zrV+wtHd!-m=62UT%KI@Ia~oOv(jAft9um`rSFo4obVn~4 zp5cgs(yt9kPu0BvMELf#QpHB8(v@yE?+j7Ih#2Q8dXZUsn-R_~oiTFW*x)G%k}Yb| zxK7nA-U8bz7>qBaAyn-}-B^<~oEWIdWYwkNP@({?X-dhYDBUiJ^cx4^&BYEHL~ z2#CCH1>G$KZNna#B7(X3sp%txNIBvdZl&n)e${iYA85;i3qf8 zl&%H4;^d5@rs%}&59+Gjf{{1|urrPxY>HzW9+9y3fAnV@hwyA1!x)L<86k~gcN~Yo zgKcim9zZ-;F^kKB^nnLqO9#c6h~qSf@idm$R3rT@Y)p{0!8l$-mV1pfL3K%|UM?FJ zughq2TU2>!zCbOw$Y6_ot&N)6r_~!Mg zbVKSvLlqLVBaBD=5dH1W+woZ7yrapvu8MJw_2c+B-8Ie6A3Q%^1~eVab=rBhDFFQ+9|m=q$mhqYFY<$MOdQ#Mv`qz z65xNDO7=UG2onC{9OYaX9{LiBd}a6-$e%(9Um5-x^7P2iDinW7Au=<iWE9g!ssYuO8zS8kH#{vv>h6>n^3~}~i0b{Is zhz)ZXXA!COMKsLLf-6RZmyXC9$xg2s8fzY9L$v literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/SortByColumnReqVO.class b/target/classes/com/huoran/iasf/vo/req/SortByColumnReqVO.class new file mode 100644 index 0000000000000000000000000000000000000000..49989fe846ea138e4ec07148dbd2b00703f50896 GIT binary patch literal 3317 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 Ya+-1%$DVyo{SP@8-AiDZ8DqHiFR($0>i_@% literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/SysColumnLongRedisVO.class b/target/classes/com/huoran/iasf/vo/req/SysColumnLongRedisVO.class new file mode 100644 index 0000000000000000000000000000000000000000..2779e63f68697dc33c64fe1e9fe52416dc218352 GIT binary patch literal 2343 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 UmX)8;&L1s@6%RB7(E&O7f16zW-2eap literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/UserListReq.class b/target/classes/com/huoran/iasf/vo/req/UserListReq.class new file mode 100644 index 0000000000000000000000000000000000000000..f1ddad28ff4d7e7df8d84717283bbf3404543cad GIT binary patch literal 3819 zcma)9`*R!B75-M*)vlzq<0w%Qkx)`F;AccqXp5Yr7?OZN4#p0Fq~)=(7i$w)QdTQN z=!2vrw1Hs?0}Kq4VSoX`KzI${WC*YJ2RhS#fIoo9!T&=k{qEk?!}c;{#&h@Fd%kn- zd3^U?`9J^r>`MUG<3s}MQHVo_BZh-wI3$Lm7-n>o68x6MP!Z6>LUP4W6@w>+no!K@ zcsPMB6bw8fzDLCHsDVEk_>+M@8~BTX$HdxE9mf=?-jRx}U{(I0HEU&yR%tprQu6F+ z+Z|Gn8LyQ*XU5*^RGkAwd$?38dzR;vOH~EEd8eGMK5R`BnzdS*>~O^yEl=6SF}GZ? zUGE6}XtP$a#$C2w{OElBm8Wv`uTIood-uY*qZiJ-)3bTg{K=#9r%u+NeW`x-&5c_& z&7XRw{^YCm6K^g&{`SI)Z(n@*xK#BjFkJg^&2jCiD2t{j(CtU8nM#qamCc+TvX9(T zcBd4i+R~ZuT&Fb6C|1lrbL!$Juh&m}yzu<{-+%BlVN-U+8+IoPj%QDLHP;@Y?P|H3 z-2B41^8}CV;09Z`LB*Q3ch_bVnDsB7tDk&&;k8faU-*z!ELk%Q!Vvli=TVBkXaW{a z9sT~TWAiV4dGU?Um<#a>fBT1m$mZ)5#I`ym$J?$T+S9w2Zf;@W7--%piER$p?jDPE z7x|PYt>RwGb;LYaRK0@3Ms(*V%QM+Rt?XK*tYcLl%FdRvtW);xs_o{TsyA*QX7>8D z?d|byjfU&3Xo881CPo5TMQ*Uj=bZ-*k^n=!``PF6 zV)_IslDO;@Y*#^Cl)YOXn}oj>OiW+VTM?eipRxpoGA=!49c*LJQ~=zybxR`C@2LdNjVY4;7sW?VPh-PZv`M} z#*$l=ie2J0G#JMDw)3+nVxI3s_y(VU5|3ZTH70jMjJ2i4>q3pm`4HpSQsecZ#y4S@WfcX>@f+bc z*4O_jBH`s;BN0KlMJpt|Zl;~4a3TnF3wDILj9#isNyotDHNMN8;V#unbtyR^ z?g~#_yHuBw_<_p--{r00E@PMKQl62(W!87eJ5JV8`I_GjmigQMzPF&MXZrsM{bgv; zGyPvfA06nMgW*pp#CH#H$f<+>Mlz#*gO#UY4rbIjBpQfhP9r3li)A!{iG73AX>??? zOsoxL=5&J0oRQH5$Ou4s#%Kd|<03`xYJd@-;b>_@WQh>|=M5zH% z&oH&HOrtec~OSIW8S9< zUp+4IBr6x_!l0w4x`wu@+k8T7=o%`J4n|l1Y3PG&g^rJXHNy9!q7L$}>@URwBlytvY-y!iM7gRP&QP?2nMunkTt`Eei9a)B$1%%NiI*~e9$ov+ zVr42dhgG8Sb6A~9OF79;YK@e6?pCGNO1VQ|)=9Zj$QjCWxNPbB(f;7(gO(|H$S3Ud F{{c4y^929^ literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/req/UserRoleOperationReqVO.class b/target/classes/com/huoran/iasf/vo/req/UserRoleOperationReqVO.class new file mode 100644 index 0000000000000000000000000000000000000000..62ee1198d98c215e47e49853b1cb6bdc86838196 GIT binary patch literal 2673 zcmb7G+jA3D82@dun`}Y~A*F?Ivj|9fV^Q%!dQq-YOfR-j1#fJVHCae^%kBo{*%=2P zoM9ZF^xf(V59(-PaCGzqXZ#y{M8S6-Mf{!J&6O~t)6O~H`EKX;{l4#P`|Cfqegtq3 z#UwJAO+dz+SYC-^KFNJSET@I-jF1+E^lBWhC6UCeinC%rCzjV$yrJSvA-)yI+Y(|m z*Knpv5_$_4^vk+d)vdBNWqC%~aKVGNb z`0|R+#MbuE_CjLgre%7Q5~8`mMG5jz(kNj=!L*E-+VYa&oYvU|37LXj)T@iSV~TUA zl)Z|{6176nUe+o#+tDq})ZKTq%eLkim$WnN^gM}}Wm9~<=Z#B?vx0%L;R&M{gTCBg zmzpIc=_7)D7Bh9HRvz~~q63AcG)f3C}QqW1K(;Z^L?obKq$hG#geEXlYAhTbr+ z2|+~lw-dub2+7HHx_1XBa>R^FHNDFF`dYEgE?qE+-q_$d36d>3(0neTiBoQS6~mFR zPIO{V{bi+mZS&|G8xz?RSexesPcL4a)>nMseBb^vRg1cHT)^TJs_1Sd7z|Fy6mOlI zpPD{SSd?Rq;nu1i-%R5^bx$L=>e&mPV_IdtqC!|sAPvIC?#^xrm0jwi6vsx0g?(B{y z7Z5#>!g&zac`UJxk%6%42@*4y!pkUdrkbgPo{=zpWyP>K_@k}O4*6((3T;@(RGWW& zI9i6H-5PQaKIpjc#=e$xV8s>i^x|U z!Tnu>*;!WE8652l-r6NNs8#?zfG5KwdF~N`cWC%KM7rbe4?IHrqBcRfgr^v%@J}7m zJUq=mr%@kQp*3Yxq>Q4Il7~}@hDdmZ-T_@PwrHSv$qrr;;D44%&Nwd-B>cra&b=}` z^f?sy`tZ+?KZO##KKv8p>5-u|DE^T`Y-WT@ULO4g>$37~Y+OZZG%K$mUiVP*3SHEE zEUO5g*llE1(UVoOvAUCdy=yrq0}Ks@Dma8ZarR*WW9)i_19J@H)J1uk!~`W7FL8_~ zDJhudn7%+Mh8LNC0ExKzH`d2-_&)mMIKp35x{ob^m}oG6h@{Bk>4#(-;+3MAieNz? zjXZ*QrGZo-K7lms<(S_~emJNS^!~;a3io_^Y+Ro3N!*?utB^u9J-mwe=o%8|gSu>OOM2if+7*-?6aLdEP1BaqfF0&)&egOll21qTn^G&uj=} ZRmf?|YuMQN;98%0F04ypV?`5Y{skR!IgS7T literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/resp/DeptRespNodeVO.class b/target/classes/com/huoran/iasf/vo/resp/DeptRespNodeVO.class new file mode 100644 index 0000000000000000000000000000000000000000..046dfe22ef1fd8727f596e1703a72987db071e89 GIT binary patch literal 4707 zcmbVPS#um$6+S(h-e!6hjV#$iOprhXtr@Zqpk*6u#{q#P3n?hrW=UJq*0epEnauP! z7ziXd8_s677!nA1LMh4=fe^VWPNm38sN$I?c;dmR{0n%&gzwzjJ)7E;ijs8u>wCWM z^ttDrbG!AI|Gf1M5#3F%CTN5nG0CLw^6)(#9_8UN9=^}Rc^)3u>4^lcPx9~-i=Jlm z10F8$@C*;n^6(rF&oku(oh~M57d>Lo5Bd5d9)4`lPYn90K`$C~$)KMZ^mBt=V#~`q z{X(IbS5#0yK8QJMxp#tv*LT}?uys&PL|z+l}goje6Lz*C^SCj zRSS)Woi$JkPTNvASo7wqMYp_Iuh!hUe-3`svrf6`Dr9V3eSGWcQ~W@!=+^v&szSMr zColVTud)V#C5c;azqs}4V+zG9&N}4Q_4BV?zx3L*i_dLsysl7RjUA-}>eHKBZ*2(A z4aC?)grSoQoBwSrC*Ih4<0|Wn)sj~(*4>IiSs7E)_sWGiui+yi zbJ<&~z;7MWAXzQ*zKH{1XxDyw@%qb80_^iDo__!Vj*YJ%c=^1{oL6xdn(HUs`uz@) z$t$m}I^`9o?(uyv8TU&bVjr7Zt*#eJ&1&7L6g;PKs&KYisJo3?;a=oz319)MSUJkc zU32|e#6LJT-jT}oCYrFbh?Bjmi_=QC4$6W^u?Dor*|@n0xpgdrD_~Sqq?i#fDJH|7v7{lqHHA_3NJ5(AjUf!8O-wm2uyodH6KM%= z`-P^vS8|flJ(&{3cGILKsXdWG?pM#uJ2g?-IM2j!W2`!rBb+02T*+yaWOtxdW|4x$ zrP=u-$PuuHYHyZ(bdgAaJ{qo89hHlVkBY_UqhaK!(e41v(RM6`UzN3@P-3~-tgpKF zdEA2oTvqLNx}8r!i#|o4w&=t35sSuX+@eVyrgy_qR-H0 zEqZ{_K{{m7VIJ<~;RqYY?Gs&spFlV?^u+DGMA+%&W7+J1x=+tU% z1qa1+R6lmKc31Q`7rOXiU)+?Bmzs$`BAsHqBc#wM?vl8E6o0oh=wmQom$n-wV8G68 zH%!5R-P~@t9R}?1cEiVEz^-pM+zA6J0plkSRgCWGjqZ~)02S&9qYX*{R|Qvf;tDCh z7n&K2nwZScK441{Xg?jmox){T+sNxoG6IsGH#$fe+XN|NC-Nqf5&_A~Cpt)3I|)+Ow(?0PSpf;C zgVb-QK@MHYCL_NAAOAnY^&`lo2{c$C2Pc z#iA29eq%V!Z_rmU*GCidFZvo#953m=(bs`gH059E8$cSB=}meNNT)jejvOHT3q}{| zB#=p$=mM<*C1{h*P!T9eZC`JFkv9|`4#w%ikN)XPG@e=kWOX%8p;jK3TXbnFf6oVcut%@S7d>S_ZFXDDpwXKF?N$;R>LGB zEhi9et8`C@{=hd4rf{sr{s0#VIC?ibvoF416z1OSObKOaWG6RBpWdW_2YEha$JvmN z2Nr{iRhrVaDom(TAu{r6Xv)}{Flj9ls#mJAwk}L4+(4y=rheNHCZlCSIZIW}HiZe5 z9H>lT+8bR`r{v;-Z1mAPRHKKmbQK$32jazFp$0P4hcAs+$Onp})Xq~ANJRmb=q!*1 z%RD^{q|*y@Cw&vhpx@ALItOHOF(_-4ejgKY6oaCm07y~Zhuijjj3)+34GAG9-aQr2 zv<_OE**hDM^=@*TA7Kb2#x_Y?6>STIW|Xk4y{S2nCvGBdd-z`rIKlSeGg#IyJ&!Hq zFSz1W+I8#-4d#Y6X*ZYgChf`PB~Iaz`+&qasCMUWkvPM6uf#Z;_T)Y&aX-)BDshhI ZKLorT*W~BfC literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/resp/HomeRespVO.class b/target/classes/com/huoran/iasf/vo/resp/HomeRespVO.class new file mode 100644 index 0000000000000000000000000000000000000000..52d9c66db4c5335fc90354eb7d3ebbfca069423e GIT binary patch literal 2533 zcmb7G-*XdH6#j0qn{3l94WSgGRSQ;4o0g!6O43#ef)tZdTd0CMJHf+LVCFFW-@wduHqU9b%ALgA8Aa80jKI1||{@UV2MB#>Qb+P+mcmn_dZ zUo&TH+wl$Ga%@jvv}`#A?>%F6)pQF+`=&6{uqw`qS(|sAhUxm38ArWj)S9M%e&^#a zZhvs&&!0cL{r*=}*G;?0Q0ekTUejIIlUo)rZ@P8M z^9WFuFh>-nX$I5peEQ|BAFurN(bZcYUJ*!4TDIj+3&eAyO9IMK+6nZRE!&)H*3X;n zX@kWIWXjI6QCl)xOP(X8;#Vy~9@!GZ38!wZ6WF_I`Yl!k#&V-uy0xs=hRa@U<##GZBN!7t*YMRX8}=~?i{w-duNqDo$8MHc=ND!x#|VpZ z!Zp2S&F9#6WJ`=hu{GaW^j*td6&PqWJ*Xhma==rIPSagBk6UtV``Z(^Pfm@FNAZ}B z9T?D&#X|ynw|f6=M;%jmM#mF)QpeL$dI~um(|A!}S1^ek`HwWM+KS|FpzWV)u{fpU z9Nv)2o8(}8I4Eg~Rgda8hU1*0cDS%tWW#7QOnXIOqO+4xvC&J|n4dJevm4 zZvvk^ToZw^AA2e5p#dJp2v0&%%ypP@+xc6>zNR8Zge~XHrq1jNt-77#-OdA>IENLD zGWQtrQII0{m`pjA{|>Ru@ehU;5q=3Tq;8yks^B5bkQ3O4cz~?IQFhot1B+Dcr{{2*PKAB{g#(#59adv6 z21g2sxp6K%L|lLR9M>~N(mGhe;7SU?H_DQ zqI4I7Nlfxr6L+yY6noZ5IY3er`D`OH4l$){rYc#GNIS==lX!I(gT2YY~StYvBB(c02+MF<1G^0i^ z;w0oSW|&jLIYKGM|6=yzD51q^vy0?O!X!B-q1>ZFAvr>j5D0OPM(uM_@*1{xKe*1Po{Q=dY_V*@ GiT?lxj|*D> literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/resp/LoginRespVO.class b/target/classes/com/huoran/iasf/vo/resp/LoginRespVO.class new file mode 100644 index 0000000000000000000000000000000000000000..2d356db40da86d1f69cdb8699213233bb13c0b28 GIT binary patch literal 4795 zcmb7H+jARd6+bI!rIoajWjS`DCWN##;A<30pk(O9PTV*(G$qiDyp=YQcNJ;n z))1g=(vncpq>z#(OA|_m%(t-}l}pqTTe11l>oc;uNRv@$r2=e!$0bd_2#`3w)f8(U}CEFY@scEB%nE zvwWQ6<41hF%*T)UIM0w*Vss%vo9L867y0?BLO)UHr%YZ_=rx6Y#^hy%URUUfLRb0i zjTl{%D5)0;My+<(K4DlAWv7qpOM1SnTgCjGQ#GyPghaVRb;~gqjd`{TJmh*GVwb`cWiG47$UEIHZ?z#1sf4zR~ z-0iDp?p(OGcK)^X>!<&DgRBNIe(G zF6iZXy=wBi$BZ~76G48W%bz7XUo~o#{Ip#(twW&Z55k#r(Qqc)tG;PyxGmkyx+j5q zyjda{Z&OHoe+Rg&HjvMXnji*LfUjZoW)XTB(aeiTdA4D#J?UB(^Z!V7y5@_nf2cb+ z&T(eOa7y;VtX@S6ItI5%61r^>4m z*=~i;sso)>UamAMJ>iFMI5BKCYMiX=WyIN$l7q*N8wF>AOD5T!E5H+B+H9v}RFO08 zw84&*(d&vjc_|lGZ}v`FU|Nir3*b3cgow$6%k<_tDfr%-xR>=?-PE$#w{LUlz=XL|3$ki zX_${u8dGT}Q@iNXDm}o|Zu+c5_xo2=z)DbQk&dYJMVeIU38o%q>Jj>qO8c4GMUSfV zWv0GDQz}`6F4^q=PCQ&U%M08hTiTo*YU`A}DqW{HF=Jyp8X4M)l#cB%7hKU>Nch+e zH&x&R)!65*^yio-q3Gogm|nm;Y6_k-tkN<~B4;fJMHizGdZl7msK|KxKzr-1djonA zVPSUQ8{^WoR9g6LSO9kw)4lj;--n+BF$!@735y$VNjyJ^|DUSS5Co`dw_pSURJvO* z4gsp)EyzQFj)46TH$^w#GZ3IraDL7OJ?MAlA?kw`+70IfAbC6`Jmry9l78pv?7-Gdb*)aUPd-*Qp}QPa?~~X zSg@D!Moo$-^i1w_O&+4TE-$yl77D6Pc+N^43k#vsK5#d1m;s7H$f)T1SGaRwzkP&}7t17!foyv5GK zyIw7c*IrG{C0RrDG(fd!WVIAPSuLGQF(~bUQn_>k6yXigo$uF0k{S~x#py}QF@Xh`+Jq1ce_xyo$P*E!5D|`%8jH+~*3ZN8vm7b*q zP;qdoWPnQ0U$DTQ29>10VSyJxsdNY5t`eve{foAe2`Wv;;qMF$#FYO~Iz}fx1W9H5 zQ=|`Riy-57A=O|+qt%~8%S8C6iD(skgYdT@Zj-r3{EJk4c|=>vjWi+fqj0i0JV)J5 z$L|-gupmRv!d@H}-^)zwiR^V-Y+Gicga%VGqcD6K`9Bt`YiZv`{HN_PvO%a-v zEd_TAR}xWqX$aFQRp=yQmgyGidlFG6=pCvdHDN60%jAHH0DX$;pk$1vPD`MobQZrF zo&go3U(#lD33m%BF72cAM_@!yaY;gzNs>N-vDSNt8T}+T01Zr}ljXspZLk*7&-K8u zPH+n!Ab`qaa73bD8M~--nQK`LmU(`}gA`l3cNIe&4&g_t=t6o0_26Gr3%{pLPpndZ zc3_1zb2H+R-6H4|(>Xz7SKO1`D(D{OZxeK8g+7+uF6dt7e_YU6#_s^VLihTA1!UTO Q1uS^|BGGr?O^CkxKg}_!IRF3v literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/resp/PageContentRespVO.class b/target/classes/com/huoran/iasf/vo/resp/PageContentRespVO.class new file mode 100644 index 0000000000000000000000000000000000000000..a86da31f2027b07953a0c78288903cebb87cd580 GIT binary patch literal 50893 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 G=l=om%W;hW literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/resp/PermissionRespNode.class b/target/classes/com/huoran/iasf/vo/resp/PermissionRespNode.class new file mode 100644 index 0000000000000000000000000000000000000000..278b24bd1d3b9ea6c791c4e2ab6998ef8b30f97d GIT binary patch literal 4165 zcmb7G+ix6a75~k8W@mPH*4}JtCrd&xjZ1ya7AUuM5=hgub+KJzw;?SBI8wlT#)B4L_BBVc?&OCc+tX37GAdSOHsdK;-ZF_x1wR^>?!Ar zlP@{t)%;A^cURrow1(VbqwITY?lG_KohZ47%jJsi_+F)4*DyBgRr2*`omIN#owg-^ zxa!SSR@~A;tx|Ps{#oWR&N!upt3fY2YkXuo7F+UbUU`*1*^e$=*}V9x>u+4R`P<8z zmoMH}zs5jjSmR=&oyP0Gd*P#Zp8wAWuhffPtulP`-1(c&U97ov|74@2p|4S+w6DMV z`^`&lZC<&y`NlaatFlS!#)}&_-d_*ka?vZT)ZDU$jH;&Ld!_uWSNB;B~(IbAqD|`MSW*!|o#*H1}jx`L-dS!RMv3A0(J?5}svenA6Q#$6pXKy6IWe-hPxOX9qZ^{ zdsrsz^Fe>_=<;ZF*rJ1E=F)M($E8mK7Nj95f+MY-WSbdU+hzf+gDS3YfNWK*T{2heUiG->|U^9)ex%OHh@4e}lJ#40dR1!K2>F zK^w2)l8DQk{p7Ip7n52Qzr6JG7W4ISPh{*=ZFH)1|Q{&SZe-GLp0+;(Js%EDf_mYQgJs-ITECNC_1IS-IR*;Vaj`gln+OzG`5>kotH4>SdeliI%Ryj zDb+~}Q%(daAHg@#7tDCJb3CS`?Bh?;?jyBzJnD?j(oY??I8W`poKd*Q6c(m%{3Jy|pZXh8IsHTIScg58 z(>IW6de{YnE_NZFGsGwUA+qa8=Zsvu!zo=b>69*5Ia8dh(8o$GHp=~p9L{2SGm)(NLW8^jGP@+On3_n%mzt`Fn*2OcBR@etm{<3tAL@D7d<#Zkg#e4EHb4KL$3k%iar z44xoL;MZ{RBvBF@WYu?wQuu%e{wX3G|KgqhU7|GpjXn4tQ9r)VdS@|cTDQ<|;^~hu zWWwQ}rG1Ru3MT$9*d)mUNutY_S&<{SrsbkAgcZ`I*lmbtw7O)lH`1k$c8dYG`3cRyZx?hiljZRo>3T!2TU^A}AKr-%%WeU8HyV)*=umWWJT!Y-^4Su$MhF4&(?p>w#J z#(_f9K4G%_V!VqgqNINRp76vAw0^6~- zH8Y(3=Fc<5Dx7D}_swJjC!# z=JS@V+oqK-Nk|M#TDjzeZsp9hRZiw^PEb=SWXq+bzGjyk)9KfrW-QshSuiAYZpp1b zJw|Kc)q81dNJ86yX(dY^>(k7uDtsx~TQCQ$w2>VyS_PwM-=vE&t7psnk~XE=8KcUOT&UNF<~mHGLlN1v`N&MiG!JkrMCC97ylP@mrUdU^3KJ+sEFk(F?E`Tl3LipP&8 zT>ItQw^r^yZaJ1%TKtjM$u`Fgy?`Zsb|OaqA6PC31vHDvd8UCvod9?sOOWWUYbhITFIhO zDkMjl`8g|F&gDmV93K*OPaC!H2TaeC#O-gwVLw7qF)ij(H21ryCXOtmR7MG!fpw1aX+^* zI}yBvt_YGi5C=gx+ek)1+m=Vgmkv7 zwxNeqcD9H{5NVw)PAdo{)-Z-k9I(n~+#z63^+LhOllnyU^mt9G9`$v3v3=|8SEsFN z%GTRsKOfI#KE5)1qMwkkho>f<_7cBfU>{yY3*r6}^*+&V&nC>>Qyip%6l_+!L_Cvn6zKmvz(k_2;H*E|0T-!B`Sn`=6g z>>AGgjm~>&I&(;BILjNI_tkXfaMf^DHahRG>3jmOurs3O6n7tYwY}pv_-c1duqb-y zc1$3b;gggq{GUSuGkLXkNdHztx&z^bJm7?Ut#(Lxt0CP{@YXcSIqv4AkrJflENt1^nDf;5Vx zLb0GQ3VBAsSZLKqo@dtnO*f_BR z^b#o;gn_d}DzfOqIidiHw0eU`!&iJW&JzXk4d04Bq7Z$7lh_u}{y}{J7oMRhfPVfo z=^2_`82ledKW7@dNs27qWS112V!~p46~Tt6bMuSf&bP8wr^4z)onFM#4$XYWDdLrp zZZSlFfeH;>-ExmZ=H7;`45`!_I_3~aETHb1kcU#TP{d?UqX~jtRXC+MDst;MX)$G0 z6-lX%N?lWtaeD2oP0|H77cY4~a%}rWW~z{eAtE2!I)z~trK!A2`ui-4J?AFbapyBoy^W`<`Tp! z3Mv7)2~}DY72jCPN-0=mw+byvUa-n%pY+Lx-S{8)Ld4(Kr)PV1rm?oHO1}P`@B4n= zob#REIoRYrcqh(EY<`EIYN6 z(ksfm;xsEthZN;BTd}Y>J$sV9B2H3Q?P`m9^&4Rhhigs_2P-s(!^N1x;k@a>d^bK;0{h$QnMMUahN^5IDGUAUVYDqCgq8RIiKHhvYc=#4(8GJ=g35h!8bLtaAT zpum}&j4nB_*OKZ;1SN0rOP-1@8Q*J3b(n&ZqkhSIqe~|CT2dXupyaq;^1kSj$-S0T z2RJA>>6e_2E~)Req&oUR$&z34{^*j%UQ4P=BPe;BUy>KS5>f0vJ_mUP933Bf1Bv*R z@%Lc9hQz>?@jt_yofz9d${!M>=O$?E_~c)Zw&L$&a2=URE53nDCnIYon3A=VRzh-; z@1wYmtd+2mT}e4xXHw2KEM1a}AW653uB5zeGAVDTEK`zFL6T{ux{?ZZnn?vaW2Gf2 z6C@FJB@NnHCJov-D=SI4ASr9*x{``^o=HW!VC5yL5G3WTLMJJHg(qg9?;^dTn%6mB z+EL76jz{W%mccwP*BD4%a#A*xrg3byWtDBOUhcS3`<;fIW! z5ap~`Mced4RC2&F{m|iPNu5=T3%W6YcTwg>^Ba^KewIiUzljxgXn@}*mr)^#^IPpH zcti${V~{D?q6G5RPWD>@bs%_w5X{m5`YPkjVEtnj}wScKch zk5#2#yudA#@3ZnBvH#&s94H>#z>vt8kK!SPvw|&!c~K1&Z%{Zd_(p|!Hw_gJD?BLp dV+t1qf1G9mpXmLj=>GgG2NKgz_mAb;e*re literal 0 HcmV?d00001 diff --git a/target/classes/com/huoran/iasf/vo/resp/UserListResp.class b/target/classes/com/huoran/iasf/vo/resp/UserListResp.class new file mode 100644 index 0000000000000000000000000000000000000000..c4f5f13c14e15b62c58580410e3363a9be673d17 GIT binary patch literal 10144 zcmdT}d3=<`8GdK8$G2xTn~RSS*uaV*gaj!?{UR!&C^S(7kE*r0gq5s@-MHDH_OM=6 zv>qt5C?2i#fGXY?RIEqq(OO%3*xGtkTa!R9?Op5D=bf27viqrv|Mm9^Gw;m%JkQL| zyz|cN^33}WJwilt#bh5HK(BbIi(cj8w_Lo&#p_)Bj*H)O@dg(oT#Rxt#>Gx9c5(3s zF8;{HpSbul7k}~4n?9%aQY`8R|9&hOG=?+l^QQF@X!yBPI%ptV|4K7i4<-lG#LWb|{lryb_(=r^eUBJNx6QRh`ST znPh5JmmqW5P%4{Toj4{rm|W4HSddDkv+-;)of;H0qdS@I96TewYE>fB883J`7YrnO z(km1FOEc+#L?(L{bX;rV{X+>sp|KqojP1B+^oHTl8!lLUu%NoqsT>|(4P2}kH?r=s zvCVhC`S99Z=Wp4yaZ9dwu^`W?OnPX5XYU`|uw``ZcF>Y&RShQ26jWREi591_3Ct5y zsU1CM^T^uUTleZ1+ps-4r(@)n`(_C8N+mUTbzVyiCCJDm;{D1Q*m>@yBinBo*}NW3 zLGD4U#}HN{x^vsDJb_DwN6$GI;-h!mH1fa$(b*llHk>s(bJ1@Q$PVVE+ zZKxjp(8kbUB9oHK=f-5Dxn3Fqv8l94!Cr0y#JVZCdqBx>CE;eAw0diH@&*E zZz!FKr#h4I!BaZdq&qW-!GX@BF@AS)FuM#5>}LI{MD}2tXs&CWQMCK{cy6?TtEKh9 zb7(G_+-NN45UL+1QwX9!4z0+3G?(Q=#LH|Q77Scc*meWWrE0_3JVb4^q~|x8>C5!? zvWGvh+Ey1@yy-#I3yU@~jCS|<%?oK_eyi#S?H9^wEnlY@m9BocCz0(-uUs0>AndXU z4v9vaar6qqQ&?d%V#TRQ%3U*#7bMc- z)3SCUN2IfToJAV>w8TnNC{JyIMA*7aTaxLVn47%hN-d-o&CL-&-|D7hORe{Ad!?@^Nn= zTvdT$9%isIG1!|)4)ALVPJNTE-MI6{Edg3ZeE~X<76fP!7l(1Nggz6X9=49);z({T zXX|J#j^*MwE>7U$L@rL^BF;rG7YSN`lu`Q1J7_4`zmk(lw0M54)kp(Q&bZ{;zO<7cLCNlJ}{6-A);p$Un2U!Q~n0hyNz%hhtFL)Wp9BTo?7rdIi9Rde}wcK$i90=fY$6`1T)a8zDI1uRNj>F+V@RvK5!hr)(?pOu~ z4oSJ=C^&F%${okRfx}ep_$(YaVC9bE;lQCQcYF>G9K>?R=i$KNEO(p?2M%nxV+9;I z#O02aaNuBA81R)-C{$oDJ3toCF2UR zAxBEdi)_i~(s@W3oD8~9J5YPtX5LSZwon(D67nukfv3+W=e&+e*NQ(bdfbBWYkYd=qS#hU7d)S5j~^J05V zPsN(*a@CqgNX<*^Kf6(}rn;B4=8;nKYxeW>R;;P6bgj8uYF=uu>8n^%y#}=A(Ngm= zdrg1En(85;HIJ2=m)mOwD%MnQ5UqKf)V#u8Ggz^vdcJ7Q6Qt%kd(BYAn(F1FHBXe9 zSK4b?VomkR)0zpX ziLVkWp$j+i6Tj|W-a)m;ZKt|O{V+AO4O1hk$OL7ZY)@2n6Wf!N-8@W_BU6+e<^C3B zPi1?WvSWGh76kZq)!Z-HMns42oz_jTtEdwOX|RwOVy% zEraSbsMf420<~H70JT{SW<7%%G^pOh4(1oL-D(7=-I`!FGH8MZHJXUjJgCDm0qU?O znkIuLYLICng!7=;Rue$8tx0ARgC=QElZn{QgXUPx0L`%`o6QWGtU=A@Hi7r-#K0bTg~~ zy(Au>TVMt0b#X7<3M+(fj_YYNtZLyFm(dnjVX=ou(RX0gh?$~~Zi5vOOT=Qj9agPa zDi+dKSatXjJ4ScFsux3IGTjNQL2RH8=q^}|ViUbhcf*<>9;6rP9$2P$l%A)1VNDdT z(*1NFtS0dW@Y`Tba#Ybe^j<^F4li9o!>}ehTCslHVNG##;M?#6u%eD0{2cKhtQN;| zJU1VLHPw;9?-)B^O>>+{P4qCV7=0Ie@g&Xj81GWZLyx>i4IX+Fe};IECMeVU|6!88 z9InRY;N;(qR3fB(5kvf7cX0;f&@2AxFGG*ibKR8-Jp|JxERM)2Zj#pxeuF|6z5*Cg zNYo)>p9^>G=bSGS=%jF0AJV50p1GMk$o%`C%>Ab2WQXb09)pvray3~l=|Vo0B*S#& zT+NnSy4-mevaDi7Est~|!D^N#=bCC6(q-gbNV|#^v%J!UjH_ARoNKz}lP+K0g*>cS zt(IT9kb*VKpL4ZY0qF|lU4fjd-3m$S6q*n^&h<)tTukA4ixN3YSF^b=TqdIzcCIamSFfW!P#SV6HDlHAW=g+w>v z^XIUt1^>?V3s_-s9)3D}9#)OGp61XmVMUP88tGTCYWc9cdTHth=y2k&3xNYpLVSR! z7upW)s3%trki$5~cWIcr2v$Ir_G++aJh*_jacGKBMk%oDeVXXCBNn(H>eh7MhtLZO zABE5&{tp)^=zI)FO9ehss-X7qI4v0bIKhHuMNlovmxzoj&_Ci&Mx9e$IhCNbcy(ps zg_-XLK@SnGc!gI3`U7a31k%#d6gvrV8)yNEZL-8$oL#eC zx5|wZYQ+U1PQVqyp$9;aN+2P)6p6oqE2Z2yQpz{pb?n%#RN0<+^XAQa-}~O1k$?a1 z$DaWl$J=qFFc*V@^Ky7KihP`NK@RhBZ$V0nQhF_lr8wf4(@>Q21vy;Qu&m*ADZUZK zC4s0>E-yJ{Qy`hYYFsn)nrD^uyjAsb03SRVqh2%0HG)Xpz4^i2FK*u3{N&!v@BaS$!#_X1A)q;^( zb1ED5nqKr=%U-L)8vN_iukYTtEuDSzWrx4Wlx17qj6gUux-6iaCK!R;dCNBEYwK4` z_kzJ(2qy2W80BTdwd6WbDqhJVkZcD#*Bsq7s}=oX)pQqpz)M^&FEG9Mn(56p>X6Ee zwq-$!;~mOJ;=hNEgJ1-8u#1zf{KTs*c=|H!a3m`OJCon2Gzdr*Ot0juE*h?}ZhEH6 zxF^~@JOXwZqlYk>=nr*z=>lG!iRrK0TEA=BieaCT(AcvjqgwJC zi(NLy$csyJg)@XkIl@M%l|5QDL&ip$-Zjthn^|CQqol1Z&W0*FHFw24Yso$x=xDja zGW7%=#}f(kVQ&J1*vkvqexV=QvI$J%XadjRU;@udDI=vByeP1*$*Pa>RLv@{N=^@S zz{msyPbY90Z_42<7JYoUk?Az)7){^|&hm9?`t_?tnv6=tv{wZtTFV?<^WYA(&=LUQ zW!hoiXp5G1*a19;C;6hL`1*$UAzK{#>#G6mqzo+79xPiSoQ~mWFFy;JO+G=APyvTV1(3=VRFBu7qR!E5PRsMVw$?g!p?I&rug93e;ugm^%s z<~k%5{ZJbQ4I5>rie`+*mn+D0i7^HJXMRHb(rxsl5?kn%32$LnYPT + + + + + + + + + + + + + ${CONSOLE_LOG_PATTERN} + + + + + + + ${LOG_PATH}/${LOG_FILE} + + ${FILE_LOG_PATTERN} + + + ${LOG_PATH}/${LOG_HISTORY} + 30 + + + + + + + + 0 + 500 + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file