From db1c3c5b3670639fd1dfc5de0fe75ce6f02f732e Mon Sep 17 00:00:00 2001
From: wang1 <844966816@qq.com>
Date: 星期三, 31 五月 2023 14:40:07 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeRuleWrapper.java                                        |    7 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeReferConfigVO.java                                   |   63 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/RevisionRule.java                                      |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigTypeEnum.java                               |  176 
 Source/UBCS-WEB/src/api/formTemplate.js                                                                                                |   27 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/WsClientUtil.java                                        |    2 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreMetaAttrDTO.java             |    5 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyMetaAttrVO.java          |  112 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/annotation/VciWebservice.java                            |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateAttrWrapper.java                        |    9 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreApplyFormServiceImpl.java   |   17 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreViewModelMapper.java              |    7 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFixedEnum.java                              |  130 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeSrchCondConfigWraper.java                               |   63 
 Source/UBCS-WEB/src/main.js                                                                                                            |    8 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingResultDataVO.java                |   15 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-test.yml                                                       |   10 
 Source/UBCS-WEB/src/components/Crud/Crud.vue                                                                                           |  205 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/LibraryVO.java                  |   52 
 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeSrchCondConfigMapper.xml                                              |  330 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeTempButtonClient.java                            |    0 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrRangeService.java           |    6 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleRule.java                                     |    2 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingQueryClassModelVO.java           |  109 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingQueryModelVO.java                |   33 
 Source/UBCS-WEB/src/views/code/code.vue                                                                                                |   65 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeOsbtmtypeClient.java                             |    0 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java                |   60 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreAttrMappingWrapper.java          |   31 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/MainData.java                           |   57 
 Source/UBCS-WEB/src/views/modeling/original.vue                                                                                        |  553 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyViewVO.java              |   44 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreViewWrapper.java                 |   71 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingApplyFormStatusVO.java           |   55 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreAttrRangeMapper.java              |    7 
 Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log                                                                     |  574 
 Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue                                                                              |   22 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFilterTypeEnum.java                         |  151 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java                                 |   13 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java    |  135 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/CodeReferConfigDTO.java                                 |   27 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/pl_code_jconfig.json                                               | 1159 +
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/pl_code_jrange.json                                                |  192 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/constant/MdmBtmTypeConstant.java                                    |   65 
 Source/UBCS-WEB/src/components/Tree/attrCrud.vue                                                                                       |   23 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java         | 1011 +
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreApplyFormVO.java              |    7 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java                                 |   63 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreViewModelDTO.java            |   22 
 Source/UBCS/ubcs-service/ubcs-webservice/pom.xml                                                                                       |   46 
 Source/UBCS-WEB/src/api/common.js                                                                                                      |    7 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/CodeRuleVO.java                 |    5 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreApplyFormDTO.java            |   37 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmTypeAttribute.java                                  |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/VciCxfPublishConfig.java                          |    4 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryClassifyVO.java            |   23 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreApplyFormMapper.java              |    7 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreApplyFormWrapper.java            |   70 
 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java                                |   11 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/GroupCodeApplyApplication.java                                                  |   17 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/BtmTypeCache.java                                       |    1 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkTypeAttribute.java                                 |    2 
 Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/MdmBtmTypeConstant.java                             |  201 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingGroupDataVO.java                 |   30 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/enums/EnumEnum.java                                           |   53 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLine.java                                     |    4 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyMainVO.java              |   35 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreApplyForm.java            |   16 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreAttrRange.java            |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeTempbuttonWrapper.java                                  |    7 
 Source/UBCS/ubcs-service/ubcs-code/pom.xml                                                                                             |   25 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFieldTypeEnum.java                          |  146 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyProcessTempServiceImpl.java                |    5 
 Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue                                                              |  799 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreAttrMappingDTO.java          |    6 
 Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java                                |  118 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ClassifyVO.java                 |  141 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/IMdmInterJtClient.java               |   51 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreViewModelServiceImpl.java   |   70 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreClassifyService.java            |   25 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineFallback.java                               |   41 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-prod.yml                                                       |   10 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrRangeMapper.xml                                       |    4 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreClassifyMapper.xml                                        |   87 
 Source/UBCS-WEB/package-lock.json                                                                                                      | 16422 +++++++-----------
 Source/UBCS-WEB/src/components/transfer/transfer-panel.vue                                                                             |  232 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingResultVO.java                    |   54 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreClassifyMapper.java               |   28 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreAttrRangeWrapper.java            |   33 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreViewModelVO.java              |   20 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreApplyFormMapper.xml                                       |   10 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeShowFieldConfigService.java                            |   57 
 Source/data/applogs/xxl-job/xxl-job-admin.log.2023-05-26.zip                                                                           |    0 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrMappingMapper.xml                                     |    6 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreMetaAttrService.java            |   30 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreViewMapper.xml                                            |    4 
 Source/UBCS-WEB/package.json                                                                                                           |    1 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeTempphaseClient.java                             |    0 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLineEvent.java                                |    2 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-dev.yml                                                        |   24 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingMainDataVO.java                  |   28 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/data.json                                                          |   10 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreClassify.java             |    5 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java                         |   58 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeReferConfigMapper.java                                   |   12 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeSrchCondConfigServiceImpl.java                     |   77 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreViewModel.java            |    2 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingMainData.java                    |   46 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeReferConfigController.java                           |   47 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryData.java                  |   45 
 Source/UBCS-WEB/src/api/omd/btmType.js                                                                                                 |   12 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreMetaAttrMapper.java               |    7 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeReferConfigService.java                                |   69 
 Source/UBCS-WEB/src/views/modeling/originalAdd.vue                                                                                     |  456 
 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/EnumitemWrapper.java                                          |    1 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreAttrRangeVO.java              |    4 
 Source/UBCS-WEB/src/components/FormTemplate/FindLike.vue                                                                               |  636 
 Source/UBCS-WEB/src/api/GetItem.js                                                                                                     |   22 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeSrchCondConfigMapper.java                                |   68 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeWupinClient.java                                 |    0 
 Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue                                                                               |   10 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java                              |   25 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreAttrMappingMapper.java            |    7 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeSrchCondConfig.java                              |   10 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreViewModelService.java           |   22 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IGroupMdmInterService.java                 |   53 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Status.java                                            |    2 
 .idea/workspace.xml                                                                                                                    |  297 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeSrchCondConfigService.java                             |   59 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeShowFieldConfigWraper.java                              |   71 
 Source/UBCS-WEB/src/views/flow/flowPath.vue                                                                                            |  191 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java                                          |    2 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifysVO.java                 |   24 
 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeReferConfigMapper.xml                                                 |  233 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodePhaseAttrClient.java                             |    0 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ResultData.java                 |   45 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrRangeServiceImpl.java   |   55 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java                                           |    9 
 Source/UBCS-WEB/src/views/MasterData/items.vue                                                                                         |   77 
 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeShowFieldConfigMapper.xml                                             |  384 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreApplyFormService.java           |    4 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeReferConfigWraper.java                                  |   37 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/ModifyAttributeInfo.java                               |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingLogeWrapper.java                                     |   51 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeReferConfigServiceImpl.java                        |  223 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/EnumCache.java                                          |    1 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IRevisionRuleFallback.java                              |    2 
 Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue                                                                               |   33 
 Source/data/applogs/xxl-job/xxl-job-admin.log                                                                                          | 17712 ++++----------------
 Source/UBCS-WEB/src/components/refer/vciWebRefer.vue                                                                                   |   33 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreClassifyDTO.java             |   19 
 Source/UBCS-WEB/src/views/integration/integrationIndex.vue                                                                             |  342 
 Source/UBCS-WEB/src/api/code/codeReferConfig.js                                                                                        |   47 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeShowFieldConfigVO.java                               |    5 
 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/AttributeWrapper.java                                         |   39 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java                                         |    2 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreClassifyVO.java               |   19 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreMetaAttrMapper.xml                                        |    4 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeBasicSecWrapper.java                                    |   31 
 Source/UBCS-WEB/src/const/code/selectAttrOptionDialog.js                                                                               |    6 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyVO.java                  |   85 
 Source/UBCS-WEB/src/views/modeling/classifyTree.vue                                                                                    |    1 
 Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log.2023-05-20.zip                                                      |    0 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreMetaAttrServiceImpl.java    |   47 
 Source/UBCS-WEB/src/components/FormTemplate/index.vue                                                                                  |  811 
 Source/UBCS/ubcs-common/src/main/java/com/vci/ubcs/common/constant/LauncherConstant.java                                               |    2 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeSrchCondConfigVO.java                                |    5 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java                              |  338 
 Source/UBCS/ubcs-service-api/pom.xml                                                                                                   |    1 
 Source/data/applogs/xxl-job/xxl-job-admin.log.2023-05-20.zip                                                                           |    0 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeSynonymClient.java                               |    0 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingModelQueryVO.java                |   42 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java                                   |    8 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/AttributeMapConfig.java                           |    2 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/pom.xml                                                                               |   40 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java                                          |   82 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java                                       |   32 
 Source/UBCS-WEB/vue.config.js                                                                                                          |    7 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingDataVO.java                      |   41 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingViewVO.java                      |   29 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DokingAttributeSerchVO.java             |   26 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/lCodeKeyAttrRepeatClient.java                         |    0 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingReturnStoreVO.java               |   50 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreMetaAttr.java             |    5 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreAttrMapping.java          |    4 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsattributeEntity.java                           |    1 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreAttrRangeDTO.java            |    4 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyTemplateAttrClient.java                  |    0 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryLibraryVO.java             |   39 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/BaseModelVO.java                        |  333 
 Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue                                                              |  522 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/lCodeClassifyTemplateClient.java                      |    0 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeOsattributeService.java                                |    1 
 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeBasicSecMapper.xml                                                    |  140 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreMetaAttrWrapper.java             |   75 
 Source/UBCS-WEB/src/util/func.js                                                                                                       |    8 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsbtmtypeattributeEntity.java                    |    1 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Attribute.java                                         |    2 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreClassifyWrapper.java             |   71 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateWrapper.java                            |    2 
 Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log.2023-05-26.zip                                                      |    0 
 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/AttributeController.java                                   |    2 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrMappingService.java         |   54 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java |   89 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeShowFieldConfigServiceImpl.java                    |   78 
 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml                                                         |   14 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmProductCodeService.java                                  |    4 
 Source/UBCS-WEB/src/api/refer/tree.js                                                                                                  |    0 
 Source/UBCS-WEB/src/components/transfer/index.vue                                                                                      |  224 
 Source/UBCS-WEB/src/components/Tree/classifyTrees.vue                                                                                  |  112 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ResultClassifyVO.java           |   21 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java                                 |   25 
 Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java                            |   10 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeShowFieldConfigMapper.java                               |   67 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java                            |    4 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java                           |   57 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/MdmApplyGroupCodeProvider.java       |   65 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java      |  190 
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/feigh/MdmInterJtClient.java                        |  397 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreMetaAttrVO.java               |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingLogeMapper.xml                                                     |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeBasicSecMapper.java                                      |    4 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeButtonClient.java                                |    0 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyModelAttrVO.java         |   51 
 Source/UBCS-WEB/src/components/advanced-query/advanced-query.vue                                                                       |   13 
 Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreAttrMappingVO.java            |    6 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java                           |   54 
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeShowFieldConfig.java                             |   22 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java                                       |   33 
 /dev/null                                                                                                                              |   38 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleEvent.java                                    |    2 
 Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/enumpack/NewAppConstantEnum.java                         |    2 
 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmType.java                                           |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyProcessTempWrapper.java                         |   11 
 234 files changed, 23,685 insertions(+), 27,450 deletions(-)

diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index baf65fd..8c95b58 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -1,294 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="ChangeListManager">
-    <list default="true" id="16f0b01c-a58c-44dd-9719-cb51eacd47bf" name="Default Changelist" comment="">
-      <change afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/.browserslistrc" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/.editorconfig" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/.eslintrc.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/.gitignore" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/.postcssrc.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/.project" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/.settings/.jsdtscope" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/.settings/org.eclipse.wst.jsdt.ui.superType.container" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/.settings/org.eclipse.wst.jsdt.ui.superType.name" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/LICENSE" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/README.md" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/babel.config.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/build.sh" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/package-lock.json" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/package.json" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/animate/3.5.2/animate.css" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/avue/2.9.12/avue.min.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/avue/2.9.12/index.css" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/axios/1.0.0/axios.min.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/element-ui/2.15.6/index.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/element-ui/2.15.6/theme-chalk/fonts/element-icons.ttf" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/element-ui/2.15.6/theme-chalk/fonts/element-icons.woff" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/element-ui/2.15.6/theme-chalk/index.css" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/avue/iconfont.css" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/avue/iconfont.eot" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/avue/iconfont.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/avue/iconfont.json" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/avue/iconfont.svg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/avue/iconfont.ttf" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/avue/iconfont.woff" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/avue/iconfont.woff2" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/index.css" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/saber/iconfont.css" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/saber/iconfont.eot" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/saber/iconfont.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/saber/iconfont.json" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/saber/iconfont.svg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/saber/iconfont.ttf" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/saber/iconfont.woff" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/iconfont/saber/iconfont.woff2" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/fonts/bpmn.08b5f281.eot" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/fonts/bpmn.3c4c9f45.woff2" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/fonts/bpmn.acbc6cbd.woff" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/fonts/bpmn.f922519e.ttf" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/fonts/codicon.22349029.ttf" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.674f50d2.eot" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.af7ae505.woff2" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.b06871f2.ttf" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/fonts/fontawesome-webfont.fee66e71.woff" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/img/bpmn.1381b44e.svg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/img/fontawesome-webfont.912ec66d.svg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/nutflow/wf-design-base/index.umd.min.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/vue-router/3.0.1/vue-router.min.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/vue/2.6.10/vue.min.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/vuex/3.1.1/vuex.min.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/xlsx/FileSaver.min.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/cdn/xlsx/xlsx.full.min.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/favicon.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/403.svg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/404.svg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/500.svg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/bg.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/bg1.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/bg2.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/bg3.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/bg4.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/cloud.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/img-logo.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/login.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/logo.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/star-squashed.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/vip1.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/vip2.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/vip3.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/bg/vip4.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/logo.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/mock/card/card-1.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/mock/card/card-2.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/mock/card/card-3.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/mock/card/card-4.jpg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/mock/cli/1.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/mock/cli/2.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/mock/cli/3.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/img/mock/iconfont.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/index.html" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/svg/loading-spin.svg" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/util/aes.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/util/screen/guge.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/util/screen/huohu.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/util/screen/screen.css" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/public/util/screen/screen.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/App.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/base/region.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/common.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/desk/notice.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/flow/flow.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/logs.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/report/report.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/resource/attach.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/resource/oss.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/resource/sms.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/client.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/dept.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/dict.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/dictbiz.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/menu.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/param.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/passwordresultant.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/passwords.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/passwordvalue.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/post.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/role.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/scope.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/tenant.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/tenantpackage.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/topmenu.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/system/user.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/tool/code.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/tool/datasource.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/tool/model.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/user.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/work/process.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/api/work/work.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/cache.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/components/basic-block/main.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/components/basic-container/main.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/components/error-page/403.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/components/error-page/404.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/components/error-page/500.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/components/error-page/style.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/components/flow-design/main.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/components/iframe/main.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/components/third-register/main.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/config/env.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/config/iconList.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/config/website.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/const/tool/model.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/docker/Dockerfile" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/error.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/lang/en.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/lang/index.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/lang/zh.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/main.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/mixins/color.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/mixins/crud.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/mock/index.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/mock/menu.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/mock/oauth.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/mock/param.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/mock/user.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/option/system/dict.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/option/system/dictbiz.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/option/system/param.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/option/user/info.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/favicon.png" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/index.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/layout.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/logo.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/search.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/sidebar/config.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/sidebar/index.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/sidebar/sidebarItem.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/tags.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/top/index.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/top/top-color.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/top/top-lang.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/top/top-lock.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/top/top-logs.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/top/top-menu.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/top/top-notice.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/top/top-search.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/index/top/top-theme.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/lock/index.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/login/authredirect.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/login/index.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/login/thirdlogin.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/login/userlogin.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/page/logs/index.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/permission.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/router/avue-router.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/router/axios.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/router/page/index.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/router/router.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/router/views/index.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/store/getters.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/store/index.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/store/modules/common.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/store/modules/dict.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/store/modules/logs.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/store/modules/tags.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/store/modules/user.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/animate/vue-transition.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/common.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/element-ui.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/login.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/media.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/mixin.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/normalize.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/sidebar.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/tags.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/bule.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/cool.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/d2.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/dark.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/hey.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/index.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/iview.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/lte.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/star.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/vip.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/theme/white.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/top.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/styles/variables.scss" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/util/admin.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/util/auth.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/util/crypto.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/util/date.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/util/flow.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/util/func.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/util/store.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/util/util.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/util/validate.js" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/authority/apiscope.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/authority/datascope.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/authority/role.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/base/region.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/desk/notice.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/flow/deploy.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/flow/follow.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/flow/manager.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/flow/model.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/monitor/log/api.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/monitor/log/error.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/monitor/log/usual.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/report/reportlist.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/resource/attach.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/resource/oss.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/resource/sms.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/PasswordManagement/Passwordresultant.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/PasswordManagement/Passwordvalue.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/PasswordManagement/passwords.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/client.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/dept.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/dict.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/dictbiz.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/menu.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/param.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/post.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/tenant.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/tenantpackage.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/topmenu.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/user.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/system/userinfo.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/test.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/tool/code.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/tool/datasource.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/tool/model.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/affix.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/cache.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/crud-form.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/data.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/demo/dict-classic.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/demo/dict-horizontal.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/demo/dict-vertical.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/demo/dict.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/demo/dictbiz.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/form-detail.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/form.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/logs.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/permission.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/store.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/table.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/tags.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/test.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/util/top.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/wel/dashboard.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/wel/index.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/work/claim.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/work/done.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/work/process/leave/detail.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/work/process/leave/form.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/work/process/leave/handle.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/work/send.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/work/start.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/src/views/work/todo.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/public/vue.config.js" afterDir="false" />
+    <list default="true" id="16f0b01c-a58c-44dd-9719-cb51eacd47bf" name="Default Changelist" comment="澧炲姞鏍戝弬鐓х粍浠�">
+      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/src/api/refer/tree.js" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/Source/UBCS-WEB/src/components/FormTemplate/index.vue" beforeDir="false" afterPath="$PROJECT_DIR$/Source/UBCS-WEB/src/components/FormTemplate/index.vue" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -322,4 +39,8 @@
     </task>
     <servers />
   </component>
+  <component name="VcsManagerConfiguration">
+    <MESSAGE value="澧炲姞鏍戝弬鐓х粍浠�" />
+    <option name="LAST_COMMIT_MESSAGE" value="澧炲姞鏍戝弬鐓х粍浠�" />
+  </component>
 </project>
\ No newline at end of file
diff --git a/Source/UBCS-WEB/package-lock.json b/Source/UBCS-WEB/package-lock.json
index bdeb46f..276e36f 100644
--- a/Source/UBCS-WEB/package-lock.json
+++ b/Source/UBCS-WEB/package-lock.json
@@ -1,84 +1,40 @@
 {
   "name": "saber-admin",
   "version": "3.0.1",
-  "lockfileVersion": 3,
+  "lockfileVersion": 1,
   "requires": true,
-  "packages": {
-    "": {
-      "name": "saber-admin",
-      "version": "3.0.1",
-      "dependencies": {
-        "avue-plugin-ueditor": "^0.1.4",
-        "axios": "^0.18.0",
-        "babel-polyfill": "^6.26.0",
-        "classlist-polyfill": "^1.2.0",
-        "crypto-js": "^4.0.0",
-        "element-ui": "^2.15.6",
-        "js-base64": "^2.5.1",
-        "js-cookie": "^2.2.0",
-        "js-md5": "^0.7.3",
-        "mockjs": "^1.0.1-beta3",
-        "node-gyp": "^5.0.6",
-        "nprogress": "^0.2.0",
-        "portfinder": "^1.0.23",
-        "script-loader": "^0.7.2",
-        "vue": "^2.6.10",
-        "vue-axios": "^2.1.2",
-        "vue-i18n": "^8.7.0",
-        "vue-router": "^3.0.1",
-        "vuex": "^3.1.1"
-      },
-      "devDependencies": {
-        "@vue/cli-plugin-babel": "^3.1.1",
-        "@vue/cli-plugin-eslint": "^3.1.5",
-        "@vue/cli-service": "^3.1.4",
-        "chai": "^4.1.2",
-        "node-sass": "^6.0.1",
-        "sass-loader": "^10.0.5",
-        "vue-template-compiler": "^2.5.17",
-        "webpack-bundle-analyzer": "^3.0.3"
-      }
-    },
-    "node_modules/@ampproject/remapping": {
+  "dependencies": {
+    "@ampproject/remapping": {
       "version": "2.2.1",
       "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz",
       "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@jridgewell/gen-mapping": "^0.3.0",
         "@jridgewell/trace-mapping": "^0.3.9"
-      },
-      "engines": {
-        "node": ">=6.0.0"
       }
     },
-    "node_modules/@babel/code-frame": {
+    "@babel/code-frame": {
       "version": "7.21.4",
       "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz",
       "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/highlight": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/compat-data": {
+    "@babel/compat-data": {
       "version": "7.21.7",
       "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz",
       "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
+      "dev": true
     },
-    "node_modules/@babel/core": {
+    "@babel/core": {
       "version": "7.21.8",
       "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz",
       "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@ampproject/remapping": "^2.2.0",
         "@babel/code-frame": "^7.21.4",
         "@babel/generator": "^7.21.5",
@@ -95,119 +51,87 @@
         "json5": "^2.2.2",
         "semver": "^6.3.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/babel"
-      }
-    },
-    "node_modules/@babel/core/node_modules/debug": {
-      "version": "4.3.4",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
-      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.1.2"
-      },
-      "engines": {
-        "node": ">=6.0"
-      },
-      "peerDependenciesMeta": {
-        "supports-color": {
-          "optional": true
+        "debug": {
+          "version": "4.3.4",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+          "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+          "dev": true,
+          "requires": {
+            "ms": "2.1.2"
+          }
+        },
+        "ms": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+          "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+          "dev": true
+        },
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
         }
       }
     },
-    "node_modules/@babel/core/node_modules/ms": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
-      "dev": true
-    },
-    "node_modules/@babel/core/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/@babel/generator": {
+    "@babel/generator": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz",
       "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.21.5",
         "@jridgewell/gen-mapping": "^0.3.2",
         "@jridgewell/trace-mapping": "^0.3.17",
         "jsesc": "^2.5.1"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-annotate-as-pure": {
+    "@babel/helper-annotate-as-pure": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz",
       "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": {
+    "@babel/helper-builder-binary-assignment-operator-visitor": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.21.5.tgz",
       "integrity": "sha512-uNrjKztPLkUk7bpCNC0jEKDJzzkvel/W+HguzbN8krA+LPfC1CEobJEvAvGka2A/M+ViOqXdcRL0GqPUJSjx9g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.21.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-compilation-targets": {
+    "@babel/helper-compilation-targets": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz",
       "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/compat-data": "^7.21.5",
         "@babel/helper-validator-option": "^7.21.0",
         "browserslist": "^4.21.3",
         "lru-cache": "^5.1.1",
         "semver": "^6.3.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0"
+      "dependencies": {
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/@babel/helper-compilation-targets/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/@babel/helper-create-class-features-plugin": {
+    "@babel/helper-create-class-features-plugin": {
       "version": "7.21.8",
       "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.8.tgz",
       "integrity": "sha512-+THiN8MqiH2AczyuZrnrKL6cAxFRRQDKW9h1YkBvbgKmAm6mwiacig1qT73DHIWMGo40GRnsEfN3LA+E6NtmSw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-annotate-as-pure": "^7.18.6",
         "@babel/helper-environment-visitor": "^7.21.5",
         "@babel/helper-function-name": "^7.21.0",
@@ -218,54 +142,40 @@
         "@babel/helper-split-export-declaration": "^7.18.6",
         "semver": "^6.3.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0"
+      "dependencies": {
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/@babel/helper-create-regexp-features-plugin": {
+    "@babel/helper-create-regexp-features-plugin": {
       "version": "7.21.8",
       "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.8.tgz",
       "integrity": "sha512-zGuSdedkFtsFHGbexAvNuipg1hbtitDLo2XE8/uf6Y9sOQV1xsYX/2pNbtedp/X0eU1pIt+kGvaqHCowkRbS5g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-annotate-as-pure": "^7.18.6",
         "regexpu-core": "^5.3.1",
         "semver": "^6.3.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0"
+      "dependencies": {
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/@babel/helper-define-polyfill-provider": {
+    "@babel/helper-define-polyfill-provider": {
       "version": "0.3.3",
       "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz",
       "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-compilation-targets": "^7.17.7",
         "@babel/helper-plugin-utils": "^7.16.7",
         "debug": "^4.1.1",
@@ -273,106 +183,79 @@
         "resolve": "^1.14.2",
         "semver": "^6.1.2"
       },
-      "peerDependencies": {
-        "@babel/core": "^7.4.0-0"
-      }
-    },
-    "node_modules/@babel/helper-define-polyfill-provider/node_modules/debug": {
-      "version": "4.3.4",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
-      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.1.2"
-      },
-      "engines": {
-        "node": ">=6.0"
-      },
-      "peerDependenciesMeta": {
-        "supports-color": {
-          "optional": true
+        "debug": {
+          "version": "4.3.4",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+          "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+          "dev": true,
+          "requires": {
+            "ms": "2.1.2"
+          }
+        },
+        "ms": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+          "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+          "dev": true
+        },
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
         }
       }
     },
-    "node_modules/@babel/helper-define-polyfill-provider/node_modules/ms": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
-      "dev": true
-    },
-    "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/@babel/helper-environment-visitor": {
+    "@babel/helper-environment-visitor": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz",
       "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
+      "dev": true
     },
-    "node_modules/@babel/helper-function-name": {
+    "@babel/helper-function-name": {
       "version": "7.21.0",
       "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz",
       "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/template": "^7.20.7",
         "@babel/types": "^7.21.0"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-hoist-variables": {
+    "@babel/helper-hoist-variables": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
       "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-member-expression-to-functions": {
+    "@babel/helper-member-expression-to-functions": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.5.tgz",
       "integrity": "sha512-nIcGfgwpH2u4n9GG1HpStW5Ogx7x7ekiFHbjjFRKXbn5zUvqO9ZgotCO4x1aNbKn/x/xOUaXEhyNHCwtFCpxWg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.21.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-module-imports": {
+    "@babel/helper-module-imports": {
       "version": "7.21.4",
       "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz",
       "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.21.4"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-module-transforms": {
+    "@babel/helper-module-transforms": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz",
       "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-environment-visitor": "^7.21.5",
         "@babel/helper-module-imports": "^7.21.4",
         "@babel/helper-simple-access": "^7.21.5",
@@ -381,462 +264,318 @@
         "@babel/template": "^7.20.7",
         "@babel/traverse": "^7.21.5",
         "@babel/types": "^7.21.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-optimise-call-expression": {
+    "@babel/helper-optimise-call-expression": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz",
       "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-plugin-utils": {
+    "@babel/helper-plugin-utils": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz",
       "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
+      "dev": true
     },
-    "node_modules/@babel/helper-remap-async-to-generator": {
+    "@babel/helper-remap-async-to-generator": {
       "version": "7.18.9",
       "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz",
       "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-annotate-as-pure": "^7.18.6",
         "@babel/helper-environment-visitor": "^7.18.9",
         "@babel/helper-wrap-function": "^7.18.9",
         "@babel/types": "^7.18.9"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0"
       }
     },
-    "node_modules/@babel/helper-replace-supers": {
+    "@babel/helper-replace-supers": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.21.5.tgz",
       "integrity": "sha512-/y7vBgsr9Idu4M6MprbOVUfH3vs7tsIfnVWv/Ml2xgwvyH6LTngdfbf5AdsKwkJy4zgy1X/kuNrEKvhhK28Yrg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-environment-visitor": "^7.21.5",
         "@babel/helper-member-expression-to-functions": "^7.21.5",
         "@babel/helper-optimise-call-expression": "^7.18.6",
         "@babel/template": "^7.20.7",
         "@babel/traverse": "^7.21.5",
         "@babel/types": "^7.21.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-simple-access": {
+    "@babel/helper-simple-access": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz",
       "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.21.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
+    "@babel/helper-skip-transparent-expression-wrappers": {
       "version": "7.20.0",
       "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz",
       "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.20.0"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-split-export-declaration": {
+    "@babel/helper-split-export-declaration": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
       "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/types": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helper-string-parser": {
+    "@babel/helper-string-parser": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz",
       "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
+      "dev": true
     },
-    "node_modules/@babel/helper-validator-identifier": {
+    "@babel/helper-validator-identifier": {
       "version": "7.19.1",
       "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
       "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
+      "dev": true
     },
-    "node_modules/@babel/helper-validator-option": {
+    "@babel/helper-validator-option": {
       "version": "7.21.0",
       "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz",
       "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
+      "dev": true
     },
-    "node_modules/@babel/helper-wrap-function": {
+    "@babel/helper-wrap-function": {
       "version": "7.20.5",
       "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz",
       "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-function-name": "^7.19.0",
         "@babel/template": "^7.18.10",
         "@babel/traverse": "^7.20.5",
         "@babel/types": "^7.20.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/helpers": {
+    "@babel/helpers": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz",
       "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/template": "^7.20.7",
         "@babel/traverse": "^7.21.5",
         "@babel/types": "^7.21.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/highlight": {
+    "@babel/highlight": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
       "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-validator-identifier": "^7.18.6",
         "chalk": "^2.0.0",
         "js-tokens": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/parser": {
+    "@babel/parser": {
       "version": "7.21.8",
       "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz",
-      "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==",
-      "bin": {
-        "parser": "bin/babel-parser.js"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      }
+      "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA=="
     },
-    "node_modules/@babel/plugin-proposal-async-generator-functions": {
+    "@babel/plugin-proposal-async-generator-functions": {
       "version": "7.20.7",
       "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz",
       "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-environment-visitor": "^7.18.9",
         "@babel/helper-plugin-utils": "^7.20.2",
         "@babel/helper-remap-async-to-generator": "^7.18.9",
         "@babel/plugin-syntax-async-generators": "^7.8.4"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-proposal-class-properties": {
+    "@babel/plugin-proposal-class-properties": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz",
       "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-create-class-features-plugin": "^7.18.6",
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-proposal-decorators": {
+    "@babel/plugin-proposal-decorators": {
       "version": "7.21.0",
       "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.21.0.tgz",
       "integrity": "sha512-MfgX49uRrFUTL/HvWtmx3zmpyzMMr4MTj3d527MLlr/4RTT9G/ytFFP7qet2uM2Ve03b+BkpWUpK+lRXnQ+v9w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-create-class-features-plugin": "^7.21.0",
         "@babel/helper-plugin-utils": "^7.20.2",
         "@babel/helper-replace-supers": "^7.20.7",
         "@babel/helper-split-export-declaration": "^7.18.6",
         "@babel/plugin-syntax-decorators": "^7.21.0"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-proposal-json-strings": {
+    "@babel/plugin-proposal-json-strings": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz",
       "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.6",
         "@babel/plugin-syntax-json-strings": "^7.8.3"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-proposal-object-rest-spread": {
+    "@babel/plugin-proposal-object-rest-spread": {
       "version": "7.20.7",
       "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz",
       "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/compat-data": "^7.20.5",
         "@babel/helper-compilation-targets": "^7.20.7",
         "@babel/helper-plugin-utils": "^7.20.2",
         "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
         "@babel/plugin-transform-parameters": "^7.20.7"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-proposal-optional-catch-binding": {
+    "@babel/plugin-proposal-optional-catch-binding": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz",
       "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.6",
         "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-proposal-unicode-property-regex": {
+    "@babel/plugin-proposal-unicode-property-regex": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz",
       "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-create-regexp-features-plugin": "^7.18.6",
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=4"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-syntax-async-generators": {
+    "@babel/plugin-syntax-async-generators": {
       "version": "7.8.4",
       "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
       "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.8.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-syntax-decorators": {
+    "@babel/plugin-syntax-decorators": {
       "version": "7.21.0",
       "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.21.0.tgz",
       "integrity": "sha512-tIoPpGBR8UuM4++ccWN3gifhVvQu7ZizuR1fklhRJrd5ewgbkUS+0KVFeWWxELtn18NTLoW32XV7zyOgIAiz+w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.20.2"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-syntax-dynamic-import": {
+    "@babel/plugin-syntax-dynamic-import": {
       "version": "7.8.3",
       "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
       "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.8.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-syntax-json-strings": {
+    "@babel/plugin-syntax-json-strings": {
       "version": "7.8.3",
       "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
       "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.8.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-syntax-jsx": {
+    "@babel/plugin-syntax-jsx": {
       "version": "7.21.4",
       "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.21.4.tgz",
       "integrity": "sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.20.2"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-syntax-object-rest-spread": {
+    "@babel/plugin-syntax-object-rest-spread": {
       "version": "7.8.3",
       "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
       "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.8.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-syntax-optional-catch-binding": {
+    "@babel/plugin-syntax-optional-catch-binding": {
       "version": "7.8.3",
       "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
       "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.8.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-arrow-functions": {
+    "@babel/plugin-transform-arrow-functions": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz",
       "integrity": "sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.21.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-async-to-generator": {
+    "@babel/plugin-transform-async-to-generator": {
       "version": "7.20.7",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz",
       "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-module-imports": "^7.18.6",
         "@babel/helper-plugin-utils": "^7.20.2",
         "@babel/helper-remap-async-to-generator": "^7.18.9"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-block-scoped-functions": {
+    "@babel/plugin-transform-block-scoped-functions": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz",
       "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-block-scoping": {
+    "@babel/plugin-transform-block-scoping": {
       "version": "7.21.0",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz",
       "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.20.2"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-classes": {
+    "@babel/plugin-transform-classes": {
       "version": "7.21.0",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz",
       "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-annotate-as-pure": "^7.18.6",
         "@babel/helper-compilation-targets": "^7.20.7",
         "@babel/helper-environment-visitor": "^7.18.9",
@@ -846,290 +585,182 @@
         "@babel/helper-replace-supers": "^7.20.7",
         "@babel/helper-split-export-declaration": "^7.18.6",
         "globals": "^11.1.0"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-computed-properties": {
+    "@babel/plugin-transform-computed-properties": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz",
       "integrity": "sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.21.5",
         "@babel/template": "^7.20.7"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-destructuring": {
+    "@babel/plugin-transform-destructuring": {
       "version": "7.21.3",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz",
       "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.20.2"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-dotall-regex": {
+    "@babel/plugin-transform-dotall-regex": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz",
       "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-create-regexp-features-plugin": "^7.18.6",
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-duplicate-keys": {
+    "@babel/plugin-transform-duplicate-keys": {
       "version": "7.18.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz",
       "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.9"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-exponentiation-operator": {
+    "@babel/plugin-transform-exponentiation-operator": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz",
       "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6",
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-for-of": {
+    "@babel/plugin-transform-for-of": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz",
       "integrity": "sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.21.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-function-name": {
+    "@babel/plugin-transform-function-name": {
       "version": "7.18.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz",
       "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-compilation-targets": "^7.18.9",
         "@babel/helper-function-name": "^7.18.9",
         "@babel/helper-plugin-utils": "^7.18.9"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-literals": {
+    "@babel/plugin-transform-literals": {
       "version": "7.18.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz",
       "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.9"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-modules-amd": {
+    "@babel/plugin-transform-modules-amd": {
       "version": "7.20.11",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz",
       "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-module-transforms": "^7.20.11",
         "@babel/helper-plugin-utils": "^7.20.2"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-modules-commonjs": {
+    "@babel/plugin-transform-modules-commonjs": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz",
       "integrity": "sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-module-transforms": "^7.21.5",
         "@babel/helper-plugin-utils": "^7.21.5",
         "@babel/helper-simple-access": "^7.21.5"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-modules-systemjs": {
+    "@babel/plugin-transform-modules-systemjs": {
       "version": "7.20.11",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz",
       "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-hoist-variables": "^7.18.6",
         "@babel/helper-module-transforms": "^7.20.11",
         "@babel/helper-plugin-utils": "^7.20.2",
         "@babel/helper-validator-identifier": "^7.19.1"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-modules-umd": {
+    "@babel/plugin-transform-modules-umd": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz",
       "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-module-transforms": "^7.18.6",
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-named-capturing-groups-regex": {
+    "@babel/plugin-transform-named-capturing-groups-regex": {
       "version": "7.20.5",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz",
       "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-create-regexp-features-plugin": "^7.20.5",
         "@babel/helper-plugin-utils": "^7.20.2"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0"
       }
     },
-    "node_modules/@babel/plugin-transform-new-target": {
+    "@babel/plugin-transform-new-target": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz",
       "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-object-super": {
+    "@babel/plugin-transform-object-super": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz",
       "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.6",
         "@babel/helper-replace-supers": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-parameters": {
+    "@babel/plugin-transform-parameters": {
       "version": "7.21.3",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz",
       "integrity": "sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.20.2"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-regenerator": {
+    "@babel/plugin-transform-regenerator": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz",
       "integrity": "sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.21.5",
         "regenerator-transform": "^0.15.1"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-runtime": {
+    "@babel/plugin-transform-runtime": {
       "version": "7.21.4",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.4.tgz",
       "integrity": "sha512-1J4dhrw1h1PqnNNpzwxQ2UBymJUF8KuPjAAnlLwZcGhHAIqUigFW7cdK6GHoB64ubY4qXQNYknoUeks4Wz7CUA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-module-imports": "^7.21.4",
         "@babel/helper-plugin-utils": "^7.20.2",
         "babel-plugin-polyfill-corejs2": "^0.3.3",
@@ -1137,120 +768,77 @@
         "babel-plugin-polyfill-regenerator": "^0.4.1",
         "semver": "^6.3.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
+      "dependencies": {
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/@babel/plugin-transform-runtime/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/@babel/plugin-transform-shorthand-properties": {
+    "@babel/plugin-transform-shorthand-properties": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz",
       "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-spread": {
+    "@babel/plugin-transform-spread": {
       "version": "7.20.7",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz",
       "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.20.2",
         "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-sticky-regex": {
+    "@babel/plugin-transform-sticky-regex": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz",
       "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-template-literals": {
+    "@babel/plugin-transform-template-literals": {
       "version": "7.18.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz",
       "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.9"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-typeof-symbol": {
+    "@babel/plugin-transform-typeof-symbol": {
       "version": "7.18.9",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz",
       "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-plugin-utils": "^7.18.9"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/plugin-transform-unicode-regex": {
+    "@babel/plugin-transform-unicode-regex": {
       "version": "7.18.6",
       "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz",
       "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-create-regexp-features-plugin": "^7.18.6",
         "@babel/helper-plugin-utils": "^7.18.6"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/preset-env": {
+    "@babel/preset-env": {
       "version": "7.3.4",
       "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.3.4.tgz",
       "integrity": "sha512-2mwqfYMK8weA0g0uBKOt4FE3iEodiHy9/CW0b+nWXcbL+pGzLx8ESYc+j9IIxr6LTDHWKgPm71i9smo02bw+gA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-module-imports": "^7.0.0",
         "@babel/helper-plugin-utils": "^7.0.0",
         "@babel/plugin-proposal-async-generator-functions": "^7.2.0",
@@ -1294,74 +882,66 @@
         "invariant": "^2.2.2",
         "js-levenshtein": "^1.1.3",
         "semver": "^5.3.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@babel/regjsgen": {
+    "@babel/regjsgen": {
       "version": "0.8.0",
       "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz",
       "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==",
       "dev": true
     },
-    "node_modules/@babel/runtime": {
+    "@babel/runtime": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.5.tgz",
       "integrity": "sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "regenerator-runtime": "^0.13.11"
       },
-      "engines": {
-        "node": ">=6.9.0"
+      "dependencies": {
+        "regenerator-runtime": {
+          "version": "0.13.11",
+          "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
+          "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==",
+          "dev": true
+        }
       }
     },
-    "node_modules/@babel/runtime-corejs2": {
+    "@babel/runtime-corejs2": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/runtime-corejs2/-/runtime-corejs2-7.21.5.tgz",
       "integrity": "sha512-S2tysuG+DdRT77RwSQjlQWGdPW+91F3JmVLUxo5Lggu3LmTe57NVpagpxu0UW/mzP++UQY0r38I7wnhav8X4fA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "core-js": "^2.6.12",
         "regenerator-runtime": "^0.13.11"
       },
-      "engines": {
-        "node": ">=6.9.0"
+      "dependencies": {
+        "regenerator-runtime": {
+          "version": "0.13.11",
+          "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
+          "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==",
+          "dev": true
+        }
       }
     },
-    "node_modules/@babel/runtime-corejs2/node_modules/regenerator-runtime": {
-      "version": "0.13.11",
-      "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
-      "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==",
-      "dev": true
-    },
-    "node_modules/@babel/runtime/node_modules/regenerator-runtime": {
-      "version": "0.13.11",
-      "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
-      "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==",
-      "dev": true
-    },
-    "node_modules/@babel/template": {
+    "@babel/template": {
       "version": "7.20.7",
       "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz",
       "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/code-frame": "^7.18.6",
         "@babel/parser": "^7.20.7",
         "@babel/types": "^7.20.7"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@babel/traverse": {
+    "@babel/traverse": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz",
       "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/code-frame": "^7.21.4",
         "@babel/generator": "^7.21.5",
         "@babel/helper-environment-visitor": "^7.21.5",
@@ -1373,408 +953,333 @@
         "debug": "^4.1.0",
         "globals": "^11.1.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/@babel/traverse/node_modules/debug": {
-      "version": "4.3.4",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
-      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.1.2"
-      },
-      "engines": {
-        "node": ">=6.0"
-      },
-      "peerDependenciesMeta": {
-        "supports-color": {
-          "optional": true
+        "debug": {
+          "version": "4.3.4",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+          "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+          "dev": true,
+          "requires": {
+            "ms": "2.1.2"
+          }
+        },
+        "ms": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+          "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+          "dev": true
         }
       }
     },
-    "node_modules/@babel/traverse/node_modules/ms": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
-      "dev": true
-    },
-    "node_modules/@babel/types": {
+    "@babel/types": {
       "version": "7.21.5",
       "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz",
       "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-string-parser": "^7.21.5",
         "@babel/helper-validator-identifier": "^7.19.1",
         "to-fast-properties": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6.9.0"
       }
     },
-    "node_modules/@hapi/address": {
+    "@hapi/address": {
       "version": "2.1.4",
       "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz",
       "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==",
-      "deprecated": "Moved to 'npm install @sideway/address'",
       "dev": true
     },
-    "node_modules/@hapi/bourne": {
+    "@hapi/bourne": {
       "version": "1.3.2",
       "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz",
       "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==",
-      "deprecated": "This version has been deprecated and is no longer supported or maintained",
       "dev": true
     },
-    "node_modules/@hapi/hoek": {
+    "@hapi/hoek": {
       "version": "8.5.1",
       "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz",
       "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==",
-      "deprecated": "This version has been deprecated and is no longer supported or maintained",
       "dev": true
     },
-    "node_modules/@hapi/joi": {
+    "@hapi/joi": {
       "version": "15.1.1",
       "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz",
       "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==",
-      "deprecated": "Switch to 'npm install joi'",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@hapi/address": "2.x.x",
         "@hapi/bourne": "1.x.x",
         "@hapi/hoek": "8.x.x",
         "@hapi/topo": "3.x.x"
       }
     },
-    "node_modules/@hapi/topo": {
+    "@hapi/topo": {
       "version": "3.1.6",
       "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz",
       "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==",
-      "deprecated": "This version has been deprecated and is no longer supported or maintained",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@hapi/hoek": "^8.3.0"
       }
     },
-    "node_modules/@intervolga/optimize-cssnano-plugin": {
+    "@intervolga/optimize-cssnano-plugin": {
       "version": "1.0.6",
       "resolved": "https://registry.npmjs.org/@intervolga/optimize-cssnano-plugin/-/optimize-cssnano-plugin-1.0.6.tgz",
       "integrity": "sha512-zN69TnSr0viRSU6cEDIcuPcP67QcpQ6uHACg58FiN9PDrU6SLyGW3MR4tiISbYxy1kDWAVPwD+XwQTWE5cigAA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssnano": "^4.0.0",
         "cssnano-preset-default": "^4.0.0",
         "postcss": "^7.0.0"
       },
-      "peerDependencies": {
-        "webpack": "^4.0.0"
-      }
-    },
-    "node_modules/@intervolga/optimize-cssnano-plugin/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/@intervolga/optimize-cssnano-plugin/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/@jridgewell/gen-mapping": {
+    "@jridgewell/gen-mapping": {
       "version": "0.3.3",
       "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
       "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@jridgewell/set-array": "^1.0.1",
         "@jridgewell/sourcemap-codec": "^1.4.10",
         "@jridgewell/trace-mapping": "^0.3.9"
-      },
-      "engines": {
-        "node": ">=6.0.0"
       }
     },
-    "node_modules/@jridgewell/resolve-uri": {
+    "@jridgewell/resolve-uri": {
       "version": "3.1.0",
       "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
       "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.0.0"
-      }
+      "dev": true
     },
-    "node_modules/@jridgewell/set-array": {
+    "@jridgewell/set-array": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
       "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.0.0"
-      }
+      "dev": true
     },
-    "node_modules/@jridgewell/sourcemap-codec": {
+    "@jridgewell/sourcemap-codec": {
       "version": "1.4.15",
       "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
       "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
       "dev": true
     },
-    "node_modules/@jridgewell/trace-mapping": {
+    "@jridgewell/trace-mapping": {
       "version": "0.3.18",
       "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz",
       "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@jridgewell/resolve-uri": "3.1.0",
         "@jridgewell/sourcemap-codec": "1.4.14"
+      },
+      "dependencies": {
+        "@jridgewell/sourcemap-codec": {
+          "version": "1.4.14",
+          "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
+          "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": {
-      "version": "1.4.14",
-      "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
-      "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
-      "dev": true
-    },
-    "node_modules/@mrmlnc/readdir-enhanced": {
+    "@mrmlnc/readdir-enhanced": {
       "version": "2.2.1",
       "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz",
       "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-me-maybe": "^1.0.1",
         "glob-to-regexp": "^0.3.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/@nodelib/fs.stat": {
+    "@nodelib/fs.stat": {
       "version": "1.1.3",
       "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz",
       "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==",
-      "dev": true,
-      "engines": {
-        "node": ">= 6"
-      }
+      "dev": true
     },
-    "node_modules/@soda/friendly-errors-webpack-plugin": {
+    "@soda/friendly-errors-webpack-plugin": {
       "version": "1.8.1",
       "resolved": "https://registry.npmjs.org/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.8.1.tgz",
       "integrity": "sha512-h2ooWqP8XuFqTXT+NyAFbrArzfQA7R6HTezADrvD9Re8fxMLTPPniLdqVTdDaO0eIoLaAwKT+d6w+5GeTk7Vbg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "chalk": "^3.0.0",
         "error-stack-parser": "^2.0.6",
         "string-width": "^4.2.3",
         "strip-ansi": "^6.0.1"
       },
-      "engines": {
-        "node": ">=8.0.0"
-      },
-      "peerDependencies": {
-        "webpack": "^4.0.0 || ^5.0.0"
-      }
-    },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/ansi-regex": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
-      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/ansi-styles": {
-      "version": "4.3.0",
-      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
-      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
       "dependencies": {
-        "color-convert": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+        "ansi-regex": {
+          "version": "5.0.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+          "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+          "dev": true
+        },
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "chalk": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+          "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+          "dev": true
+        },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+          "dev": true
+        },
+        "is-fullwidth-code-point": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+          "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+          "dev": true
+        },
+        "string-width": {
+          "version": "4.2.3",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+          "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+          "dev": true,
+          "requires": {
+            "emoji-regex": "^8.0.0",
+            "is-fullwidth-code-point": "^3.0.0",
+            "strip-ansi": "^6.0.1"
+          }
+        },
+        "strip-ansi": {
+          "version": "6.0.1",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+          "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+          "dev": true,
+          "requires": {
+            "ansi-regex": "^5.0.1"
+          }
+        },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+          "dev": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        }
       }
     },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/chalk": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
-      "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
-      "dev": true,
-      "dependencies": {
-        "ansi-styles": "^4.1.0",
-        "supports-color": "^7.1.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/color-convert": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
-      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
-      "dependencies": {
-        "color-name": "~1.1.4"
-      },
-      "engines": {
-        "node": ">=7.0.0"
-      }
-    },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/color-name": {
-      "version": "1.1.4",
-      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
-      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true
-    },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/has-flag": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
-      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/is-fullwidth-code-point": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
-      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/string-width": {
-      "version": "4.2.3",
-      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
-      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
-      "dev": true,
-      "dependencies": {
-        "emoji-regex": "^8.0.0",
-        "is-fullwidth-code-point": "^3.0.0",
-        "strip-ansi": "^6.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/strip-ansi": {
-      "version": "6.0.1",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
-      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
-      "dev": true,
-      "dependencies": {
-        "ansi-regex": "^5.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/supports-color": {
-      "version": "7.2.0",
-      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
-      "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "dev": true,
-      "dependencies": {
-        "has-flag": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/@types/glob": {
+    "@types/glob": {
       "version": "7.2.0",
       "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz",
       "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@types/minimatch": "*",
         "@types/node": "*"
       }
     },
-    "node_modules/@types/json-schema": {
+    "@types/json-schema": {
       "version": "7.0.11",
       "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
       "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==",
       "dev": true
     },
-    "node_modules/@types/minimatch": {
+    "@types/minimatch": {
       "version": "5.1.2",
       "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz",
       "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==",
       "dev": true
     },
-    "node_modules/@types/minimist": {
+    "@types/minimist": {
       "version": "1.2.2",
       "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz",
       "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==",
       "dev": true
     },
-    "node_modules/@types/node": {
+    "@types/node": {
       "version": "20.0.0",
       "resolved": "https://registry.npmjs.org/@types/node/-/node-20.0.0.tgz",
       "integrity": "sha512-cD2uPTDnQQCVpmRefonO98/PPijuOnnEy5oytWJFPY1N9aJCz2wJ5kSGWO+zJoed2cY2JxQh6yBuUq4vIn61hw==",
       "dev": true
     },
-    "node_modules/@types/normalize-package-data": {
+    "@types/normalize-package-data": {
       "version": "2.4.1",
       "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz",
       "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==",
       "dev": true
     },
-    "node_modules/@types/q": {
+    "@types/q": {
       "version": "1.5.5",
       "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz",
       "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==",
       "dev": true
     },
-    "node_modules/@vue/babel-helper-vue-jsx-merge-props": {
+    "@vue/babel-helper-vue-jsx-merge-props": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.4.0.tgz",
       "integrity": "sha512-JkqXfCkUDp4PIlFdDQ0TdXoIejMtTHP67/pvxlgeY+u5k3LEdKuWZ3LK6xkxo52uDoABIVyRwqVkfLQJhk7VBA==",
       "dev": true
     },
-    "node_modules/@vue/babel-plugin-transform-vue-jsx": {
+    "@vue/babel-plugin-transform-vue-jsx": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/@vue/babel-plugin-transform-vue-jsx/-/babel-plugin-transform-vue-jsx-1.4.0.tgz",
       "integrity": "sha512-Fmastxw4MMx0vlgLS4XBX0XiBbUFzoMGeVXuMV08wyOfXdikAFqBTuYPR0tlk+XskL19EzHc39SgjrPGY23JnA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-module-imports": "^7.0.0",
         "@babel/plugin-syntax-jsx": "^7.2.0",
         "@vue/babel-helper-vue-jsx-merge-props": "^1.4.0",
         "html-tags": "^2.0.0",
         "lodash.kebabcase": "^4.1.1",
         "svg-tags": "^1.0.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@vue/babel-preset-app": {
+    "@vue/babel-preset-app": {
       "version": "3.12.1",
       "resolved": "https://registry.npmjs.org/@vue/babel-preset-app/-/babel-preset-app-3.12.1.tgz",
       "integrity": "sha512-Zjy5jQaikV1Pz+ri0YgXFS7q4/5wCxB5tRkDOEIt5+4105u0Feb/pvH20nVL6nx9GyXrECFfcm7Yxr/z++OaPQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-module-imports": "^7.0.0",
         "@babel/plugin-proposal-class-properties": "^7.0.0",
         "@babel/plugin-proposal-decorators": "^7.1.0",
@@ -1790,12 +1295,12 @@
         "core-js": "^2.6.5"
       }
     },
-    "node_modules/@vue/babel-preset-jsx": {
+    "@vue/babel-preset-jsx": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/@vue/babel-preset-jsx/-/babel-preset-jsx-1.4.0.tgz",
       "integrity": "sha512-QmfRpssBOPZWL5xw7fOuHNifCQcNQC1PrOo/4fu6xlhlKJJKSA3HqX92Nvgyx8fqHZTUGMPHmFA+IDqwXlqkSA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@vue/babel-helper-vue-jsx-merge-props": "^1.4.0",
         "@vue/babel-plugin-transform-vue-jsx": "^1.4.0",
         "@vue/babel-sugar-composition-api-inject-h": "^1.4.0",
@@ -1804,108 +1309,81 @@
         "@vue/babel-sugar-inject-h": "^1.4.0",
         "@vue/babel-sugar-v-model": "^1.4.0",
         "@vue/babel-sugar-v-on": "^1.4.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0",
-        "vue": "*"
-      },
-      "peerDependenciesMeta": {
-        "vue": {
-          "optional": true
-        }
       }
     },
-    "node_modules/@vue/babel-sugar-composition-api-inject-h": {
+    "@vue/babel-sugar-composition-api-inject-h": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/@vue/babel-sugar-composition-api-inject-h/-/babel-sugar-composition-api-inject-h-1.4.0.tgz",
       "integrity": "sha512-VQq6zEddJHctnG4w3TfmlVp5FzDavUSut/DwR0xVoe/mJKXyMcsIibL42wPntozITEoY90aBV0/1d2KjxHU52g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/plugin-syntax-jsx": "^7.2.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@vue/babel-sugar-composition-api-render-instance": {
+    "@vue/babel-sugar-composition-api-render-instance": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/@vue/babel-sugar-composition-api-render-instance/-/babel-sugar-composition-api-render-instance-1.4.0.tgz",
       "integrity": "sha512-6ZDAzcxvy7VcnCjNdHJ59mwK02ZFuP5CnucloidqlZwVQv5CQLijc3lGpR7MD3TWFi78J7+a8J56YxbCtHgT9Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/plugin-syntax-jsx": "^7.2.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@vue/babel-sugar-functional-vue": {
+    "@vue/babel-sugar-functional-vue": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/@vue/babel-sugar-functional-vue/-/babel-sugar-functional-vue-1.4.0.tgz",
       "integrity": "sha512-lTEB4WUFNzYt2In6JsoF9sAYVTo84wC4e+PoZWSgM6FUtqRJz7wMylaEhSRgG71YF+wfLD6cc9nqVeXN2rwBvw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/plugin-syntax-jsx": "^7.2.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@vue/babel-sugar-inject-h": {
+    "@vue/babel-sugar-inject-h": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/@vue/babel-sugar-inject-h/-/babel-sugar-inject-h-1.4.0.tgz",
       "integrity": "sha512-muwWrPKli77uO2fFM7eA3G1lAGnERuSz2NgAxuOLzrsTlQl8W4G+wwbM4nB6iewlKbwKRae3nL03UaF5ffAPMA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/plugin-syntax-jsx": "^7.2.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@vue/babel-sugar-v-model": {
+    "@vue/babel-sugar-v-model": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/@vue/babel-sugar-v-model/-/babel-sugar-v-model-1.4.0.tgz",
       "integrity": "sha512-0t4HGgXb7WHYLBciZzN5s0Hzqan4Ue+p/3FdQdcaHAb7s5D9WZFGoSxEZHrR1TFVZlAPu1bejTKGeAzaaG3NCQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/plugin-syntax-jsx": "^7.2.0",
         "@vue/babel-helper-vue-jsx-merge-props": "^1.4.0",
         "@vue/babel-plugin-transform-vue-jsx": "^1.4.0",
         "camelcase": "^5.0.0",
         "html-tags": "^2.0.0",
         "svg-tags": "^1.0.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@vue/babel-sugar-v-on": {
+    "@vue/babel-sugar-v-on": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/@vue/babel-sugar-v-on/-/babel-sugar-v-on-1.4.0.tgz",
       "integrity": "sha512-m+zud4wKLzSKgQrWwhqRObWzmTuyzl6vOP7024lrpeJM4x2UhQtRDLgYjXAw9xBXjCwS0pP9kXjg91F9ZNo9JA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/plugin-syntax-jsx": "^7.2.0",
         "@vue/babel-plugin-transform-vue-jsx": "^1.4.0",
         "camelcase": "^5.0.0"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/@vue/cli-overlay": {
+    "@vue/cli-overlay": {
       "version": "3.12.1",
       "resolved": "https://registry.npmjs.org/@vue/cli-overlay/-/cli-overlay-3.12.1.tgz",
       "integrity": "sha512-Bym92EN+lj+cNRN2ozbYyH+V8DMXWGbCDUk+hiJ4EYDBZfBkZKvalk1/mOBFwyxiopnnbOEBAAhL/UuMQ1xARg==",
       "dev": true
     },
-    "node_modules/@vue/cli-plugin-babel": {
+    "@vue/cli-plugin-babel": {
       "version": "3.12.1",
       "resolved": "https://registry.npmjs.org/@vue/cli-plugin-babel/-/cli-plugin-babel-3.12.1.tgz",
       "integrity": "sha512-Zetvz8PikLCGomeKOKu8pC9YQ7cfxs7pGpvEOzaxGdhMnebhjAYR6i6dOB57A6N5lhxQksXCtYTv26QgfiIpdg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/core": "^7.0.0",
         "@vue/babel-preset-app": "^3.12.1",
         "@vue/cli-shared-utils": "^3.12.1",
@@ -1913,30 +1391,28 @@
         "webpack": "^4.0.0"
       }
     },
-    "node_modules/@vue/cli-plugin-eslint": {
+    "@vue/cli-plugin-eslint": {
       "version": "3.12.1",
       "resolved": "https://registry.npmjs.org/@vue/cli-plugin-eslint/-/cli-plugin-eslint-3.12.1.tgz",
       "integrity": "sha512-tVTZlEZsy3sQbO4LLWFK11yzlWwqVAqaM+IY+BeWHITBzEJKh2KmouG+x6x/reXiU3qROsMJ4Ej3Hs8buSMWyQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@vue/cli-shared-utils": "^3.12.1",
         "babel-eslint": "^10.0.1",
+        "eslint": "^4.19.1",
         "eslint-loader": "^2.1.2",
+        "eslint-plugin-vue": "^4.7.1",
         "globby": "^9.2.0",
         "webpack": "^4.0.0",
         "yorkie": "^2.0.0"
-      },
-      "optionalDependencies": {
-        "eslint": "^4.19.1",
-        "eslint-plugin-vue": "^4.7.1"
       }
     },
-    "node_modules/@vue/cli-service": {
+    "@vue/cli-service": {
       "version": "3.12.1",
       "resolved": "https://registry.npmjs.org/@vue/cli-service/-/cli-service-3.12.1.tgz",
       "integrity": "sha512-PDxNrTGnSKzeV1ruFlsRIAO8JcPizwT0EJXq9GeyooU+p+sOkv7aKkCBJQVYNjZapD1NOGWx6CvAAC/wAW+gew==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@intervolga/optimize-cssnano-plugin": "^1.0.5",
         "@soda/friendly-errors-webpack-plugin": "^1.7.1",
         "@vue/cli-overlay": "^3.12.1",
@@ -1994,54 +1470,36 @@
         "webpack-dev-server": "^3.4.1",
         "webpack-merge": "^4.2.1"
       },
-      "bin": {
-        "vue-cli-service": "bin/vue-cli-service.js"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "peerDependencies": {
-        "vue-template-compiler": "^2.0.0"
-      }
-    },
-    "node_modules/@vue/cli-service/node_modules/debug": {
-      "version": "4.3.4",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
-      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.1.2"
-      },
-      "engines": {
-        "node": ">=6.0"
-      },
-      "peerDependenciesMeta": {
-        "supports-color": {
-          "optional": true
+        "debug": {
+          "version": "4.3.4",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+          "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+          "dev": true,
+          "requires": {
+            "ms": "2.1.2"
+          }
+        },
+        "ms": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+          "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+          "dev": true
+        },
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
         }
       }
     },
-    "node_modules/@vue/cli-service/node_modules/ms": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
-      "dev": true
-    },
-    "node_modules/@vue/cli-service/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/@vue/cli-shared-utils": {
+    "@vue/cli-shared-utils": {
       "version": "3.12.1",
       "resolved": "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-3.12.1.tgz",
       "integrity": "sha512-jFblzRFjutGwu5utOKdVlPlsbA1lBUNNQlAThzNqej+JtTKJjnvjlhjKX0Gq0oOny5FjKWhoyfQ74p9h1qE6JQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@hapi/joi": "^15.0.1",
         "chalk": "^2.4.1",
         "execa": "^1.0.0",
@@ -2054,205 +1512,190 @@
         "request-promise-native": "^1.0.7",
         "semver": "^6.0.0",
         "string.prototype.padstart": "^3.0.0"
+      },
+      "dependencies": {
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/@vue/cli-shared-utils/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/@vue/compiler-sfc": {
+    "@vue/compiler-sfc": {
       "version": "2.7.14",
       "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.14.tgz",
       "integrity": "sha512-aNmNHyLPsw+sVvlQFQ2/8sjNuLtK54TC6cuKnVzAY93ks4ZBrvwQSnkkIh7bsbNhum5hJBS00wSDipQ937f5DA==",
-      "dependencies": {
+      "requires": {
         "@babel/parser": "^7.18.4",
         "postcss": "^8.4.14",
         "source-map": "^0.6.1"
       }
     },
-    "node_modules/@vue/component-compiler-utils": {
+    "@vue/component-compiler-utils": {
       "version": "3.3.0",
       "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz",
       "integrity": "sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "consolidate": "^0.15.1",
         "hash-sum": "^1.0.2",
         "lru-cache": "^4.1.2",
         "merge-source-map": "^1.1.0",
         "postcss": "^7.0.36",
         "postcss-selector-parser": "^6.0.2",
+        "prettier": "^1.18.2 || ^2.0.0",
         "source-map": "~0.6.1",
         "vue-template-es2015-compiler": "^1.9.0"
       },
-      "optionalDependencies": {
-        "prettier": "^1.18.2 || ^2.0.0"
-      }
-    },
-    "node_modules/@vue/component-compiler-utils/node_modules/lru-cache": {
-      "version": "4.1.5",
-      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
-      "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
-      "dev": true,
       "dependencies": {
-        "pseudomap": "^1.0.2",
-        "yallist": "^2.1.2"
+        "lru-cache": {
+          "version": "4.1.5",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
+          "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
+          "dev": true,
+          "requires": {
+            "pseudomap": "^1.0.2",
+            "yallist": "^2.1.2"
+          }
+        },
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "yallist": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
+          "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
+          "dev": true
+        }
       }
     },
-    "node_modules/@vue/component-compiler-utils/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/@vue/component-compiler-utils/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
-      "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
-      }
-    },
-    "node_modules/@vue/component-compiler-utils/node_modules/yallist": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
-      "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
-      "dev": true
-    },
-    "node_modules/@vue/preload-webpack-plugin": {
+    "@vue/preload-webpack-plugin": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/@vue/preload-webpack-plugin/-/preload-webpack-plugin-1.1.2.tgz",
       "integrity": "sha512-LIZMuJk38pk9U9Ur4YzHjlIyMuxPlACdBIHH9/nGYVTsaGKOSnSuELiE8vS9wa+dJpIYspYUOqk+L1Q4pgHQHQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "peerDependencies": {
-        "html-webpack-plugin": ">=2.26.0",
-        "webpack": ">=4.0.0"
-      }
+      "dev": true
     },
-    "node_modules/@vue/web-component-wrapper": {
+    "@vue/web-component-wrapper": {
       "version": "1.3.0",
       "resolved": "https://registry.npmjs.org/@vue/web-component-wrapper/-/web-component-wrapper-1.3.0.tgz",
       "integrity": "sha512-Iu8Tbg3f+emIIMmI2ycSI8QcEuAUgPTgHwesDU1eKMLE4YC/c/sFbGc70QgMq31ijRftV0R7vCm9co6rldCeOA==",
       "dev": true
     },
-    "node_modules/@webassemblyjs/ast": {
+    "@webassemblyjs/ast": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz",
       "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/helper-module-context": "1.9.0",
         "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
         "@webassemblyjs/wast-parser": "1.9.0"
       }
     },
-    "node_modules/@webassemblyjs/floating-point-hex-parser": {
+    "@webassemblyjs/floating-point-hex-parser": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz",
       "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==",
       "dev": true
     },
-    "node_modules/@webassemblyjs/helper-api-error": {
+    "@webassemblyjs/helper-api-error": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz",
       "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==",
       "dev": true
     },
-    "node_modules/@webassemblyjs/helper-buffer": {
+    "@webassemblyjs/helper-buffer": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz",
       "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==",
       "dev": true
     },
-    "node_modules/@webassemblyjs/helper-code-frame": {
+    "@webassemblyjs/helper-code-frame": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz",
       "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/wast-printer": "1.9.0"
       }
     },
-    "node_modules/@webassemblyjs/helper-fsm": {
+    "@webassemblyjs/helper-fsm": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz",
       "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==",
       "dev": true
     },
-    "node_modules/@webassemblyjs/helper-module-context": {
+    "@webassemblyjs/helper-module-context": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz",
       "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/ast": "1.9.0"
       }
     },
-    "node_modules/@webassemblyjs/helper-wasm-bytecode": {
+    "@webassemblyjs/helper-wasm-bytecode": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz",
       "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==",
       "dev": true
     },
-    "node_modules/@webassemblyjs/helper-wasm-section": {
+    "@webassemblyjs/helper-wasm-section": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz",
       "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/ast": "1.9.0",
         "@webassemblyjs/helper-buffer": "1.9.0",
         "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
         "@webassemblyjs/wasm-gen": "1.9.0"
       }
     },
-    "node_modules/@webassemblyjs/ieee754": {
+    "@webassemblyjs/ieee754": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz",
       "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@xtuc/ieee754": "^1.2.0"
       }
     },
-    "node_modules/@webassemblyjs/leb128": {
+    "@webassemblyjs/leb128": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz",
       "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@xtuc/long": "4.2.2"
       }
     },
-    "node_modules/@webassemblyjs/utf8": {
+    "@webassemblyjs/utf8": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz",
       "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==",
       "dev": true
     },
-    "node_modules/@webassemblyjs/wasm-edit": {
+    "@webassemblyjs/wasm-edit": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz",
       "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/ast": "1.9.0",
         "@webassemblyjs/helper-buffer": "1.9.0",
         "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
@@ -2263,12 +1706,12 @@
         "@webassemblyjs/wast-printer": "1.9.0"
       }
     },
-    "node_modules/@webassemblyjs/wasm-gen": {
+    "@webassemblyjs/wasm-gen": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz",
       "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/ast": "1.9.0",
         "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
         "@webassemblyjs/ieee754": "1.9.0",
@@ -2276,24 +1719,24 @@
         "@webassemblyjs/utf8": "1.9.0"
       }
     },
-    "node_modules/@webassemblyjs/wasm-opt": {
+    "@webassemblyjs/wasm-opt": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz",
       "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/ast": "1.9.0",
         "@webassemblyjs/helper-buffer": "1.9.0",
         "@webassemblyjs/wasm-gen": "1.9.0",
         "@webassemblyjs/wasm-parser": "1.9.0"
       }
     },
-    "node_modules/@webassemblyjs/wasm-parser": {
+    "@webassemblyjs/wasm-parser": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz",
       "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/ast": "1.9.0",
         "@webassemblyjs/helper-api-error": "1.9.0",
         "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
@@ -2302,12 +1745,12 @@
         "@webassemblyjs/utf8": "1.9.0"
       }
     },
-    "node_modules/@webassemblyjs/wast-parser": {
+    "@webassemblyjs/wast-parser": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz",
       "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/ast": "1.9.0",
         "@webassemblyjs/floating-point-hex-parser": "1.9.0",
         "@webassemblyjs/helper-api-error": "1.9.0",
@@ -2316,506 +1759,392 @@
         "@xtuc/long": "4.2.2"
       }
     },
-    "node_modules/@webassemblyjs/wast-printer": {
+    "@webassemblyjs/wast-printer": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz",
       "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/ast": "1.9.0",
         "@webassemblyjs/wast-parser": "1.9.0",
         "@xtuc/long": "4.2.2"
       }
     },
-    "node_modules/@xtuc/ieee754": {
+    "@xtuc/ieee754": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
       "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
       "dev": true
     },
-    "node_modules/@xtuc/long": {
+    "@xtuc/long": {
       "version": "4.2.2",
       "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
       "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
       "dev": true
     },
-    "node_modules/abbrev": {
+    "abbrev": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
       "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
     },
-    "node_modules/accepts": {
+    "accepts": {
       "version": "1.3.8",
       "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
       "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "mime-types": "~2.1.34",
         "negotiator": "0.6.3"
-      },
-      "engines": {
-        "node": ">= 0.6"
       }
     },
-    "node_modules/acorn": {
+    "acorn": {
       "version": "6.4.2",
       "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz",
       "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==",
-      "dev": true,
-      "bin": {
-        "acorn": "bin/acorn"
-      },
-      "engines": {
-        "node": ">=0.4.0"
-      }
+      "dev": true
     },
-    "node_modules/acorn-jsx": {
+    "acorn-jsx": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
       "integrity": "sha512-AU7pnZkguthwBjKgCg6998ByQNIMjbuDQZ8bb78QAFZwPfmKia8AIzgY/gWgqCjnht8JLdXmB4YxA0KaV60ncQ==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "acorn": "^3.0.4"
-      }
-    },
-    "node_modules/acorn-jsx/node_modules/acorn": {
-      "version": "3.3.0",
-      "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
-      "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==",
-      "dev": true,
-      "bin": {
-        "acorn": "bin/acorn"
       },
-      "engines": {
-        "node": ">=0.4.0"
+      "dependencies": {
+        "acorn": {
+          "version": "3.3.0",
+          "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
+          "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==",
+          "dev": true,
+          "optional": true
+        }
       }
     },
-    "node_modules/acorn-walk": {
+    "acorn-walk": {
       "version": "6.2.0",
       "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz",
       "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.4.0"
-      }
+      "dev": true
     },
-    "node_modules/address": {
+    "address": {
       "version": "1.2.2",
       "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz",
       "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 10.0.0"
-      }
+      "dev": true
     },
-    "node_modules/ajv": {
+    "ajv": {
       "version": "6.12.6",
       "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
       "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
-      "dependencies": {
+      "requires": {
         "fast-deep-equal": "^3.1.1",
         "fast-json-stable-stringify": "^2.0.0",
         "json-schema-traverse": "^0.4.1",
         "uri-js": "^4.2.2"
-      },
-      "funding": {
-        "type": "github",
-        "url": "https://github.com/sponsors/epoberezkin"
       }
     },
-    "node_modules/ajv-errors": {
+    "ajv-errors": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz",
       "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==",
-      "dev": true,
-      "peerDependencies": {
-        "ajv": ">=5.0.0"
-      }
+      "dev": true
     },
-    "node_modules/ajv-keywords": {
+    "ajv-keywords": {
       "version": "3.5.2",
       "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
       "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
-      "dev": true,
-      "peerDependencies": {
-        "ajv": "^6.9.1"
-      }
+      "dev": true
     },
-    "node_modules/alphanum-sort": {
+    "alphanum-sort": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz",
       "integrity": "sha512-0FcBfdcmaumGPQ0qPn7Q5qTgz/ooXgIyp1rf8ik5bGX8mpE2YHjC0P/eyQvxu1GURYQgq9ozf2mteQ5ZD9YiyQ==",
       "dev": true
     },
-    "node_modules/amdefine": {
+    "amdefine": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
       "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.4.2"
-      }
+      "dev": true
     },
-    "node_modules/ansi-colors": {
+    "ansi-colors": {
       "version": "3.2.4",
       "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz",
       "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/ansi-escapes": {
+    "ansi-escapes": {
       "version": "3.2.0",
       "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz",
       "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==",
       "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "optional": true
     },
-    "node_modules/ansi-html-community": {
+    "ansi-html-community": {
       "version": "0.0.8",
       "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz",
       "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==",
-      "dev": true,
-      "engines": [
-        "node >= 0.8.0"
-      ],
-      "bin": {
-        "ansi-html": "bin/ansi-html"
-      }
+      "dev": true
     },
-    "node_modules/ansi-regex": {
+    "ansi-regex": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
-      "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA=="
     },
-    "node_modules/ansi-styles": {
+    "ansi-styles": {
       "version": "3.2.1",
       "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
       "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "color-convert": "^1.9.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/any-promise": {
+    "any-promise": {
       "version": "1.3.0",
       "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
       "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==",
       "dev": true
     },
-    "node_modules/anymatch": {
+    "anymatch": {
       "version": "3.1.3",
       "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
       "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
       "dev": true,
       "optional": true,
-      "dependencies": {
+      "requires": {
         "normalize-path": "^3.0.0",
         "picomatch": "^2.0.4"
-      },
-      "engines": {
-        "node": ">= 8"
       }
     },
-    "node_modules/aproba": {
+    "aproba": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
       "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="
     },
-    "node_modules/arch": {
+    "arch": {
       "version": "2.2.0",
       "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz",
       "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/feross"
-        },
-        {
-          "type": "patreon",
-          "url": "https://www.patreon.com/feross"
-        },
-        {
-          "type": "consulting",
-          "url": "https://feross.org/support"
-        }
-      ]
+      "dev": true
     },
-    "node_modules/are-we-there-yet": {
+    "are-we-there-yet": {
       "version": "1.1.7",
       "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz",
       "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==",
-      "dependencies": {
+      "requires": {
         "delegates": "^1.0.0",
         "readable-stream": "^2.0.6"
       }
     },
-    "node_modules/argparse": {
+    "argparse": {
       "version": "1.0.10",
       "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
       "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "sprintf-js": "~1.0.2"
       }
     },
-    "node_modules/arr-diff": {
+    "arr-diff": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
       "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/arr-flatten": {
+    "arr-flatten": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
       "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/arr-union": {
+    "arr-union": {
       "version": "3.1.0",
       "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
       "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/array-buffer-byte-length": {
+    "array-buffer-byte-length": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz",
       "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "is-array-buffer": "^3.0.1"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/array-flatten": {
+    "array-flatten": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
       "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==",
       "dev": true
     },
-    "node_modules/array-union": {
+    "array-union": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
       "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "array-uniq": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/array-uniq": {
+    "array-uniq": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
       "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/array-unique": {
+    "array-unique": {
       "version": "0.3.2",
       "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
       "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/array.prototype.reduce": {
+    "array.prototype.reduce": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz",
       "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.4",
         "es-abstract": "^1.20.4",
         "es-array-method-boxes-properly": "^1.0.0",
         "is-string": "^1.0.7"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/arrify": {
+    "arrify": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
       "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/asn1": {
+    "asn1": {
       "version": "0.2.6",
       "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz",
       "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
-      "dependencies": {
+      "requires": {
         "safer-buffer": "~2.1.0"
       }
     },
-    "node_modules/asn1.js": {
+    "asn1.js": {
       "version": "5.4.1",
       "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
       "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bn.js": "^4.0.0",
         "inherits": "^2.0.1",
         "minimalistic-assert": "^1.0.0",
         "safer-buffer": "^2.1.0"
+      },
+      "dependencies": {
+        "bn.js": {
+          "version": "4.12.0",
+          "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+          "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/asn1.js/node_modules/bn.js": {
-      "version": "4.12.0",
-      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
-      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
-      "dev": true
-    },
-    "node_modules/assert": {
+    "assert": {
       "version": "1.5.0",
       "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz",
       "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "object-assign": "^4.1.1",
         "util": "0.10.3"
+      },
+      "dependencies": {
+        "inherits": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
+          "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==",
+          "dev": true
+        },
+        "util": {
+          "version": "0.10.3",
+          "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
+          "integrity": "sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==",
+          "dev": true,
+          "requires": {
+            "inherits": "2.0.1"
+          }
+        }
       }
     },
-    "node_modules/assert-plus": {
+    "assert-plus": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
-      "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==",
-      "engines": {
-        "node": ">=0.8"
-      }
+      "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw=="
     },
-    "node_modules/assert/node_modules/inherits": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
-      "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==",
-      "dev": true
-    },
-    "node_modules/assert/node_modules/util": {
-      "version": "0.10.3",
-      "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
-      "integrity": "sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==",
-      "dev": true,
-      "dependencies": {
-        "inherits": "2.0.1"
-      }
-    },
-    "node_modules/assertion-error": {
+    "assertion-error": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
       "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
-      "dev": true,
-      "engines": {
-        "node": "*"
-      }
+      "dev": true
     },
-    "node_modules/assign-symbols": {
+    "assign-symbols": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
       "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/async": {
+    "async": {
       "version": "2.6.4",
       "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz",
       "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==",
-      "dependencies": {
+      "requires": {
         "lodash": "^4.17.14"
       }
     },
-    "node_modules/async-each": {
+    "async-each": {
       "version": "1.0.6",
       "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.6.tgz",
       "integrity": "sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "individual",
-          "url": "https://paulmillr.com/funding/"
-        }
-      ]
+      "dev": true
     },
-    "node_modules/async-foreach": {
+    "async-foreach": {
       "version": "0.1.3",
       "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
       "integrity": "sha512-VUeSMD8nEGBWaZK4lizI1sf3yEC7pnAQ/mrI7pC2fBz2s/tq5jWWEngTwaf0Gruu/OoXRGLGg1XFqpYBiGTYJA==",
-      "dev": true,
-      "engines": {
-        "node": "*"
-      }
+      "dev": true
     },
-    "node_modules/async-limiter": {
+    "async-limiter": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
       "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==",
       "dev": true
     },
-    "node_modules/async-validator": {
+    "async-validator": {
       "version": "1.8.5",
       "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-1.8.5.tgz",
       "integrity": "sha512-tXBM+1m056MAX0E8TL2iCjg8WvSyXu0Zc8LNtYqrVeyoL3+esHRZ4SieE9fKQyyU09uONjnMEjrNBMqT0mbvmA==",
-      "dependencies": {
+      "requires": {
         "babel-runtime": "6.x"
       }
     },
-    "node_modules/asynckit": {
+    "asynckit": {
       "version": "0.4.0",
       "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
       "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
     },
-    "node_modules/atob": {
+    "atob": {
       "version": "2.1.2",
       "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
       "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
-      "dev": true,
-      "bin": {
-        "atob": "bin/atob.js"
-      },
-      "engines": {
-        "node": ">= 4.5.0"
-      }
+      "dev": true
     },
-    "node_modules/autoprefixer": {
+    "autoprefixer": {
       "version": "9.8.8",
       "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz",
       "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserslist": "^4.12.0",
         "caniuse-lite": "^1.0.30001109",
         "normalize-range": "^0.1.2",
@@ -2824,54 +2153,36 @@
         "postcss": "^7.0.32",
         "postcss-value-parser": "^4.1.0"
       },
-      "bin": {
-        "autoprefixer": "bin/autoprefixer"
-      },
-      "funding": {
-        "type": "tidelift",
-        "url": "https://tidelift.com/funding/github/npm/autoprefixer"
-      }
-    },
-    "node_modules/autoprefixer/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/autoprefixer/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/available-typed-arrays": {
+    "available-typed-arrays": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
       "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/avue-plugin-ueditor": {
+    "avue-plugin-ueditor": {
       "version": "0.1.7",
       "resolved": "https://registry.npmjs.org/avue-plugin-ueditor/-/avue-plugin-ueditor-0.1.7.tgz",
       "integrity": "sha512-XLDTReDdMeRx0c0JOa7S6LMsqr3pg6HzvJbi4oVsaRl40vRHPXXyhlT4HkBgy/o53vA1yIxlO5cRxWWzRhB+Ow==",
-      "dependencies": {
+      "requires": {
         "axios": "^0.18.0",
         "element-ui": "^2.13.0",
         "vue": "^2.5.17",
@@ -2879,233 +2190,197 @@
         "wangeditor": "^3.1.1"
       }
     },
-    "node_modules/aws-sign2": {
+    "aws-sign2": {
       "version": "0.7.0",
       "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
-      "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==",
-      "engines": {
-        "node": "*"
-      }
+      "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA=="
     },
-    "node_modules/aws4": {
+    "aws4": {
       "version": "1.12.0",
       "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz",
       "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg=="
     },
-    "node_modules/axios": {
+    "axios": {
       "version": "0.18.1",
       "resolved": "https://registry.npmjs.org/axios/-/axios-0.18.1.tgz",
       "integrity": "sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g==",
-      "deprecated": "Critical security vulnerability fixed in v0.21.1. For more information, see https://github.com/axios/axios/pull/3410",
-      "dependencies": {
+      "requires": {
         "follow-redirects": "1.5.10",
         "is-buffer": "^2.0.2"
       }
     },
-    "node_modules/babel-code-frame": {
+    "babel-code-frame": {
       "version": "6.26.0",
       "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
       "integrity": "sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "chalk": "^1.1.3",
         "esutils": "^2.0.2",
         "js-tokens": "^3.0.2"
-      }
-    },
-    "node_modules/babel-code-frame/node_modules/ansi-styles": {
-      "version": "2.2.1",
-      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
-      "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/babel-code-frame/node_modules/chalk": {
-      "version": "1.1.3",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
-      "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
-      "dev": true,
-      "dependencies": {
-        "ansi-styles": "^2.2.1",
-        "escape-string-regexp": "^1.0.2",
-        "has-ansi": "^2.0.0",
-        "strip-ansi": "^3.0.0",
-        "supports-color": "^2.0.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
+      "dependencies": {
+        "ansi-styles": {
+          "version": "2.2.1",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+          "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
+          "dev": true
+        },
+        "chalk": {
+          "version": "1.1.3",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+          "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "^2.2.1",
+            "escape-string-regexp": "^1.0.2",
+            "has-ansi": "^2.0.0",
+            "strip-ansi": "^3.0.0",
+            "supports-color": "^2.0.0"
+          }
+        },
+        "js-tokens": {
+          "version": "3.0.2",
+          "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
+          "integrity": "sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg==",
+          "dev": true
+        },
+        "supports-color": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
+          "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
+          "dev": true
+        }
       }
     },
-    "node_modules/babel-code-frame/node_modules/js-tokens": {
-      "version": "3.0.2",
-      "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
-      "integrity": "sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg==",
-      "dev": true
-    },
-    "node_modules/babel-code-frame/node_modules/supports-color": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
-      "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.8.0"
-      }
-    },
-    "node_modules/babel-eslint": {
+    "babel-eslint": {
       "version": "10.1.0",
       "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz",
       "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==",
-      "deprecated": "babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/code-frame": "^7.0.0",
         "@babel/parser": "^7.7.0",
         "@babel/traverse": "^7.7.0",
         "@babel/types": "^7.7.0",
         "eslint-visitor-keys": "^1.0.0",
         "resolve": "^1.12.0"
-      },
-      "engines": {
-        "node": ">=6"
-      },
-      "peerDependencies": {
-        "eslint": ">= 4.12.1"
       }
     },
-    "node_modules/babel-helper-vue-jsx-merge-props": {
+    "babel-helper-vue-jsx-merge-props": {
       "version": "2.0.3",
       "resolved": "https://registry.npmjs.org/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-2.0.3.tgz",
       "integrity": "sha512-gsLiKK7Qrb7zYJNgiXKpXblxbV5ffSwR0f5whkPAaBAR4fhi6bwRZxX9wBlIc5M/v8CCkXUbXZL4N/nSE97cqg=="
     },
-    "node_modules/babel-loader": {
+    "babel-loader": {
       "version": "8.3.0",
       "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz",
       "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "find-cache-dir": "^3.3.1",
         "loader-utils": "^2.0.0",
         "make-dir": "^3.1.0",
         "schema-utils": "^2.6.5"
-      },
-      "engines": {
-        "node": ">= 8.9"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0",
-        "webpack": ">=2"
       }
     },
-    "node_modules/babel-plugin-dynamic-import-node": {
+    "babel-plugin-dynamic-import-node": {
       "version": "2.3.3",
       "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
       "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "object.assign": "^4.1.0"
       }
     },
-    "node_modules/babel-plugin-module-resolver": {
+    "babel-plugin-module-resolver": {
       "version": "3.2.0",
       "resolved": "https://registry.npmjs.org/babel-plugin-module-resolver/-/babel-plugin-module-resolver-3.2.0.tgz",
       "integrity": "sha512-tjR0GvSndzPew/Iayf4uICWZqjBwnlMWjSx6brryfQ81F9rxBVqwDJtFCV8oOs0+vJeefK9TmdZtkIFdFe1UnA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "find-babel-config": "^1.1.0",
         "glob": "^7.1.2",
         "pkg-up": "^2.0.0",
         "reselect": "^3.0.1",
         "resolve": "^1.4.0"
-      },
-      "engines": {
-        "node": ">= 6.0.0"
       }
     },
-    "node_modules/babel-plugin-polyfill-corejs2": {
+    "babel-plugin-polyfill-corejs2": {
       "version": "0.3.3",
       "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz",
       "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/compat-data": "^7.17.7",
         "@babel/helper-define-polyfill-provider": "^0.3.3",
         "semver": "^6.1.1"
       },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
+      "dependencies": {
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/babel-plugin-polyfill-corejs3": {
+    "babel-plugin-polyfill-corejs3": {
       "version": "0.6.0",
       "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz",
       "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-define-polyfill-provider": "^0.3.3",
         "core-js-compat": "^3.25.1"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/babel-plugin-polyfill-regenerator": {
+    "babel-plugin-polyfill-regenerator": {
       "version": "0.4.1",
       "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz",
       "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/helper-define-polyfill-provider": "^0.3.3"
-      },
-      "peerDependencies": {
-        "@babel/core": "^7.0.0-0"
       }
     },
-    "node_modules/babel-polyfill": {
+    "babel-polyfill": {
       "version": "6.26.0",
       "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz",
       "integrity": "sha512-F2rZGQnAdaHWQ8YAoeRbukc7HS9QgdgeyJ0rQDd485v9opwuPvjpPFcOOT/WmkKTdgy9ESgSPXDcTNpzrGr6iQ==",
-      "dependencies": {
+      "requires": {
         "babel-runtime": "^6.26.0",
         "core-js": "^2.5.0",
         "regenerator-runtime": "^0.10.5"
+      },
+      "dependencies": {
+        "regenerator-runtime": {
+          "version": "0.10.5",
+          "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz",
+          "integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w=="
+        }
       }
     },
-    "node_modules/babel-polyfill/node_modules/regenerator-runtime": {
-      "version": "0.10.5",
-      "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz",
-      "integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w=="
-    },
-    "node_modules/babel-runtime": {
+    "babel-runtime": {
       "version": "6.26.0",
       "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
       "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==",
-      "dependencies": {
+      "requires": {
         "core-js": "^2.4.0",
         "regenerator-runtime": "^0.11.0"
       }
     },
-    "node_modules/balanced-match": {
+    "balanced-match": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
       "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
     },
-    "node_modules/base": {
+    "base": {
       "version": "0.11.2",
       "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
       "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cache-base": "^1.0.1",
         "class-utils": "^0.3.5",
         "component-emitter": "^1.2.1",
@@ -3114,156 +2389,110 @@
         "mixin-deep": "^1.2.0",
         "pascalcase": "^0.1.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/base/node_modules/define-property": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
-      "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
-      "dev": true,
       "dependencies": {
-        "is-descriptor": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "define-property": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+          "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
+          "dev": true,
+          "requires": {
+            "is-descriptor": "^1.0.0"
+          }
+        },
+        "is-accessor-descriptor": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+          "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+          "dev": true,
+          "requires": {
+            "kind-of": "^6.0.0"
+          }
+        },
+        "is-data-descriptor": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+          "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+          "dev": true,
+          "requires": {
+            "kind-of": "^6.0.0"
+          }
+        },
+        "is-descriptor": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+          "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+          "dev": true,
+          "requires": {
+            "is-accessor-descriptor": "^1.0.0",
+            "is-data-descriptor": "^1.0.0",
+            "kind-of": "^6.0.2"
+          }
+        }
       }
     },
-    "node_modules/base/node_modules/is-accessor-descriptor": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
-      "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
-      "dev": true,
-      "dependencies": {
-        "kind-of": "^6.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/base/node_modules/is-data-descriptor": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
-      "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
-      "dev": true,
-      "dependencies": {
-        "kind-of": "^6.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/base/node_modules/is-descriptor": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
-      "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
-      "dev": true,
-      "dependencies": {
-        "is-accessor-descriptor": "^1.0.0",
-        "is-data-descriptor": "^1.0.0",
-        "kind-of": "^6.0.2"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/base64-js": {
+    "base64-js": {
       "version": "1.5.1",
       "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
       "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/feross"
-        },
-        {
-          "type": "patreon",
-          "url": "https://www.patreon.com/feross"
-        },
-        {
-          "type": "consulting",
-          "url": "https://feross.org/support"
-        }
-      ]
+      "dev": true
     },
-    "node_modules/batch": {
+    "batch": {
       "version": "0.6.1",
       "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
       "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==",
       "dev": true
     },
-    "node_modules/bcrypt-pbkdf": {
+    "bcrypt-pbkdf": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
       "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==",
-      "dependencies": {
+      "requires": {
         "tweetnacl": "^0.14.3"
       }
     },
-    "node_modules/bfj": {
+    "bfj": {
       "version": "6.1.2",
       "resolved": "https://registry.npmjs.org/bfj/-/bfj-6.1.2.tgz",
       "integrity": "sha512-BmBJa4Lip6BPRINSZ0BPEIfB1wUY/9rwbwvIHQA1KjX9om29B6id0wnWXq7m3bn5JrUVjeOTnVuhPT1FiHwPGw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bluebird": "^3.5.5",
         "check-types": "^8.0.3",
         "hoopy": "^0.1.4",
         "tryer": "^1.0.1"
-      },
-      "engines": {
-        "node": ">= 6.0.0"
       }
     },
-    "node_modules/big.js": {
+    "big.js": {
       "version": "5.2.2",
       "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
       "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
-      "dev": true,
-      "engines": {
-        "node": "*"
-      }
+      "dev": true
     },
-    "node_modules/binary-extensions": {
+    "binary-extensions": {
       "version": "2.2.0",
       "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
       "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
       "dev": true,
-      "optional": true,
-      "engines": {
-        "node": ">=8"
-      }
+      "optional": true
     },
-    "node_modules/bindings": {
-      "version": "1.5.0",
-      "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
-      "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "file-uri-to-path": "1.0.0"
-      }
-    },
-    "node_modules/bluebird": {
+    "bluebird": {
       "version": "3.7.2",
       "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
       "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
       "dev": true
     },
-    "node_modules/bn.js": {
+    "bn.js": {
       "version": "5.2.1",
       "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz",
       "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==",
       "dev": true
     },
-    "node_modules/body-parser": {
+    "body-parser": {
       "version": "1.20.1",
       "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
       "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bytes": "3.1.2",
         "content-type": "~1.0.4",
         "debug": "2.6.9",
@@ -3277,76 +2506,70 @@
         "type-is": "~1.6.18",
         "unpipe": "1.0.0"
       },
-      "engines": {
-        "node": ">= 0.8",
-        "npm": "1.2.8000 || >= 1.4.16"
-      }
-    },
-    "node_modules/body-parser/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.0.0"
+        "debug": {
+          "version": "2.6.9",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        },
+        "qs": {
+          "version": "6.11.0",
+          "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
+          "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
+          "dev": true,
+          "requires": {
+            "side-channel": "^1.0.4"
+          }
+        }
       }
     },
-    "node_modules/body-parser/node_modules/qs": {
-      "version": "6.11.0",
-      "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
-      "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
-      "dev": true,
-      "dependencies": {
-        "side-channel": "^1.0.4"
-      },
-      "engines": {
-        "node": ">=0.6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
-    },
-    "node_modules/bonjour": {
+    "bonjour": {
       "version": "3.5.0",
       "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz",
       "integrity": "sha512-RaVTblr+OnEli0r/ud8InrU7D+G0y6aJhlxaLa6Pwty4+xoxboF1BsUI45tujvRpbj9dQVoglChqonGAsjEBYg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "array-flatten": "^2.1.0",
         "deep-equal": "^1.0.1",
         "dns-equal": "^1.0.0",
         "dns-txt": "^2.0.2",
         "multicast-dns": "^6.0.1",
         "multicast-dns-service-types": "^1.1.0"
+      },
+      "dependencies": {
+        "array-flatten": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz",
+          "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/bonjour/node_modules/array-flatten": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz",
-      "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==",
-      "dev": true
-    },
-    "node_modules/boolbase": {
+    "boolbase": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
       "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
       "dev": true
     },
-    "node_modules/brace-expansion": {
+    "brace-expansion": {
       "version": "1.1.11",
       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
-      "dependencies": {
+      "requires": {
         "balanced-match": "^1.0.0",
         "concat-map": "0.0.1"
       }
     },
-    "node_modules/braces": {
+    "braces": {
       "version": "2.3.2",
       "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
       "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "arr-flatten": "^1.1.0",
         "array-unique": "^0.3.2",
         "extend-shallow": "^2.0.1",
@@ -3358,34 +2581,30 @@
         "split-string": "^3.0.2",
         "to-regex": "^3.0.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/braces/node_modules/extend-shallow": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
-      "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
-      "dev": true,
       "dependencies": {
-        "is-extendable": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "extend-shallow": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+          "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+          "dev": true,
+          "requires": {
+            "is-extendable": "^0.1.0"
+          }
+        }
       }
     },
-    "node_modules/brorand": {
+    "brorand": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
       "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==",
       "dev": true
     },
-    "node_modules/browserify-aes": {
+    "browserify-aes": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
       "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "buffer-xor": "^1.0.3",
         "cipher-base": "^1.0.0",
         "create-hash": "^1.1.0",
@@ -3394,45 +2613,45 @@
         "safe-buffer": "^5.0.1"
       }
     },
-    "node_modules/browserify-cipher": {
+    "browserify-cipher": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
       "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserify-aes": "^1.0.4",
         "browserify-des": "^1.0.0",
         "evp_bytestokey": "^1.0.0"
       }
     },
-    "node_modules/browserify-des": {
+    "browserify-des": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
       "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cipher-base": "^1.0.1",
         "des.js": "^1.0.0",
         "inherits": "^2.0.1",
         "safe-buffer": "^5.1.2"
       }
     },
-    "node_modules/browserify-rsa": {
+    "browserify-rsa": {
       "version": "4.1.0",
       "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz",
       "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bn.js": "^5.0.0",
         "randombytes": "^2.0.1"
       }
     },
-    "node_modules/browserify-sign": {
+    "browserify-sign": {
       "version": "4.2.1",
       "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz",
       "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bn.js": "^5.1.1",
         "browserify-rsa": "^4.0.1",
         "create-hash": "^1.2.0",
@@ -3442,129 +2661,95 @@
         "parse-asn1": "^5.1.5",
         "readable-stream": "^3.6.0",
         "safe-buffer": "^5.2.0"
-      }
-    },
-    "node_modules/browserify-sign/node_modules/readable-stream": {
-      "version": "3.6.2",
-      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
-      "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
-      "dev": true,
-      "dependencies": {
-        "inherits": "^2.0.3",
-        "string_decoder": "^1.1.1",
-        "util-deprecate": "^1.0.1"
       },
-      "engines": {
-        "node": ">= 6"
+      "dependencies": {
+        "readable-stream": {
+          "version": "3.6.2",
+          "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+          "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+          "dev": true,
+          "requires": {
+            "inherits": "^2.0.3",
+            "string_decoder": "^1.1.1",
+            "util-deprecate": "^1.0.1"
+          }
+        },
+        "safe-buffer": {
+          "version": "5.2.1",
+          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+          "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/browserify-sign/node_modules/safe-buffer": {
-      "version": "5.2.1",
-      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
-      "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/feross"
-        },
-        {
-          "type": "patreon",
-          "url": "https://www.patreon.com/feross"
-        },
-        {
-          "type": "consulting",
-          "url": "https://feross.org/support"
-        }
-      ]
-    },
-    "node_modules/browserify-zlib": {
+    "browserify-zlib": {
       "version": "0.2.0",
       "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
       "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "pako": "~1.0.5"
       }
     },
-    "node_modules/browserslist": {
+    "browserslist": {
       "version": "4.21.5",
       "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz",
       "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==",
       "dev": true,
-      "funding": [
-        {
-          "type": "opencollective",
-          "url": "https://opencollective.com/browserslist"
-        },
-        {
-          "type": "tidelift",
-          "url": "https://tidelift.com/funding/github/npm/browserslist"
-        }
-      ],
-      "dependencies": {
+      "requires": {
         "caniuse-lite": "^1.0.30001449",
         "electron-to-chromium": "^1.4.284",
         "node-releases": "^2.0.8",
         "update-browserslist-db": "^1.0.10"
-      },
-      "bin": {
-        "browserslist": "cli.js"
-      },
-      "engines": {
-        "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
       }
     },
-    "node_modules/buffer": {
+    "buffer": {
       "version": "4.9.2",
       "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz",
       "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "base64-js": "^1.0.2",
         "ieee754": "^1.1.4",
         "isarray": "^1.0.0"
       }
     },
-    "node_modules/buffer-from": {
+    "buffer-from": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
       "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
       "dev": true
     },
-    "node_modules/buffer-indexof": {
+    "buffer-indexof": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz",
       "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==",
       "dev": true
     },
-    "node_modules/buffer-xor": {
+    "buffer-xor": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
       "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==",
       "dev": true
     },
-    "node_modules/builtin-status-codes": {
+    "builtin-status-codes": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
       "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==",
       "dev": true
     },
-    "node_modules/bytes": {
+    "bytes": {
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
       "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8"
-      }
+      "dev": true
     },
-    "node_modules/cacache": {
+    "cacache": {
       "version": "12.0.4",
       "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz",
       "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bluebird": "^3.5.5",
         "chownr": "^1.1.1",
         "figgy-pudding": "^3.5.1",
@@ -3582,12 +2767,12 @@
         "y18n": "^4.0.0"
       }
     },
-    "node_modules/cache-base": {
+    "cache-base": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
       "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "collection-visit": "^1.0.0",
         "component-emitter": "^1.2.1",
         "get-value": "^2.0.6",
@@ -3597,219 +2782,166 @@
         "to-object-path": "^0.3.0",
         "union-value": "^1.0.0",
         "unset-value": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/cache-loader": {
+    "cache-loader": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/cache-loader/-/cache-loader-2.0.1.tgz",
       "integrity": "sha512-V99T3FOynmGx26Zom+JrVBytLBsmUCzVG2/4NnUKgvXN4bEV42R1ERl1IyiH/cvFIDA1Ytq2lPZ9tXDSahcQpQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "loader-utils": "^1.1.0",
         "mkdirp": "^0.5.1",
         "neo-async": "^2.6.0",
         "normalize-path": "^3.0.0",
         "schema-utils": "^1.0.0"
       },
-      "engines": {
-        "node": ">= 6.9.0"
-      },
-      "peerDependencies": {
-        "webpack": "^4.0.0"
-      }
-    },
-    "node_modules/cache-loader/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
       "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        },
+        "schema-utils": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
+          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
+          "dev": true,
+          "requires": {
+            "ajv": "^6.1.0",
+            "ajv-errors": "^1.0.0",
+            "ajv-keywords": "^3.1.0"
+          }
+        }
       }
     },
-    "node_modules/cache-loader/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/cache-loader/node_modules/schema-utils": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
-      "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
-      "dev": true,
-      "dependencies": {
-        "ajv": "^6.1.0",
-        "ajv-errors": "^1.0.0",
-        "ajv-keywords": "^3.1.0"
-      },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/call-bind": {
+    "call-bind": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
       "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "function-bind": "^1.1.1",
         "get-intrinsic": "^1.0.2"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/call-me-maybe": {
+    "call-me-maybe": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz",
       "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==",
       "dev": true
     },
-    "node_modules/caller-callsite": {
+    "caller-callsite": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz",
       "integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "callsites": "^2.0.0"
       },
-      "engines": {
-        "node": ">=4"
+      "dependencies": {
+        "callsites": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz",
+          "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/caller-callsite/node_modules/callsites": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz",
-      "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/caller-path": {
+    "caller-path": {
       "version": "0.1.0",
       "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz",
       "integrity": "sha512-UJiE1otjXPF5/x+T3zTnSFiTOEmJoGTD9HmBoxnCUwho61a2eSNn/VwtwuIBDAo2SEOv1AJ7ARI5gCmohFLu/g==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "callsites": "^0.2.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/callsites": {
+    "callsites": {
       "version": "0.2.0",
       "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz",
       "integrity": "sha512-Zv4Dns9IbXXmPkgRRUjAaJQgfN4xX5p6+RQFhWUqscdvvK2xK/ZL8b3IXIJsj+4sD+f24NwnWy2BY8AJ82JB0A==",
       "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "optional": true
     },
-    "node_modules/camel-case": {
+    "camel-case": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz",
       "integrity": "sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "no-case": "^2.2.0",
         "upper-case": "^1.1.1"
       }
     },
-    "node_modules/camelcase": {
+    "camelcase": {
       "version": "5.3.1",
       "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
       "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/camelcase-keys": {
+    "camelcase-keys": {
       "version": "6.2.2",
       "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz",
       "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "camelcase": "^5.3.1",
         "map-obj": "^4.0.0",
         "quick-lru": "^4.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
       }
     },
-    "node_modules/caniuse-api": {
+    "caniuse-api": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz",
       "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserslist": "^4.0.0",
         "caniuse-lite": "^1.0.0",
         "lodash.memoize": "^4.1.2",
         "lodash.uniq": "^4.5.0"
       }
     },
-    "node_modules/caniuse-lite": {
+    "caniuse-lite": {
       "version": "1.0.30001482",
       "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001482.tgz",
       "integrity": "sha512-F1ZInsg53cegyjroxLNW9DmrEQ1SuGRTO1QlpA0o2/6OpQ0gFeDRoq1yFmnr8Sakn9qwwt9DmbxHB6w167OSuQ==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "opencollective",
-          "url": "https://opencollective.com/browserslist"
-        },
-        {
-          "type": "tidelift",
-          "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
-        },
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/ai"
-        }
-      ]
+      "dev": true
     },
-    "node_modules/case-sensitive-paths-webpack-plugin": {
+    "case-sensitive-paths-webpack-plugin": {
       "version": "2.4.0",
       "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz",
       "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/caseless": {
+    "caseless": {
       "version": "0.12.0",
       "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
       "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw=="
     },
-    "node_modules/chai": {
+    "chai": {
       "version": "4.3.7",
       "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz",
       "integrity": "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "assertion-error": "^1.1.0",
         "check-error": "^1.0.2",
         "deep-eql": "^4.1.2",
@@ -3817,222 +2949,180 @@
         "loupe": "^2.3.1",
         "pathval": "^1.1.1",
         "type-detect": "^4.0.5"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/chalk": {
+    "chalk": {
       "version": "2.4.2",
       "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
       "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "ansi-styles": "^3.2.1",
         "escape-string-regexp": "^1.0.5",
         "supports-color": "^5.3.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/chardet": {
+    "chardet": {
       "version": "0.4.2",
       "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz",
       "integrity": "sha512-j/Toj7f1z98Hh2cYo2BVr85EpIRWqUi7rtRSGxh/cqUjqrnJe9l9UE7IUGd2vQ2p+kSHLkSzObQPZPLUC6TQwg==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/check-error": {
+    "check-error": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz",
       "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==",
-      "dev": true,
-      "engines": {
-        "node": "*"
-      }
+      "dev": true
     },
-    "node_modules/check-types": {
+    "check-types": {
       "version": "8.0.3",
       "resolved": "https://registry.npmjs.org/check-types/-/check-types-8.0.3.tgz",
       "integrity": "sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==",
       "dev": true
     },
-    "node_modules/chokidar": {
+    "chokidar": {
       "version": "3.5.3",
       "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
       "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
       "dev": true,
-      "funding": [
-        {
-          "type": "individual",
-          "url": "https://paulmillr.com/funding/"
-        }
-      ],
       "optional": true,
-      "dependencies": {
+      "requires": {
         "anymatch": "~3.1.2",
         "braces": "~3.0.2",
+        "fsevents": "~2.3.2",
         "glob-parent": "~5.1.2",
         "is-binary-path": "~2.1.0",
         "is-glob": "~4.0.1",
         "normalize-path": "~3.0.0",
         "readdirp": "~3.6.0"
       },
-      "engines": {
-        "node": ">= 8.10.0"
-      },
-      "optionalDependencies": {
-        "fsevents": "~2.3.2"
-      }
-    },
-    "node_modules/chokidar/node_modules/braces": {
-      "version": "3.0.2",
-      "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
-      "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
-      "dev": true,
-      "optional": true,
       "dependencies": {
-        "fill-range": "^7.0.1"
-      },
-      "engines": {
-        "node": ">=8"
+        "braces": {
+          "version": "3.0.2",
+          "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+          "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "fill-range": "^7.0.1"
+          }
+        },
+        "fill-range": {
+          "version": "7.0.1",
+          "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
+          "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "to-regex-range": "^5.0.1"
+          }
+        },
+        "is-number": {
+          "version": "7.0.0",
+          "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+          "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+          "dev": true,
+          "optional": true
+        },
+        "to-regex-range": {
+          "version": "5.0.1",
+          "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+          "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "is-number": "^7.0.0"
+          }
+        }
       }
     },
-    "node_modules/chokidar/node_modules/fill-range": {
-      "version": "7.0.1",
-      "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
-      "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "to-regex-range": "^5.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/chokidar/node_modules/is-number": {
-      "version": "7.0.0",
-      "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
-      "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
-      "dev": true,
-      "optional": true,
-      "engines": {
-        "node": ">=0.12.0"
-      }
-    },
-    "node_modules/chokidar/node_modules/to-regex-range": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
-      "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "is-number": "^7.0.0"
-      },
-      "engines": {
-        "node": ">=8.0"
-      }
-    },
-    "node_modules/chownr": {
+    "chownr": {
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
       "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg=="
     },
-    "node_modules/chrome-trace-event": {
+    "chrome-trace-event": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
       "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.0"
-      }
+      "dev": true
     },
-    "node_modules/ci-info": {
+    "ci-info": {
       "version": "1.6.0",
       "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz",
       "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==",
       "dev": true
     },
-    "node_modules/cipher-base": {
+    "cipher-base": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
       "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "^2.0.1",
         "safe-buffer": "^5.0.1"
       }
     },
-    "node_modules/circular-json": {
+    "circular-json": {
       "version": "0.3.3",
       "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz",
       "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==",
-      "deprecated": "CircularJSON is in maintenance only, flatted is its successor.",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/class-utils": {
+    "class-utils": {
       "version": "0.3.6",
       "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
       "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "arr-union": "^3.1.0",
         "define-property": "^0.2.5",
         "isobject": "^3.0.0",
         "static-extend": "^0.1.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/class-utils/node_modules/define-property": {
-      "version": "0.2.5",
-      "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
-      "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
-      "dev": true,
       "dependencies": {
-        "is-descriptor": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "define-property": {
+          "version": "0.2.5",
+          "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+          "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+          "dev": true,
+          "requires": {
+            "is-descriptor": "^0.1.0"
+          }
+        }
       }
     },
-    "node_modules/classlist-polyfill": {
+    "classlist-polyfill": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/classlist-polyfill/-/classlist-polyfill-1.2.0.tgz",
       "integrity": "sha512-GzIjNdcEtH4ieA2S8NmrSxv7DfEV5fmixQeyTmqmRmRJPGpRBaSnA2a0VrCjyT8iW8JjEdMbKzDotAJf+ajgaQ=="
     },
-    "node_modules/clean-css": {
+    "clean-css": {
       "version": "4.2.4",
       "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz",
       "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "source-map": "~0.6.0"
-      },
-      "engines": {
-        "node": ">= 4.0"
       }
     },
-    "node_modules/cli-cursor": {
+    "cli-cursor": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
       "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "restore-cursor": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/cli-highlight": {
+    "cli-highlight": {
       "version": "2.1.11",
       "resolved": "https://registry.npmjs.org/cli-highlight/-/cli-highlight-2.1.11.tgz",
       "integrity": "sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "chalk": "^4.0.0",
         "highlight.js": "^10.7.1",
         "mz": "^2.4.0",
@@ -4040,341 +3130,269 @@
         "parse5-htmlparser2-tree-adapter": "^6.0.0",
         "yargs": "^16.0.0"
       },
-      "bin": {
-        "highlight": "bin/highlight"
-      },
-      "engines": {
-        "node": ">=8.0.0",
-        "npm": ">=5.0.0"
-      }
-    },
-    "node_modules/cli-highlight/node_modules/ansi-styles": {
-      "version": "4.3.0",
-      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
-      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
       "dependencies": {
-        "color-convert": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "chalk": {
+          "version": "4.1.2",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+          "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+          "dev": true
+        },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+          "dev": true
+        },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+          "dev": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        }
       }
     },
-    "node_modules/cli-highlight/node_modules/chalk": {
-      "version": "4.1.2",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
-      "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-      "dev": true,
-      "dependencies": {
-        "ansi-styles": "^4.1.0",
-        "supports-color": "^7.1.0"
-      },
-      "engines": {
-        "node": ">=10"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
-    "node_modules/cli-highlight/node_modules/color-convert": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
-      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
-      "dependencies": {
-        "color-name": "~1.1.4"
-      },
-      "engines": {
-        "node": ">=7.0.0"
-      }
-    },
-    "node_modules/cli-highlight/node_modules/color-name": {
-      "version": "1.1.4",
-      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
-      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true
-    },
-    "node_modules/cli-highlight/node_modules/has-flag": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
-      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/cli-highlight/node_modules/supports-color": {
-      "version": "7.2.0",
-      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
-      "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-      "dev": true,
-      "dependencies": {
-        "has-flag": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/cli-spinners": {
+    "cli-spinners": {
       "version": "2.9.0",
       "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.0.tgz",
       "integrity": "sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
+      "dev": true
     },
-    "node_modules/cli-width": {
+    "cli-width": {
       "version": "2.2.1",
       "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz",
       "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/clipboardy": {
+    "clipboardy": {
       "version": "2.3.0",
       "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz",
       "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "arch": "^2.1.1",
         "execa": "^1.0.0",
         "is-wsl": "^2.1.1"
       },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/clipboardy/node_modules/is-wsl": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
-      "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
-      "dev": true,
       "dependencies": {
-        "is-docker": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=8"
+        "is-wsl": {
+          "version": "2.2.0",
+          "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
+          "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
+          "dev": true,
+          "requires": {
+            "is-docker": "^2.0.0"
+          }
+        }
       }
     },
-    "node_modules/cliui": {
+    "cliui": {
       "version": "5.0.0",
       "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
       "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "string-width": "^3.1.0",
         "strip-ansi": "^5.2.0",
         "wrap-ansi": "^5.1.0"
-      }
-    },
-    "node_modules/cliui/node_modules/ansi-regex": {
-      "version": "4.1.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
-      "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/cliui/node_modules/emoji-regex": {
-      "version": "7.0.3",
-      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
-      "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
-      "dev": true
-    },
-    "node_modules/cliui/node_modules/is-fullwidth-code-point": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
-      "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/cliui/node_modules/string-width": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
-      "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
-      "dev": true,
-      "dependencies": {
-        "emoji-regex": "^7.0.1",
-        "is-fullwidth-code-point": "^2.0.0",
-        "strip-ansi": "^5.1.0"
       },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/cliui/node_modules/strip-ansi": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
-      "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
-      "dev": true,
       "dependencies": {
-        "ansi-regex": "^4.1.0"
-      },
-      "engines": {
-        "node": ">=6"
+        "ansi-regex": {
+          "version": "4.1.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
+          "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
+          "dev": true
+        },
+        "emoji-regex": {
+          "version": "7.0.3",
+          "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+          "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+          "dev": true
+        },
+        "is-fullwidth-code-point": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+          "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+          "dev": true
+        },
+        "string-width": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+          "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+          "dev": true,
+          "requires": {
+            "emoji-regex": "^7.0.1",
+            "is-fullwidth-code-point": "^2.0.0",
+            "strip-ansi": "^5.1.0"
+          }
+        },
+        "strip-ansi": {
+          "version": "5.2.0",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+          "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+          "dev": true,
+          "requires": {
+            "ansi-regex": "^4.1.0"
+          }
+        },
+        "wrap-ansi": {
+          "version": "5.1.0",
+          "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
+          "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "^3.2.0",
+            "string-width": "^3.0.0",
+            "strip-ansi": "^5.0.0"
+          }
+        }
       }
     },
-    "node_modules/cliui/node_modules/wrap-ansi": {
-      "version": "5.1.0",
-      "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
-      "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
-      "dev": true,
-      "dependencies": {
-        "ansi-styles": "^3.2.0",
-        "string-width": "^3.0.0",
-        "strip-ansi": "^5.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/clone": {
+    "clone": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
       "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.8"
-      }
+      "dev": true
     },
-    "node_modules/co": {
+    "co": {
       "version": "4.6.0",
       "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
       "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==",
       "dev": true,
-      "engines": {
-        "iojs": ">= 1.0.0",
-        "node": ">= 0.12.0"
-      }
+      "optional": true
     },
-    "node_modules/coa": {
+    "coa": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz",
       "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@types/q": "^1.5.1",
         "chalk": "^2.4.1",
         "q": "^1.1.2"
-      },
-      "engines": {
-        "node": ">= 4.0"
       }
     },
-    "node_modules/code-point-at": {
+    "code-point-at": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
-      "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA=="
     },
-    "node_modules/collection-visit": {
+    "collection-visit": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
       "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "map-visit": "^1.0.0",
         "object-visit": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/color": {
+    "color": {
       "version": "3.2.1",
       "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz",
       "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "color-convert": "^1.9.3",
         "color-string": "^1.6.0"
       }
     },
-    "node_modules/color-convert": {
+    "color-convert": {
       "version": "1.9.3",
       "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
       "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "color-name": "1.1.3"
       }
     },
-    "node_modules/color-name": {
+    "color-name": {
       "version": "1.1.3",
       "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
       "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
       "dev": true
     },
-    "node_modules/color-string": {
+    "color-string": {
       "version": "1.9.1",
       "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz",
       "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "color-name": "^1.0.0",
         "simple-swizzle": "^0.2.2"
       }
     },
-    "node_modules/combined-stream": {
+    "combined-stream": {
       "version": "1.0.8",
       "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
       "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
-      "dependencies": {
+      "requires": {
         "delayed-stream": "~1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.8"
       }
     },
-    "node_modules/commander": {
+    "commander": {
       "version": "10.0.1",
       "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz",
-      "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==",
-      "engines": {
-        "node": ">=14"
-      }
+      "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug=="
     },
-    "node_modules/commondir": {
+    "commondir": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
       "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==",
       "dev": true
     },
-    "node_modules/component-emitter": {
+    "component-emitter": {
       "version": "1.3.0",
       "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
       "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
       "dev": true
     },
-    "node_modules/compressible": {
+    "compressible": {
       "version": "2.0.18",
       "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
       "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "mime-db": ">= 1.43.0 < 2"
-      },
-      "engines": {
-        "node": ">= 0.6"
       }
     },
-    "node_modules/compression": {
+    "compression": {
       "version": "1.7.4",
       "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz",
       "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "accepts": "~1.3.5",
         "bytes": "3.0.0",
         "compressible": "~2.0.16",
@@ -4383,154 +3401,120 @@
         "safe-buffer": "5.1.2",
         "vary": "~1.1.2"
       },
-      "engines": {
-        "node": ">= 0.8.0"
-      }
-    },
-    "node_modules/compression/node_modules/bytes": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
-      "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8"
-      }
-    },
-    "node_modules/compression/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.0.0"
+        "bytes": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
+          "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==",
+          "dev": true
+        },
+        "debug": {
+          "version": "2.6.9",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        }
       }
     },
-    "node_modules/concat-map": {
+    "concat-map": {
       "version": "0.0.1",
       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
       "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
     },
-    "node_modules/concat-stream": {
+    "concat-stream": {
       "version": "1.6.2",
       "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
       "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
       "dev": true,
-      "engines": [
-        "node >= 0.8"
-      ],
-      "dependencies": {
+      "requires": {
         "buffer-from": "^1.0.0",
         "inherits": "^2.0.3",
         "readable-stream": "^2.2.2",
         "typedarray": "^0.0.6"
       }
     },
-    "node_modules/connect-history-api-fallback": {
+    "connect-history-api-fallback": {
       "version": "1.6.0",
       "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz",
       "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.8"
-      }
+      "dev": true
     },
-    "node_modules/console-browserify": {
+    "console-browserify": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz",
       "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==",
       "dev": true
     },
-    "node_modules/console-control-strings": {
+    "console-control-strings": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
       "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ=="
     },
-    "node_modules/consolidate": {
+    "consolidate": {
       "version": "0.15.1",
       "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.15.1.tgz",
       "integrity": "sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bluebird": "^3.1.1"
-      },
-      "engines": {
-        "node": ">= 0.10.0"
       }
     },
-    "node_modules/constants-browserify": {
+    "constants-browserify": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
       "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==",
       "dev": true
     },
-    "node_modules/content-disposition": {
+    "content-disposition": {
       "version": "0.5.4",
       "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
       "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "safe-buffer": "5.2.1"
       },
-      "engines": {
-        "node": ">= 0.6"
+      "dependencies": {
+        "safe-buffer": {
+          "version": "5.2.1",
+          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+          "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/content-disposition/node_modules/safe-buffer": {
-      "version": "5.2.1",
-      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
-      "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/feross"
-        },
-        {
-          "type": "patreon",
-          "url": "https://www.patreon.com/feross"
-        },
-        {
-          "type": "consulting",
-          "url": "https://feross.org/support"
-        }
-      ]
-    },
-    "node_modules/content-type": {
+    "content-type": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
       "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "dev": true
     },
-    "node_modules/convert-source-map": {
+    "convert-source-map": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
       "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==",
       "dev": true
     },
-    "node_modules/cookie": {
+    "cookie": {
       "version": "0.5.0",
       "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
       "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "dev": true
     },
-    "node_modules/cookie-signature": {
+    "cookie-signature": {
       "version": "1.0.6",
       "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
       "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==",
       "dev": true
     },
-    "node_modules/copy-concurrently": {
+    "copy-concurrently": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz",
       "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "aproba": "^1.1.1",
         "fs-write-stream-atomic": "^1.0.8",
         "iferr": "^0.1.5",
@@ -4539,21 +3523,18 @@
         "run-queue": "^1.0.0"
       }
     },
-    "node_modules/copy-descriptor": {
+    "copy-descriptor": {
       "version": "0.1.1",
       "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
       "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/copy-webpack-plugin": {
+    "copy-webpack-plugin": {
       "version": "4.6.0",
       "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.6.0.tgz",
       "integrity": "sha512-Y+SQCF+0NoWQryez2zXn5J5knmr9z/9qSQt7fbL78u83rxmigOy8X5+BFn8CFSuX+nKT8gpYwJX68ekqtQt6ZA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cacache": "^10.0.4",
         "find-cache-dir": "^1.0.0",
         "globby": "^7.1.1",
@@ -4563,254 +3544,219 @@
         "p-limit": "^1.0.0",
         "serialize-javascript": "^1.4.0"
       },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/cacache": {
-      "version": "10.0.4",
-      "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz",
-      "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==",
-      "dev": true,
       "dependencies": {
-        "bluebird": "^3.5.1",
-        "chownr": "^1.0.1",
-        "glob": "^7.1.2",
-        "graceful-fs": "^4.1.11",
-        "lru-cache": "^4.1.1",
-        "mississippi": "^2.0.0",
-        "mkdirp": "^0.5.1",
-        "move-concurrently": "^1.0.1",
-        "promise-inflight": "^1.0.1",
-        "rimraf": "^2.6.2",
-        "ssri": "^5.2.4",
-        "unique-filename": "^1.1.0",
-        "y18n": "^4.0.0"
+        "cacache": {
+          "version": "10.0.4",
+          "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz",
+          "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==",
+          "dev": true,
+          "requires": {
+            "bluebird": "^3.5.1",
+            "chownr": "^1.0.1",
+            "glob": "^7.1.2",
+            "graceful-fs": "^4.1.11",
+            "lru-cache": "^4.1.1",
+            "mississippi": "^2.0.0",
+            "mkdirp": "^0.5.1",
+            "move-concurrently": "^1.0.1",
+            "promise-inflight": "^1.0.1",
+            "rimraf": "^2.6.2",
+            "ssri": "^5.2.4",
+            "unique-filename": "^1.1.0",
+            "y18n": "^4.0.0"
+          }
+        },
+        "find-cache-dir": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz",
+          "integrity": "sha512-46TFiBOzX7xq/PcSWfFwkyjpemdRnMe31UQF+os0y+1W3k95f6R4SEt02Hj4p3X0Mir9gfrkmOtshFidS0VPUg==",
+          "dev": true,
+          "requires": {
+            "commondir": "^1.0.1",
+            "make-dir": "^1.0.0",
+            "pkg-dir": "^2.0.0"
+          }
+        },
+        "globby": {
+          "version": "7.1.1",
+          "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz",
+          "integrity": "sha512-yANWAN2DUcBtuus5Cpd+SKROzXHs2iVXFZt/Ykrfz6SAXqacLX25NZpltE+39ceMexYF4TtEadjuSTw8+3wX4g==",
+          "dev": true,
+          "requires": {
+            "array-union": "^1.0.1",
+            "dir-glob": "^2.0.0",
+            "glob": "^7.1.2",
+            "ignore": "^3.3.5",
+            "pify": "^3.0.0",
+            "slash": "^1.0.0"
+          }
+        },
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        },
+        "lru-cache": {
+          "version": "4.1.5",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
+          "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
+          "dev": true,
+          "requires": {
+            "pseudomap": "^1.0.2",
+            "yallist": "^2.1.2"
+          }
+        },
+        "make-dir": {
+          "version": "1.3.0",
+          "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz",
+          "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==",
+          "dev": true,
+          "requires": {
+            "pify": "^3.0.0"
+          }
+        },
+        "mississippi": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz",
+          "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==",
+          "dev": true,
+          "requires": {
+            "concat-stream": "^1.5.0",
+            "duplexify": "^3.4.2",
+            "end-of-stream": "^1.1.0",
+            "flush-write-stream": "^1.0.0",
+            "from2": "^2.1.0",
+            "parallel-transform": "^1.1.0",
+            "pump": "^2.0.1",
+            "pumpify": "^1.3.3",
+            "stream-each": "^1.1.0",
+            "through2": "^2.0.0"
+          }
+        },
+        "pify": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
+          "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
+          "dev": true
+        },
+        "pkg-dir": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz",
+          "integrity": "sha512-ojakdnUgL5pzJYWw2AIDEupaQCX5OPbM688ZevubICjdIX01PRSYKqm33fJoCOJBRseYCTUlQRnBNX+Pchaejw==",
+          "dev": true,
+          "requires": {
+            "find-up": "^2.1.0"
+          }
+        },
+        "pump": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
+          "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
+          "dev": true,
+          "requires": {
+            "end-of-stream": "^1.1.0",
+            "once": "^1.3.1"
+          }
+        },
+        "serialize-javascript": {
+          "version": "1.9.1",
+          "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz",
+          "integrity": "sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==",
+          "dev": true
+        },
+        "slash": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
+          "integrity": "sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==",
+          "dev": true
+        },
+        "ssri": {
+          "version": "5.3.0",
+          "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz",
+          "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==",
+          "dev": true,
+          "requires": {
+            "safe-buffer": "^5.1.1"
+          }
+        },
+        "yallist": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
+          "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
+          "dev": true
+        }
       }
     },
-    "node_modules/copy-webpack-plugin/node_modules/find-cache-dir": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz",
-      "integrity": "sha512-46TFiBOzX7xq/PcSWfFwkyjpemdRnMe31UQF+os0y+1W3k95f6R4SEt02Hj4p3X0Mir9gfrkmOtshFidS0VPUg==",
-      "dev": true,
-      "dependencies": {
-        "commondir": "^1.0.1",
-        "make-dir": "^1.0.0",
-        "pkg-dir": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/globby": {
-      "version": "7.1.1",
-      "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz",
-      "integrity": "sha512-yANWAN2DUcBtuus5Cpd+SKROzXHs2iVXFZt/Ykrfz6SAXqacLX25NZpltE+39ceMexYF4TtEadjuSTw8+3wX4g==",
-      "dev": true,
-      "dependencies": {
-        "array-union": "^1.0.1",
-        "dir-glob": "^2.0.0",
-        "glob": "^7.1.2",
-        "ignore": "^3.3.5",
-        "pify": "^3.0.0",
-        "slash": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
-      "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/lru-cache": {
-      "version": "4.1.5",
-      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
-      "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
-      "dev": true,
-      "dependencies": {
-        "pseudomap": "^1.0.2",
-        "yallist": "^2.1.2"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/make-dir": {
-      "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz",
-      "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==",
-      "dev": true,
-      "dependencies": {
-        "pify": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/mississippi": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz",
-      "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==",
-      "dev": true,
-      "dependencies": {
-        "concat-stream": "^1.5.0",
-        "duplexify": "^3.4.2",
-        "end-of-stream": "^1.1.0",
-        "flush-write-stream": "^1.0.0",
-        "from2": "^2.1.0",
-        "parallel-transform": "^1.1.0",
-        "pump": "^2.0.1",
-        "pumpify": "^1.3.3",
-        "stream-each": "^1.1.0",
-        "through2": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/pify": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
-      "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/pkg-dir": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz",
-      "integrity": "sha512-ojakdnUgL5pzJYWw2AIDEupaQCX5OPbM688ZevubICjdIX01PRSYKqm33fJoCOJBRseYCTUlQRnBNX+Pchaejw==",
-      "dev": true,
-      "dependencies": {
-        "find-up": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/pump": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
-      "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
-      "dev": true,
-      "dependencies": {
-        "end-of-stream": "^1.1.0",
-        "once": "^1.3.1"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/serialize-javascript": {
-      "version": "1.9.1",
-      "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz",
-      "integrity": "sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==",
-      "dev": true
-    },
-    "node_modules/copy-webpack-plugin/node_modules/slash": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
-      "integrity": "sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/ssri": {
-      "version": "5.3.0",
-      "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz",
-      "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==",
-      "dev": true,
-      "dependencies": {
-        "safe-buffer": "^5.1.1"
-      }
-    },
-    "node_modules/copy-webpack-plugin/node_modules/yallist": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
-      "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
-      "dev": true
-    },
-    "node_modules/core-js": {
+    "core-js": {
       "version": "2.6.12",
       "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
-      "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
-      "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.",
-      "hasInstallScript": true
+      "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ=="
     },
-    "node_modules/core-js-compat": {
+    "core-js-compat": {
       "version": "3.30.1",
       "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.1.tgz",
       "integrity": "sha512-d690npR7MC6P0gq4npTl5n2VQeNAmUrJ90n+MHiKS7W2+xno4o3F5GDEuylSdi6EJ3VssibSGXOa1r3YXD3Mhw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserslist": "^4.21.5"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/core-js"
       }
     },
-    "node_modules/core-util-is": {
+    "core-util-is": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
       "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="
     },
-    "node_modules/cosmiconfig": {
+    "cosmiconfig": {
       "version": "5.2.1",
       "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz",
       "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "import-fresh": "^2.0.0",
         "is-directory": "^0.3.1",
         "js-yaml": "^3.13.1",
         "parse-json": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/create-ecdh": {
+    "create-ecdh": {
       "version": "4.0.4",
       "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
       "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bn.js": "^4.1.0",
         "elliptic": "^6.5.3"
+      },
+      "dependencies": {
+        "bn.js": {
+          "version": "4.12.0",
+          "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+          "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/create-ecdh/node_modules/bn.js": {
-      "version": "4.12.0",
-      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
-      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
-      "dev": true
-    },
-    "node_modules/create-hash": {
+    "create-hash": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
       "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cipher-base": "^1.0.1",
         "inherits": "^2.0.1",
         "md5.js": "^1.3.4",
@@ -4818,12 +3764,12 @@
         "sha.js": "^2.4.0"
       }
     },
-    "node_modules/create-hmac": {
+    "create-hmac": {
       "version": "1.1.7",
       "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
       "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cipher-base": "^1.0.3",
         "create-hash": "^1.1.0",
         "inherits": "^2.0.1",
@@ -4832,28 +3778,25 @@
         "sha.js": "^2.4.8"
       }
     },
-    "node_modules/cross-spawn": {
+    "cross-spawn": {
       "version": "6.0.5",
       "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
       "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "nice-try": "^1.0.4",
         "path-key": "^2.0.1",
         "semver": "^5.5.0",
         "shebang-command": "^1.2.0",
         "which": "^1.2.9"
-      },
-      "engines": {
-        "node": ">=4.8"
       }
     },
-    "node_modules/crypto-browserify": {
+    "crypto-browserify": {
       "version": "3.12.0",
       "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
       "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserify-cipher": "^1.0.0",
         "browserify-sign": "^4.0.0",
         "create-ecdh": "^4.0.0",
@@ -4865,67 +3808,53 @@
         "public-encrypt": "^4.0.0",
         "randombytes": "^2.0.0",
         "randomfill": "^1.0.3"
-      },
-      "engines": {
-        "node": "*"
       }
     },
-    "node_modules/crypto-js": {
+    "crypto-js": {
       "version": "4.1.1",
       "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz",
       "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw=="
     },
-    "node_modules/css-color-names": {
+    "css-color-names": {
       "version": "0.0.4",
       "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz",
       "integrity": "sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==",
-      "dev": true,
-      "engines": {
-        "node": "*"
-      }
+      "dev": true
     },
-    "node_modules/css-declaration-sorter": {
+    "css-declaration-sorter": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz",
       "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.1",
         "timsort": "^0.3.0"
       },
-      "engines": {
-        "node": ">4"
-      }
-    },
-    "node_modules/css-declaration-sorter/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/css-declaration-sorter/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/css-loader": {
+    "css-loader": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-1.0.1.tgz",
       "integrity": "sha512-+ZHAZm/yqvJ2kDtPne3uX0C+Vr3Zn5jFn2N4HywtS5ujwvsVkyg0VArEXpl3BgczDA8anieki1FIzhchX4yrDw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "babel-code-frame": "^6.26.0",
         "css-selector-tokenizer": "^0.7.0",
         "icss-utils": "^2.1.0",
@@ -4939,145 +3868,132 @@
         "postcss-value-parser": "^3.3.0",
         "source-list-map": "^2.0.0"
       },
-      "engines": {
-        "node": ">= 6.9.0 <7.0.0 || >= 8.9.0"
-      },
-      "peerDependencies": {
-        "webpack": "^4.0.0"
-      }
-    },
-    "node_modules/css-loader/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
       "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        },
+        "postcss": {
+          "version": "6.0.23",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
+          "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
+          "dev": true,
+          "requires": {
+            "chalk": "^2.4.1",
+            "source-map": "^0.6.1",
+            "supports-color": "^5.4.0"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/css-loader/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/css-loader/node_modules/postcss": {
-      "version": "6.0.23",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
-      "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
-      "dev": true,
-      "dependencies": {
-        "chalk": "^2.4.1",
-        "source-map": "^0.6.1",
-        "supports-color": "^5.4.0"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/css-loader/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/css-select": {
+    "css-select": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz",
       "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "boolbase": "^1.0.0",
         "css-what": "^3.2.1",
         "domutils": "^1.7.0",
         "nth-check": "^1.0.2"
       }
     },
-    "node_modules/css-select-base-adapter": {
+    "css-select-base-adapter": {
       "version": "0.1.1",
       "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz",
       "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==",
       "dev": true
     },
-    "node_modules/css-selector-tokenizer": {
+    "css-selector-tokenizer": {
       "version": "0.7.3",
       "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.3.tgz",
       "integrity": "sha512-jWQv3oCEL5kMErj4wRnK/OPoBi0D+P1FR2cDCKYPaMeD2eW3/mttav8HT4hT1CKopiJI/psEULjkClhvJo4Lvg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssesc": "^3.0.0",
         "fastparse": "^1.1.2"
       }
     },
-    "node_modules/css-tree": {
+    "css-tree": {
       "version": "1.0.0-alpha.37",
       "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz",
       "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "mdn-data": "2.0.4",
         "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=8.0.0"
       }
     },
-    "node_modules/css-what": {
+    "css-what": {
       "version": "3.4.2",
       "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz",
       "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==",
-      "dev": true,
-      "engines": {
-        "node": ">= 6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/fb55"
-      }
+      "dev": true
     },
-    "node_modules/cssesc": {
+    "cssesc": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
       "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
-      "dev": true,
-      "bin": {
-        "cssesc": "bin/cssesc"
-      },
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/cssnano": {
+    "cssnano": {
       "version": "4.1.11",
       "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.11.tgz",
       "integrity": "sha512-6gZm2htn7xIPJOHY824ERgj8cNPgPxyCSnkXc4v7YvNW+TdVfzgngHcEhy/8D11kUWRUMbke+tC+AUcUsnMz2g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cosmiconfig": "^5.0.0",
         "cssnano-preset-default": "^4.0.8",
         "is-resolvable": "^1.0.0",
         "postcss": "^7.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
+      "dependencies": {
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/cssnano-preset-default": {
+    "cssnano-preset-default": {
       "version": "4.0.8",
       "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz",
       "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "css-declaration-sorter": "^4.0.1",
         "cssnano-util-raw-cache": "^4.0.1",
         "postcss": "^7.0.0",
@@ -5109,526 +4025,382 @@
         "postcss-svgo": "^4.0.3",
         "postcss-unique-selectors": "^4.0.1"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/cssnano-preset-default/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/cssnano-preset-default/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/cssnano-util-get-arguments": {
+    "cssnano-util-get-arguments": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz",
       "integrity": "sha512-6RIcwmV3/cBMG8Aj5gucQRsJb4vv4I4rn6YjPbVWd5+Pn/fuG+YseGvXGk00XLkoZkaj31QOD7vMUpNPC4FIuw==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
+      "dev": true
     },
-    "node_modules/cssnano-util-get-match": {
+    "cssnano-util-get-match": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz",
       "integrity": "sha512-JPMZ1TSMRUPVIqEalIBNoBtAYbi8okvcFns4O0YIhcdGebeYZK7dMyHJiQ6GqNBA9kE0Hym4Aqym5rPdsV/4Cw==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
+      "dev": true
     },
-    "node_modules/cssnano-util-raw-cache": {
+    "cssnano-util-raw-cache": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz",
       "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/cssnano-util-raw-cache/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/cssnano-util-raw-cache/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/cssnano-util-same-parent": {
+    "cssnano-util-same-parent": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz",
       "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/cssnano/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
       "dev": true
     },
-    "node_modules/cssnano/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
-      "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
-      }
-    },
-    "node_modules/csso": {
+    "csso": {
       "version": "4.2.0",
       "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz",
       "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "css-tree": "^1.1.2"
       },
-      "engines": {
-        "node": ">=8.0.0"
-      }
-    },
-    "node_modules/csso/node_modules/css-tree": {
-      "version": "1.1.3",
-      "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz",
-      "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==",
-      "dev": true,
       "dependencies": {
-        "mdn-data": "2.0.14",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=8.0.0"
+        "css-tree": {
+          "version": "1.1.3",
+          "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz",
+          "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==",
+          "dev": true,
+          "requires": {
+            "mdn-data": "2.0.14",
+            "source-map": "^0.6.1"
+          }
+        },
+        "mdn-data": {
+          "version": "2.0.14",
+          "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz",
+          "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==",
+          "dev": true
+        }
       }
     },
-    "node_modules/csso/node_modules/mdn-data": {
-      "version": "2.0.14",
-      "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz",
-      "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==",
-      "dev": true
-    },
-    "node_modules/csstype": {
+    "csstype": {
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
       "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
     },
-    "node_modules/current-script-polyfill": {
+    "current-script-polyfill": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/current-script-polyfill/-/current-script-polyfill-1.0.0.tgz",
       "integrity": "sha512-qv8s+G47V6Hq+g2kRE5th+ASzzrL7b6l+tap1DHKK25ZQJv3yIFhH96XaQ7NGL+zRW3t/RDbweJf/dJDe5Z5KA==",
       "dev": true
     },
-    "node_modules/cyclist": {
+    "cyclist": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz",
       "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==",
       "dev": true
     },
-    "node_modules/dashdash": {
+    "dashdash": {
       "version": "1.14.1",
       "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
       "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==",
-      "dependencies": {
+      "requires": {
         "assert-plus": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10"
       }
     },
-    "node_modules/de-indent": {
+    "de-indent": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz",
       "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==",
       "dev": true
     },
-    "node_modules/debug": {
+    "debug": {
       "version": "3.1.0",
       "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
       "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
-      "dependencies": {
+      "requires": {
         "ms": "2.0.0"
       }
     },
-    "node_modules/decamelize": {
+    "decamelize": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
       "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/decamelize-keys": {
+    "decamelize-keys": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz",
       "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "decamelize": "^1.1.0",
         "map-obj": "^1.0.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
+      "dependencies": {
+        "map-obj": {
+          "version": "1.0.1",
+          "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
+          "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==",
+          "dev": true
+        }
       }
     },
-    "node_modules/decamelize-keys/node_modules/map-obj": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
-      "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/decode-uri-component": {
+    "decode-uri-component": {
       "version": "0.2.2",
       "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz",
       "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10"
-      }
+      "dev": true
     },
-    "node_modules/deep-eql": {
+    "deep-eql": {
       "version": "4.1.3",
       "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz",
       "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "type-detect": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=6"
       }
     },
-    "node_modules/deep-equal": {
+    "deep-equal": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz",
       "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-arguments": "^1.0.4",
         "is-date-object": "^1.0.1",
         "is-regex": "^1.0.4",
         "object-is": "^1.0.1",
         "object-keys": "^1.1.1",
         "regexp.prototype.flags": "^1.2.0"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/deep-is": {
+    "deep-is": {
       "version": "0.1.4",
       "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
       "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/deepmerge": {
+    "deepmerge": {
       "version": "1.5.2",
       "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz",
-      "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ=="
     },
-    "node_modules/default-gateway": {
+    "default-gateway": {
       "version": "5.0.5",
       "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-5.0.5.tgz",
       "integrity": "sha512-z2RnruVmj8hVMmAnEJMTIJNijhKCDiGjbLP+BHJFOT7ld3Bo5qcIBpVYDniqhbMIIf+jZDlkP2MkPXiQy/DBLA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "execa": "^3.3.0"
       },
-      "engines": {
-        "node": "^8.12.0 || >=9.7.0"
-      }
-    },
-    "node_modules/default-gateway/node_modules/cross-spawn": {
-      "version": "7.0.3",
-      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
-      "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
-      "dev": true,
       "dependencies": {
-        "path-key": "^3.1.0",
-        "shebang-command": "^2.0.0",
-        "which": "^2.0.1"
-      },
-      "engines": {
-        "node": ">= 8"
+        "cross-spawn": {
+          "version": "7.0.3",
+          "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+          "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+          "dev": true,
+          "requires": {
+            "path-key": "^3.1.0",
+            "shebang-command": "^2.0.0",
+            "which": "^2.0.1"
+          }
+        },
+        "execa": {
+          "version": "3.4.0",
+          "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz",
+          "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==",
+          "dev": true,
+          "requires": {
+            "cross-spawn": "^7.0.0",
+            "get-stream": "^5.0.0",
+            "human-signals": "^1.1.1",
+            "is-stream": "^2.0.0",
+            "merge-stream": "^2.0.0",
+            "npm-run-path": "^4.0.0",
+            "onetime": "^5.1.0",
+            "p-finally": "^2.0.0",
+            "signal-exit": "^3.0.2",
+            "strip-final-newline": "^2.0.0"
+          }
+        },
+        "get-stream": {
+          "version": "5.2.0",
+          "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+          "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+          "dev": true,
+          "requires": {
+            "pump": "^3.0.0"
+          }
+        },
+        "is-stream": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
+          "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
+          "dev": true
+        },
+        "mimic-fn": {
+          "version": "2.1.0",
+          "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
+          "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
+          "dev": true
+        },
+        "npm-run-path": {
+          "version": "4.0.1",
+          "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
+          "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
+          "dev": true,
+          "requires": {
+            "path-key": "^3.0.0"
+          }
+        },
+        "onetime": {
+          "version": "5.1.2",
+          "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
+          "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
+          "dev": true,
+          "requires": {
+            "mimic-fn": "^2.1.0"
+          }
+        },
+        "p-finally": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz",
+          "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==",
+          "dev": true
+        },
+        "path-key": {
+          "version": "3.1.1",
+          "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+          "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+          "dev": true
+        },
+        "shebang-command": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+          "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+          "dev": true,
+          "requires": {
+            "shebang-regex": "^3.0.0"
+          }
+        },
+        "shebang-regex": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+          "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+          "dev": true
+        },
+        "which": {
+          "version": "2.0.2",
+          "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+          "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+          "dev": true,
+          "requires": {
+            "isexe": "^2.0.0"
+          }
+        }
       }
     },
-    "node_modules/default-gateway/node_modules/execa": {
-      "version": "3.4.0",
-      "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz",
-      "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==",
-      "dev": true,
-      "dependencies": {
-        "cross-spawn": "^7.0.0",
-        "get-stream": "^5.0.0",
-        "human-signals": "^1.1.1",
-        "is-stream": "^2.0.0",
-        "merge-stream": "^2.0.0",
-        "npm-run-path": "^4.0.0",
-        "onetime": "^5.1.0",
-        "p-finally": "^2.0.0",
-        "signal-exit": "^3.0.2",
-        "strip-final-newline": "^2.0.0"
-      },
-      "engines": {
-        "node": "^8.12.0 || >=9.7.0"
-      }
-    },
-    "node_modules/default-gateway/node_modules/get-stream": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
-      "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
-      "dev": true,
-      "dependencies": {
-        "pump": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/default-gateway/node_modules/is-stream": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
-      "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/default-gateway/node_modules/mimic-fn": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
-      "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/default-gateway/node_modules/npm-run-path": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
-      "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
-      "dev": true,
-      "dependencies": {
-        "path-key": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/default-gateway/node_modules/onetime": {
-      "version": "5.1.2",
-      "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
-      "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
-      "dev": true,
-      "dependencies": {
-        "mimic-fn": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/default-gateway/node_modules/p-finally": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz",
-      "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/default-gateway/node_modules/path-key": {
-      "version": "3.1.1",
-      "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
-      "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/default-gateway/node_modules/shebang-command": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
-      "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
-      "dev": true,
-      "dependencies": {
-        "shebang-regex": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/default-gateway/node_modules/shebang-regex": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
-      "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/default-gateway/node_modules/which": {
-      "version": "2.0.2",
-      "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
-      "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
-      "dev": true,
-      "dependencies": {
-        "isexe": "^2.0.0"
-      },
-      "bin": {
-        "node-which": "bin/node-which"
-      },
-      "engines": {
-        "node": ">= 8"
-      }
-    },
-    "node_modules/defaults": {
+    "defaults": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz",
       "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "clone": "^1.0.2"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
       }
     },
-    "node_modules/define-properties": {
+    "define-properties": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz",
       "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has-property-descriptors": "^1.0.0",
         "object-keys": "^1.1.1"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/define-property": {
+    "define-property": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
       "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-descriptor": "^1.0.2",
         "isobject": "^3.0.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/define-property/node_modules/is-accessor-descriptor": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
-      "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
-      "dev": true,
       "dependencies": {
-        "kind-of": "^6.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "is-accessor-descriptor": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+          "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+          "dev": true,
+          "requires": {
+            "kind-of": "^6.0.0"
+          }
+        },
+        "is-data-descriptor": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+          "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+          "dev": true,
+          "requires": {
+            "kind-of": "^6.0.0"
+          }
+        },
+        "is-descriptor": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+          "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+          "dev": true,
+          "requires": {
+            "is-accessor-descriptor": "^1.0.0",
+            "is-data-descriptor": "^1.0.0",
+            "kind-of": "^6.0.2"
+          }
+        }
       }
     },
-    "node_modules/define-property/node_modules/is-data-descriptor": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
-      "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
-      "dev": true,
-      "dependencies": {
-        "kind-of": "^6.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/define-property/node_modules/is-descriptor": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
-      "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
-      "dev": true,
-      "dependencies": {
-        "is-accessor-descriptor": "^1.0.0",
-        "is-data-descriptor": "^1.0.0",
-        "kind-of": "^6.0.2"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/del": {
+    "del": {
       "version": "4.1.1",
       "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz",
       "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@types/glob": "^7.1.1",
         "globby": "^6.1.0",
         "is-path-cwd": "^2.0.0",
@@ -5637,340 +4409,288 @@
         "pify": "^4.0.1",
         "rimraf": "^2.6.3"
       },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/del/node_modules/globby": {
-      "version": "6.1.0",
-      "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
-      "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==",
-      "dev": true,
       "dependencies": {
-        "array-union": "^1.0.1",
-        "glob": "^7.0.3",
-        "object-assign": "^4.0.1",
-        "pify": "^2.0.0",
-        "pinkie-promise": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "globby": {
+          "version": "6.1.0",
+          "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
+          "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==",
+          "dev": true,
+          "requires": {
+            "array-union": "^1.0.1",
+            "glob": "^7.0.3",
+            "object-assign": "^4.0.1",
+            "pify": "^2.0.0",
+            "pinkie-promise": "^2.0.0"
+          },
+          "dependencies": {
+            "pify": {
+              "version": "2.3.0",
+              "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+              "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
+              "dev": true
+            }
+          }
+        }
       }
     },
-    "node_modules/del/node_modules/globby/node_modules/pify": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
-      "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/delayed-stream": {
+    "delayed-stream": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
-      "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
-      "engines": {
-        "node": ">=0.4.0"
-      }
+      "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
     },
-    "node_modules/delegates": {
+    "delegates": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
       "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ=="
     },
-    "node_modules/depd": {
+    "depd": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
       "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8"
-      }
+      "dev": true
     },
-    "node_modules/des.js": {
+    "des.js": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz",
       "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "^2.0.1",
         "minimalistic-assert": "^1.0.0"
       }
     },
-    "node_modules/destroy": {
+    "destroy": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
       "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8",
-        "npm": "1.2.8000 || >= 1.4.16"
-      }
+      "dev": true
     },
-    "node_modules/detect-node": {
+    "detect-node": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz",
       "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==",
       "dev": true
     },
-    "node_modules/diffie-hellman": {
+    "diffie-hellman": {
       "version": "5.0.3",
       "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
       "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bn.js": "^4.1.0",
         "miller-rabin": "^4.0.0",
         "randombytes": "^2.0.0"
+      },
+      "dependencies": {
+        "bn.js": {
+          "version": "4.12.0",
+          "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+          "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/diffie-hellman/node_modules/bn.js": {
-      "version": "4.12.0",
-      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
-      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
-      "dev": true
-    },
-    "node_modules/dir-glob": {
+    "dir-glob": {
       "version": "2.2.2",
       "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz",
       "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "path-type": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/dns-equal": {
+    "dns-equal": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz",
       "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==",
       "dev": true
     },
-    "node_modules/dns-packet": {
+    "dns-packet": {
       "version": "1.3.4",
       "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz",
       "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "ip": "^1.1.0",
         "safe-buffer": "^5.0.1"
       }
     },
-    "node_modules/dns-txt": {
+    "dns-txt": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz",
       "integrity": "sha512-Ix5PrWjphuSoUXV/Zv5gaFHjnaJtb02F2+Si3Ht9dyJ87+Z/lMmy+dpNHtTGraNK958ndXq2i+GLkWsWHcKaBQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "buffer-indexof": "^1.0.0"
       }
     },
-    "node_modules/doctrine": {
+    "doctrine": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
       "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "esutils": "^2.0.2"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/dom-converter": {
+    "dom-converter": {
       "version": "0.2.0",
       "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz",
       "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "utila": "~0.4"
       }
     },
-    "node_modules/dom-serializer": {
+    "dom-serializer": {
       "version": "0.2.2",
       "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
       "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "domelementtype": "^2.0.1",
         "entities": "^2.0.0"
+      },
+      "dependencies": {
+        "domelementtype": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
+          "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/dom-serializer/node_modules/domelementtype": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
-      "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/fb55"
-        }
-      ]
-    },
-    "node_modules/domain-browser": {
+    "domain-browser": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
       "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.4",
-        "npm": ">=1.2"
-      }
+      "dev": true
     },
-    "node_modules/domelementtype": {
+    "domelementtype": {
       "version": "1.3.1",
       "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
       "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==",
       "dev": true
     },
-    "node_modules/domhandler": {
+    "domhandler": {
       "version": "4.3.1",
       "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz",
       "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "domelementtype": "^2.2.0"
       },
-      "engines": {
-        "node": ">= 4"
-      },
-      "funding": {
-        "url": "https://github.com/fb55/domhandler?sponsor=1"
+      "dependencies": {
+        "domelementtype": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
+          "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/domhandler/node_modules/domelementtype": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
-      "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/fb55"
-        }
-      ]
-    },
-    "node_modules/domutils": {
+    "domutils": {
       "version": "1.7.0",
       "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz",
       "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "dom-serializer": "0",
         "domelementtype": "1"
       }
     },
-    "node_modules/dot-prop": {
+    "dot-prop": {
       "version": "5.3.0",
       "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
       "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-obj": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=8"
       }
     },
-    "node_modules/dotenv": {
+    "dotenv": {
       "version": "7.0.0",
       "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-7.0.0.tgz",
       "integrity": "sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/dotenv-expand": {
+    "dotenv-expand": {
       "version": "5.1.0",
       "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz",
       "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==",
       "dev": true
     },
-    "node_modules/duplexer": {
+    "duplexer": {
       "version": "0.1.2",
       "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
       "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
       "dev": true
     },
-    "node_modules/duplexify": {
+    "duplexify": {
       "version": "3.7.1",
       "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
       "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "end-of-stream": "^1.0.0",
         "inherits": "^2.0.1",
         "readable-stream": "^2.0.0",
         "stream-shift": "^1.0.0"
       }
     },
-    "node_modules/easy-stack": {
+    "easy-stack": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/easy-stack/-/easy-stack-1.0.1.tgz",
       "integrity": "sha512-wK2sCs4feiiJeFXn3zvY0p41mdU5VUgbgs1rNsc/y5ngFUijdWd+iIN8eoyuZHKB8xN6BL4PdWmzqFmxNg6V2w==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.0.0"
-      }
+      "dev": true
     },
-    "node_modules/ecc-jsbn": {
+    "ecc-jsbn": {
       "version": "0.1.2",
       "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
       "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==",
-      "dependencies": {
+      "requires": {
         "jsbn": "~0.1.0",
         "safer-buffer": "^2.1.0"
       }
     },
-    "node_modules/ee-first": {
+    "ee-first": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
       "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
       "dev": true
     },
-    "node_modules/ejs": {
+    "ejs": {
       "version": "2.7.4",
       "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz",
       "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==",
-      "dev": true,
-      "hasInstallScript": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/electron-to-chromium": {
+    "electron-to-chromium": {
       "version": "1.4.384",
       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.384.tgz",
       "integrity": "sha512-I97q0MmRAAqj53+a8vZsDkEXBZki+ehYAOPzwtQzALip52aEp2+BJqHFtTlsfjoqVZYwPpHC8wM6MbsSZQ/Eqw==",
       "dev": true
     },
-    "node_modules/element-ui": {
+    "element-ui": {
       "version": "2.15.13",
       "resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.13.tgz",
       "integrity": "sha512-LJoatEYX6WV74FqXBss8Xfho9fh9rjDSzrDrTyREdGb1h1R3uRvmLh5jqp2JU137aj4/BgqA3K06RQpQBX33Bg==",
-      "dependencies": {
+      "requires": {
         "async-validator": "~1.8.1",
         "babel-helper-vue-jsx-merge-props": "^2.0.0",
         "deepmerge": "^1.2.0",
         "normalize-wheel": "^1.0.1",
         "resize-observer-polyfill": "^1.5.0",
         "throttle-debounce": "^1.0.1"
-      },
-      "peerDependencies": {
-        "vue": "^2.5.17"
       }
     },
-    "node_modules/elliptic": {
+    "elliptic": {
       "version": "6.5.4",
       "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz",
       "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bn.js": "^4.11.9",
         "brorand": "^1.1.0",
         "hash.js": "^1.0.0",
@@ -5978,127 +4698,110 @@
         "inherits": "^2.0.4",
         "minimalistic-assert": "^1.0.1",
         "minimalistic-crypto-utils": "^1.0.1"
+      },
+      "dependencies": {
+        "bn.js": {
+          "version": "4.12.0",
+          "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+          "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/elliptic/node_modules/bn.js": {
-      "version": "4.12.0",
-      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
-      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
-      "dev": true
-    },
-    "node_modules/emoji-regex": {
+    "emoji-regex": {
       "version": "8.0.0",
       "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
       "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
       "dev": true
     },
-    "node_modules/emojis-list": {
+    "emojis-list": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
       "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
-      "dev": true,
-      "engines": {
-        "node": ">= 4"
-      }
+      "dev": true
     },
-    "node_modules/encodeurl": {
+    "encodeurl": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
       "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8"
-      }
+      "dev": true
     },
-    "node_modules/end-of-stream": {
+    "end-of-stream": {
       "version": "1.4.4",
       "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
       "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "once": "^1.4.0"
       }
     },
-    "node_modules/enhanced-resolve": {
+    "enhanced-resolve": {
       "version": "4.5.0",
       "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz",
       "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "graceful-fs": "^4.1.2",
         "memory-fs": "^0.5.0",
         "tapable": "^1.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/enhanced-resolve/node_modules/memory-fs": {
-      "version": "0.5.0",
-      "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz",
-      "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==",
-      "dev": true,
       "dependencies": {
-        "errno": "^0.1.3",
-        "readable-stream": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=4.3.0 <5.0.0 || >=5.10"
+        "memory-fs": {
+          "version": "0.5.0",
+          "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz",
+          "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==",
+          "dev": true,
+          "requires": {
+            "errno": "^0.1.3",
+            "readable-stream": "^2.0.1"
+          }
+        }
       }
     },
-    "node_modules/entities": {
+    "entities": {
       "version": "2.2.0",
       "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
       "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
-      "dev": true,
-      "funding": {
-        "url": "https://github.com/fb55/entities?sponsor=1"
-      }
+      "dev": true
     },
-    "node_modules/env-paths": {
+    "env-paths": {
       "version": "2.2.1",
       "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz",
-      "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==",
-      "engines": {
-        "node": ">=6"
-      }
+      "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A=="
     },
-    "node_modules/errno": {
+    "errno": {
       "version": "0.1.8",
       "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz",
       "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "prr": "~1.0.1"
-      },
-      "bin": {
-        "errno": "cli.js"
       }
     },
-    "node_modules/error-ex": {
+    "error-ex": {
       "version": "1.3.2",
       "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
       "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-arrayish": "^0.2.1"
       }
     },
-    "node_modules/error-stack-parser": {
+    "error-stack-parser": {
       "version": "2.1.4",
       "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz",
       "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "stackframe": "^1.3.4"
       }
     },
-    "node_modules/es-abstract": {
+    "es-abstract": {
       "version": "1.21.2",
       "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz",
       "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "array-buffer-byte-length": "^1.0.0",
         "available-typed-arrays": "^1.0.5",
         "call-bind": "^1.0.2",
@@ -6133,81 +4836,61 @@
         "typed-array-length": "^1.0.4",
         "unbox-primitive": "^1.0.2",
         "which-typed-array": "^1.1.9"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/es-array-method-boxes-properly": {
+    "es-array-method-boxes-properly": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz",
       "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==",
       "dev": true
     },
-    "node_modules/es-set-tostringtag": {
+    "es-set-tostringtag": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz",
       "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "get-intrinsic": "^1.1.3",
         "has": "^1.0.3",
         "has-tostringtag": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
       }
     },
-    "node_modules/es-to-primitive": {
+    "es-to-primitive": {
       "version": "1.2.1",
       "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
       "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-callable": "^1.1.4",
         "is-date-object": "^1.0.1",
         "is-symbol": "^1.0.2"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/escalade": {
+    "escalade": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
       "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/escape-html": {
+    "escape-html": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
       "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
       "dev": true
     },
-    "node_modules/escape-string-regexp": {
+    "escape-string-regexp": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
       "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.8.0"
-      }
+      "dev": true
     },
-    "node_modules/eslint": {
+    "eslint": {
       "version": "4.19.1",
       "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz",
       "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "ajv": "^5.3.0",
         "babel-code-frame": "^6.22.0",
         "chalk": "^2.1.0",
@@ -6247,336 +4930,275 @@
         "table": "4.0.2",
         "text-table": "~0.2.0"
       },
-      "bin": {
-        "eslint": "bin/eslint.js"
-      },
-      "engines": {
-        "node": ">=4"
+      "dependencies": {
+        "ajv": {
+          "version": "5.5.2",
+          "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
+          "integrity": "sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "co": "^4.6.0",
+            "fast-deep-equal": "^1.0.0",
+            "fast-json-stable-stringify": "^2.0.0",
+            "json-schema-traverse": "^0.3.0"
+          }
+        },
+        "ansi-regex": {
+          "version": "3.0.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz",
+          "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==",
+          "dev": true,
+          "optional": true
+        },
+        "cross-spawn": {
+          "version": "5.1.0",
+          "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
+          "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "lru-cache": "^4.0.1",
+            "shebang-command": "^1.2.0",
+            "which": "^1.2.9"
+          }
+        },
+        "eslint-scope": {
+          "version": "3.7.3",
+          "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz",
+          "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "esrecurse": "^4.1.0",
+            "estraverse": "^4.1.1"
+          }
+        },
+        "fast-deep-equal": {
+          "version": "1.1.0",
+          "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
+          "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==",
+          "dev": true,
+          "optional": true
+        },
+        "json-schema-traverse": {
+          "version": "0.3.1",
+          "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
+          "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==",
+          "dev": true,
+          "optional": true
+        },
+        "lru-cache": {
+          "version": "4.1.5",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
+          "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "pseudomap": "^1.0.2",
+            "yallist": "^2.1.2"
+          }
+        },
+        "strip-ansi": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
+          "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ansi-regex": "^3.0.0"
+          }
+        },
+        "yallist": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
+          "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
+          "dev": true,
+          "optional": true
+        }
       }
     },
-    "node_modules/eslint-loader": {
+    "eslint-loader": {
       "version": "2.2.1",
       "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-2.2.1.tgz",
       "integrity": "sha512-RLgV9hoCVsMLvOxCuNjdqOrUqIj9oJg8hF44vzJaYqsAHuY9G2YAeN3joQ9nxP0p5Th9iFSIpKo+SD8KISxXRg==",
-      "deprecated": "This loader has been deprecated. Please use eslint-webpack-plugin",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "loader-fs-cache": "^1.0.0",
         "loader-utils": "^1.0.2",
         "object-assign": "^4.0.1",
         "object-hash": "^1.1.4",
         "rimraf": "^2.6.1"
       },
-      "peerDependencies": {
-        "eslint": ">=1.6.0 <7.0.0",
-        "webpack": ">=2.0.0 <5.0.0"
-      }
-    },
-    "node_modules/eslint-loader/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
       "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        }
       }
     },
-    "node_modules/eslint-loader/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/eslint-plugin-vue": {
+    "eslint-plugin-vue": {
       "version": "4.7.1",
       "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-4.7.1.tgz",
       "integrity": "sha512-esETKhVMI7Vdli70Wt4bvAwnZBJeM0pxVX9Yb0wWKxdCJc2EADalVYK/q2FzMw8oKN0wPMdqVCKS8kmR89recA==",
       "dev": true,
       "optional": true,
-      "dependencies": {
+      "requires": {
         "vue-eslint-parser": "^2.0.3"
-      },
-      "engines": {
-        "node": ">=4"
-      },
-      "peerDependencies": {
-        "eslint": "^3.18.0 || ^4.0.0"
       }
     },
-    "node_modules/eslint-scope": {
+    "eslint-scope": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz",
       "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "esrecurse": "^4.1.0",
         "estraverse": "^4.1.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
       }
     },
-    "node_modules/eslint-visitor-keys": {
+    "eslint-visitor-keys": {
       "version": "1.3.0",
       "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
       "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/eslint/node_modules/ajv": {
-      "version": "5.5.2",
-      "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
-      "integrity": "sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw==",
-      "dev": true,
-      "dependencies": {
-        "co": "^4.6.0",
-        "fast-deep-equal": "^1.0.0",
-        "fast-json-stable-stringify": "^2.0.0",
-        "json-schema-traverse": "^0.3.0"
-      }
-    },
-    "node_modules/eslint/node_modules/ansi-regex": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz",
-      "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/eslint/node_modules/cross-spawn": {
-      "version": "5.1.0",
-      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
-      "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==",
-      "dev": true,
-      "dependencies": {
-        "lru-cache": "^4.0.1",
-        "shebang-command": "^1.2.0",
-        "which": "^1.2.9"
-      }
-    },
-    "node_modules/eslint/node_modules/eslint-scope": {
-      "version": "3.7.3",
-      "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz",
-      "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==",
-      "dev": true,
-      "dependencies": {
-        "esrecurse": "^4.1.0",
-        "estraverse": "^4.1.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/eslint/node_modules/fast-deep-equal": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
-      "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==",
       "dev": true
     },
-    "node_modules/eslint/node_modules/json-schema-traverse": {
-      "version": "0.3.1",
-      "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
-      "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==",
-      "dev": true
-    },
-    "node_modules/eslint/node_modules/lru-cache": {
-      "version": "4.1.5",
-      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
-      "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
-      "dev": true,
-      "dependencies": {
-        "pseudomap": "^1.0.2",
-        "yallist": "^2.1.2"
-      }
-    },
-    "node_modules/eslint/node_modules/strip-ansi": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
-      "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==",
-      "dev": true,
-      "dependencies": {
-        "ansi-regex": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/eslint/node_modules/yallist": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
-      "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
-      "dev": true
-    },
-    "node_modules/espree": {
+    "espree": {
       "version": "3.5.4",
       "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
       "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "acorn": "^5.5.0",
         "acorn-jsx": "^3.0.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
+      "dependencies": {
+        "acorn": {
+          "version": "5.7.4",
+          "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz",
+          "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==",
+          "dev": true,
+          "optional": true
+        }
       }
     },
-    "node_modules/espree/node_modules/acorn": {
-      "version": "5.7.4",
-      "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz",
-      "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==",
-      "dev": true,
-      "bin": {
-        "acorn": "bin/acorn"
-      },
-      "engines": {
-        "node": ">=0.4.0"
-      }
-    },
-    "node_modules/esprima": {
+    "esprima": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
       "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
-      "dev": true,
-      "bin": {
-        "esparse": "bin/esparse.js",
-        "esvalidate": "bin/esvalidate.js"
-      },
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/esquery": {
+    "esquery": {
       "version": "1.5.0",
       "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
       "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "estraverse": "^5.1.0"
       },
-      "engines": {
-        "node": ">=0.10"
+      "dependencies": {
+        "estraverse": {
+          "version": "5.3.0",
+          "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+          "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+          "dev": true,
+          "optional": true
+        }
       }
     },
-    "node_modules/esquery/node_modules/estraverse": {
-      "version": "5.3.0",
-      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
-      "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
-      "dev": true,
-      "engines": {
-        "node": ">=4.0"
-      }
-    },
-    "node_modules/esrecurse": {
+    "esrecurse": {
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
       "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "estraverse": "^5.2.0"
       },
-      "engines": {
-        "node": ">=4.0"
+      "dependencies": {
+        "estraverse": {
+          "version": "5.3.0",
+          "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+          "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/esrecurse/node_modules/estraverse": {
-      "version": "5.3.0",
-      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
-      "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
-      "dev": true,
-      "engines": {
-        "node": ">=4.0"
-      }
-    },
-    "node_modules/estraverse": {
+    "estraverse": {
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
       "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4.0"
-      }
+      "dev": true
     },
-    "node_modules/esutils": {
+    "esutils": {
       "version": "2.0.3",
       "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
       "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/etag": {
+    "etag": {
       "version": "1.8.1",
       "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
       "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "dev": true
     },
-    "node_modules/event-pubsub": {
+    "event-pubsub": {
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/event-pubsub/-/event-pubsub-4.3.0.tgz",
       "integrity": "sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=4.0.0"
-      }
+      "dev": true
     },
-    "node_modules/eventemitter3": {
+    "eventemitter3": {
       "version": "4.0.7",
       "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
       "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==",
       "dev": true
     },
-    "node_modules/events": {
+    "events": {
       "version": "3.3.0",
       "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
       "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.8.x"
-      }
+      "dev": true
     },
-    "node_modules/eventsource": {
+    "eventsource": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz",
       "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==",
-      "dev": true,
-      "engines": {
-        "node": ">=12.0.0"
-      }
+      "dev": true
     },
-    "node_modules/evp_bytestokey": {
+    "evp_bytestokey": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
       "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "md5.js": "^1.3.4",
         "safe-buffer": "^5.1.1"
       }
     },
-    "node_modules/execa": {
+    "execa": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
       "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cross-spawn": "^6.0.0",
         "get-stream": "^4.0.0",
         "is-stream": "^1.1.0",
@@ -6584,17 +5206,14 @@
         "p-finally": "^1.0.0",
         "signal-exit": "^3.0.0",
         "strip-eof": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=6"
       }
     },
-    "node_modules/expand-brackets": {
+    "expand-brackets": {
       "version": "2.1.4",
       "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
       "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "debug": "^2.3.3",
         "define-property": "^0.2.5",
         "extend-shallow": "^2.0.1",
@@ -6603,49 +5222,42 @@
         "snapdragon": "^0.8.1",
         "to-regex": "^3.0.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/expand-brackets/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.0.0"
+        "debug": {
+          "version": "2.6.9",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        },
+        "define-property": {
+          "version": "0.2.5",
+          "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+          "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+          "dev": true,
+          "requires": {
+            "is-descriptor": "^0.1.0"
+          }
+        },
+        "extend-shallow": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+          "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+          "dev": true,
+          "requires": {
+            "is-extendable": "^0.1.0"
+          }
+        }
       }
     },
-    "node_modules/expand-brackets/node_modules/define-property": {
-      "version": "0.2.5",
-      "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
-      "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
-      "dev": true,
-      "dependencies": {
-        "is-descriptor": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/expand-brackets/node_modules/extend-shallow": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
-      "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
-      "dev": true,
-      "dependencies": {
-        "is-extendable": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/express": {
+    "express": {
       "version": "4.18.2",
       "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz",
       "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "accepts": "~1.3.8",
         "array-flatten": "1.1.1",
         "body-parser": "1.20.1",
@@ -6678,104 +5290,77 @@
         "utils-merge": "1.0.1",
         "vary": "~1.1.2"
       },
-      "engines": {
-        "node": ">= 0.10.0"
-      }
-    },
-    "node_modules/express/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.0.0"
-      }
-    },
-    "node_modules/express/node_modules/qs": {
-      "version": "6.11.0",
-      "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
-      "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
-      "dev": true,
-      "dependencies": {
-        "side-channel": "^1.0.4"
-      },
-      "engines": {
-        "node": ">=0.6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
-    },
-    "node_modules/express/node_modules/safe-buffer": {
-      "version": "5.2.1",
-      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
-      "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/feross"
+        "debug": {
+          "version": "2.6.9",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
         },
-        {
-          "type": "patreon",
-          "url": "https://www.patreon.com/feross"
+        "qs": {
+          "version": "6.11.0",
+          "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
+          "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
+          "dev": true,
+          "requires": {
+            "side-channel": "^1.0.4"
+          }
         },
-        {
-          "type": "consulting",
-          "url": "https://feross.org/support"
+        "safe-buffer": {
+          "version": "5.2.1",
+          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+          "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+          "dev": true
         }
-      ]
+      }
     },
-    "node_modules/extend": {
+    "extend": {
       "version": "3.0.2",
       "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
       "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
     },
-    "node_modules/extend-shallow": {
+    "extend-shallow": {
       "version": "3.0.2",
       "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
       "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "assign-symbols": "^1.0.0",
         "is-extendable": "^1.0.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/extend-shallow/node_modules/is-extendable": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
-      "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
-      "dev": true,
       "dependencies": {
-        "is-plain-object": "^2.0.4"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "is-extendable": {
+          "version": "1.0.1",
+          "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+          "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+          "dev": true,
+          "requires": {
+            "is-plain-object": "^2.0.4"
+          }
+        }
       }
     },
-    "node_modules/external-editor": {
+    "external-editor": {
       "version": "2.2.0",
       "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz",
       "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "chardet": "^0.4.0",
         "iconv-lite": "^0.4.17",
         "tmp": "^0.0.33"
-      },
-      "engines": {
-        "node": ">=0.12"
       }
     },
-    "node_modules/extglob": {
+    "extglob": {
       "version": "2.0.4",
       "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
       "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "array-unique": "^0.3.2",
         "define-property": "^1.0.0",
         "expand-brackets": "^2.1.4",
@@ -6785,91 +5370,72 @@
         "snapdragon": "^0.8.1",
         "to-regex": "^3.0.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/extglob/node_modules/define-property": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
-      "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
-      "dev": true,
       "dependencies": {
-        "is-descriptor": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "define-property": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+          "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
+          "dev": true,
+          "requires": {
+            "is-descriptor": "^1.0.0"
+          }
+        },
+        "extend-shallow": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+          "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+          "dev": true,
+          "requires": {
+            "is-extendable": "^0.1.0"
+          }
+        },
+        "is-accessor-descriptor": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+          "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+          "dev": true,
+          "requires": {
+            "kind-of": "^6.0.0"
+          }
+        },
+        "is-data-descriptor": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+          "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+          "dev": true,
+          "requires": {
+            "kind-of": "^6.0.0"
+          }
+        },
+        "is-descriptor": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+          "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+          "dev": true,
+          "requires": {
+            "is-accessor-descriptor": "^1.0.0",
+            "is-data-descriptor": "^1.0.0",
+            "kind-of": "^6.0.2"
+          }
+        }
       }
     },
-    "node_modules/extglob/node_modules/extend-shallow": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
-      "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
-      "dev": true,
-      "dependencies": {
-        "is-extendable": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/extglob/node_modules/is-accessor-descriptor": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
-      "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
-      "dev": true,
-      "dependencies": {
-        "kind-of": "^6.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/extglob/node_modules/is-data-descriptor": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
-      "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
-      "dev": true,
-      "dependencies": {
-        "kind-of": "^6.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/extglob/node_modules/is-descriptor": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
-      "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
-      "dev": true,
-      "dependencies": {
-        "is-accessor-descriptor": "^1.0.0",
-        "is-data-descriptor": "^1.0.0",
-        "kind-of": "^6.0.2"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/extsprintf": {
+    "extsprintf": {
       "version": "1.3.0",
       "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
-      "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==",
-      "engines": [
-        "node >=0.6.0"
-      ]
+      "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g=="
     },
-    "node_modules/fast-deep-equal": {
+    "fast-deep-equal": {
       "version": "3.1.3",
       "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
       "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
     },
-    "node_modules/fast-glob": {
+    "fast-glob": {
       "version": "2.2.7",
       "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz",
       "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@mrmlnc/readdir-enhanced": "^2.2.1",
         "@nodelib/fs.stat": "^1.1.2",
         "glob-parent": "^3.1.0",
@@ -6877,197 +5443,162 @@
         "merge2": "^1.2.3",
         "micromatch": "^3.1.10"
       },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/fast-glob/node_modules/glob-parent": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
-      "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
-      "dev": true,
       "dependencies": {
-        "is-glob": "^3.1.0",
-        "path-dirname": "^1.0.0"
+        "glob-parent": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
+          "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
+          "dev": true,
+          "requires": {
+            "is-glob": "^3.1.0",
+            "path-dirname": "^1.0.0"
+          },
+          "dependencies": {
+            "is-glob": {
+              "version": "3.1.0",
+              "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+              "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==",
+              "dev": true,
+              "requires": {
+                "is-extglob": "^2.1.0"
+              }
+            }
+          }
+        }
       }
     },
-    "node_modules/fast-glob/node_modules/glob-parent/node_modules/is-glob": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
-      "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==",
-      "dev": true,
-      "dependencies": {
-        "is-extglob": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/fast-json-stable-stringify": {
+    "fast-json-stable-stringify": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
       "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
     },
-    "node_modules/fast-levenshtein": {
+    "fast-levenshtein": {
       "version": "2.0.6",
       "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
       "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/fastparse": {
+    "fastparse": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz",
       "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==",
       "dev": true
     },
-    "node_modules/faye-websocket": {
+    "faye-websocket": {
       "version": "0.11.4",
       "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz",
       "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "websocket-driver": ">=0.5.1"
-      },
-      "engines": {
-        "node": ">=0.8.0"
       }
     },
-    "node_modules/figgy-pudding": {
+    "figgy-pudding": {
       "version": "3.5.2",
       "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz",
       "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==",
       "dev": true
     },
-    "node_modules/figures": {
+    "figures": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
       "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "escape-string-regexp": "^1.0.5"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/file-entry-cache": {
+    "file-entry-cache": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz",
       "integrity": "sha512-uXP/zGzxxFvFfcZGgBIwotm+Tdc55ddPAzF7iHshP4YGaXMww7rSF9peD9D1sui5ebONg5UobsZv+FfgEpGv/w==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "flat-cache": "^1.2.1",
         "object-assign": "^4.0.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/file-loader": {
+    "file-loader": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-3.0.1.tgz",
       "integrity": "sha512-4sNIOXgtH/9WZq4NvlfU3Opn5ynUsqBwSLyM+I7UOwdGigTBYfVVQEwe/msZNX/j4pCJTIM14Fsw66Svo1oVrw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "loader-utils": "^1.0.2",
         "schema-utils": "^1.0.0"
       },
-      "engines": {
-        "node": ">= 6.9.0"
-      },
-      "peerDependencies": {
-        "webpack": "^4.0.0"
-      }
-    },
-    "node_modules/file-loader/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
       "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        },
+        "schema-utils": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
+          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
+          "dev": true,
+          "requires": {
+            "ajv": "^6.1.0",
+            "ajv-errors": "^1.0.0",
+            "ajv-keywords": "^3.1.0"
+          }
+        }
       }
     },
-    "node_modules/file-loader/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/file-loader/node_modules/schema-utils": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
-      "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
-      "dev": true,
-      "dependencies": {
-        "ajv": "^6.1.0",
-        "ajv-errors": "^1.0.0",
-        "ajv-keywords": "^3.1.0"
-      },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/file-uri-to-path": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
-      "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
-      "dev": true,
-      "optional": true
-    },
-    "node_modules/filesize": {
+    "filesize": {
       "version": "3.6.1",
       "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz",
       "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.4.0"
-      }
+      "dev": true
     },
-    "node_modules/fill-range": {
+    "fill-range": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
       "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "extend-shallow": "^2.0.1",
         "is-number": "^3.0.0",
         "repeat-string": "^1.6.1",
         "to-regex-range": "^2.1.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/fill-range/node_modules/extend-shallow": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
-      "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
-      "dev": true,
       "dependencies": {
-        "is-extendable": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "extend-shallow": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+          "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+          "dev": true,
+          "requires": {
+            "is-extendable": "^0.1.0"
+          }
+        }
       }
     },
-    "node_modules/finalhandler": {
+    "finalhandler": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
       "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "debug": "2.6.9",
         "encodeurl": "~1.0.2",
         "escape-html": "~1.0.3",
@@ -7076,294 +5607,239 @@
         "statuses": "2.0.1",
         "unpipe": "~1.0.0"
       },
-      "engines": {
-        "node": ">= 0.8"
-      }
-    },
-    "node_modules/finalhandler/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.0.0"
+        "debug": {
+          "version": "2.6.9",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        }
       }
     },
-    "node_modules/find-babel-config": {
+    "find-babel-config": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/find-babel-config/-/find-babel-config-1.2.0.tgz",
       "integrity": "sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "json5": "^0.5.1",
         "path-exists": "^3.0.0"
       },
-      "engines": {
-        "node": ">=4.0.0"
+      "dependencies": {
+        "json5": {
+          "version": "0.5.1",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
+          "integrity": "sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/find-babel-config/node_modules/json5": {
-      "version": "0.5.1",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
-      "integrity": "sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==",
-      "dev": true,
-      "bin": {
-        "json5": "lib/cli.js"
-      }
-    },
-    "node_modules/find-cache-dir": {
+    "find-cache-dir": {
       "version": "3.3.2",
       "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
       "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "commondir": "^1.0.1",
         "make-dir": "^3.0.2",
         "pkg-dir": "^4.1.0"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/avajs/find-cache-dir?sponsor=1"
       }
     },
-    "node_modules/find-up": {
+    "find-up": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
       "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "locate-path": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/flat-cache": {
+    "flat-cache": {
       "version": "1.3.4",
       "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz",
       "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "circular-json": "^0.3.1",
         "graceful-fs": "^4.1.2",
         "rimraf": "~2.6.2",
         "write": "^0.2.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/flat-cache/node_modules/rimraf": {
-      "version": "2.6.3",
-      "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
-      "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
-      "dev": true,
       "dependencies": {
-        "glob": "^7.1.3"
-      },
-      "bin": {
-        "rimraf": "bin.js"
+        "rimraf": {
+          "version": "2.6.3",
+          "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
+          "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "glob": "^7.1.3"
+          }
+        }
       }
     },
-    "node_modules/flush-write-stream": {
+    "flush-write-stream": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz",
       "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "^2.0.3",
         "readable-stream": "^2.3.6"
       }
     },
-    "node_modules/follow-redirects": {
+    "follow-redirects": {
       "version": "1.5.10",
       "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz",
       "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==",
-      "dependencies": {
+      "requires": {
         "debug": "=3.1.0"
-      },
-      "engines": {
-        "node": ">=4.0"
       }
     },
-    "node_modules/for-each": {
+    "for-each": {
       "version": "0.3.3",
       "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
       "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-callable": "^1.1.3"
       }
     },
-    "node_modules/for-in": {
+    "for-in": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
       "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/forever-agent": {
+    "forever-agent": {
       "version": "0.6.1",
       "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
-      "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==",
-      "engines": {
-        "node": "*"
-      }
+      "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw=="
     },
-    "node_modules/form-data": {
+    "form-data": {
       "version": "2.3.3",
       "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
       "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
-      "dependencies": {
+      "requires": {
         "asynckit": "^0.4.0",
         "combined-stream": "^1.0.6",
         "mime-types": "^2.1.12"
-      },
-      "engines": {
-        "node": ">= 0.12"
       }
     },
-    "node_modules/forwarded": {
+    "forwarded": {
       "version": "0.2.0",
       "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
       "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "dev": true
     },
-    "node_modules/fragment-cache": {
+    "fragment-cache": {
       "version": "0.2.1",
       "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
       "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "map-cache": "^0.2.2"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/fresh": {
+    "fresh": {
       "version": "0.5.2",
       "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
       "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "dev": true
     },
-    "node_modules/from2": {
+    "from2": {
       "version": "2.3.0",
       "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz",
       "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "^2.0.1",
         "readable-stream": "^2.0.0"
       }
     },
-    "node_modules/fs-extra": {
+    "fs-extra": {
       "version": "7.0.1",
       "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
       "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "graceful-fs": "^4.1.2",
         "jsonfile": "^4.0.0",
         "universalify": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=6 <7 || >=8"
       }
     },
-    "node_modules/fs-minipass": {
+    "fs-minipass": {
       "version": "1.2.7",
       "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz",
       "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==",
-      "dependencies": {
+      "requires": {
         "minipass": "^2.6.0"
       }
     },
-    "node_modules/fs-write-stream-atomic": {
+    "fs-write-stream-atomic": {
       "version": "1.0.10",
       "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
       "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "graceful-fs": "^4.1.2",
         "iferr": "^0.1.5",
         "imurmurhash": "^0.1.4",
         "readable-stream": "1 || 2"
       }
     },
-    "node_modules/fs.realpath": {
+    "fs.realpath": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
       "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
     },
-    "node_modules/fsevents": {
+    "fsevents": {
       "version": "2.3.2",
       "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
       "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
       "dev": true,
-      "hasInstallScript": true,
-      "optional": true,
-      "os": [
-        "darwin"
-      ],
-      "engines": {
-        "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
-      }
+      "optional": true
     },
-    "node_modules/function-bind": {
+    "function-bind": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
       "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
       "dev": true
     },
-    "node_modules/function.prototype.name": {
+    "function.prototype.name": {
       "version": "1.1.5",
       "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz",
       "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.3",
         "es-abstract": "^1.19.0",
         "functions-have-names": "^1.2.2"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/functional-red-black-tree": {
+    "functional-red-black-tree": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
       "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/functions-have-names": {
+    "functions-have-names": {
       "version": "1.2.3",
       "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
       "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
-      "dev": true,
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/gauge": {
+    "gauge": {
       "version": "2.7.4",
       "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
       "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==",
-      "dependencies": {
+      "requires": {
         "aproba": "^1.0.3",
         "console-control-strings": "^1.0.0",
         "has-unicode": "^2.0.0",
@@ -7374,181 +5850,133 @@
         "wide-align": "^1.1.0"
       }
     },
-    "node_modules/gaze": {
+    "gaze": {
       "version": "1.1.3",
       "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz",
       "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "globule": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 4.0.0"
       }
     },
-    "node_modules/gensync": {
+    "gensync": {
       "version": "1.0.0-beta.2",
       "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
       "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
-      "dev": true,
-      "engines": {
-        "node": ">=6.9.0"
-      }
+      "dev": true
     },
-    "node_modules/get-caller-file": {
+    "get-caller-file": {
       "version": "2.0.5",
       "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
       "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
-      "dev": true,
-      "engines": {
-        "node": "6.* || 8.* || >= 10.*"
-      }
+      "dev": true
     },
-    "node_modules/get-func-name": {
+    "get-func-name": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz",
       "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==",
-      "dev": true,
-      "engines": {
-        "node": "*"
-      }
+      "dev": true
     },
-    "node_modules/get-intrinsic": {
+    "get-intrinsic": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz",
       "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "function-bind": "^1.1.1",
         "has": "^1.0.3",
         "has-symbols": "^1.0.3"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/get-stdin": {
+    "get-stdin": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
       "integrity": "sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/get-stream": {
+    "get-stream": {
       "version": "4.1.0",
       "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
       "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "pump": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
       }
     },
-    "node_modules/get-symbol-description": {
+    "get-symbol-description": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
       "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "get-intrinsic": "^1.1.1"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/get-value": {
+    "get-value": {
       "version": "2.0.6",
       "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
       "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/getpass": {
+    "getpass": {
       "version": "0.1.7",
       "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
       "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==",
-      "dependencies": {
+      "requires": {
         "assert-plus": "^1.0.0"
       }
     },
-    "node_modules/glob": {
+    "glob": {
       "version": "7.2.3",
       "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
       "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
-      "dependencies": {
+      "requires": {
         "fs.realpath": "^1.0.0",
         "inflight": "^1.0.4",
         "inherits": "2",
         "minimatch": "^3.1.1",
         "once": "^1.3.0",
         "path-is-absolute": "^1.0.0"
-      },
-      "engines": {
-        "node": "*"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/glob-parent": {
+    "glob-parent": {
       "version": "5.1.2",
       "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
       "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
       "dev": true,
       "optional": true,
-      "dependencies": {
+      "requires": {
         "is-glob": "^4.0.1"
-      },
-      "engines": {
-        "node": ">= 6"
       }
     },
-    "node_modules/glob-to-regexp": {
+    "glob-to-regexp": {
       "version": "0.3.0",
       "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz",
       "integrity": "sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig==",
       "dev": true
     },
-    "node_modules/globals": {
+    "globals": {
       "version": "11.12.0",
       "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
       "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/globalthis": {
+    "globalthis": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz",
       "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "define-properties": "^1.1.3"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/globby": {
+    "globby": {
       "version": "9.2.0",
       "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz",
       "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@types/glob": "^7.1.1",
         "array-union": "^1.0.2",
         "dir-glob": "^2.2.2",
@@ -7558,424 +5986,327 @@
         "pify": "^4.0.1",
         "slash": "^2.0.0"
       },
-      "engines": {
-        "node": ">=6"
+      "dependencies": {
+        "ignore": {
+          "version": "4.0.6",
+          "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
+          "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
+          "dev": true
+        }
       }
     },
-    "node_modules/globby/node_modules/ignore": {
-      "version": "4.0.6",
-      "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
-      "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/globule": {
+    "globule": {
       "version": "1.3.4",
       "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.4.tgz",
       "integrity": "sha512-OPTIfhMBh7JbBYDpa5b+Q5ptmMWKwcNcFSR/0c6t8V4f3ZAVBEsKNY37QdVqmLRYSMhOUGYrY0QhSoEpzGr/Eg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "glob": "~7.1.1",
         "lodash": "^4.17.21",
         "minimatch": "~3.0.2"
       },
-      "engines": {
-        "node": ">= 0.10"
-      }
-    },
-    "node_modules/globule/node_modules/glob": {
-      "version": "7.1.7",
-      "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
-      "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
-      "dev": true,
       "dependencies": {
-        "fs.realpath": "^1.0.0",
-        "inflight": "^1.0.4",
-        "inherits": "2",
-        "minimatch": "^3.0.4",
-        "once": "^1.3.0",
-        "path-is-absolute": "^1.0.0"
-      },
-      "engines": {
-        "node": "*"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/isaacs"
+        "glob": {
+          "version": "7.1.7",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
+          "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
+          "dev": true,
+          "requires": {
+            "fs.realpath": "^1.0.0",
+            "inflight": "^1.0.4",
+            "inherits": "2",
+            "minimatch": "^3.0.4",
+            "once": "^1.3.0",
+            "path-is-absolute": "^1.0.0"
+          }
+        },
+        "minimatch": {
+          "version": "3.0.8",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz",
+          "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "^1.1.7"
+          }
+        }
       }
     },
-    "node_modules/globule/node_modules/minimatch": {
-      "version": "3.0.8",
-      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz",
-      "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==",
-      "dev": true,
-      "dependencies": {
-        "brace-expansion": "^1.1.7"
-      },
-      "engines": {
-        "node": "*"
-      }
-    },
-    "node_modules/gopd": {
+    "gopd": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
       "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "get-intrinsic": "^1.1.3"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/graceful-fs": {
+    "graceful-fs": {
       "version": "4.2.11",
       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
       "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
     },
-    "node_modules/gzip-size": {
+    "gzip-size": {
       "version": "5.1.1",
       "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz",
       "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "duplexer": "^0.1.1",
         "pify": "^4.0.1"
-      },
-      "engines": {
-        "node": ">=6"
       }
     },
-    "node_modules/handle-thing": {
+    "handle-thing": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz",
       "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==",
       "dev": true
     },
-    "node_modules/har-schema": {
+    "har-schema": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
-      "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==",
-      "engines": {
-        "node": ">=4"
-      }
+      "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q=="
     },
-    "node_modules/har-validator": {
+    "har-validator": {
       "version": "5.1.5",
       "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
       "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
-      "deprecated": "this library is no longer supported",
-      "dependencies": {
+      "requires": {
         "ajv": "^6.12.3",
         "har-schema": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
       }
     },
-    "node_modules/hard-rejection": {
+    "hard-rejection": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz",
       "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/has": {
+    "has": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
       "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "function-bind": "^1.1.1"
-      },
-      "engines": {
-        "node": ">= 0.4.0"
       }
     },
-    "node_modules/has-ansi": {
+    "has-ansi": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
       "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "ansi-regex": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/has-bigints": {
+    "has-bigints": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
       "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
-      "dev": true,
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/has-flag": {
+    "has-flag": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
       "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/has-property-descriptors": {
+    "has-property-descriptors": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
       "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "get-intrinsic": "^1.1.1"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/has-proto": {
+    "has-proto": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz",
       "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/has-symbols": {
+    "has-symbols": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
       "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/has-tostringtag": {
+    "has-tostringtag": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
       "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has-symbols": "^1.0.2"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/has-unicode": {
+    "has-unicode": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
       "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ=="
     },
-    "node_modules/has-value": {
+    "has-value": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
       "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "get-value": "^2.0.6",
         "has-values": "^1.0.0",
         "isobject": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/has-values": {
+    "has-values": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
       "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-number": "^3.0.0",
         "kind-of": "^4.0.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/has-values/node_modules/is-buffer": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
-      "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
-      "dev": true
-    },
-    "node_modules/has-values/node_modules/kind-of": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
-      "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==",
-      "dev": true,
       "dependencies": {
-        "is-buffer": "^1.1.5"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "is-buffer": {
+          "version": "1.1.6",
+          "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+          "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+          "dev": true
+        },
+        "kind-of": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
+          "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==",
+          "dev": true,
+          "requires": {
+            "is-buffer": "^1.1.5"
+          }
+        }
       }
     },
-    "node_modules/hash-base": {
+    "hash-base": {
       "version": "3.1.0",
       "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz",
       "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "^2.0.4",
         "readable-stream": "^3.6.0",
         "safe-buffer": "^5.2.0"
       },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/hash-base/node_modules/readable-stream": {
-      "version": "3.6.2",
-      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
-      "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
-      "dev": true,
       "dependencies": {
-        "inherits": "^2.0.3",
-        "string_decoder": "^1.1.1",
-        "util-deprecate": "^1.0.1"
-      },
-      "engines": {
-        "node": ">= 6"
+        "readable-stream": {
+          "version": "3.6.2",
+          "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+          "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+          "dev": true,
+          "requires": {
+            "inherits": "^2.0.3",
+            "string_decoder": "^1.1.1",
+            "util-deprecate": "^1.0.1"
+          }
+        },
+        "safe-buffer": {
+          "version": "5.2.1",
+          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+          "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/hash-base/node_modules/safe-buffer": {
-      "version": "5.2.1",
-      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
-      "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/feross"
-        },
-        {
-          "type": "patreon",
-          "url": "https://www.patreon.com/feross"
-        },
-        {
-          "type": "consulting",
-          "url": "https://feross.org/support"
-        }
-      ]
-    },
-    "node_modules/hash-sum": {
+    "hash-sum": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
       "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==",
       "dev": true
     },
-    "node_modules/hash.js": {
+    "hash.js": {
       "version": "1.1.7",
       "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
       "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "^2.0.3",
         "minimalistic-assert": "^1.0.1"
       }
     },
-    "node_modules/he": {
+    "he": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
       "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
-      "dev": true,
-      "bin": {
-        "he": "bin/he"
-      }
+      "dev": true
     },
-    "node_modules/hex-color-regex": {
+    "hex-color-regex": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz",
       "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==",
       "dev": true
     },
-    "node_modules/highlight.js": {
+    "highlight.js": {
       "version": "10.7.3",
       "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz",
       "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==",
-      "dev": true,
-      "engines": {
-        "node": "*"
-      }
+      "dev": true
     },
-    "node_modules/hmac-drbg": {
+    "hmac-drbg": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
       "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "hash.js": "^1.0.3",
         "minimalistic-assert": "^1.0.0",
         "minimalistic-crypto-utils": "^1.0.1"
       }
     },
-    "node_modules/hoopy": {
+    "hoopy": {
       "version": "0.1.4",
       "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz",
       "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==",
-      "dev": true,
-      "engines": {
-        "node": ">= 6.0.0"
-      }
+      "dev": true
     },
-    "node_modules/hosted-git-info": {
+    "hosted-git-info": {
       "version": "2.8.9",
       "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
       "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
       "dev": true
     },
-    "node_modules/hpack.js": {
+    "hpack.js": {
       "version": "2.1.6",
       "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz",
       "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "^2.0.1",
         "obuf": "^1.0.0",
         "readable-stream": "^2.0.1",
         "wbuf": "^1.1.0"
       }
     },
-    "node_modules/hsl-regex": {
+    "hsl-regex": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz",
       "integrity": "sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==",
       "dev": true
     },
-    "node_modules/hsla-regex": {
+    "hsla-regex": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz",
       "integrity": "sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==",
       "dev": true
     },
-    "node_modules/html-entities": {
+    "html-entities": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz",
       "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==",
       "dev": true
     },
-    "node_modules/html-minifier": {
+    "html-minifier": {
       "version": "3.5.21",
       "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz",
       "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "camel-case": "3.0.x",
         "clean-css": "4.2.x",
         "commander": "2.17.x",
@@ -7984,35 +6315,27 @@
         "relateurl": "0.2.x",
         "uglify-js": "3.4.x"
       },
-      "bin": {
-        "html-minifier": "cli.js"
-      },
-      "engines": {
-        "node": ">=4"
+      "dependencies": {
+        "commander": {
+          "version": "2.17.1",
+          "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
+          "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
+          "dev": true
+        }
       }
     },
-    "node_modules/html-minifier/node_modules/commander": {
-      "version": "2.17.1",
-      "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
-      "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
-      "dev": true
-    },
-    "node_modules/html-tags": {
+    "html-tags": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-2.0.0.tgz",
       "integrity": "sha512-+Il6N8cCo2wB/Vd3gqy/8TZhTD3QvcVeQLCnZiGkGCH3JP28IgGAY41giccp2W4R3jfyJPAP318FQTa1yU7K7g==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/html-webpack-plugin": {
+    "html-webpack-plugin": {
       "version": "3.2.0",
       "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz",
       "integrity": "sha512-Br4ifmjQojUP4EmHnRBoUIYcZ9J7M4bTMcm7u6xoIAIuq2Nte4TzXX0533owvkQKQD1WeMTTTyD4Ni4QKxS0Bg==",
-      "deprecated": "3.x is no longer supported",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "html-minifier": "^3.2.3",
         "loader-utils": "^0.2.16",
         "lodash": "^4.17.3",
@@ -8021,486 +6344,378 @@
         "toposort": "^1.0.0",
         "util.promisify": "1.0.0"
       },
-      "engines": {
-        "node": ">=6.9"
-      },
-      "peerDependencies": {
-        "webpack": "^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0"
-      }
-    },
-    "node_modules/html-webpack-plugin/node_modules/big.js": {
-      "version": "3.2.0",
-      "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz",
-      "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==",
-      "dev": true,
-      "engines": {
-        "node": "*"
-      }
-    },
-    "node_modules/html-webpack-plugin/node_modules/emojis-list": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz",
-      "integrity": "sha512-knHEZMgs8BB+MInokmNTg/OyPlAddghe1YBgNwJBc5zsJi/uyIcXoSDsL/W9ymOsBoBGdPIHXYJ9+qKFwRwDng==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.10"
-      }
-    },
-    "node_modules/html-webpack-plugin/node_modules/json5": {
-      "version": "0.5.1",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
-      "integrity": "sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==",
-      "dev": true,
-      "bin": {
-        "json5": "lib/cli.js"
-      }
-    },
-    "node_modules/html-webpack-plugin/node_modules/loader-utils": {
-      "version": "0.2.17",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
-      "integrity": "sha512-tiv66G0SmiOx+pLWMtGEkfSEejxvb6N6uRrQjfWJIT79W9GMpgKeCAmm9aVBKtd4WEgntciI8CsGqjpDoCWJug==",
-      "dev": true,
       "dependencies": {
-        "big.js": "^3.1.3",
-        "emojis-list": "^2.0.0",
-        "json5": "^0.5.0",
-        "object-assign": "^4.0.1"
+        "big.js": {
+          "version": "3.2.0",
+          "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz",
+          "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==",
+          "dev": true
+        },
+        "emojis-list": {
+          "version": "2.1.0",
+          "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz",
+          "integrity": "sha512-knHEZMgs8BB+MInokmNTg/OyPlAddghe1YBgNwJBc5zsJi/uyIcXoSDsL/W9ymOsBoBGdPIHXYJ9+qKFwRwDng==",
+          "dev": true
+        },
+        "json5": {
+          "version": "0.5.1",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
+          "integrity": "sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==",
+          "dev": true
+        },
+        "loader-utils": {
+          "version": "0.2.17",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
+          "integrity": "sha512-tiv66G0SmiOx+pLWMtGEkfSEejxvb6N6uRrQjfWJIT79W9GMpgKeCAmm9aVBKtd4WEgntciI8CsGqjpDoCWJug==",
+          "dev": true,
+          "requires": {
+            "big.js": "^3.1.3",
+            "emojis-list": "^2.0.0",
+            "json5": "^0.5.0",
+            "object-assign": "^4.0.1"
+          }
+        },
+        "util.promisify": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz",
+          "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==",
+          "dev": true,
+          "requires": {
+            "define-properties": "^1.1.2",
+            "object.getownpropertydescriptors": "^2.0.3"
+          }
+        }
       }
     },
-    "node_modules/html-webpack-plugin/node_modules/util.promisify": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz",
-      "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==",
-      "dev": true,
-      "dependencies": {
-        "define-properties": "^1.1.2",
-        "object.getownpropertydescriptors": "^2.0.3"
-      }
-    },
-    "node_modules/htmlparser2": {
+    "htmlparser2": {
       "version": "6.1.0",
       "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz",
       "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==",
       "dev": true,
-      "funding": [
-        "https://github.com/fb55/htmlparser2?sponsor=1",
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/fb55"
-        }
-      ],
-      "dependencies": {
+      "requires": {
         "domelementtype": "^2.0.1",
         "domhandler": "^4.0.0",
         "domutils": "^2.5.2",
         "entities": "^2.0.0"
-      }
-    },
-    "node_modules/htmlparser2/node_modules/dom-serializer": {
-      "version": "1.4.1",
-      "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz",
-      "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==",
-      "dev": true,
-      "dependencies": {
-        "domelementtype": "^2.0.1",
-        "domhandler": "^4.2.0",
-        "entities": "^2.0.0"
       },
-      "funding": {
-        "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
-      }
-    },
-    "node_modules/htmlparser2/node_modules/domelementtype": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
-      "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/fb55"
+      "dependencies": {
+        "dom-serializer": {
+          "version": "1.4.1",
+          "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz",
+          "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==",
+          "dev": true,
+          "requires": {
+            "domelementtype": "^2.0.1",
+            "domhandler": "^4.2.0",
+            "entities": "^2.0.0"
+          }
+        },
+        "domelementtype": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
+          "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
+          "dev": true
+        },
+        "domutils": {
+          "version": "2.8.0",
+          "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz",
+          "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==",
+          "dev": true,
+          "requires": {
+            "dom-serializer": "^1.0.1",
+            "domelementtype": "^2.2.0",
+            "domhandler": "^4.2.0"
+          }
         }
-      ]
-    },
-    "node_modules/htmlparser2/node_modules/domutils": {
-      "version": "2.8.0",
-      "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz",
-      "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==",
-      "dev": true,
-      "dependencies": {
-        "dom-serializer": "^1.0.1",
-        "domelementtype": "^2.2.0",
-        "domhandler": "^4.2.0"
-      },
-      "funding": {
-        "url": "https://github.com/fb55/domutils?sponsor=1"
       }
     },
-    "node_modules/http-deceiver": {
+    "http-deceiver": {
       "version": "1.2.7",
       "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz",
       "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==",
       "dev": true
     },
-    "node_modules/http-errors": {
+    "http-errors": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
       "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "depd": "2.0.0",
         "inherits": "2.0.4",
         "setprototypeof": "1.2.0",
         "statuses": "2.0.1",
         "toidentifier": "1.0.1"
-      },
-      "engines": {
-        "node": ">= 0.8"
       }
     },
-    "node_modules/http-parser-js": {
+    "http-parser-js": {
       "version": "0.5.8",
       "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz",
       "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==",
       "dev": true
     },
-    "node_modules/http-proxy": {
+    "http-proxy": {
       "version": "1.18.1",
       "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz",
       "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "eventemitter3": "^4.0.0",
         "follow-redirects": "^1.0.0",
         "requires-port": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=8.0.0"
       }
     },
-    "node_modules/http-proxy-middleware": {
+    "http-proxy-middleware": {
       "version": "0.19.1",
       "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz",
       "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "http-proxy": "^1.17.0",
         "is-glob": "^4.0.0",
         "lodash": "^4.17.11",
         "micromatch": "^3.1.10"
-      },
-      "engines": {
-        "node": ">=4.0.0"
       }
     },
-    "node_modules/http-signature": {
+    "http-signature": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
       "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==",
-      "dependencies": {
+      "requires": {
         "assert-plus": "^1.0.0",
         "jsprim": "^1.2.2",
         "sshpk": "^1.7.0"
-      },
-      "engines": {
-        "node": ">=0.8",
-        "npm": ">=1.3.7"
       }
     },
-    "node_modules/https-browserify": {
+    "https-browserify": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
       "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==",
       "dev": true
     },
-    "node_modules/human-signals": {
+    "human-signals": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
       "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
-      "dev": true,
-      "engines": {
-        "node": ">=8.12.0"
-      }
+      "dev": true
     },
-    "node_modules/iconv-lite": {
+    "iconv-lite": {
       "version": "0.4.24",
       "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
       "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "safer-buffer": ">= 2.1.2 < 3"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/icss-replace-symbols": {
+    "icss-replace-symbols": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz",
       "integrity": "sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==",
       "dev": true
     },
-    "node_modules/icss-utils": {
+    "icss-utils": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-2.1.0.tgz",
       "integrity": "sha512-bsVoyn/1V4R1kYYjLcWLedozAM4FClZUdjE9nIr8uWY7xs78y9DATgwz2wGU7M+7z55KenmmTkN2DVJ7bqzjAA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^6.0.1"
-      }
-    },
-    "node_modules/icss-utils/node_modules/postcss": {
-      "version": "6.0.23",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
-      "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
-      "dev": true,
-      "dependencies": {
-        "chalk": "^2.4.1",
-        "source-map": "^0.6.1",
-        "supports-color": "^5.4.0"
       },
-      "engines": {
-        "node": ">=4.0.0"
+      "dependencies": {
+        "postcss": {
+          "version": "6.0.23",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
+          "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
+          "dev": true,
+          "requires": {
+            "chalk": "^2.4.1",
+            "source-map": "^0.6.1",
+            "supports-color": "^5.4.0"
+          }
+        }
       }
     },
-    "node_modules/ieee754": {
+    "ieee754": {
       "version": "1.2.1",
       "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
       "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/feross"
-        },
-        {
-          "type": "patreon",
-          "url": "https://www.patreon.com/feross"
-        },
-        {
-          "type": "consulting",
-          "url": "https://feross.org/support"
-        }
-      ]
+      "dev": true
     },
-    "node_modules/iferr": {
+    "iferr": {
       "version": "0.1.5",
       "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz",
       "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==",
       "dev": true
     },
-    "node_modules/ignore": {
+    "ignore": {
       "version": "3.3.10",
       "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz",
       "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==",
       "dev": true
     },
-    "node_modules/import-cwd": {
+    "import-cwd": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz",
       "integrity": "sha512-Ew5AZzJQFqrOV5BTW3EIoHAnoie1LojZLXKcCQ/yTRyVZosBhK1x1ViYjHGf5pAFOq8ZyChZp6m/fSN7pJyZtg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "import-from": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/import-fresh": {
+    "import-fresh": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz",
       "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "caller-path": "^2.0.0",
         "resolve-from": "^3.0.0"
       },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/import-fresh/node_modules/caller-path": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz",
-      "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==",
-      "dev": true,
       "dependencies": {
-        "caller-callsite": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=4"
+        "caller-path": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz",
+          "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==",
+          "dev": true,
+          "requires": {
+            "caller-callsite": "^2.0.0"
+          }
+        },
+        "resolve-from": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
+          "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/import-fresh/node_modules/resolve-from": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
-      "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/import-from": {
+    "import-from": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz",
       "integrity": "sha512-0vdnLL2wSGnhlRmzHJAg5JHjt1l2vYhzJ7tNLGbeVg0fse56tpGaH0uzH+r9Slej+BSXXEHvBKDEnVSLLE9/+w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "resolve-from": "^3.0.0"
       },
-      "engines": {
-        "node": ">=4"
+      "dependencies": {
+        "resolve-from": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
+          "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/import-from/node_modules/resolve-from": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
-      "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/import-local": {
+    "import-local": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz",
       "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "pkg-dir": "^3.0.0",
         "resolve-cwd": "^2.0.0"
       },
-      "bin": {
-        "import-local-fixture": "fixtures/cli.js"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/import-local/node_modules/find-up": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
-      "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
-      "dev": true,
       "dependencies": {
-        "locate-path": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
+        "find-up": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+          "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+          "dev": true,
+          "requires": {
+            "locate-path": "^3.0.0"
+          }
+        },
+        "locate-path": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+          "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+          "dev": true,
+          "requires": {
+            "p-locate": "^3.0.0",
+            "path-exists": "^3.0.0"
+          }
+        },
+        "p-limit": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+          "dev": true,
+          "requires": {
+            "p-try": "^2.0.0"
+          }
+        },
+        "p-locate": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+          "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+          "dev": true,
+          "requires": {
+            "p-limit": "^2.0.0"
+          }
+        },
+        "p-try": {
+          "version": "2.2.0",
+          "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+          "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+          "dev": true
+        },
+        "pkg-dir": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
+          "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
+          "dev": true,
+          "requires": {
+            "find-up": "^3.0.0"
+          }
+        }
       }
     },
-    "node_modules/import-local/node_modules/locate-path": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
-      "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
-      "dev": true,
-      "dependencies": {
-        "p-locate": "^3.0.0",
-        "path-exists": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/import-local/node_modules/p-limit": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
-      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
-      "dev": true,
-      "dependencies": {
-        "p-try": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/import-local/node_modules/p-locate": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
-      "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
-      "dev": true,
-      "dependencies": {
-        "p-limit": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/import-local/node_modules/p-try": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
-      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/import-local/node_modules/pkg-dir": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
-      "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
-      "dev": true,
-      "dependencies": {
-        "find-up": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/imurmurhash": {
+    "imurmurhash": {
       "version": "0.1.4",
       "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
       "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.8.19"
-      }
+      "dev": true
     },
-    "node_modules/indent-string": {
+    "indent-string": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
       "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
+      "dev": true
     },
-    "node_modules/indexes-of": {
+    "indexes-of": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz",
       "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==",
       "dev": true
     },
-    "node_modules/infer-owner": {
+    "infer-owner": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz",
       "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==",
       "dev": true
     },
-    "node_modules/inflight": {
+    "inflight": {
       "version": "1.0.6",
       "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
       "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
-      "dependencies": {
+      "requires": {
         "once": "^1.3.0",
         "wrappy": "1"
       }
     },
-    "node_modules/inherits": {
+    "inherits": {
       "version": "2.0.4",
       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
       "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
     },
-    "node_modules/inquirer": {
+    "inquirer": {
       "version": "3.3.0",
       "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz",
       "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "ansi-escapes": "^3.0.0",
         "chalk": "^2.0.0",
         "cli-cursor": "^2.1.0",
@@ -8515,292 +6730,219 @@
         "string-width": "^2.1.0",
         "strip-ansi": "^4.0.0",
         "through": "^2.3.6"
-      }
-    },
-    "node_modules/inquirer/node_modules/ansi-regex": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz",
-      "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/inquirer/node_modules/is-fullwidth-code-point": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
-      "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/inquirer/node_modules/string-width": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
-      "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
-      "dev": true,
-      "dependencies": {
-        "is-fullwidth-code-point": "^2.0.0",
-        "strip-ansi": "^4.0.0"
       },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/inquirer/node_modules/strip-ansi": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
-      "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==",
-      "dev": true,
       "dependencies": {
-        "ansi-regex": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=4"
+        "ansi-regex": {
+          "version": "3.0.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz",
+          "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==",
+          "dev": true,
+          "optional": true
+        },
+        "is-fullwidth-code-point": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+          "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+          "dev": true,
+          "optional": true
+        },
+        "string-width": {
+          "version": "2.1.1",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
+          "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "is-fullwidth-code-point": "^2.0.0",
+            "strip-ansi": "^4.0.0"
+          }
+        },
+        "strip-ansi": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
+          "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ansi-regex": "^3.0.0"
+          }
+        }
       }
     },
-    "node_modules/internal-ip": {
+    "internal-ip": {
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz",
       "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "default-gateway": "^4.2.0",
         "ipaddr.js": "^1.9.0"
       },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/internal-ip/node_modules/default-gateway": {
-      "version": "4.2.0",
-      "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz",
-      "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==",
-      "dev": true,
       "dependencies": {
-        "execa": "^1.0.0",
-        "ip-regex": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=6"
+        "default-gateway": {
+          "version": "4.2.0",
+          "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz",
+          "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==",
+          "dev": true,
+          "requires": {
+            "execa": "^1.0.0",
+            "ip-regex": "^2.1.0"
+          }
+        }
       }
     },
-    "node_modules/internal-slot": {
+    "internal-slot": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz",
       "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "get-intrinsic": "^1.2.0",
         "has": "^1.0.3",
         "side-channel": "^1.0.4"
-      },
-      "engines": {
-        "node": ">= 0.4"
       }
     },
-    "node_modules/invariant": {
+    "invariant": {
       "version": "2.2.4",
       "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
       "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "loose-envify": "^1.0.0"
       }
     },
-    "node_modules/ip": {
+    "ip": {
       "version": "1.1.8",
       "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz",
       "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==",
       "dev": true
     },
-    "node_modules/ip-regex": {
+    "ip-regex": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz",
       "integrity": "sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/ipaddr.js": {
+    "ipaddr.js": {
       "version": "1.9.1",
       "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
       "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.10"
-      }
+      "dev": true
     },
-    "node_modules/is-absolute-url": {
+    "is-absolute-url": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz",
       "integrity": "sha512-vOx7VprsKyllwjSkLV79NIhpyLfr3jAp7VaTCMXOJHu4m0Ew1CZ2fcjASwmV1jI3BWuWHB013M48eyeldk9gYg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/is-accessor-descriptor": {
+    "is-accessor-descriptor": {
       "version": "0.1.6",
       "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
       "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "kind-of": "^3.0.2"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/is-accessor-descriptor/node_modules/is-buffer": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
-      "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
-      "dev": true
-    },
-    "node_modules/is-accessor-descriptor/node_modules/kind-of": {
-      "version": "3.2.2",
-      "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
-      "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
-      "dev": true,
       "dependencies": {
-        "is-buffer": "^1.1.5"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "is-buffer": {
+          "version": "1.1.6",
+          "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+          "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+          "dev": true
+        },
+        "kind-of": {
+          "version": "3.2.2",
+          "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+          "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+          "dev": true,
+          "requires": {
+            "is-buffer": "^1.1.5"
+          }
+        }
       }
     },
-    "node_modules/is-arguments": {
+    "is-arguments": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
       "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "has-tostringtag": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-array-buffer": {
+    "is-array-buffer": {
       "version": "3.0.2",
       "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
       "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "get-intrinsic": "^1.2.0",
         "is-typed-array": "^1.1.10"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-arrayish": {
+    "is-arrayish": {
       "version": "0.2.1",
       "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
       "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
       "dev": true
     },
-    "node_modules/is-bigint": {
+    "is-bigint": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
       "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has-bigints": "^1.0.1"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-binary-path": {
+    "is-binary-path": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
       "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
       "dev": true,
       "optional": true,
-      "dependencies": {
+      "requires": {
         "binary-extensions": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=8"
       }
     },
-    "node_modules/is-boolean-object": {
+    "is-boolean-object": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
       "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "has-tostringtag": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-buffer": {
+    "is-buffer": {
       "version": "2.0.5",
       "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz",
-      "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==",
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/feross"
-        },
-        {
-          "type": "patreon",
-          "url": "https://www.patreon.com/feross"
-        },
-        {
-          "type": "consulting",
-          "url": "https://feross.org/support"
-        }
-      ],
-      "engines": {
-        "node": ">=4"
-      }
+      "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ=="
     },
-    "node_modules/is-callable": {
+    "is-callable": {
       "version": "1.2.7",
       "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
       "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/is-ci": {
+    "is-ci": {
       "version": "1.2.1",
       "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz",
       "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "ci-info": "^1.5.0"
-      },
-      "bin": {
-        "is-ci": "bin.js"
       }
     },
-    "node_modules/is-color-stop": {
+    "is-color-stop": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz",
       "integrity": "sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "css-color-names": "^0.0.4",
         "hex-color-regex": "^1.1.0",
         "hsl-regex": "^1.0.0",
@@ -8809,943 +6951,743 @@
         "rgba-regex": "^1.0.0"
       }
     },
-    "node_modules/is-core-module": {
+    "is-core-module": {
       "version": "2.12.0",
       "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz",
       "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has": "^1.0.3"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-data-descriptor": {
+    "is-data-descriptor": {
       "version": "0.1.4",
       "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
       "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "kind-of": "^3.0.2"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/is-data-descriptor/node_modules/is-buffer": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
-      "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
-      "dev": true
-    },
-    "node_modules/is-data-descriptor/node_modules/kind-of": {
-      "version": "3.2.2",
-      "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
-      "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
-      "dev": true,
       "dependencies": {
-        "is-buffer": "^1.1.5"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "is-buffer": {
+          "version": "1.1.6",
+          "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+          "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+          "dev": true
+        },
+        "kind-of": {
+          "version": "3.2.2",
+          "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+          "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+          "dev": true,
+          "requires": {
+            "is-buffer": "^1.1.5"
+          }
+        }
       }
     },
-    "node_modules/is-date-object": {
+    "is-date-object": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
       "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has-tostringtag": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-descriptor": {
+    "is-descriptor": {
       "version": "0.1.6",
       "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
       "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-accessor-descriptor": "^0.1.6",
         "is-data-descriptor": "^0.1.4",
         "kind-of": "^5.0.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
+      "dependencies": {
+        "kind-of": {
+          "version": "5.1.0",
+          "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+          "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/is-descriptor/node_modules/kind-of": {
-      "version": "5.1.0",
-      "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
-      "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/is-directory": {
+    "is-directory": {
       "version": "0.3.1",
       "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz",
       "integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/is-docker": {
+    "is-docker": {
       "version": "2.2.1",
       "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
       "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
-      "dev": true,
-      "bin": {
-        "is-docker": "cli.js"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
+      "dev": true
     },
-    "node_modules/is-extendable": {
+    "is-extendable": {
       "version": "0.1.1",
       "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
       "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/is-extglob": {
+    "is-extglob": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
       "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/is-fullwidth-code-point": {
+    "is-fullwidth-code-point": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
       "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==",
-      "dependencies": {
+      "requires": {
         "number-is-nan": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/is-glob": {
+    "is-glob": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
       "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-extglob": "^2.1.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/is-negative-zero": {
+    "is-negative-zero": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
       "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/is-number": {
+    "is-number": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
       "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "kind-of": "^3.0.2"
       },
-      "engines": {
-        "node": ">=0.10.0"
+      "dependencies": {
+        "is-buffer": {
+          "version": "1.1.6",
+          "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+          "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+          "dev": true
+        },
+        "kind-of": {
+          "version": "3.2.2",
+          "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+          "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+          "dev": true,
+          "requires": {
+            "is-buffer": "^1.1.5"
+          }
+        }
       }
     },
-    "node_modules/is-number-object": {
+    "is-number-object": {
       "version": "1.0.7",
       "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
       "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has-tostringtag": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-number/node_modules/is-buffer": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
-      "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
-      "dev": true
-    },
-    "node_modules/is-number/node_modules/kind-of": {
-      "version": "3.2.2",
-      "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
-      "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
-      "dev": true,
-      "dependencies": {
-        "is-buffer": "^1.1.5"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/is-obj": {
+    "is-obj": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
       "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
+      "dev": true
     },
-    "node_modules/is-path-cwd": {
+    "is-path-cwd": {
       "version": "2.2.0",
       "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz",
       "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/is-path-in-cwd": {
+    "is-path-in-cwd": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz",
       "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-path-inside": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=6"
       }
     },
-    "node_modules/is-path-inside": {
+    "is-path-inside": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz",
       "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "path-is-inside": "^1.0.2"
-      },
-      "engines": {
-        "node": ">=6"
       }
     },
-    "node_modules/is-plain-obj": {
+    "is-plain-obj": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
       "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/is-plain-object": {
+    "is-plain-object": {
       "version": "2.0.4",
       "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
       "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "isobject": "^3.0.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/is-regex": {
+    "is-regex": {
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
       "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "has-tostringtag": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-resolvable": {
+    "is-resolvable": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz",
       "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==",
       "dev": true
     },
-    "node_modules/is-shared-array-buffer": {
+    "is-shared-array-buffer": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
       "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-stream": {
+    "is-stream": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
       "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/is-string": {
+    "is-string": {
       "version": "1.0.7",
       "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
       "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has-tostringtag": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-symbol": {
+    "is-symbol": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
       "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has-symbols": "^1.0.2"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-typed-array": {
+    "is-typed-array": {
       "version": "1.1.10",
       "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz",
       "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "available-typed-arrays": "^1.0.5",
         "call-bind": "^1.0.2",
         "for-each": "^0.3.3",
         "gopd": "^1.0.1",
         "has-tostringtag": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-typedarray": {
+    "is-typedarray": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
       "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA=="
     },
-    "node_modules/is-weakref": {
+    "is-weakref": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
       "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/is-windows": {
+    "is-windows": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
       "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/is-wsl": {
+    "is-wsl": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
       "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/isarray": {
+    "isarray": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
       "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ=="
     },
-    "node_modules/isexe": {
+    "isexe": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
       "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
     },
-    "node_modules/isobject": {
+    "isobject": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
       "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/isstream": {
+    "isstream": {
       "version": "0.1.2",
       "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
       "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g=="
     },
-    "node_modules/javascript-stringify": {
+    "javascript-stringify": {
       "version": "1.6.0",
       "resolved": "https://registry.npmjs.org/javascript-stringify/-/javascript-stringify-1.6.0.tgz",
       "integrity": "sha512-fnjC0up+0SjEJtgmmG+teeel68kutkvzfctO/KxE3qJlbunkJYAshgH3boU++gSBHP8z5/r0ts0qRIrHf0RTQQ==",
       "dev": true
     },
-    "node_modules/js-base64": {
+    "js-base64": {
       "version": "2.6.4",
       "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz",
       "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ=="
     },
-    "node_modules/js-cookie": {
+    "js-cookie": {
       "version": "2.2.1",
       "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz",
       "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ=="
     },
-    "node_modules/js-levenshtein": {
+    "js-levenshtein": {
       "version": "1.1.6",
       "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz",
       "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/js-md5": {
+    "js-md5": {
       "version": "0.7.3",
       "resolved": "https://registry.npmjs.org/js-md5/-/js-md5-0.7.3.tgz",
       "integrity": "sha512-ZC41vPSTLKGwIRjqDh8DfXoCrdQIyBgspJVPXHBGu4nZlAEvG3nf+jO9avM9RmLiGakg7vz974ms99nEV0tmTQ=="
     },
-    "node_modules/js-message": {
+    "js-message": {
       "version": "1.0.7",
       "resolved": "https://registry.npmjs.org/js-message/-/js-message-1.0.7.tgz",
       "integrity": "sha512-efJLHhLjIyKRewNS9EGZ4UpI8NguuL6fKkhRxVuMmrGV2xN/0APGdQYwLFky5w9naebSZ0OwAGp0G6/2Cg90rA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.6.0"
-      }
+      "dev": true
     },
-    "node_modules/js-queue": {
+    "js-pinyin": {
+      "version": "0.2.4",
+      "resolved": "https://registry.npmjs.org/js-pinyin/-/js-pinyin-0.2.4.tgz",
+      "integrity": "sha512-JyWqZqdypu5R8QqTHRV/w6Y+3sxFqiTrnbodAj0d5SwfHIHg0gJBmsXv+kXd6NHkHrk37VrQ7WaAwungX+Ny0Q=="
+    },
+    "js-queue": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/js-queue/-/js-queue-2.0.2.tgz",
       "integrity": "sha512-pbKLsbCfi7kriM3s1J4DDCo7jQkI58zPLHi0heXPzPlj0hjUsm+FesPUbE0DSbIVIK503A36aUBoCN7eMFedkA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "easy-stack": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=1.0.0"
       }
     },
-    "node_modules/js-tokens": {
+    "js-tokens": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
       "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
       "dev": true
     },
-    "node_modules/js-yaml": {
+    "js-yaml": {
       "version": "3.14.1",
       "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
       "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "argparse": "^1.0.7",
         "esprima": "^4.0.0"
-      },
-      "bin": {
-        "js-yaml": "bin/js-yaml.js"
       }
     },
-    "node_modules/jsbn": {
+    "jsbn": {
       "version": "0.1.1",
       "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
       "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg=="
     },
-    "node_modules/jsesc": {
+    "jsesc": {
       "version": "2.5.2",
       "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
       "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
-      "dev": true,
-      "bin": {
-        "jsesc": "bin/jsesc"
-      },
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/json-parse-better-errors": {
+    "json-parse-better-errors": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
       "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
       "dev": true
     },
-    "node_modules/json-parse-even-better-errors": {
+    "json-parse-even-better-errors": {
       "version": "2.3.1",
       "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
       "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
       "dev": true
     },
-    "node_modules/json-schema": {
+    "json-schema": {
       "version": "0.4.0",
       "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz",
       "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA=="
     },
-    "node_modules/json-schema-traverse": {
+    "json-schema-traverse": {
       "version": "0.4.1",
       "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
       "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
     },
-    "node_modules/json-stable-stringify-without-jsonify": {
+    "json-stable-stringify-without-jsonify": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
       "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/json-stringify-safe": {
+    "json-stringify-safe": {
       "version": "5.0.1",
       "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
       "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA=="
     },
-    "node_modules/json5": {
+    "json5": {
       "version": "2.2.3",
       "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
       "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
-      "dev": true,
-      "bin": {
-        "json5": "lib/cli.js"
-      },
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/jsonfile": {
+    "jsonfile": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
       "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
       "dev": true,
-      "optionalDependencies": {
+      "requires": {
         "graceful-fs": "^4.1.6"
       }
     },
-    "node_modules/jsprim": {
+    "jsprim": {
       "version": "1.4.2",
       "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz",
       "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==",
-      "dependencies": {
+      "requires": {
         "assert-plus": "1.0.0",
         "extsprintf": "1.3.0",
         "json-schema": "0.4.0",
         "verror": "1.10.0"
-      },
-      "engines": {
-        "node": ">=0.6.0"
       }
     },
-    "node_modules/killable": {
+    "killable": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz",
       "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==",
       "dev": true
     },
-    "node_modules/kind-of": {
+    "kind-of": {
       "version": "6.0.3",
       "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
       "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/klona": {
+    "klona": {
       "version": "2.0.6",
       "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz",
       "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 8"
-      }
+      "dev": true
     },
-    "node_modules/launch-editor": {
+    "launch-editor": {
       "version": "2.6.0",
       "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.0.tgz",
       "integrity": "sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "picocolors": "^1.0.0",
         "shell-quote": "^1.7.3"
       }
     },
-    "node_modules/launch-editor-middleware": {
+    "launch-editor-middleware": {
       "version": "2.6.0",
       "resolved": "https://registry.npmjs.org/launch-editor-middleware/-/launch-editor-middleware-2.6.0.tgz",
       "integrity": "sha512-K2yxgljj5TdCeRN1lBtO3/J26+AIDDDw+04y6VAiZbWcTdBwsYN6RrZBnW5DN/QiSIdKNjKdATLUUluWWFYTIA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "launch-editor": "^2.6.0"
       }
     },
-    "node_modules/levn": {
+    "levn": {
       "version": "0.3.0",
       "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
       "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "prelude-ls": "~1.1.2",
         "type-check": "~0.3.2"
-      },
-      "engines": {
-        "node": ">= 0.8.0"
       }
     },
-    "node_modules/lines-and-columns": {
+    "lines-and-columns": {
       "version": "1.2.4",
       "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
       "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
       "dev": true
     },
-    "node_modules/loader-fs-cache": {
+    "loader-fs-cache": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz",
       "integrity": "sha512-ldcgZpjNJj71n+2Mf6yetz+c9bM4xpKtNds4LbqXzU/PTdeAX0g3ytnU1AJMEcTk2Lex4Smpe3Q/eCTsvUBxbA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "find-cache-dir": "^0.1.1",
         "mkdirp": "^0.5.1"
-      }
-    },
-    "node_modules/loader-fs-cache/node_modules/find-cache-dir": {
-      "version": "0.1.1",
-      "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz",
-      "integrity": "sha512-Z9XSBoNE7xQiV6MSgPuCfyMokH2K7JdpRkOYE1+mu3d4BFJtx3GW+f6Bo4q8IX6rlf5MYbLBKW0pjl2cWdkm2A==",
-      "dev": true,
-      "dependencies": {
-        "commondir": "^1.0.1",
-        "mkdirp": "^0.5.1",
-        "pkg-dir": "^1.0.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/loader-fs-cache/node_modules/find-up": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
-      "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==",
-      "dev": true,
       "dependencies": {
-        "path-exists": "^2.0.0",
-        "pinkie-promise": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "find-cache-dir": {
+          "version": "0.1.1",
+          "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz",
+          "integrity": "sha512-Z9XSBoNE7xQiV6MSgPuCfyMokH2K7JdpRkOYE1+mu3d4BFJtx3GW+f6Bo4q8IX6rlf5MYbLBKW0pjl2cWdkm2A==",
+          "dev": true,
+          "requires": {
+            "commondir": "^1.0.1",
+            "mkdirp": "^0.5.1",
+            "pkg-dir": "^1.0.0"
+          }
+        },
+        "find-up": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
+          "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==",
+          "dev": true,
+          "requires": {
+            "path-exists": "^2.0.0",
+            "pinkie-promise": "^2.0.0"
+          }
+        },
+        "path-exists": {
+          "version": "2.1.0",
+          "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
+          "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==",
+          "dev": true,
+          "requires": {
+            "pinkie-promise": "^2.0.0"
+          }
+        },
+        "pkg-dir": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz",
+          "integrity": "sha512-c6pv3OE78mcZ92ckebVDqg0aWSoKhOTbwCV6qbCWMk546mAL9pZln0+QsN/yQ7fkucd4+yJPLrCBXNt8Ruk+Eg==",
+          "dev": true,
+          "requires": {
+            "find-up": "^1.0.0"
+          }
+        }
       }
     },
-    "node_modules/loader-fs-cache/node_modules/path-exists": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
-      "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==",
-      "dev": true,
-      "dependencies": {
-        "pinkie-promise": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/loader-fs-cache/node_modules/pkg-dir": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz",
-      "integrity": "sha512-c6pv3OE78mcZ92ckebVDqg0aWSoKhOTbwCV6qbCWMk546mAL9pZln0+QsN/yQ7fkucd4+yJPLrCBXNt8Ruk+Eg==",
-      "dev": true,
-      "dependencies": {
-        "find-up": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/loader-runner": {
+    "loader-runner": {
       "version": "2.4.0",
       "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz",
       "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4.3.0 <5.0.0 || >=5.10"
-      }
+      "dev": true
     },
-    "node_modules/loader-utils": {
+    "loader-utils": {
       "version": "2.0.4",
       "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
       "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "big.js": "^5.2.2",
         "emojis-list": "^3.0.0",
         "json5": "^2.1.2"
-      },
-      "engines": {
-        "node": ">=8.9.0"
       }
     },
-    "node_modules/locate-path": {
+    "locate-path": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
       "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "p-locate": "^2.0.0",
         "path-exists": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/lodash": {
+    "lodash": {
       "version": "4.17.21",
       "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
       "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
     },
-    "node_modules/lodash.debounce": {
+    "lodash.debounce": {
       "version": "4.0.8",
       "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
       "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==",
       "dev": true
     },
-    "node_modules/lodash.defaultsdeep": {
+    "lodash.defaultsdeep": {
       "version": "4.6.1",
       "resolved": "https://registry.npmjs.org/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.1.tgz",
       "integrity": "sha512-3j8wdDzYuWO3lM3Reg03MuQR957t287Rpcxp1njpEa8oDrikb+FwGdW3n+FELh/A6qib6yPit0j/pv9G/yeAqA==",
       "dev": true
     },
-    "node_modules/lodash.kebabcase": {
+    "lodash.kebabcase": {
       "version": "4.1.1",
       "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz",
       "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==",
       "dev": true
     },
-    "node_modules/lodash.mapvalues": {
+    "lodash.mapvalues": {
       "version": "4.6.0",
       "resolved": "https://registry.npmjs.org/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz",
       "integrity": "sha512-JPFqXFeZQ7BfS00H58kClY7SPVeHertPE0lNuCyZ26/XlN8TvakYD7b9bGyNmXbT/D3BbtPAAmq90gPWqLkxlQ==",
       "dev": true
     },
-    "node_modules/lodash.memoize": {
+    "lodash.memoize": {
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
       "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==",
       "dev": true
     },
-    "node_modules/lodash.transform": {
+    "lodash.transform": {
       "version": "4.6.0",
       "resolved": "https://registry.npmjs.org/lodash.transform/-/lodash.transform-4.6.0.tgz",
       "integrity": "sha512-LO37ZnhmBVx0GvOU/caQuipEh4GN82TcWv3yHlebGDgOxbxiwwzW5Pcx2AcvpIv2WmvmSMoC492yQFNhy/l/UQ==",
       "dev": true
     },
-    "node_modules/lodash.uniq": {
+    "lodash.uniq": {
       "version": "4.5.0",
       "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz",
       "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==",
       "dev": true
     },
-    "node_modules/log-symbols": {
+    "log-symbols": {
       "version": "2.2.0",
       "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz",
       "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "chalk": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/loglevel": {
+    "loglevel": {
       "version": "1.8.1",
       "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz",
       "integrity": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6.0"
-      },
-      "funding": {
-        "type": "tidelift",
-        "url": "https://tidelift.com/funding/github/npm/loglevel"
-      }
+      "dev": true
     },
-    "node_modules/loose-envify": {
+    "loose-envify": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
       "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "js-tokens": "^3.0.0 || ^4.0.0"
-      },
-      "bin": {
-        "loose-envify": "cli.js"
       }
     },
-    "node_modules/loupe": {
+    "loupe": {
       "version": "2.3.6",
       "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz",
       "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "get-func-name": "^2.0.0"
       }
     },
-    "node_modules/lower-case": {
+    "lower-case": {
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz",
       "integrity": "sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==",
       "dev": true
     },
-    "node_modules/lru-cache": {
+    "lru-cache": {
       "version": "5.1.1",
       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
       "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "yallist": "^3.0.2"
       }
     },
-    "node_modules/make-dir": {
+    "make-dir": {
       "version": "3.1.0",
       "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
       "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "semver": "^6.0.0"
       },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
+      "dependencies": {
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/make-dir/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/map-cache": {
+    "map-cache": {
       "version": "0.2.2",
       "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
       "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/map-obj": {
+    "map-obj": {
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz",
       "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
+      "dev": true
     },
-    "node_modules/map-visit": {
+    "map-visit": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
       "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "object-visit": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/md5.js": {
+    "md5.js": {
       "version": "1.3.5",
       "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
       "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "hash-base": "^3.0.0",
         "inherits": "^2.0.1",
         "safe-buffer": "^5.1.2"
       }
     },
-    "node_modules/mdn-data": {
+    "mdn-data": {
       "version": "2.0.4",
       "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz",
       "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==",
       "dev": true
     },
-    "node_modules/media-typer": {
+    "media-typer": {
       "version": "0.3.0",
       "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
       "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "dev": true
     },
-    "node_modules/memory-fs": {
+    "memory-fs": {
       "version": "0.4.1",
       "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz",
       "integrity": "sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "errno": "^0.1.3",
         "readable-stream": "^2.0.1"
       }
     },
-    "node_modules/meow": {
+    "meow": {
       "version": "9.0.0",
       "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz",
       "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@types/minimist": "^1.2.0",
         "camelcase-keys": "^6.2.2",
         "decamelize": "^1.2.0",
@@ -9759,130 +7701,99 @@
         "type-fest": "^0.18.0",
         "yargs-parser": "^20.2.3"
       },
-      "engines": {
-        "node": ">=10"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/meow/node_modules/hosted-git-info": {
-      "version": "4.1.0",
-      "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
-      "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
-      "dev": true,
       "dependencies": {
-        "lru-cache": "^6.0.0"
-      },
-      "engines": {
-        "node": ">=10"
+        "hosted-git-info": {
+          "version": "4.1.0",
+          "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
+          "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
+          "dev": true,
+          "requires": {
+            "lru-cache": "^6.0.0"
+          }
+        },
+        "lru-cache": {
+          "version": "6.0.0",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+          "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+          "dev": true,
+          "requires": {
+            "yallist": "^4.0.0"
+          }
+        },
+        "normalize-package-data": {
+          "version": "3.0.3",
+          "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz",
+          "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==",
+          "dev": true,
+          "requires": {
+            "hosted-git-info": "^4.0.1",
+            "is-core-module": "^2.5.0",
+            "semver": "^7.3.4",
+            "validate-npm-package-license": "^3.0.1"
+          }
+        },
+        "semver": {
+          "version": "7.5.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz",
+          "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==",
+          "dev": true,
+          "requires": {
+            "lru-cache": "^6.0.0"
+          }
+        },
+        "type-fest": {
+          "version": "0.18.1",
+          "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz",
+          "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==",
+          "dev": true
+        },
+        "yallist": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+          "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+          "dev": true
+        }
       }
     },
-    "node_modules/meow/node_modules/lru-cache": {
-      "version": "6.0.0",
-      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
-      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
-      "dev": true,
-      "dependencies": {
-        "yallist": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/meow/node_modules/normalize-package-data": {
-      "version": "3.0.3",
-      "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz",
-      "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==",
-      "dev": true,
-      "dependencies": {
-        "hosted-git-info": "^4.0.1",
-        "is-core-module": "^2.5.0",
-        "semver": "^7.3.4",
-        "validate-npm-package-license": "^3.0.1"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/meow/node_modules/semver": {
-      "version": "7.5.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz",
-      "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==",
-      "dev": true,
-      "dependencies": {
-        "lru-cache": "^6.0.0"
-      },
-      "bin": {
-        "semver": "bin/semver.js"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/meow/node_modules/type-fest": {
-      "version": "0.18.1",
-      "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz",
-      "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==",
-      "dev": true,
-      "engines": {
-        "node": ">=10"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/meow/node_modules/yallist": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
-      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
-      "dev": true
-    },
-    "node_modules/merge-descriptors": {
+    "merge-descriptors": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
       "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==",
       "dev": true
     },
-    "node_modules/merge-source-map": {
+    "merge-source-map": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz",
       "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "source-map": "^0.6.1"
       }
     },
-    "node_modules/merge-stream": {
+    "merge-stream": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
       "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
       "dev": true
     },
-    "node_modules/merge2": {
+    "merge2": {
       "version": "1.4.1",
       "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
       "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 8"
-      }
+      "dev": true
     },
-    "node_modules/methods": {
+    "methods": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
       "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "dev": true
     },
-    "node_modules/micromatch": {
+    "micromatch": {
       "version": "3.1.10",
       "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
       "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "arr-diff": "^4.0.0",
         "array-unique": "^0.3.2",
         "braces": "^2.3.1",
@@ -9896,220 +7807,173 @@
         "regex-not": "^1.0.0",
         "snapdragon": "^0.8.1",
         "to-regex": "^3.0.2"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/miller-rabin": {
+    "miller-rabin": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
       "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bn.js": "^4.0.0",
         "brorand": "^1.0.1"
       },
-      "bin": {
-        "miller-rabin": "bin/miller-rabin"
+      "dependencies": {
+        "bn.js": {
+          "version": "4.12.0",
+          "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+          "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/miller-rabin/node_modules/bn.js": {
-      "version": "4.12.0",
-      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
-      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
-      "dev": true
-    },
-    "node_modules/mime": {
+    "mime": {
       "version": "2.6.0",
       "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz",
       "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==",
-      "dev": true,
-      "bin": {
-        "mime": "cli.js"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
+      "dev": true
     },
-    "node_modules/mime-db": {
+    "mime-db": {
       "version": "1.52.0",
       "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
-      "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
     },
-    "node_modules/mime-types": {
+    "mime-types": {
       "version": "2.1.35",
       "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
       "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
-      "dependencies": {
+      "requires": {
         "mime-db": "1.52.0"
-      },
-      "engines": {
-        "node": ">= 0.6"
       }
     },
-    "node_modules/mimic-fn": {
+    "mimic-fn": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz",
       "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/min-indent": {
+    "min-indent": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
       "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/mini-css-extract-plugin": {
+    "mini-css-extract-plugin": {
       "version": "0.8.2",
       "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.2.tgz",
       "integrity": "sha512-a3Y4of27Wz+mqK3qrcd3VhYz6cU0iW5x3Sgvqzbj+XmlrSizmvu8QQMl5oMYJjgHOC4iyt+w7l4umP+dQeW3bw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "loader-utils": "^1.1.0",
         "normalize-url": "1.9.1",
         "schema-utils": "^1.0.0",
         "webpack-sources": "^1.1.0"
       },
-      "engines": {
-        "node": ">= 6.9.0"
-      },
-      "peerDependencies": {
-        "webpack": "^4.4.0"
-      }
-    },
-    "node_modules/mini-css-extract-plugin/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
       "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        },
+        "normalize-url": {
+          "version": "1.9.1",
+          "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz",
+          "integrity": "sha512-A48My/mtCklowHBlI8Fq2jFWK4tX4lJ5E6ytFsSOq1fzpvT0SQSgKhSg7lN5c2uYFOrUAOQp6zhhJnpp1eMloQ==",
+          "dev": true,
+          "requires": {
+            "object-assign": "^4.0.1",
+            "prepend-http": "^1.0.0",
+            "query-string": "^4.1.0",
+            "sort-keys": "^1.0.0"
+          }
+        },
+        "schema-utils": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
+          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
+          "dev": true,
+          "requires": {
+            "ajv": "^6.1.0",
+            "ajv-errors": "^1.0.0",
+            "ajv-keywords": "^3.1.0"
+          }
+        }
       }
     },
-    "node_modules/mini-css-extract-plugin/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/mini-css-extract-plugin/node_modules/normalize-url": {
-      "version": "1.9.1",
-      "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz",
-      "integrity": "sha512-A48My/mtCklowHBlI8Fq2jFWK4tX4lJ5E6ytFsSOq1fzpvT0SQSgKhSg7lN5c2uYFOrUAOQp6zhhJnpp1eMloQ==",
-      "dev": true,
-      "dependencies": {
-        "object-assign": "^4.0.1",
-        "prepend-http": "^1.0.0",
-        "query-string": "^4.1.0",
-        "sort-keys": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/mini-css-extract-plugin/node_modules/schema-utils": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
-      "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
-      "dev": true,
-      "dependencies": {
-        "ajv": "^6.1.0",
-        "ajv-errors": "^1.0.0",
-        "ajv-keywords": "^3.1.0"
-      },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/minimalistic-assert": {
+    "minimalistic-assert": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
       "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
       "dev": true
     },
-    "node_modules/minimalistic-crypto-utils": {
+    "minimalistic-crypto-utils": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
       "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==",
       "dev": true
     },
-    "node_modules/minimatch": {
+    "minimatch": {
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
       "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
-      "dependencies": {
+      "requires": {
         "brace-expansion": "^1.1.7"
-      },
-      "engines": {
-        "node": "*"
       }
     },
-    "node_modules/minimist": {
+    "minimist": {
       "version": "1.2.8",
       "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
-      "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
     },
-    "node_modules/minimist-options": {
+    "minimist-options": {
       "version": "4.1.0",
       "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz",
       "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "arrify": "^1.0.1",
         "is-plain-obj": "^1.1.0",
         "kind-of": "^6.0.3"
-      },
-      "engines": {
-        "node": ">= 6"
       }
     },
-    "node_modules/minipass": {
+    "minipass": {
       "version": "2.9.0",
       "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz",
       "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==",
-      "dependencies": {
+      "requires": {
         "safe-buffer": "^5.1.2",
         "yallist": "^3.0.0"
       }
     },
-    "node_modules/minizlib": {
+    "minizlib": {
       "version": "1.3.3",
       "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz",
       "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==",
-      "dependencies": {
+      "requires": {
         "minipass": "^2.9.0"
       }
     },
-    "node_modules/mississippi": {
+    "mississippi": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz",
       "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "concat-stream": "^1.5.0",
         "duplexify": "^3.4.2",
         "end-of-stream": "^1.1.0",
@@ -10120,64 +7984,51 @@
         "pumpify": "^1.3.3",
         "stream-each": "^1.1.0",
         "through2": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=4.0.0"
       }
     },
-    "node_modules/mixin-deep": {
+    "mixin-deep": {
       "version": "1.3.2",
       "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
       "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "for-in": "^1.0.2",
         "is-extendable": "^1.0.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/mixin-deep/node_modules/is-extendable": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
-      "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
-      "dev": true,
       "dependencies": {
-        "is-plain-object": "^2.0.4"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "is-extendable": {
+          "version": "1.0.1",
+          "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+          "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+          "dev": true,
+          "requires": {
+            "is-plain-object": "^2.0.4"
+          }
+        }
       }
     },
-    "node_modules/mkdirp": {
+    "mkdirp": {
       "version": "0.5.6",
       "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
       "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
-      "dependencies": {
+      "requires": {
         "minimist": "^1.2.6"
-      },
-      "bin": {
-        "mkdirp": "bin/cmd.js"
       }
     },
-    "node_modules/mockjs": {
+    "mockjs": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/mockjs/-/mockjs-1.1.0.tgz",
       "integrity": "sha512-eQsKcWzIaZzEZ07NuEyO4Nw65g0hdWAyurVol1IPl1gahRwY+svqzfgfey8U8dahLwG44d6/RwEzuK52rSa/JQ==",
-      "dependencies": {
+      "requires": {
         "commander": "*"
-      },
-      "bin": {
-        "random": "bin/random"
       }
     },
-    "node_modules/move-concurrently": {
+    "move-concurrently": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",
       "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "aproba": "^1.1.1",
         "copy-concurrently": "^1.0.0",
         "fs-write-stream-atomic": "^1.0.8",
@@ -10186,76 +8037,62 @@
         "run-queue": "^1.0.3"
       }
     },
-    "node_modules/ms": {
+    "ms": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
       "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
     },
-    "node_modules/multicast-dns": {
+    "multicast-dns": {
       "version": "6.2.3",
       "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz",
       "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "dns-packet": "^1.3.1",
         "thunky": "^1.0.2"
-      },
-      "bin": {
-        "multicast-dns": "cli.js"
       }
     },
-    "node_modules/multicast-dns-service-types": {
+    "multicast-dns-service-types": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz",
       "integrity": "sha512-cnAsSVxIDsYt0v7HmC0hWZFwwXSh+E6PgCrREDuN/EsjgLwA5XRmlMHhSiDPrt6HxY1gTivEa/Zh7GtODoLevQ==",
       "dev": true
     },
-    "node_modules/mute-stream": {
+    "mute-stream": {
       "version": "0.0.7",
       "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
       "integrity": "sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/mz": {
+    "mz": {
       "version": "2.7.0",
       "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz",
       "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "any-promise": "^1.0.0",
         "object-assign": "^4.0.1",
         "thenify-all": "^1.0.0"
       }
     },
-    "node_modules/nan": {
+    "nan": {
       "version": "2.17.0",
       "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz",
       "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==",
       "dev": true
     },
-    "node_modules/nanoid": {
+    "nanoid": {
       "version": "3.3.6",
       "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
-      "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/ai"
-        }
-      ],
-      "bin": {
-        "nanoid": "bin/nanoid.cjs"
-      },
-      "engines": {
-        "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
-      }
+      "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA=="
     },
-    "node_modules/nanomatch": {
+    "nanomatch": {
       "version": "1.2.13",
       "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
       "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "arr-diff": "^4.0.0",
         "array-unique": "^0.3.2",
         "define-property": "^2.0.2",
@@ -10267,61 +8104,53 @@
         "regex-not": "^1.0.0",
         "snapdragon": "^0.8.1",
         "to-regex": "^3.0.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/natural-compare": {
+    "natural-compare": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
       "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/negotiator": {
+    "negotiator": {
       "version": "0.6.3",
       "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
       "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "dev": true
     },
-    "node_modules/neo-async": {
+    "neo-async": {
       "version": "2.6.2",
       "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
       "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
       "dev": true
     },
-    "node_modules/nice-try": {
+    "nice-try": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
       "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
       "dev": true
     },
-    "node_modules/no-case": {
+    "no-case": {
       "version": "2.3.2",
       "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz",
       "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "lower-case": "^1.1.1"
       }
     },
-    "node_modules/node-forge": {
+    "node-forge": {
       "version": "0.10.0",
       "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz",
       "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 6.0.0"
-      }
+      "dev": true
     },
-    "node_modules/node-gyp": {
+    "node-gyp": {
       "version": "5.1.1",
       "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-5.1.1.tgz",
       "integrity": "sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw==",
-      "dependencies": {
+      "requires": {
         "env-paths": "^2.2.0",
         "glob": "^7.1.4",
         "graceful-fs": "^4.2.2",
@@ -10333,34 +8162,25 @@
         "semver": "^5.7.1",
         "tar": "^4.4.12",
         "which": "^1.3.1"
-      },
-      "bin": {
-        "node-gyp": "bin/node-gyp.js"
-      },
-      "engines": {
-        "node": ">= 6.0.0"
       }
     },
-    "node_modules/node-ipc": {
+    "node-ipc": {
       "version": "9.2.1",
       "resolved": "https://registry.npmjs.org/node-ipc/-/node-ipc-9.2.1.tgz",
       "integrity": "sha512-mJzaM6O3xHf9VT8BULvJSbdVbmHUKRNOH7zDDkCrA1/T+CVjq2WVIDfLt0azZRXpgArJtl3rtmEozrbXPZ9GaQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "event-pubsub": "4.3.0",
         "js-message": "1.0.7",
         "js-queue": "2.0.2"
-      },
-      "engines": {
-        "node": ">=8.0.0"
       }
     },
-    "node_modules/node-libs-browser": {
+    "node-libs-browser": {
       "version": "2.2.1",
       "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz",
       "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "assert": "^1.1.1",
         "browserify-zlib": "^0.2.0",
         "buffer": "^4.3.0",
@@ -10384,27 +8204,28 @@
         "url": "^0.11.0",
         "util": "^0.11.0",
         "vm-browserify": "^1.0.1"
+      },
+      "dependencies": {
+        "punycode": {
+          "version": "1.4.1",
+          "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
+          "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/node-libs-browser/node_modules/punycode": {
-      "version": "1.4.1",
-      "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
-      "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==",
-      "dev": true
-    },
-    "node_modules/node-releases": {
+    "node-releases": {
       "version": "2.0.10",
       "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz",
       "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==",
       "dev": true
     },
-    "node_modules/node-sass": {
+    "node-sass": {
       "version": "6.0.1",
       "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-6.0.1.tgz",
       "integrity": "sha512-f+Rbqt92Ful9gX0cGtdYwjTrWAaGURgaK5rZCWOgCNyGWusFYHhbqCCBoFBeat+HKETOU02AyTxNhJV0YZf2jQ==",
       "dev": true,
-      "hasInstallScript": true,
-      "dependencies": {
+      "requires": {
         "async-foreach": "^0.1.3",
         "chalk": "^1.1.1",
         "cross-spawn": "^7.0.3",
@@ -10421,680 +8242,509 @@
         "stdout-stream": "^1.4.0",
         "true-case-path": "^1.0.2"
       },
-      "bin": {
-        "node-sass": "bin/node-sass"
-      },
-      "engines": {
-        "node": ">=12"
-      }
-    },
-    "node_modules/node-sass/node_modules/ansi-styles": {
-      "version": "2.2.1",
-      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
-      "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/node-sass/node_modules/chalk": {
-      "version": "1.1.3",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
-      "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
-      "dev": true,
       "dependencies": {
-        "ansi-styles": "^2.2.1",
-        "escape-string-regexp": "^1.0.2",
-        "has-ansi": "^2.0.0",
-        "strip-ansi": "^3.0.0",
-        "supports-color": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "ansi-styles": {
+          "version": "2.2.1",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+          "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
+          "dev": true
+        },
+        "chalk": {
+          "version": "1.1.3",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+          "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "^2.2.1",
+            "escape-string-regexp": "^1.0.2",
+            "has-ansi": "^2.0.0",
+            "strip-ansi": "^3.0.0",
+            "supports-color": "^2.0.0"
+          }
+        },
+        "chownr": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
+          "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
+          "dev": true
+        },
+        "cross-spawn": {
+          "version": "7.0.3",
+          "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+          "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+          "dev": true,
+          "requires": {
+            "path-key": "^3.1.0",
+            "shebang-command": "^2.0.0",
+            "which": "^2.0.1"
+          }
+        },
+        "fs-minipass": {
+          "version": "2.1.0",
+          "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
+          "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
+          "dev": true,
+          "requires": {
+            "minipass": "^3.0.0"
+          },
+          "dependencies": {
+            "minipass": {
+              "version": "3.3.6",
+              "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+              "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+              "dev": true,
+              "requires": {
+                "yallist": "^4.0.0"
+              }
+            }
+          }
+        },
+        "lru-cache": {
+          "version": "6.0.0",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+          "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+          "dev": true,
+          "requires": {
+            "yallist": "^4.0.0"
+          }
+        },
+        "minipass": {
+          "version": "5.0.0",
+          "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
+          "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
+          "dev": true
+        },
+        "minizlib": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
+          "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
+          "dev": true,
+          "requires": {
+            "minipass": "^3.0.0",
+            "yallist": "^4.0.0"
+          },
+          "dependencies": {
+            "minipass": {
+              "version": "3.3.6",
+              "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+              "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+              "dev": true,
+              "requires": {
+                "yallist": "^4.0.0"
+              }
+            }
+          }
+        },
+        "mkdirp": {
+          "version": "1.0.4",
+          "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+          "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+          "dev": true
+        },
+        "node-gyp": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz",
+          "integrity": "sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ==",
+          "dev": true,
+          "requires": {
+            "env-paths": "^2.2.0",
+            "glob": "^7.1.4",
+            "graceful-fs": "^4.2.3",
+            "nopt": "^5.0.0",
+            "npmlog": "^4.1.2",
+            "request": "^2.88.2",
+            "rimraf": "^3.0.2",
+            "semver": "^7.3.2",
+            "tar": "^6.0.2",
+            "which": "^2.0.2"
+          }
+        },
+        "nopt": {
+          "version": "5.0.0",
+          "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
+          "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
+          "dev": true,
+          "requires": {
+            "abbrev": "1"
+          }
+        },
+        "path-key": {
+          "version": "3.1.1",
+          "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+          "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+          "dev": true
+        },
+        "rimraf": {
+          "version": "3.0.2",
+          "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+          "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+          "dev": true,
+          "requires": {
+            "glob": "^7.1.3"
+          }
+        },
+        "semver": {
+          "version": "7.5.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz",
+          "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==",
+          "dev": true,
+          "requires": {
+            "lru-cache": "^6.0.0"
+          }
+        },
+        "shebang-command": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+          "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+          "dev": true,
+          "requires": {
+            "shebang-regex": "^3.0.0"
+          }
+        },
+        "shebang-regex": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+          "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+          "dev": true
+        },
+        "supports-color": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
+          "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
+          "dev": true
+        },
+        "tar": {
+          "version": "6.1.14",
+          "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.14.tgz",
+          "integrity": "sha512-piERznXu0U7/pW7cdSn7hjqySIVTYT6F76icmFk7ptU7dDYlXTm5r9A6K04R2vU3olYgoKeo1Cg3eeu5nhftAw==",
+          "dev": true,
+          "requires": {
+            "chownr": "^2.0.0",
+            "fs-minipass": "^2.0.0",
+            "minipass": "^5.0.0",
+            "minizlib": "^2.1.1",
+            "mkdirp": "^1.0.3",
+            "yallist": "^4.0.0"
+          }
+        },
+        "which": {
+          "version": "2.0.2",
+          "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+          "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+          "dev": true,
+          "requires": {
+            "isexe": "^2.0.0"
+          }
+        },
+        "yallist": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+          "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+          "dev": true
+        }
       }
     },
-    "node_modules/node-sass/node_modules/chownr": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
-      "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/node-sass/node_modules/cross-spawn": {
-      "version": "7.0.3",
-      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
-      "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
-      "dev": true,
-      "dependencies": {
-        "path-key": "^3.1.0",
-        "shebang-command": "^2.0.0",
-        "which": "^2.0.1"
-      },
-      "engines": {
-        "node": ">= 8"
-      }
-    },
-    "node_modules/node-sass/node_modules/fs-minipass": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
-      "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
-      "dev": true,
-      "dependencies": {
-        "minipass": "^3.0.0"
-      },
-      "engines": {
-        "node": ">= 8"
-      }
-    },
-    "node_modules/node-sass/node_modules/fs-minipass/node_modules/minipass": {
-      "version": "3.3.6",
-      "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
-      "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
-      "dev": true,
-      "dependencies": {
-        "yallist": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/node-sass/node_modules/lru-cache": {
-      "version": "6.0.0",
-      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
-      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
-      "dev": true,
-      "dependencies": {
-        "yallist": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/node-sass/node_modules/minipass": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
-      "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/node-sass/node_modules/minizlib": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
-      "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
-      "dev": true,
-      "dependencies": {
-        "minipass": "^3.0.0",
-        "yallist": "^4.0.0"
-      },
-      "engines": {
-        "node": ">= 8"
-      }
-    },
-    "node_modules/node-sass/node_modules/minizlib/node_modules/minipass": {
-      "version": "3.3.6",
-      "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
-      "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
-      "dev": true,
-      "dependencies": {
-        "yallist": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/node-sass/node_modules/mkdirp": {
-      "version": "1.0.4",
-      "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
-      "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
-      "dev": true,
-      "bin": {
-        "mkdirp": "bin/cmd.js"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/node-sass/node_modules/node-gyp": {
-      "version": "7.1.2",
-      "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz",
-      "integrity": "sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ==",
-      "dev": true,
-      "dependencies": {
-        "env-paths": "^2.2.0",
-        "glob": "^7.1.4",
-        "graceful-fs": "^4.2.3",
-        "nopt": "^5.0.0",
-        "npmlog": "^4.1.2",
-        "request": "^2.88.2",
-        "rimraf": "^3.0.2",
-        "semver": "^7.3.2",
-        "tar": "^6.0.2",
-        "which": "^2.0.2"
-      },
-      "bin": {
-        "node-gyp": "bin/node-gyp.js"
-      },
-      "engines": {
-        "node": ">= 10.12.0"
-      }
-    },
-    "node_modules/node-sass/node_modules/nopt": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
-      "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
-      "dev": true,
-      "dependencies": {
-        "abbrev": "1"
-      },
-      "bin": {
-        "nopt": "bin/nopt.js"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/node-sass/node_modules/path-key": {
-      "version": "3.1.1",
-      "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
-      "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/node-sass/node_modules/rimraf": {
-      "version": "3.0.2",
-      "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
-      "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
-      "dev": true,
-      "dependencies": {
-        "glob": "^7.1.3"
-      },
-      "bin": {
-        "rimraf": "bin.js"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/isaacs"
-      }
-    },
-    "node_modules/node-sass/node_modules/semver": {
-      "version": "7.5.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz",
-      "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==",
-      "dev": true,
-      "dependencies": {
-        "lru-cache": "^6.0.0"
-      },
-      "bin": {
-        "semver": "bin/semver.js"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/node-sass/node_modules/shebang-command": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
-      "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
-      "dev": true,
-      "dependencies": {
-        "shebang-regex": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/node-sass/node_modules/shebang-regex": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
-      "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/node-sass/node_modules/supports-color": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
-      "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.8.0"
-      }
-    },
-    "node_modules/node-sass/node_modules/tar": {
-      "version": "6.1.14",
-      "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.14.tgz",
-      "integrity": "sha512-piERznXu0U7/pW7cdSn7hjqySIVTYT6F76icmFk7ptU7dDYlXTm5r9A6K04R2vU3olYgoKeo1Cg3eeu5nhftAw==",
-      "dev": true,
-      "dependencies": {
-        "chownr": "^2.0.0",
-        "fs-minipass": "^2.0.0",
-        "minipass": "^5.0.0",
-        "minizlib": "^2.1.1",
-        "mkdirp": "^1.0.3",
-        "yallist": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/node-sass/node_modules/which": {
-      "version": "2.0.2",
-      "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
-      "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
-      "dev": true,
-      "dependencies": {
-        "isexe": "^2.0.0"
-      },
-      "bin": {
-        "node-which": "bin/node-which"
-      },
-      "engines": {
-        "node": ">= 8"
-      }
-    },
-    "node_modules/node-sass/node_modules/yallist": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
-      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
-      "dev": true
-    },
-    "node_modules/nopt": {
+    "nopt": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz",
       "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==",
-      "dependencies": {
+      "requires": {
         "abbrev": "1",
         "osenv": "^0.1.4"
-      },
-      "bin": {
-        "nopt": "bin/nopt.js"
       }
     },
-    "node_modules/normalize-package-data": {
+    "normalize-package-data": {
       "version": "2.5.0",
       "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
       "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "hosted-git-info": "^2.1.4",
         "resolve": "^1.10.0",
         "semver": "2 || 3 || 4 || 5",
         "validate-npm-package-license": "^3.0.1"
       }
     },
-    "node_modules/normalize-path": {
+    "normalize-path": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
       "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/normalize-range": {
+    "normalize-range": {
       "version": "0.1.2",
       "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
       "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/normalize-url": {
+    "normalize-url": {
       "version": "3.3.0",
       "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz",
       "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/normalize-wheel": {
+    "normalize-wheel": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/normalize-wheel/-/normalize-wheel-1.0.1.tgz",
       "integrity": "sha512-1OnlAPZ3zgrk8B91HyRj+eVv+kS5u+Z0SCsak6Xil/kmgEia50ga7zfkumayonZrImffAxPU/5WcyGhzetHNPA=="
     },
-    "node_modules/npm-run-path": {
+    "npm-run-path": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
       "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "path-key": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/npmlog": {
+    "npmlog": {
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
       "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
-      "dependencies": {
+      "requires": {
         "are-we-there-yet": "~1.1.2",
         "console-control-strings": "~1.1.0",
         "gauge": "~2.7.3",
         "set-blocking": "~2.0.0"
       }
     },
-    "node_modules/nprogress": {
+    "nprogress": {
       "version": "0.2.0",
       "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz",
       "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA=="
     },
-    "node_modules/nth-check": {
+    "nth-check": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
       "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "boolbase": "~1.0.0"
       }
     },
-    "node_modules/num2fraction": {
+    "num2fraction": {
       "version": "1.2.2",
       "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz",
       "integrity": "sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg==",
       "dev": true
     },
-    "node_modules/number-is-nan": {
+    "number-is-nan": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
-      "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ=="
     },
-    "node_modules/oauth-sign": {
+    "oauth-sign": {
       "version": "0.9.0",
       "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
-      "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
-      "engines": {
-        "node": "*"
-      }
+      "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ=="
     },
-    "node_modules/object-assign": {
+    "object-assign": {
       "version": "4.1.1",
       "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
-      "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="
     },
-    "node_modules/object-copy": {
+    "object-copy": {
       "version": "0.1.0",
       "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
       "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "copy-descriptor": "^0.1.0",
         "define-property": "^0.2.5",
         "kind-of": "^3.0.3"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/object-copy/node_modules/define-property": {
-      "version": "0.2.5",
-      "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
-      "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
-      "dev": true,
       "dependencies": {
-        "is-descriptor": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "define-property": {
+          "version": "0.2.5",
+          "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+          "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+          "dev": true,
+          "requires": {
+            "is-descriptor": "^0.1.0"
+          }
+        },
+        "is-buffer": {
+          "version": "1.1.6",
+          "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+          "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+          "dev": true
+        },
+        "kind-of": {
+          "version": "3.2.2",
+          "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+          "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+          "dev": true,
+          "requires": {
+            "is-buffer": "^1.1.5"
+          }
+        }
       }
     },
-    "node_modules/object-copy/node_modules/is-buffer": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
-      "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
-      "dev": true
-    },
-    "node_modules/object-copy/node_modules/kind-of": {
-      "version": "3.2.2",
-      "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
-      "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
-      "dev": true,
-      "dependencies": {
-        "is-buffer": "^1.1.5"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/object-hash": {
+    "object-hash": {
       "version": "1.3.1",
       "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz",
       "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/object-inspect": {
+    "object-inspect": {
       "version": "1.12.3",
       "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz",
       "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==",
-      "dev": true,
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/object-is": {
+    "object-is": {
       "version": "1.1.5",
       "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz",
       "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.3"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/object-keys": {
+    "object-keys": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
       "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.4"
-      }
+      "dev": true
     },
-    "node_modules/object-visit": {
+    "object-visit": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
       "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "isobject": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/object.assign": {
+    "object.assign": {
       "version": "4.1.4",
       "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz",
       "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.4",
         "has-symbols": "^1.0.3",
         "object-keys": "^1.1.1"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/object.getownpropertydescriptors": {
+    "object.getownpropertydescriptors": {
       "version": "2.1.6",
       "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.6.tgz",
       "integrity": "sha512-lq+61g26E/BgHv0ZTFgRvi7NMEPuAxLkFU7rukXjc/AlwH4Am5xXVnIXy3un1bg/JPbXHrixRkK1itUzzPiIjQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "array.prototype.reduce": "^1.0.5",
         "call-bind": "^1.0.2",
         "define-properties": "^1.2.0",
         "es-abstract": "^1.21.2",
         "safe-array-concat": "^1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.8"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/object.pick": {
+    "object.pick": {
       "version": "1.3.0",
       "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
       "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "isobject": "^3.0.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/object.values": {
+    "object.values": {
       "version": "1.1.6",
       "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz",
       "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.4",
         "es-abstract": "^1.20.4"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/obuf": {
+    "obuf": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz",
       "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==",
       "dev": true
     },
-    "node_modules/on-finished": {
+    "on-finished": {
       "version": "2.4.1",
       "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
       "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "ee-first": "1.1.1"
-      },
-      "engines": {
-        "node": ">= 0.8"
       }
     },
-    "node_modules/on-headers": {
+    "on-headers": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz",
       "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8"
-      }
+      "dev": true
     },
-    "node_modules/once": {
+    "once": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
       "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
-      "dependencies": {
+      "requires": {
         "wrappy": "1"
       }
     },
-    "node_modules/onetime": {
+    "onetime": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
       "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "mimic-fn": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/open": {
+    "open": {
       "version": "6.4.0",
       "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz",
       "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-wsl": "^1.1.0"
-      },
-      "engines": {
-        "node": ">=8"
       }
     },
-    "node_modules/opener": {
+    "opener": {
       "version": "1.5.2",
       "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz",
       "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==",
-      "dev": true,
-      "bin": {
-        "opener": "bin/opener-bin.js"
-      }
+      "dev": true
     },
-    "node_modules/opn": {
+    "opn": {
       "version": "5.5.0",
       "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz",
       "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-wsl": "^1.1.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/optionator": {
+    "optionator": {
       "version": "0.8.3",
       "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
       "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "deep-is": "~0.1.3",
         "fast-levenshtein": "~2.0.6",
         "levn": "~0.3.0",
         "prelude-ls": "~1.1.2",
         "type-check": "~0.3.2",
         "word-wrap": "~1.2.3"
-      },
-      "engines": {
-        "node": ">= 0.8.0"
       }
     },
-    "node_modules/ora": {
+    "ora": {
       "version": "3.4.0",
       "resolved": "https://registry.npmjs.org/ora/-/ora-3.4.0.tgz",
       "integrity": "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "chalk": "^2.4.2",
         "cli-cursor": "^2.1.0",
         "cli-spinners": "^2.0.0",
@@ -11102,157 +8752,126 @@
         "strip-ansi": "^5.2.0",
         "wcwidth": "^1.0.1"
       },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/ora/node_modules/ansi-regex": {
-      "version": "4.1.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
-      "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/ora/node_modules/strip-ansi": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
-      "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
-      "dev": true,
       "dependencies": {
-        "ansi-regex": "^4.1.0"
-      },
-      "engines": {
-        "node": ">=6"
+        "ansi-regex": {
+          "version": "4.1.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
+          "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
+          "dev": true
+        },
+        "strip-ansi": {
+          "version": "5.2.0",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+          "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+          "dev": true,
+          "requires": {
+            "ansi-regex": "^4.1.0"
+          }
+        }
       }
     },
-    "node_modules/os-browserify": {
+    "os-browserify": {
       "version": "0.3.0",
       "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
       "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==",
       "dev": true
     },
-    "node_modules/os-homedir": {
+    "os-homedir": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
-      "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ=="
     },
-    "node_modules/os-tmpdir": {
+    "os-tmpdir": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
-      "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g=="
     },
-    "node_modules/osenv": {
+    "osenv": {
       "version": "0.1.5",
       "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
       "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
-      "dependencies": {
+      "requires": {
         "os-homedir": "^1.0.0",
         "os-tmpdir": "^1.0.0"
       }
     },
-    "node_modules/p-finally": {
+    "p-finally": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
       "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/p-limit": {
+    "p-limit": {
       "version": "1.3.0",
       "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
       "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "p-try": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/p-locate": {
+    "p-locate": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
       "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "p-limit": "^1.1.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/p-map": {
+    "p-map": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz",
       "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/p-retry": {
+    "p-retry": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz",
       "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "retry": "^0.12.0"
-      },
-      "engines": {
-        "node": ">=6"
       }
     },
-    "node_modules/p-try": {
+    "p-try": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
       "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/pako": {
+    "pako": {
       "version": "1.0.11",
       "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
       "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
       "dev": true
     },
-    "node_modules/parallel-transform": {
+    "parallel-transform": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz",
       "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cyclist": "^1.0.1",
         "inherits": "^2.0.3",
         "readable-stream": "^2.1.5"
       }
     },
-    "node_modules/param-case": {
+    "param-case": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz",
       "integrity": "sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "no-case": "^2.2.0"
       }
     },
-    "node_modules/parse-asn1": {
+    "parse-asn1": {
       "version": "5.1.6",
       "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz",
       "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "asn1.js": "^5.2.0",
         "browserify-aes": "^1.0.0",
         "evp_bytestokey": "^1.0.0",
@@ -11260,784 +8879,610 @@
         "safe-buffer": "^5.1.1"
       }
     },
-    "node_modules/parse-json": {
+    "parse-json": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
       "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "error-ex": "^1.3.1",
         "json-parse-better-errors": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/parse5": {
+    "parse5": {
       "version": "5.1.1",
       "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz",
       "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==",
       "dev": true
     },
-    "node_modules/parse5-htmlparser2-tree-adapter": {
+    "parse5-htmlparser2-tree-adapter": {
       "version": "6.0.1",
       "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz",
       "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "parse5": "^6.0.1"
+      },
+      "dependencies": {
+        "parse5": {
+          "version": "6.0.1",
+          "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
+          "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": {
-      "version": "6.0.1",
-      "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
-      "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
-      "dev": true
-    },
-    "node_modules/parseurl": {
+    "parseurl": {
       "version": "1.3.3",
       "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
       "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8"
-      }
+      "dev": true
     },
-    "node_modules/pascalcase": {
+    "pascalcase": {
       "version": "0.1.1",
       "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
       "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/path-browserify": {
+    "path-browserify": {
       "version": "0.0.1",
       "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
       "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==",
       "dev": true
     },
-    "node_modules/path-dirname": {
+    "path-dirname": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
       "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==",
       "dev": true
     },
-    "node_modules/path-exists": {
+    "path-exists": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
       "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/path-is-absolute": {
+    "path-is-absolute": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
-      "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="
     },
-    "node_modules/path-is-inside": {
+    "path-is-inside": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
       "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==",
       "dev": true
     },
-    "node_modules/path-key": {
+    "path-key": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
       "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/path-parse": {
+    "path-parse": {
       "version": "1.0.7",
       "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
       "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
       "dev": true
     },
-    "node_modules/path-to-regexp": {
+    "path-to-regexp": {
       "version": "0.1.7",
       "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
       "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==",
       "dev": true
     },
-    "node_modules/path-type": {
+    "path-type": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
       "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "pify": "^3.0.0"
       },
-      "engines": {
-        "node": ">=4"
+      "dependencies": {
+        "pify": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
+          "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
+          "dev": true
+        }
       }
     },
-    "node_modules/path-type/node_modules/pify": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
-      "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/pathval": {
+    "pathval": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz",
       "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==",
-      "dev": true,
-      "engines": {
-        "node": "*"
-      }
+      "dev": true
     },
-    "node_modules/pbkdf2": {
+    "pbkdf2": {
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz",
       "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "create-hash": "^1.1.2",
         "create-hmac": "^1.1.4",
         "ripemd160": "^2.0.1",
         "safe-buffer": "^5.0.1",
         "sha.js": "^2.4.8"
-      },
-      "engines": {
-        "node": ">=0.12"
       }
     },
-    "node_modules/performance-now": {
+    "performance-now": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
       "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow=="
     },
-    "node_modules/picocolors": {
+    "picocolors": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
       "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
     },
-    "node_modules/picomatch": {
+    "picomatch": {
       "version": "2.3.1",
       "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
       "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
       "dev": true,
-      "optional": true,
-      "engines": {
-        "node": ">=8.6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/jonschlinkert"
-      }
+      "optional": true
     },
-    "node_modules/pify": {
+    "pify": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
       "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/pinkie": {
+    "pinkie": {
       "version": "2.0.4",
       "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
       "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/pinkie-promise": {
+    "pinkie-promise": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
       "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "pinkie": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/pkg-dir": {
+    "pkg-dir": {
       "version": "4.2.0",
       "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
       "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "find-up": "^4.0.0"
       },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/pkg-dir/node_modules/find-up": {
-      "version": "4.1.0",
-      "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
-      "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
-      "dev": true,
       "dependencies": {
-        "locate-path": "^5.0.0",
-        "path-exists": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=8"
+        "find-up": {
+          "version": "4.1.0",
+          "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+          "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+          "dev": true,
+          "requires": {
+            "locate-path": "^5.0.0",
+            "path-exists": "^4.0.0"
+          }
+        },
+        "locate-path": {
+          "version": "5.0.0",
+          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+          "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+          "dev": true,
+          "requires": {
+            "p-locate": "^4.1.0"
+          }
+        },
+        "p-limit": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+          "dev": true,
+          "requires": {
+            "p-try": "^2.0.0"
+          }
+        },
+        "p-locate": {
+          "version": "4.1.0",
+          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+          "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+          "dev": true,
+          "requires": {
+            "p-limit": "^2.2.0"
+          }
+        },
+        "p-try": {
+          "version": "2.2.0",
+          "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+          "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+          "dev": true
+        },
+        "path-exists": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+          "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+          "dev": true
+        }
       }
     },
-    "node_modules/pkg-dir/node_modules/locate-path": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
-      "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
-      "dev": true,
-      "dependencies": {
-        "p-locate": "^4.1.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/pkg-dir/node_modules/p-limit": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
-      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
-      "dev": true,
-      "dependencies": {
-        "p-try": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/pkg-dir/node_modules/p-locate": {
-      "version": "4.1.0",
-      "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
-      "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
-      "dev": true,
-      "dependencies": {
-        "p-limit": "^2.2.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/pkg-dir/node_modules/p-try": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
-      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/pkg-dir/node_modules/path-exists": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
-      "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/pkg-up": {
+    "pkg-up": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz",
       "integrity": "sha512-fjAPuiws93rm7mPUu21RdBnkeZNrbfCFCwfAhPWY+rR3zG0ubpe5cEReHOw5fIbfmsxEV/g2kSxGTATY3Bpnwg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "find-up": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/pluralize": {
+    "pluralize": {
       "version": "7.0.0",
       "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz",
       "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==",
       "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "optional": true
     },
-    "node_modules/portfinder": {
+    "portfinder": {
       "version": "1.0.32",
       "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.32.tgz",
       "integrity": "sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==",
-      "dependencies": {
+      "requires": {
         "async": "^2.6.4",
         "debug": "^3.2.7",
         "mkdirp": "^0.5.6"
       },
-      "engines": {
-        "node": ">= 0.12.0"
-      }
-    },
-    "node_modules/portfinder/node_modules/debug": {
-      "version": "3.2.7",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
-      "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
       "dependencies": {
-        "ms": "^2.1.1"
+        "debug": {
+          "version": "3.2.7",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+          "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+          "requires": {
+            "ms": "^2.1.1"
+          }
+        },
+        "ms": {
+          "version": "2.1.3",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+          "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
+        }
       }
     },
-    "node_modules/portfinder/node_modules/ms": {
-      "version": "2.1.3",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
-      "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
-    },
-    "node_modules/posix-character-classes": {
+    "posix-character-classes": {
       "version": "0.1.1",
       "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
       "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/postcss": {
+    "postcss": {
       "version": "8.4.23",
       "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz",
       "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==",
-      "funding": [
-        {
-          "type": "opencollective",
-          "url": "https://opencollective.com/postcss/"
-        },
-        {
-          "type": "tidelift",
-          "url": "https://tidelift.com/funding/github/npm/postcss"
-        },
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/ai"
-        }
-      ],
-      "dependencies": {
+      "requires": {
         "nanoid": "^3.3.6",
         "picocolors": "^1.0.0",
         "source-map-js": "^1.0.2"
-      },
-      "engines": {
-        "node": "^10 || ^12 || >=14"
       }
     },
-    "node_modules/postcss-calc": {
+    "postcss-calc": {
       "version": "7.0.5",
       "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz",
       "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.27",
         "postcss-selector-parser": "^6.0.2",
         "postcss-value-parser": "^4.0.2"
-      }
-    },
-    "node_modules/postcss-calc/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-calc/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
+      },
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-colormin": {
+    "postcss-colormin": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz",
       "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserslist": "^4.0.0",
         "color": "^3.0.0",
         "has": "^1.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-colormin/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-colormin/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-colormin/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-convert-values": {
+    "postcss-convert-values": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz",
       "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-convert-values/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-convert-values/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-convert-values/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-discard-comments": {
+    "postcss-discard-comments": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz",
       "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-discard-comments/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-discard-comments/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-discard-duplicates": {
+    "postcss-discard-duplicates": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz",
       "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-discard-duplicates/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-discard-duplicates/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-discard-empty": {
+    "postcss-discard-empty": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz",
       "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-discard-empty/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-discard-empty/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-discard-overridden": {
+    "postcss-discard-overridden": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz",
       "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-discard-overridden/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-discard-overridden/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-load-config": {
+    "postcss-load-config": {
       "version": "2.1.2",
       "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz",
       "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cosmiconfig": "^5.0.0",
         "import-cwd": "^2.0.0"
-      },
-      "engines": {
-        "node": ">= 4"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
       }
     },
-    "node_modules/postcss-loader": {
+    "postcss-loader": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz",
       "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "loader-utils": "^1.1.0",
         "postcss": "^7.0.0",
         "postcss-load-config": "^2.0.0",
         "schema-utils": "^1.0.0"
       },
-      "engines": {
-        "node": ">= 6"
-      }
-    },
-    "node_modules/postcss-loader/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
       "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        },
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "schema-utils": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
+          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
+          "dev": true,
+          "requires": {
+            "ajv": "^6.1.0",
+            "ajv-errors": "^1.0.0",
+            "ajv-keywords": "^3.1.0"
+          }
+        }
       }
     },
-    "node_modules/postcss-loader/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/postcss-loader/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-loader/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
-      "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
-      }
-    },
-    "node_modules/postcss-loader/node_modules/schema-utils": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
-      "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
-      "dev": true,
-      "dependencies": {
-        "ajv": "^6.1.0",
-        "ajv-errors": "^1.0.0",
-        "ajv-keywords": "^3.1.0"
-      },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/postcss-merge-longhand": {
+    "postcss-merge-longhand": {
       "version": "4.0.11",
       "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz",
       "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "css-color-names": "0.0.4",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0",
         "stylehacks": "^4.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-merge-longhand/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-merge-longhand/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-merge-longhand/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-merge-rules": {
+    "postcss-merge-rules": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz",
       "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserslist": "^4.0.0",
         "caniuse-api": "^3.0.0",
         "cssnano-util-same-parent": "^4.0.0",
@@ -12045,139 +9490,112 @@
         "postcss-selector-parser": "^3.0.0",
         "vendors": "^1.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-merge-rules/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-merge-rules/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-selector-parser": {
+          "version": "3.1.2",
+          "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
+          "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
+          "dev": true,
+          "requires": {
+            "dot-prop": "^5.2.0",
+            "indexes-of": "^1.0.1",
+            "uniq": "^1.0.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-merge-rules/node_modules/postcss-selector-parser": {
-      "version": "3.1.2",
-      "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
-      "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
-      "dev": true,
-      "dependencies": {
-        "dot-prop": "^5.2.0",
-        "indexes-of": "^1.0.1",
-        "uniq": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/postcss-minify-font-values": {
+    "postcss-minify-font-values": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz",
       "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-minify-font-values/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-minify-font-values/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-minify-font-values/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-minify-gradients": {
+    "postcss-minify-gradients": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz",
       "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssnano-util-get-arguments": "^4.0.0",
         "is-color-stop": "^1.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-minify-gradients/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-minify-gradients/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-minify-gradients/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-minify-params": {
+    "postcss-minify-params": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz",
       "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "alphanum-sort": "^1.0.0",
         "browserslist": "^4.0.0",
         "cssnano-util-get-arguments": "^4.0.0",
@@ -12185,1200 +9603,980 @@
         "postcss-value-parser": "^3.0.0",
         "uniqs": "^2.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-minify-params/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-minify-params/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-minify-params/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-minify-selectors": {
+    "postcss-minify-selectors": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz",
       "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "alphanum-sort": "^1.0.0",
         "has": "^1.0.0",
         "postcss": "^7.0.0",
         "postcss-selector-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-minify-selectors/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-minify-selectors/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-selector-parser": {
+          "version": "3.1.2",
+          "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
+          "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
+          "dev": true,
+          "requires": {
+            "dot-prop": "^5.2.0",
+            "indexes-of": "^1.0.1",
+            "uniq": "^1.0.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-minify-selectors/node_modules/postcss-selector-parser": {
-      "version": "3.1.2",
-      "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
-      "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
-      "dev": true,
-      "dependencies": {
-        "dot-prop": "^5.2.0",
-        "indexes-of": "^1.0.1",
-        "uniq": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/postcss-modules-extract-imports": {
+    "postcss-modules-extract-imports": {
       "version": "1.2.1",
       "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz",
       "integrity": "sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^6.0.1"
-      }
-    },
-    "node_modules/postcss-modules-extract-imports/node_modules/postcss": {
-      "version": "6.0.23",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
-      "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
-      "dev": true,
-      "dependencies": {
-        "chalk": "^2.4.1",
-        "source-map": "^0.6.1",
-        "supports-color": "^5.4.0"
       },
-      "engines": {
-        "node": ">=4.0.0"
+      "dependencies": {
+        "postcss": {
+          "version": "6.0.23",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
+          "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
+          "dev": true,
+          "requires": {
+            "chalk": "^2.4.1",
+            "source-map": "^0.6.1",
+            "supports-color": "^5.4.0"
+          }
+        }
       }
     },
-    "node_modules/postcss-modules-local-by-default": {
+    "postcss-modules-local-by-default": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz",
       "integrity": "sha512-X4cquUPIaAd86raVrBwO8fwRfkIdbwFu7CTfEOjiZQHVQwlHRSkTgH5NLDmMm5+1hQO8u6dZ+TOOJDbay1hYpA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "css-selector-tokenizer": "^0.7.0",
         "postcss": "^6.0.1"
-      }
-    },
-    "node_modules/postcss-modules-local-by-default/node_modules/postcss": {
-      "version": "6.0.23",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
-      "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
-      "dev": true,
-      "dependencies": {
-        "chalk": "^2.4.1",
-        "source-map": "^0.6.1",
-        "supports-color": "^5.4.0"
       },
-      "engines": {
-        "node": ">=4.0.0"
+      "dependencies": {
+        "postcss": {
+          "version": "6.0.23",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
+          "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
+          "dev": true,
+          "requires": {
+            "chalk": "^2.4.1",
+            "source-map": "^0.6.1",
+            "supports-color": "^5.4.0"
+          }
+        }
       }
     },
-    "node_modules/postcss-modules-scope": {
+    "postcss-modules-scope": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz",
       "integrity": "sha512-LTYwnA4C1He1BKZXIx1CYiHixdSe9LWYVKadq9lK5aCCMkoOkFyZ7aigt+srfjlRplJY3gIol6KUNefdMQJdlw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "css-selector-tokenizer": "^0.7.0",
         "postcss": "^6.0.1"
-      }
-    },
-    "node_modules/postcss-modules-scope/node_modules/postcss": {
-      "version": "6.0.23",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
-      "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
-      "dev": true,
-      "dependencies": {
-        "chalk": "^2.4.1",
-        "source-map": "^0.6.1",
-        "supports-color": "^5.4.0"
       },
-      "engines": {
-        "node": ">=4.0.0"
+      "dependencies": {
+        "postcss": {
+          "version": "6.0.23",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
+          "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
+          "dev": true,
+          "requires": {
+            "chalk": "^2.4.1",
+            "source-map": "^0.6.1",
+            "supports-color": "^5.4.0"
+          }
+        }
       }
     },
-    "node_modules/postcss-modules-values": {
+    "postcss-modules-values": {
       "version": "1.3.0",
       "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz",
       "integrity": "sha512-i7IFaR9hlQ6/0UgFuqM6YWaCfA1Ej8WMg8A5DggnH1UGKJvTV/ugqq/KaULixzzOi3T/tF6ClBXcHGCzdd5unA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "icss-replace-symbols": "^1.1.0",
         "postcss": "^6.0.1"
-      }
-    },
-    "node_modules/postcss-modules-values/node_modules/postcss": {
-      "version": "6.0.23",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
-      "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
-      "dev": true,
-      "dependencies": {
-        "chalk": "^2.4.1",
-        "source-map": "^0.6.1",
-        "supports-color": "^5.4.0"
       },
-      "engines": {
-        "node": ">=4.0.0"
+      "dependencies": {
+        "postcss": {
+          "version": "6.0.23",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
+          "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
+          "dev": true,
+          "requires": {
+            "chalk": "^2.4.1",
+            "source-map": "^0.6.1",
+            "supports-color": "^5.4.0"
+          }
+        }
       }
     },
-    "node_modules/postcss-normalize-charset": {
+    "postcss-normalize-charset": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz",
       "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-normalize-charset/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-charset/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-normalize-display-values": {
+    "postcss-normalize-display-values": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz",
       "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssnano-util-get-match": "^4.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-normalize-display-values/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-display-values/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-normalize-display-values/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-positions": {
+    "postcss-normalize-positions": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz",
       "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssnano-util-get-arguments": "^4.0.0",
         "has": "^1.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-normalize-positions/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-positions/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-normalize-positions/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-repeat-style": {
+    "postcss-normalize-repeat-style": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz",
       "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssnano-util-get-arguments": "^4.0.0",
         "cssnano-util-get-match": "^4.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-normalize-repeat-style/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-repeat-style/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-normalize-repeat-style/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-string": {
+    "postcss-normalize-string": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz",
       "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has": "^1.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-normalize-string/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-string/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-normalize-string/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-timing-functions": {
+    "postcss-normalize-timing-functions": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz",
       "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssnano-util-get-match": "^4.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-normalize-timing-functions/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-timing-functions/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-normalize-timing-functions/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-unicode": {
+    "postcss-normalize-unicode": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz",
       "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserslist": "^4.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-normalize-unicode/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-unicode/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-normalize-unicode/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-url": {
+    "postcss-normalize-url": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz",
       "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-absolute-url": "^2.0.0",
         "normalize-url": "^3.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-normalize-url/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-url/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-normalize-url/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-whitespace": {
+    "postcss-normalize-whitespace": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz",
       "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-normalize-whitespace/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-normalize-whitespace/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-normalize-whitespace/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-ordered-values": {
+    "postcss-ordered-values": {
       "version": "4.1.2",
       "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz",
       "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssnano-util-get-arguments": "^4.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-ordered-values/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-ordered-values/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-ordered-values/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-reduce-initial": {
+    "postcss-reduce-initial": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz",
       "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserslist": "^4.0.0",
         "caniuse-api": "^3.0.0",
         "has": "^1.0.0",
         "postcss": "^7.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-reduce-initial/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-reduce-initial/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-reduce-transforms": {
+    "postcss-reduce-transforms": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz",
       "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssnano-util-get-match": "^4.0.0",
         "has": "^1.0.0",
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-reduce-transforms/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-reduce-transforms/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-reduce-transforms/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-selector-parser": {
+    "postcss-selector-parser": {
       "version": "6.0.12",
       "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.12.tgz",
       "integrity": "sha512-NdxGCAZdRrwVI1sy59+Wzrh+pMMHxapGnpfenDVlMEXoOcvt4pGE0JLK9YY2F5dLxcFYA/YbVQKhcGU+FtSYQg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cssesc": "^3.0.0",
         "util-deprecate": "^1.0.2"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/postcss-svgo": {
+    "postcss-svgo": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz",
       "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "postcss": "^7.0.0",
         "postcss-value-parser": "^3.0.0",
         "svgo": "^1.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-svgo/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-svgo/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-value-parser": {
+          "version": "3.3.1",
+          "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+          "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/postcss-svgo/node_modules/postcss-value-parser": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
-      "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
-      "dev": true
-    },
-    "node_modules/postcss-unique-selectors": {
+    "postcss-unique-selectors": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz",
       "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "alphanum-sort": "^1.0.0",
         "postcss": "^7.0.0",
         "uniqs": "^2.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/postcss-unique-selectors/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/postcss-unique-selectors/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
-    "node_modules/postcss-value-parser": {
+    "postcss-value-parser": {
       "version": "4.2.0",
       "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
       "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
       "dev": true
     },
-    "node_modules/prelude-ls": {
+    "prelude-ls": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
       "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==",
       "dev": true,
-      "engines": {
-        "node": ">= 0.8.0"
-      }
+      "optional": true
     },
-    "node_modules/prepend-http": {
+    "prepend-http": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
       "integrity": "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/prettier": {
+    "prettier": {
       "version": "2.8.8",
       "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
       "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
       "dev": true,
-      "optional": true,
-      "bin": {
-        "prettier": "bin-prettier.js"
-      },
-      "engines": {
-        "node": ">=10.13.0"
-      },
-      "funding": {
-        "url": "https://github.com/prettier/prettier?sponsor=1"
-      }
+      "optional": true
     },
-    "node_modules/pretty-error": {
+    "pretty-error": {
       "version": "2.1.2",
       "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz",
       "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "lodash": "^4.17.20",
         "renderkid": "^2.0.4"
       }
     },
-    "node_modules/process": {
+    "process": {
       "version": "0.11.10",
       "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
       "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6.0"
-      }
+      "dev": true
     },
-    "node_modules/process-nextick-args": {
+    "process-nextick-args": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
       "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
     },
-    "node_modules/progress": {
+    "progress": {
       "version": "2.0.3",
       "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
       "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
       "dev": true,
-      "engines": {
-        "node": ">=0.4.0"
-      }
+      "optional": true
     },
-    "node_modules/promise-inflight": {
+    "promise-inflight": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
       "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==",
       "dev": true
     },
-    "node_modules/proxy-addr": {
+    "proxy-addr": {
       "version": "2.0.7",
       "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
       "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "forwarded": "0.2.0",
         "ipaddr.js": "1.9.1"
-      },
-      "engines": {
-        "node": ">= 0.10"
       }
     },
-    "node_modules/prr": {
+    "prr": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz",
       "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==",
       "dev": true
     },
-    "node_modules/pseudomap": {
+    "pseudomap": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
       "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==",
       "dev": true
     },
-    "node_modules/psl": {
+    "psl": {
       "version": "1.9.0",
       "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz",
       "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag=="
     },
-    "node_modules/public-encrypt": {
+    "public-encrypt": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
       "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bn.js": "^4.1.0",
         "browserify-rsa": "^4.0.0",
         "create-hash": "^1.1.0",
         "parse-asn1": "^5.0.0",
         "randombytes": "^2.0.1",
         "safe-buffer": "^5.1.2"
+      },
+      "dependencies": {
+        "bn.js": {
+          "version": "4.12.0",
+          "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+          "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/public-encrypt/node_modules/bn.js": {
-      "version": "4.12.0",
-      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
-      "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
-      "dev": true
-    },
-    "node_modules/pump": {
+    "pump": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
       "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "end-of-stream": "^1.1.0",
         "once": "^1.3.1"
       }
     },
-    "node_modules/pumpify": {
+    "pumpify": {
       "version": "1.5.1",
       "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz",
       "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "duplexify": "^3.6.0",
         "inherits": "^2.0.3",
         "pump": "^2.0.0"
-      }
-    },
-    "node_modules/pumpify/node_modules/pump": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
-      "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
-      "dev": true,
+      },
       "dependencies": {
-        "end-of-stream": "^1.1.0",
-        "once": "^1.3.1"
+        "pump": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
+          "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
+          "dev": true,
+          "requires": {
+            "end-of-stream": "^1.1.0",
+            "once": "^1.3.1"
+          }
+        }
       }
     },
-    "node_modules/punycode": {
+    "punycode": {
       "version": "2.3.0",
       "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
-      "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
-      "engines": {
-        "node": ">=6"
-      }
+      "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA=="
     },
-    "node_modules/q": {
+    "q": {
       "version": "1.5.1",
       "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
       "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.6.0",
-        "teleport": ">=0.2.0"
-      }
+      "dev": true
     },
-    "node_modules/qs": {
+    "qs": {
       "version": "6.5.3",
       "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
-      "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==",
-      "engines": {
-        "node": ">=0.6"
-      }
+      "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA=="
     },
-    "node_modules/query-string": {
+    "query-string": {
       "version": "4.3.4",
       "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz",
       "integrity": "sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "object-assign": "^4.1.0",
         "strict-uri-encode": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/querystring": {
+    "querystring": {
       "version": "0.2.0",
       "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
       "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==",
-      "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.",
-      "dev": true,
-      "engines": {
-        "node": ">=0.4.x"
-      }
+      "dev": true
     },
-    "node_modules/querystring-es3": {
+    "querystring-es3": {
       "version": "0.2.1",
       "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
       "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.4.x"
-      }
+      "dev": true
     },
-    "node_modules/querystringify": {
+    "querystringify": {
       "version": "2.2.0",
       "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz",
       "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==",
       "dev": true
     },
-    "node_modules/quick-lru": {
+    "quick-lru": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz",
       "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
+      "dev": true
     },
-    "node_modules/randombytes": {
+    "randombytes": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
       "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "safe-buffer": "^5.1.0"
       }
     },
-    "node_modules/randomfill": {
+    "randomfill": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
       "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "randombytes": "^2.0.5",
         "safe-buffer": "^5.1.0"
       }
     },
-    "node_modules/range-parser": {
+    "range-parser": {
       "version": "1.2.1",
       "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
       "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
+      "dev": true
     },
-    "node_modules/raw-body": {
+    "raw-body": {
       "version": "2.5.1",
       "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
       "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "bytes": "3.1.2",
         "http-errors": "2.0.0",
         "iconv-lite": "0.4.24",
         "unpipe": "1.0.0"
-      },
-      "engines": {
-        "node": ">= 0.8"
       }
     },
-    "node_modules/raw-loader": {
+    "raw-loader": {
       "version": "0.5.1",
       "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-0.5.1.tgz",
       "integrity": "sha512-sf7oGoLuaYAScB4VGr0tzetsYlS8EJH6qnTCfQ/WVEa89hALQ4RQfCKt5xCyPQKPDUbVUAIP1QsxAwfAjlDp7Q=="
     },
-    "node_modules/read-pkg": {
+    "read-pkg": {
       "version": "5.2.0",
       "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
       "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@types/normalize-package-data": "^2.4.0",
         "normalize-package-data": "^2.5.0",
         "parse-json": "^5.0.0",
         "type-fest": "^0.6.0"
       },
-      "engines": {
-        "node": ">=8"
+      "dependencies": {
+        "parse-json": {
+          "version": "5.2.0",
+          "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
+          "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
+          "dev": true,
+          "requires": {
+            "@babel/code-frame": "^7.0.0",
+            "error-ex": "^1.3.1",
+            "json-parse-even-better-errors": "^2.3.0",
+            "lines-and-columns": "^1.1.6"
+          }
+        }
       }
     },
-    "node_modules/read-pkg-up": {
+    "read-pkg-up": {
       "version": "7.0.1",
       "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
       "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "find-up": "^4.1.0",
         "read-pkg": "^5.2.0",
         "type-fest": "^0.8.1"
       },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/read-pkg-up/node_modules/find-up": {
-      "version": "4.1.0",
-      "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
-      "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
-      "dev": true,
       "dependencies": {
-        "locate-path": "^5.0.0",
-        "path-exists": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=8"
+        "find-up": {
+          "version": "4.1.0",
+          "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+          "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+          "dev": true,
+          "requires": {
+            "locate-path": "^5.0.0",
+            "path-exists": "^4.0.0"
+          }
+        },
+        "locate-path": {
+          "version": "5.0.0",
+          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+          "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+          "dev": true,
+          "requires": {
+            "p-locate": "^4.1.0"
+          }
+        },
+        "p-limit": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+          "dev": true,
+          "requires": {
+            "p-try": "^2.0.0"
+          }
+        },
+        "p-locate": {
+          "version": "4.1.0",
+          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+          "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+          "dev": true,
+          "requires": {
+            "p-limit": "^2.2.0"
+          }
+        },
+        "p-try": {
+          "version": "2.2.0",
+          "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+          "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+          "dev": true
+        },
+        "path-exists": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+          "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+          "dev": true
+        },
+        "type-fest": {
+          "version": "0.8.1",
+          "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+          "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/read-pkg-up/node_modules/locate-path": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
-      "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
-      "dev": true,
-      "dependencies": {
-        "p-locate": "^4.1.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/read-pkg-up/node_modules/p-limit": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
-      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
-      "dev": true,
-      "dependencies": {
-        "p-try": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/read-pkg-up/node_modules/p-locate": {
-      "version": "4.1.0",
-      "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
-      "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
-      "dev": true,
-      "dependencies": {
-        "p-limit": "^2.2.0"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/read-pkg-up/node_modules/p-try": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
-      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/read-pkg-up/node_modules/path-exists": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
-      "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/read-pkg-up/node_modules/type-fest": {
-      "version": "0.8.1",
-      "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
-      "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/read-pkg/node_modules/parse-json": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
-      "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
-      "dev": true,
-      "dependencies": {
-        "@babel/code-frame": "^7.0.0",
-        "error-ex": "^1.3.1",
-        "json-parse-even-better-errors": "^2.3.0",
-        "lines-and-columns": "^1.1.6"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/readable-stream": {
+    "readable-stream": {
       "version": "2.3.8",
       "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
       "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
-      "dependencies": {
+      "requires": {
         "core-util-is": "~1.0.0",
         "inherits": "~2.0.3",
         "isarray": "~1.0.0",
@@ -13388,285 +10586,225 @@
         "util-deprecate": "~1.0.1"
       }
     },
-    "node_modules/readdirp": {
+    "readdirp": {
       "version": "3.6.0",
       "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
       "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
       "dev": true,
       "optional": true,
-      "dependencies": {
+      "requires": {
         "picomatch": "^2.2.1"
-      },
-      "engines": {
-        "node": ">=8.10.0"
       }
     },
-    "node_modules/redent": {
+    "redent": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz",
       "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "indent-string": "^4.0.0",
         "strip-indent": "^3.0.0"
       },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/redent/node_modules/strip-indent": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
-      "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
-      "dev": true,
       "dependencies": {
-        "min-indent": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=8"
+        "strip-indent": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
+          "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
+          "dev": true,
+          "requires": {
+            "min-indent": "^1.0.0"
+          }
+        }
       }
     },
-    "node_modules/regenerate": {
+    "regenerate": {
       "version": "1.4.2",
       "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
       "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
       "dev": true
     },
-    "node_modules/regenerate-unicode-properties": {
+    "regenerate-unicode-properties": {
       "version": "10.1.0",
       "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz",
       "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "regenerate": "^1.4.2"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/regenerator-runtime": {
+    "regenerator-runtime": {
       "version": "0.11.1",
       "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
       "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
     },
-    "node_modules/regenerator-transform": {
+    "regenerator-transform": {
       "version": "0.15.1",
       "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz",
       "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/runtime": "^7.8.4"
       }
     },
-    "node_modules/regex-not": {
+    "regex-not": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
       "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "extend-shallow": "^3.0.2",
         "safe-regex": "^1.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/regexp.prototype.flags": {
+    "regexp.prototype.flags": {
       "version": "1.5.0",
       "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz",
       "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.2.0",
         "functions-have-names": "^1.2.3"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/regexpp": {
+    "regexpp": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz",
       "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==",
       "dev": true,
-      "engines": {
-        "node": ">=4.0.0"
-      }
+      "optional": true
     },
-    "node_modules/regexpu-core": {
+    "regexpu-core": {
       "version": "5.3.2",
       "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz",
       "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@babel/regjsgen": "^0.8.0",
         "regenerate": "^1.4.2",
         "regenerate-unicode-properties": "^10.1.0",
         "regjsparser": "^0.9.1",
         "unicode-match-property-ecmascript": "^2.0.0",
         "unicode-match-property-value-ecmascript": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/regjsparser": {
+    "regjsparser": {
       "version": "0.9.1",
       "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz",
       "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "jsesc": "~0.5.0"
       },
-      "bin": {
-        "regjsparser": "bin/parser"
+      "dependencies": {
+        "jsesc": {
+          "version": "0.5.0",
+          "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
+          "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/regjsparser/node_modules/jsesc": {
-      "version": "0.5.0",
-      "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
-      "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
-      "dev": true,
-      "bin": {
-        "jsesc": "bin/jsesc"
-      }
-    },
-    "node_modules/relateurl": {
+    "relateurl": {
       "version": "0.2.7",
       "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz",
       "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.10"
-      }
+      "dev": true
     },
-    "node_modules/remove-trailing-separator": {
+    "remove-trailing-separator": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
       "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==",
       "dev": true
     },
-    "node_modules/renderkid": {
+    "renderkid": {
       "version": "2.0.7",
       "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz",
       "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "css-select": "^4.1.3",
         "dom-converter": "^0.2.0",
         "htmlparser2": "^6.1.0",
         "lodash": "^4.17.21",
         "strip-ansi": "^3.0.1"
-      }
-    },
-    "node_modules/renderkid/node_modules/css-select": {
-      "version": "4.3.0",
-      "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz",
-      "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==",
-      "dev": true,
+      },
       "dependencies": {
-        "boolbase": "^1.0.0",
-        "css-what": "^6.0.1",
-        "domhandler": "^4.3.1",
-        "domutils": "^2.8.0",
-        "nth-check": "^2.0.1"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/fb55"
-      }
-    },
-    "node_modules/renderkid/node_modules/css-what": {
-      "version": "6.1.0",
-      "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
-      "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
-      "dev": true,
-      "engines": {
-        "node": ">= 6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/fb55"
-      }
-    },
-    "node_modules/renderkid/node_modules/dom-serializer": {
-      "version": "1.4.1",
-      "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz",
-      "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==",
-      "dev": true,
-      "dependencies": {
-        "domelementtype": "^2.0.1",
-        "domhandler": "^4.2.0",
-        "entities": "^2.0.0"
-      },
-      "funding": {
-        "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
-      }
-    },
-    "node_modules/renderkid/node_modules/domelementtype": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
-      "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
-      "dev": true,
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/fb55"
+        "css-select": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz",
+          "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==",
+          "dev": true,
+          "requires": {
+            "boolbase": "^1.0.0",
+            "css-what": "^6.0.1",
+            "domhandler": "^4.3.1",
+            "domutils": "^2.8.0",
+            "nth-check": "^2.0.1"
+          }
+        },
+        "css-what": {
+          "version": "6.1.0",
+          "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
+          "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
+          "dev": true
+        },
+        "dom-serializer": {
+          "version": "1.4.1",
+          "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz",
+          "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==",
+          "dev": true,
+          "requires": {
+            "domelementtype": "^2.0.1",
+            "domhandler": "^4.2.0",
+            "entities": "^2.0.0"
+          }
+        },
+        "domelementtype": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
+          "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
+          "dev": true
+        },
+        "domutils": {
+          "version": "2.8.0",
+          "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz",
+          "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==",
+          "dev": true,
+          "requires": {
+            "dom-serializer": "^1.0.1",
+            "domelementtype": "^2.2.0",
+            "domhandler": "^4.2.0"
+          }
+        },
+        "nth-check": {
+          "version": "2.1.1",
+          "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
+          "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
+          "dev": true,
+          "requires": {
+            "boolbase": "^1.0.0"
+          }
         }
-      ]
-    },
-    "node_modules/renderkid/node_modules/domutils": {
-      "version": "2.8.0",
-      "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz",
-      "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==",
-      "dev": true,
-      "dependencies": {
-        "dom-serializer": "^1.0.1",
-        "domelementtype": "^2.2.0",
-        "domhandler": "^4.2.0"
-      },
-      "funding": {
-        "url": "https://github.com/fb55/domutils?sponsor=1"
       }
     },
-    "node_modules/renderkid/node_modules/nth-check": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
-      "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
-      "dev": true,
-      "dependencies": {
-        "boolbase": "^1.0.0"
-      },
-      "funding": {
-        "url": "https://github.com/fb55/nth-check?sponsor=1"
-      }
-    },
-    "node_modules/repeat-element": {
+    "repeat-element": {
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz",
       "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/repeat-string": {
+    "repeat-string": {
       "version": "1.6.1",
       "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
       "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10"
-      }
+      "dev": true
     },
-    "node_modules/request": {
+    "request": {
       "version": "2.88.2",
       "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
       "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
-      "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142",
-      "dependencies": {
+      "requires": {
         "aws-sign2": "~0.7.0",
         "aws4": "^1.8.0",
         "caseless": "~0.12.0",
@@ -13687,622 +10825,489 @@
         "tough-cookie": "~2.5.0",
         "tunnel-agent": "^0.6.0",
         "uuid": "^3.3.2"
-      },
-      "engines": {
-        "node": ">= 6"
       }
     },
-    "node_modules/request-promise-core": {
+    "request-promise-core": {
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz",
       "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "lodash": "^4.17.19"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      },
-      "peerDependencies": {
-        "request": "^2.34"
       }
     },
-    "node_modules/request-promise-native": {
+    "request-promise-native": {
       "version": "1.0.9",
       "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz",
       "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==",
-      "deprecated": "request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "request-promise-core": "1.1.4",
         "stealthy-require": "^1.1.1",
         "tough-cookie": "^2.3.3"
-      },
-      "engines": {
-        "node": ">=0.12.0"
-      },
-      "peerDependencies": {
-        "request": "^2.34"
       }
     },
-    "node_modules/require-directory": {
+    "require-directory": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
       "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/require-main-filename": {
+    "require-main-filename": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
       "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
       "dev": true
     },
-    "node_modules/require-uncached": {
+    "require-uncached": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz",
       "integrity": "sha512-Xct+41K3twrbBHdxAgMoOS+cNcoqIjfM2/VxBF4LL2hVph7YsF8VSKyQ3BDFZwEVbok9yeDl2le/qo0S77WG2w==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "caller-path": "^0.1.0",
         "resolve-from": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/requires-port": {
+    "requires-port": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
       "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
       "dev": true
     },
-    "node_modules/reselect": {
+    "reselect": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/reselect/-/reselect-3.0.1.tgz",
       "integrity": "sha512-b/6tFZCmRhtBMa4xGqiiRp9jh9Aqi2A687Lo265cN0/QohJQEBPiQ52f4QB6i0eF3yp3hmLL21LSGBcML2dlxA==",
       "dev": true
     },
-    "node_modules/resize-observer-polyfill": {
+    "resize-observer-polyfill": {
       "version": "1.5.1",
       "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz",
       "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg=="
     },
-    "node_modules/resolve": {
+    "resolve": {
       "version": "1.22.2",
       "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz",
       "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-core-module": "^2.11.0",
         "path-parse": "^1.0.7",
         "supports-preserve-symlinks-flag": "^1.0.0"
-      },
-      "bin": {
-        "resolve": "bin/resolve"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/resolve-cwd": {
+    "resolve-cwd": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz",
       "integrity": "sha512-ccu8zQTrzVr954472aUVPLEcB3YpKSYR3cg/3lo1okzobPBM+1INXBbBZlDbnI/hbEocnf8j0QVo43hQKrbchg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "resolve-from": "^3.0.0"
       },
-      "engines": {
-        "node": ">=4"
+      "dependencies": {
+        "resolve-from": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
+          "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/resolve-cwd/node_modules/resolve-from": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
-      "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/resolve-from": {
+    "resolve-from": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz",
       "integrity": "sha512-kT10v4dhrlLNcnO084hEjvXCI1wUG9qZLoz2RogxqDQQYy7IxjI/iMUkOtQTNEh6rzHxvdQWHsJyel1pKOVCxg==",
       "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "optional": true
     },
-    "node_modules/resolve-url": {
+    "resolve-url": {
       "version": "0.2.1",
       "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
       "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==",
-      "deprecated": "https://github.com/lydell/resolve-url#deprecated",
       "dev": true
     },
-    "node_modules/restore-cursor": {
+    "restore-cursor": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
       "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "onetime": "^2.0.0",
         "signal-exit": "^3.0.2"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/ret": {
+    "ret": {
       "version": "0.1.15",
       "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
       "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.12"
-      }
+      "dev": true
     },
-    "node_modules/retry": {
+    "retry": {
       "version": "0.12.0",
       "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
       "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==",
-      "dev": true,
-      "engines": {
-        "node": ">= 4"
-      }
+      "dev": true
     },
-    "node_modules/rgb-regex": {
+    "rgb-regex": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz",
       "integrity": "sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==",
       "dev": true
     },
-    "node_modules/rgba-regex": {
+    "rgba-regex": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz",
       "integrity": "sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==",
       "dev": true
     },
-    "node_modules/rimraf": {
+    "rimraf": {
       "version": "2.7.1",
       "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
       "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
-      "dependencies": {
+      "requires": {
         "glob": "^7.1.3"
-      },
-      "bin": {
-        "rimraf": "bin.js"
       }
     },
-    "node_modules/ripemd160": {
+    "ripemd160": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
       "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "hash-base": "^3.0.0",
         "inherits": "^2.0.1"
       }
     },
-    "node_modules/run-async": {
+    "run-async": {
       "version": "2.4.1",
       "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
       "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==",
       "dev": true,
-      "engines": {
-        "node": ">=0.12.0"
-      }
+      "optional": true
     },
-    "node_modules/run-queue": {
+    "run-queue": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
       "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "aproba": "^1.1.1"
       }
     },
-    "node_modules/rx-lite": {
+    "rx-lite": {
       "version": "4.0.8",
       "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz",
       "integrity": "sha512-Cun9QucwK6MIrp3mry/Y7hqD1oFqTYLQ4pGxaHTjIdaFDWRGGLikqp6u8LcWJnzpoALg9hap+JGk8sFIUuEGNA==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/rx-lite-aggregates": {
+    "rx-lite-aggregates": {
       "version": "4.0.8",
       "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz",
       "integrity": "sha512-3xPNZGW93oCjiO7PtKxRK6iOVYBWBvtf9QHDfU23Oc+dLIQmAV//UnyXV/yihv81VS/UqoQPk4NegS8EFi55Hg==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "rx-lite": "*"
       }
     },
-    "node_modules/safe-array-concat": {
+    "safe-array-concat": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.0.tgz",
       "integrity": "sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "get-intrinsic": "^1.2.0",
         "has-symbols": "^1.0.3",
         "isarray": "^2.0.5"
       },
-      "engines": {
-        "node": ">=0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
+      "dependencies": {
+        "isarray": {
+          "version": "2.0.5",
+          "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
+          "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/safe-array-concat/node_modules/isarray": {
-      "version": "2.0.5",
-      "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
-      "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
-      "dev": true
-    },
-    "node_modules/safe-buffer": {
+    "safe-buffer": {
       "version": "5.1.2",
       "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
       "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
     },
-    "node_modules/safe-regex": {
+    "safe-regex": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
       "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "ret": "~0.1.10"
       }
     },
-    "node_modules/safe-regex-test": {
+    "safe-regex-test": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
       "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "get-intrinsic": "^1.1.3",
         "is-regex": "^1.1.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/safer-buffer": {
+    "safer-buffer": {
       "version": "2.1.2",
       "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
       "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
     },
-    "node_modules/sass-graph": {
+    "sass-graph": {
       "version": "2.2.5",
       "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz",
       "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "glob": "^7.0.0",
         "lodash": "^4.0.0",
         "scss-tokenizer": "^0.2.3",
         "yargs": "^13.3.2"
       },
-      "bin": {
-        "sassgraph": "bin/sassgraph"
-      }
-    },
-    "node_modules/sass-graph/node_modules/ansi-regex": {
-      "version": "4.1.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
-      "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/sass-graph/node_modules/emoji-regex": {
-      "version": "7.0.3",
-      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
-      "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
-      "dev": true
-    },
-    "node_modules/sass-graph/node_modules/find-up": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
-      "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
-      "dev": true,
       "dependencies": {
-        "locate-path": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
+        "ansi-regex": {
+          "version": "4.1.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
+          "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
+          "dev": true
+        },
+        "emoji-regex": {
+          "version": "7.0.3",
+          "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+          "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+          "dev": true
+        },
+        "find-up": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+          "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+          "dev": true,
+          "requires": {
+            "locate-path": "^3.0.0"
+          }
+        },
+        "is-fullwidth-code-point": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+          "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+          "dev": true
+        },
+        "locate-path": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+          "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+          "dev": true,
+          "requires": {
+            "p-locate": "^3.0.0",
+            "path-exists": "^3.0.0"
+          }
+        },
+        "p-limit": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+          "dev": true,
+          "requires": {
+            "p-try": "^2.0.0"
+          }
+        },
+        "p-locate": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+          "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+          "dev": true,
+          "requires": {
+            "p-limit": "^2.0.0"
+          }
+        },
+        "p-try": {
+          "version": "2.2.0",
+          "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+          "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+          "dev": true
+        },
+        "string-width": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+          "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+          "dev": true,
+          "requires": {
+            "emoji-regex": "^7.0.1",
+            "is-fullwidth-code-point": "^2.0.0",
+            "strip-ansi": "^5.1.0"
+          }
+        },
+        "strip-ansi": {
+          "version": "5.2.0",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+          "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+          "dev": true,
+          "requires": {
+            "ansi-regex": "^4.1.0"
+          }
+        },
+        "yargs": {
+          "version": "13.3.2",
+          "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
+          "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
+          "dev": true,
+          "requires": {
+            "cliui": "^5.0.0",
+            "find-up": "^3.0.0",
+            "get-caller-file": "^2.0.1",
+            "require-directory": "^2.1.1",
+            "require-main-filename": "^2.0.0",
+            "set-blocking": "^2.0.0",
+            "string-width": "^3.0.0",
+            "which-module": "^2.0.0",
+            "y18n": "^4.0.0",
+            "yargs-parser": "^13.1.2"
+          }
+        },
+        "yargs-parser": {
+          "version": "13.1.2",
+          "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
+          "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
+          "dev": true,
+          "requires": {
+            "camelcase": "^5.0.0",
+            "decamelize": "^1.2.0"
+          }
+        }
       }
     },
-    "node_modules/sass-graph/node_modules/is-fullwidth-code-point": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
-      "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/sass-graph/node_modules/locate-path": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
-      "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
-      "dev": true,
-      "dependencies": {
-        "p-locate": "^3.0.0",
-        "path-exists": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/sass-graph/node_modules/p-limit": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
-      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
-      "dev": true,
-      "dependencies": {
-        "p-try": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/sass-graph/node_modules/p-locate": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
-      "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
-      "dev": true,
-      "dependencies": {
-        "p-limit": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/sass-graph/node_modules/p-try": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
-      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/sass-graph/node_modules/string-width": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
-      "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
-      "dev": true,
-      "dependencies": {
-        "emoji-regex": "^7.0.1",
-        "is-fullwidth-code-point": "^2.0.0",
-        "strip-ansi": "^5.1.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/sass-graph/node_modules/strip-ansi": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
-      "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
-      "dev": true,
-      "dependencies": {
-        "ansi-regex": "^4.1.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/sass-graph/node_modules/yargs": {
-      "version": "13.3.2",
-      "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
-      "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
-      "dev": true,
-      "dependencies": {
-        "cliui": "^5.0.0",
-        "find-up": "^3.0.0",
-        "get-caller-file": "^2.0.1",
-        "require-directory": "^2.1.1",
-        "require-main-filename": "^2.0.0",
-        "set-blocking": "^2.0.0",
-        "string-width": "^3.0.0",
-        "which-module": "^2.0.0",
-        "y18n": "^4.0.0",
-        "yargs-parser": "^13.1.2"
-      }
-    },
-    "node_modules/sass-graph/node_modules/yargs-parser": {
-      "version": "13.1.2",
-      "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
-      "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
-      "dev": true,
-      "dependencies": {
-        "camelcase": "^5.0.0",
-        "decamelize": "^1.2.0"
-      }
-    },
-    "node_modules/sass-loader": {
+    "sass-loader": {
       "version": "10.4.1",
       "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.4.1.tgz",
       "integrity": "sha512-aX/iJZTTpNUNx/OSYzo2KsjIUQHqvWsAhhUijFjAPdZTEhstjZI9zTNvkTTwsx+uNUJqUwOw5gacxQMx4hJxGQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "klona": "^2.0.4",
         "loader-utils": "^2.0.0",
         "neo-async": "^2.6.2",
         "schema-utils": "^3.0.0",
         "semver": "^7.3.2"
       },
-      "engines": {
-        "node": ">= 10.13.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/webpack"
-      },
-      "peerDependencies": {
-        "fibers": ">= 3.1.0",
-        "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0",
-        "sass": "^1.3.0",
-        "webpack": "^4.36.0 || ^5.0.0"
-      },
-      "peerDependenciesMeta": {
-        "fibers": {
-          "optional": true
+      "dependencies": {
+        "lru-cache": {
+          "version": "6.0.0",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+          "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+          "dev": true,
+          "requires": {
+            "yallist": "^4.0.0"
+          }
         },
-        "node-sass": {
-          "optional": true
+        "schema-utils": {
+          "version": "3.1.2",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz",
+          "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==",
+          "dev": true,
+          "requires": {
+            "@types/json-schema": "^7.0.8",
+            "ajv": "^6.12.5",
+            "ajv-keywords": "^3.5.2"
+          }
         },
-        "sass": {
-          "optional": true
+        "semver": {
+          "version": "7.5.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz",
+          "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==",
+          "dev": true,
+          "requires": {
+            "lru-cache": "^6.0.0"
+          }
+        },
+        "yallist": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+          "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+          "dev": true
         }
       }
     },
-    "node_modules/sass-loader/node_modules/lru-cache": {
-      "version": "6.0.0",
-      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
-      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
-      "dev": true,
-      "dependencies": {
-        "yallist": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/sass-loader/node_modules/schema-utils": {
-      "version": "3.1.2",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz",
-      "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==",
-      "dev": true,
-      "dependencies": {
-        "@types/json-schema": "^7.0.8",
-        "ajv": "^6.12.5",
-        "ajv-keywords": "^3.5.2"
-      },
-      "engines": {
-        "node": ">= 10.13.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/webpack"
-      }
-    },
-    "node_modules/sass-loader/node_modules/semver": {
-      "version": "7.5.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz",
-      "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==",
-      "dev": true,
-      "dependencies": {
-        "lru-cache": "^6.0.0"
-      },
-      "bin": {
-        "semver": "bin/semver.js"
-      },
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/sass-loader/node_modules/yallist": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
-      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
-      "dev": true
-    },
-    "node_modules/sax": {
+    "sax": {
       "version": "1.2.4",
       "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
       "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
       "dev": true
     },
-    "node_modules/schema-utils": {
+    "schema-utils": {
       "version": "2.7.1",
       "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
       "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@types/json-schema": "^7.0.5",
         "ajv": "^6.12.4",
         "ajv-keywords": "^3.5.2"
-      },
-      "engines": {
-        "node": ">= 8.9.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/webpack"
       }
     },
-    "node_modules/script-loader": {
+    "script-loader": {
       "version": "0.7.2",
       "resolved": "https://registry.npmjs.org/script-loader/-/script-loader-0.7.2.tgz",
       "integrity": "sha512-UMNLEvgOAQuzK8ji8qIscM3GIrRCWN6MmMXGD4SD5l6cSycgGsCo0tX5xRnfQcoghqct0tjHjcykgI1PyBE2aA==",
-      "dependencies": {
+      "requires": {
         "raw-loader": "~0.5.1"
       }
     },
-    "node_modules/scss-tokenizer": {
+    "scss-tokenizer": {
       "version": "0.2.3",
       "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
       "integrity": "sha512-dYE8LhncfBUar6POCxMTm0Ln+erjeczqEvCJib5/7XNkdw1FkUGgwMPY360FY0FgPWQxHWCx29Jl3oejyGLM9Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "js-base64": "^2.1.8",
         "source-map": "^0.4.2"
-      }
-    },
-    "node_modules/scss-tokenizer/node_modules/source-map": {
-      "version": "0.4.4",
-      "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
-      "integrity": "sha512-Y8nIfcb1s/7DcobUz1yOO1GSp7gyL+D9zLHDehT7iRESqGSxjJ448Sg7rvfgsRJCnKLdSl11uGf0s9X80cH0/A==",
-      "dev": true,
-      "dependencies": {
-        "amdefine": ">=0.0.4"
       },
-      "engines": {
-        "node": ">=0.8.0"
+      "dependencies": {
+        "source-map": {
+          "version": "0.4.4",
+          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+          "integrity": "sha512-Y8nIfcb1s/7DcobUz1yOO1GSp7gyL+D9zLHDehT7iRESqGSxjJ448Sg7rvfgsRJCnKLdSl11uGf0s9X80cH0/A==",
+          "dev": true,
+          "requires": {
+            "amdefine": ">=0.0.4"
+          }
+        }
       }
     },
-    "node_modules/select-hose": {
+    "select-hose": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
       "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==",
       "dev": true
     },
-    "node_modules/selfsigned": {
+    "selfsigned": {
       "version": "1.10.14",
       "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz",
       "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "node-forge": "^0.10.0"
       }
     },
-    "node_modules/semver": {
+    "semver": {
       "version": "5.7.1",
       "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-      "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
-      "bin": {
-        "semver": "bin/semver"
-      }
+      "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ=="
     },
-    "node_modules/send": {
+    "send": {
       "version": "0.18.0",
       "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
       "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "debug": "2.6.9",
         "depd": "2.0.0",
         "destroy": "1.2.0",
@@ -14317,58 +11322,53 @@
         "range-parser": "~1.2.1",
         "statuses": "2.0.1"
       },
-      "engines": {
-        "node": ">= 0.8.0"
-      }
-    },
-    "node_modules/send/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.0.0"
+        "debug": {
+          "version": "2.6.9",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          },
+          "dependencies": {
+            "ms": {
+              "version": "2.0.0",
+              "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+              "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+              "dev": true
+            }
+          }
+        },
+        "mime": {
+          "version": "1.6.0",
+          "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+          "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
+          "dev": true
+        },
+        "ms": {
+          "version": "2.1.3",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+          "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/send/node_modules/debug/node_modules/ms": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-      "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
-      "dev": true
-    },
-    "node_modules/send/node_modules/mime": {
-      "version": "1.6.0",
-      "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
-      "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
-      "dev": true,
-      "bin": {
-        "mime": "cli.js"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/send/node_modules/ms": {
-      "version": "2.1.3",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
-      "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
-      "dev": true
-    },
-    "node_modules/serialize-javascript": {
+    "serialize-javascript": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz",
       "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "randombytes": "^2.1.0"
       }
     },
-    "node_modules/serve-index": {
+    "serve-index": {
       "version": "1.9.1",
       "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
       "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "accepts": "~1.3.4",
         "batch": "0.6.1",
         "debug": "2.6.9",
@@ -14377,236 +11377,201 @@
         "mime-types": "~2.1.17",
         "parseurl": "~1.3.2"
       },
-      "engines": {
-        "node": ">= 0.8.0"
-      }
-    },
-    "node_modules/serve-index/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
       "dependencies": {
-        "ms": "2.0.0"
+        "debug": {
+          "version": "2.6.9",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        },
+        "depd": {
+          "version": "1.1.2",
+          "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
+          "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
+          "dev": true
+        },
+        "http-errors": {
+          "version": "1.6.3",
+          "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
+          "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==",
+          "dev": true,
+          "requires": {
+            "depd": "~1.1.2",
+            "inherits": "2.0.3",
+            "setprototypeof": "1.1.0",
+            "statuses": ">= 1.4.0 < 2"
+          }
+        },
+        "inherits": {
+          "version": "2.0.3",
+          "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+          "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
+          "dev": true
+        },
+        "setprototypeof": {
+          "version": "1.1.0",
+          "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
+          "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
+          "dev": true
+        },
+        "statuses": {
+          "version": "1.5.0",
+          "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
+          "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/serve-index/node_modules/depd": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
-      "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
-    },
-    "node_modules/serve-index/node_modules/http-errors": {
-      "version": "1.6.3",
-      "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
-      "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==",
-      "dev": true,
-      "dependencies": {
-        "depd": "~1.1.2",
-        "inherits": "2.0.3",
-        "setprototypeof": "1.1.0",
-        "statuses": ">= 1.4.0 < 2"
-      },
-      "engines": {
-        "node": ">= 0.6"
-      }
-    },
-    "node_modules/serve-index/node_modules/inherits": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
-      "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
-      "dev": true
-    },
-    "node_modules/serve-index/node_modules/setprototypeof": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
-      "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
-      "dev": true
-    },
-    "node_modules/serve-index/node_modules/statuses": {
-      "version": "1.5.0",
-      "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
-      "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.6"
-      }
-    },
-    "node_modules/serve-static": {
+    "serve-static": {
       "version": "1.15.0",
       "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
       "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "encodeurl": "~1.0.2",
         "escape-html": "~1.0.3",
         "parseurl": "~1.3.3",
         "send": "0.18.0"
-      },
-      "engines": {
-        "node": ">= 0.8.0"
       }
     },
-    "node_modules/set-blocking": {
+    "set-blocking": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
       "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
     },
-    "node_modules/set-value": {
+    "set-value": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
       "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "extend-shallow": "^2.0.1",
         "is-extendable": "^0.1.1",
         "is-plain-object": "^2.0.3",
         "split-string": "^3.0.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/set-value/node_modules/extend-shallow": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
-      "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
-      "dev": true,
       "dependencies": {
-        "is-extendable": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "extend-shallow": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+          "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+          "dev": true,
+          "requires": {
+            "is-extendable": "^0.1.0"
+          }
+        }
       }
     },
-    "node_modules/setimmediate": {
+    "setimmediate": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
       "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==",
       "dev": true
     },
-    "node_modules/setprototypeof": {
+    "setprototypeof": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
       "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
       "dev": true
     },
-    "node_modules/sha.js": {
+    "sha.js": {
       "version": "2.4.11",
       "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
       "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "^2.0.1",
         "safe-buffer": "^5.0.1"
-      },
-      "bin": {
-        "sha.js": "bin.js"
       }
     },
-    "node_modules/shebang-command": {
+    "shebang-command": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
       "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "shebang-regex": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/shebang-regex": {
+    "shebang-regex": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
       "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/shell-quote": {
+    "shell-quote": {
       "version": "1.8.1",
       "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz",
       "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==",
-      "dev": true,
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/side-channel": {
+    "side-channel": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
       "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.0",
         "get-intrinsic": "^1.0.2",
         "object-inspect": "^1.9.0"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/signal-exit": {
+    "signal-exit": {
       "version": "3.0.7",
       "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
       "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
     },
-    "node_modules/simple-swizzle": {
+    "simple-swizzle": {
       "version": "0.2.2",
       "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
       "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-arrayish": "^0.3.1"
+      },
+      "dependencies": {
+        "is-arrayish": {
+          "version": "0.3.2",
+          "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
+          "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/simple-swizzle/node_modules/is-arrayish": {
-      "version": "0.3.2",
-      "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
-      "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==",
-      "dev": true
-    },
-    "node_modules/slash": {
+    "slash": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz",
       "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/slice-ansi": {
+    "slice-ansi": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz",
       "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "is-fullwidth-code-point": "^2.0.0"
       },
-      "engines": {
-        "node": ">=4"
+      "dependencies": {
+        "is-fullwidth-code-point": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+          "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+          "dev": true,
+          "optional": true
+        }
       }
     },
-    "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
-      "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/snapdragon": {
+    "snapdragon": {
       "version": "0.8.2",
       "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
       "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "base": "^0.11.1",
         "debug": "^2.2.0",
         "define-property": "^0.2.5",
@@ -14616,241 +11581,199 @@
         "source-map-resolve": "^0.5.0",
         "use": "^3.1.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
+      "dependencies": {
+        "debug": {
+          "version": "2.6.9",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        },
+        "define-property": {
+          "version": "0.2.5",
+          "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+          "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+          "dev": true,
+          "requires": {
+            "is-descriptor": "^0.1.0"
+          }
+        },
+        "extend-shallow": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+          "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
+          "dev": true,
+          "requires": {
+            "is-extendable": "^0.1.0"
+          }
+        },
+        "source-map": {
+          "version": "0.5.7",
+          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
+          "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/snapdragon-node": {
+    "snapdragon-node": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
       "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "define-property": "^1.0.0",
         "isobject": "^3.0.0",
         "snapdragon-util": "^3.0.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/snapdragon-node/node_modules/define-property": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
-      "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
-      "dev": true,
       "dependencies": {
-        "is-descriptor": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "define-property": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+          "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
+          "dev": true,
+          "requires": {
+            "is-descriptor": "^1.0.0"
+          }
+        },
+        "is-accessor-descriptor": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+          "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+          "dev": true,
+          "requires": {
+            "kind-of": "^6.0.0"
+          }
+        },
+        "is-data-descriptor": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+          "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+          "dev": true,
+          "requires": {
+            "kind-of": "^6.0.0"
+          }
+        },
+        "is-descriptor": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+          "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+          "dev": true,
+          "requires": {
+            "is-accessor-descriptor": "^1.0.0",
+            "is-data-descriptor": "^1.0.0",
+            "kind-of": "^6.0.2"
+          }
+        }
       }
     },
-    "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
-      "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
-      "dev": true,
-      "dependencies": {
-        "kind-of": "^6.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/snapdragon-node/node_modules/is-data-descriptor": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
-      "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
-      "dev": true,
-      "dependencies": {
-        "kind-of": "^6.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/snapdragon-node/node_modules/is-descriptor": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
-      "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
-      "dev": true,
-      "dependencies": {
-        "is-accessor-descriptor": "^1.0.0",
-        "is-data-descriptor": "^1.0.0",
-        "kind-of": "^6.0.2"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/snapdragon-util": {
+    "snapdragon-util": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
       "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "kind-of": "^3.2.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/snapdragon-util/node_modules/is-buffer": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
-      "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
-      "dev": true
-    },
-    "node_modules/snapdragon-util/node_modules/kind-of": {
-      "version": "3.2.2",
-      "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
-      "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
-      "dev": true,
       "dependencies": {
-        "is-buffer": "^1.1.5"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "is-buffer": {
+          "version": "1.1.6",
+          "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+          "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+          "dev": true
+        },
+        "kind-of": {
+          "version": "3.2.2",
+          "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+          "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+          "dev": true,
+          "requires": {
+            "is-buffer": "^1.1.5"
+          }
+        }
       }
     },
-    "node_modules/snapdragon/node_modules/debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
-      "dependencies": {
-        "ms": "2.0.0"
-      }
-    },
-    "node_modules/snapdragon/node_modules/define-property": {
-      "version": "0.2.5",
-      "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
-      "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
-      "dev": true,
-      "dependencies": {
-        "is-descriptor": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/snapdragon/node_modules/extend-shallow": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
-      "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
-      "dev": true,
-      "dependencies": {
-        "is-extendable": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/snapdragon/node_modules/source-map": {
-      "version": "0.5.7",
-      "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
-      "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/sockjs": {
+    "sockjs": {
       "version": "0.3.24",
       "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz",
       "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "faye-websocket": "^0.11.3",
         "uuid": "^8.3.2",
         "websocket-driver": "^0.7.4"
+      },
+      "dependencies": {
+        "uuid": {
+          "version": "8.3.2",
+          "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
+          "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+          "dev": true
+        }
       }
     },
-    "node_modules/sockjs-client": {
+    "sockjs-client": {
       "version": "1.6.1",
       "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.6.1.tgz",
       "integrity": "sha512-2g0tjOR+fRs0amxENLi/q5TiJTqY+WXFOzb5UwXndlK6TO3U/mirZznpx6w34HVMoc3g7cY24yC/ZMIYnDlfkw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "debug": "^3.2.7",
         "eventsource": "^2.0.2",
         "faye-websocket": "^0.11.4",
         "inherits": "^2.0.4",
         "url-parse": "^1.5.10"
       },
-      "engines": {
-        "node": ">=12"
-      },
-      "funding": {
-        "url": "https://tidelift.com/funding/github/npm/sockjs-client"
-      }
-    },
-    "node_modules/sockjs-client/node_modules/debug": {
-      "version": "3.2.7",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
-      "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
-      "dev": true,
       "dependencies": {
-        "ms": "^2.1.1"
+        "debug": {
+          "version": "3.2.7",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+          "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+          "dev": true,
+          "requires": {
+            "ms": "^2.1.1"
+          }
+        },
+        "ms": {
+          "version": "2.1.3",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+          "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/sockjs-client/node_modules/ms": {
-      "version": "2.1.3",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
-      "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
-      "dev": true
-    },
-    "node_modules/sockjs/node_modules/uuid": {
-      "version": "8.3.2",
-      "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
-      "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
-      "dev": true,
-      "bin": {
-        "uuid": "dist/bin/uuid"
-      }
-    },
-    "node_modules/sort-keys": {
+    "sort-keys": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz",
       "integrity": "sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-plain-obj": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/source-list-map": {
+    "source-list-map": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
       "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==",
       "dev": true
     },
-    "node_modules/source-map": {
+    "source-map": {
       "version": "0.6.1",
       "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
-      "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
     },
-    "node_modules/source-map-js": {
+    "source-map-js": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
-      "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
     },
-    "node_modules/source-map-resolve": {
+    "source-map-resolve": {
       "version": "0.5.3",
       "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
       "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
-      "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "atob": "^2.1.2",
         "decode-uri-component": "^0.2.0",
         "resolve-url": "^0.2.1",
@@ -14858,168 +11781,146 @@
         "urix": "^0.1.0"
       }
     },
-    "node_modules/source-map-support": {
+    "source-map-support": {
       "version": "0.5.21",
       "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
       "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "buffer-from": "^1.0.0",
         "source-map": "^0.6.0"
       }
     },
-    "node_modules/source-map-url": {
+    "source-map-url": {
       "version": "0.4.1",
       "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz",
       "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==",
-      "deprecated": "See https://github.com/lydell/source-map-url#deprecated",
       "dev": true
     },
-    "node_modules/spdx-correct": {
+    "spdx-correct": {
       "version": "3.2.0",
       "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz",
       "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "spdx-expression-parse": "^3.0.0",
         "spdx-license-ids": "^3.0.0"
       }
     },
-    "node_modules/spdx-exceptions": {
+    "spdx-exceptions": {
       "version": "2.3.0",
       "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
       "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
       "dev": true
     },
-    "node_modules/spdx-expression-parse": {
+    "spdx-expression-parse": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
       "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "spdx-exceptions": "^2.1.0",
         "spdx-license-ids": "^3.0.0"
       }
     },
-    "node_modules/spdx-license-ids": {
+    "spdx-license-ids": {
       "version": "3.0.13",
       "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz",
       "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==",
       "dev": true
     },
-    "node_modules/spdy": {
+    "spdy": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz",
       "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "debug": "^4.1.0",
         "handle-thing": "^2.0.0",
         "http-deceiver": "^1.2.7",
         "select-hose": "^2.0.0",
         "spdy-transport": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.0.0"
+      "dependencies": {
+        "debug": {
+          "version": "4.3.4",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+          "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+          "dev": true,
+          "requires": {
+            "ms": "2.1.2"
+          }
+        },
+        "ms": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+          "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+          "dev": true
+        }
       }
     },
-    "node_modules/spdy-transport": {
+    "spdy-transport": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz",
       "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "debug": "^4.1.0",
         "detect-node": "^2.0.4",
         "hpack.js": "^2.1.6",
         "obuf": "^1.1.2",
         "readable-stream": "^3.0.6",
         "wbuf": "^1.7.3"
-      }
-    },
-    "node_modules/spdy-transport/node_modules/debug": {
-      "version": "4.3.4",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
-      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
-      "dev": true,
+      },
       "dependencies": {
-        "ms": "2.1.2"
-      },
-      "engines": {
-        "node": ">=6.0"
-      },
-      "peerDependenciesMeta": {
-        "supports-color": {
-          "optional": true
+        "debug": {
+          "version": "4.3.4",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+          "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+          "dev": true,
+          "requires": {
+            "ms": "2.1.2"
+          }
+        },
+        "ms": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+          "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+          "dev": true
+        },
+        "readable-stream": {
+          "version": "3.6.2",
+          "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+          "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+          "dev": true,
+          "requires": {
+            "inherits": "^2.0.3",
+            "string_decoder": "^1.1.1",
+            "util-deprecate": "^1.0.1"
+          }
         }
       }
     },
-    "node_modules/spdy-transport/node_modules/ms": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
-      "dev": true
-    },
-    "node_modules/spdy-transport/node_modules/readable-stream": {
-      "version": "3.6.2",
-      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
-      "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
-      "dev": true,
-      "dependencies": {
-        "inherits": "^2.0.3",
-        "string_decoder": "^1.1.1",
-        "util-deprecate": "^1.0.1"
-      },
-      "engines": {
-        "node": ">= 6"
-      }
-    },
-    "node_modules/spdy/node_modules/debug": {
-      "version": "4.3.4",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
-      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
-      "dev": true,
-      "dependencies": {
-        "ms": "2.1.2"
-      },
-      "engines": {
-        "node": ">=6.0"
-      },
-      "peerDependenciesMeta": {
-        "supports-color": {
-          "optional": true
-        }
-      }
-    },
-    "node_modules/spdy/node_modules/ms": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
-      "dev": true
-    },
-    "node_modules/split-string": {
+    "split-string": {
       "version": "3.1.0",
       "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
       "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "extend-shallow": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/sprintf-js": {
+    "sprintf-js": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
       "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
       "dev": true
     },
-    "node_modules/sshpk": {
+    "sshpk": {
       "version": "1.17.0",
       "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz",
       "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==",
-      "dependencies": {
+      "requires": {
         "asn1": "~0.2.3",
         "assert-plus": "^1.0.0",
         "bcrypt-pbkdf": "^1.0.0",
@@ -15029,116 +11930,97 @@
         "jsbn": "~0.1.0",
         "safer-buffer": "^2.0.2",
         "tweetnacl": "~0.14.0"
-      },
-      "bin": {
-        "sshpk-conv": "bin/sshpk-conv",
-        "sshpk-sign": "bin/sshpk-sign",
-        "sshpk-verify": "bin/sshpk-verify"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/ssri": {
+    "ssri": {
       "version": "6.0.2",
       "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz",
       "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "figgy-pudding": "^3.5.1"
       }
     },
-    "node_modules/stable": {
+    "stable": {
       "version": "0.1.8",
       "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz",
       "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==",
-      "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility",
       "dev": true
     },
-    "node_modules/stackframe": {
+    "stackframe": {
       "version": "1.3.4",
       "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz",
       "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==",
       "dev": true
     },
-    "node_modules/static-extend": {
+    "static-extend": {
       "version": "0.1.2",
       "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
       "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "define-property": "^0.2.5",
         "object-copy": "^0.1.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/static-extend/node_modules/define-property": {
-      "version": "0.2.5",
-      "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
-      "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
-      "dev": true,
       "dependencies": {
-        "is-descriptor": "^0.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "define-property": {
+          "version": "0.2.5",
+          "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+          "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
+          "dev": true,
+          "requires": {
+            "is-descriptor": "^0.1.0"
+          }
+        }
       }
     },
-    "node_modules/statuses": {
+    "statuses": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
       "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8"
-      }
+      "dev": true
     },
-    "node_modules/stdout-stream": {
+    "stdout-stream": {
       "version": "1.4.1",
       "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz",
       "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "readable-stream": "^2.0.1"
       }
     },
-    "node_modules/stealthy-require": {
+    "stealthy-require": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz",
       "integrity": "sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/stream-browserify": {
+    "stream-browserify": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz",
       "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "~2.0.1",
         "readable-stream": "^2.0.2"
       }
     },
-    "node_modules/stream-each": {
+    "stream-each": {
       "version": "1.2.3",
       "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz",
       "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "end-of-stream": "^1.1.0",
         "stream-shift": "^1.0.0"
       }
     },
-    "node_modules/stream-http": {
+    "stream-http": {
       "version": "2.8.3",
       "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz",
       "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "builtin-status-codes": "^3.0.0",
         "inherits": "^2.0.1",
         "readable-stream": "^2.3.6",
@@ -15146,256 +12028,191 @@
         "xtend": "^4.0.0"
       }
     },
-    "node_modules/stream-shift": {
+    "stream-shift": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz",
       "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==",
       "dev": true
     },
-    "node_modules/strict-uri-encode": {
+    "strict-uri-encode": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz",
       "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/string_decoder": {
-      "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
-      "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
-      "dependencies": {
-        "safe-buffer": "~5.1.0"
-      }
-    },
-    "node_modules/string-width": {
+    "string-width": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
       "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==",
-      "dependencies": {
+      "requires": {
         "code-point-at": "^1.0.0",
         "is-fullwidth-code-point": "^1.0.0",
         "strip-ansi": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/string.prototype.padend": {
+    "string.prototype.padend": {
       "version": "3.1.4",
       "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.4.tgz",
       "integrity": "sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.4",
         "es-abstract": "^1.20.4"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/string.prototype.padstart": {
+    "string.prototype.padstart": {
       "version": "3.1.4",
       "resolved": "https://registry.npmjs.org/string.prototype.padstart/-/string.prototype.padstart-3.1.4.tgz",
       "integrity": "sha512-XqOHj8horGsF+zwxraBvMTkBFM28sS/jHBJajh17JtJKA92qazidiQbLosV4UA18azvLOVKYo/E3g3T9Y5826w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.4",
         "es-abstract": "^1.20.4"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/string.prototype.trim": {
+    "string.prototype.trim": {
       "version": "1.2.7",
       "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz",
       "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.4",
         "es-abstract": "^1.20.4"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/string.prototype.trimend": {
+    "string.prototype.trimend": {
       "version": "1.0.6",
       "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz",
       "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.4",
         "es-abstract": "^1.20.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/string.prototype.trimstart": {
+    "string.prototype.trimstart": {
       "version": "1.0.6",
       "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz",
       "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "define-properties": "^1.1.4",
         "es-abstract": "^1.20.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/strip-ansi": {
+    "string_decoder": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+      "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+      "requires": {
+        "safe-buffer": "~5.1.0"
+      }
+    },
+    "strip-ansi": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
       "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
-      "dependencies": {
+      "requires": {
         "ansi-regex": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/strip-eof": {
+    "strip-eof": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
       "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/strip-final-newline": {
+    "strip-final-newline": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
       "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/strip-indent": {
+    "strip-indent": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz",
       "integrity": "sha512-RsSNPLpq6YUL7QYy44RnPVTn/lcVZtb48Uof3X5JLbF4zD/Gs7ZFDv2HWol+leoQN2mT86LAzSshGfkTlSOpsA==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/strip-json-comments": {
+    "strip-json-comments": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
       "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
       "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "optional": true
     },
-    "node_modules/stylehacks": {
+    "stylehacks": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz",
       "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "browserslist": "^4.0.0",
         "postcss": "^7.0.0",
         "postcss-selector-parser": "^3.0.0"
       },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
-    "node_modules/stylehacks/node_modules/picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
-      "dev": true
-    },
-    "node_modules/stylehacks/node_modules/postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
-      "dev": true,
       "dependencies": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
-      },
-      "engines": {
-        "node": ">=6.0.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/postcss/"
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
+        "postcss-selector-parser": {
+          "version": "3.1.2",
+          "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
+          "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
+          "dev": true,
+          "requires": {
+            "dot-prop": "^5.2.0",
+            "indexes-of": "^1.0.1",
+            "uniq": "^1.0.1"
+          }
+        }
       }
     },
-    "node_modules/stylehacks/node_modules/postcss-selector-parser": {
-      "version": "3.1.2",
-      "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
-      "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
-      "dev": true,
-      "dependencies": {
-        "dot-prop": "^5.2.0",
-        "indexes-of": "^1.0.1",
-        "uniq": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/supports-color": {
+    "supports-color": {
       "version": "5.5.0",
       "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
       "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has-flag": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/supports-preserve-symlinks-flag": {
+    "supports-preserve-symlinks-flag": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
       "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
-      }
+      "dev": true
     },
-    "node_modules/svg-tags": {
+    "svg-tags": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz",
       "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==",
       "dev": true
     },
-    "node_modules/svgo": {
+    "svgo": {
       "version": "1.3.2",
       "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz",
       "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==",
-      "deprecated": "This SVGO version is no longer supported. Upgrade to v2.x.x.",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "chalk": "^2.4.1",
         "coa": "^2.0.2",
         "css-select": "^2.0.0",
@@ -15409,118 +12226,105 @@
         "stable": "^0.1.8",
         "unquote": "~1.1.1",
         "util.promisify": "~1.0.0"
-      },
-      "bin": {
-        "svgo": "bin/svgo"
-      },
-      "engines": {
-        "node": ">=4.0.0"
       }
     },
-    "node_modules/table": {
+    "table": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz",
       "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "ajv": "^5.2.3",
         "ajv-keywords": "^2.1.0",
         "chalk": "^2.1.0",
         "lodash": "^4.17.4",
         "slice-ansi": "1.0.0",
         "string-width": "^2.1.1"
-      }
-    },
-    "node_modules/table/node_modules/ajv": {
-      "version": "5.5.2",
-      "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
-      "integrity": "sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw==",
-      "dev": true,
-      "dependencies": {
-        "co": "^4.6.0",
-        "fast-deep-equal": "^1.0.0",
-        "fast-json-stable-stringify": "^2.0.0",
-        "json-schema-traverse": "^0.3.0"
-      }
-    },
-    "node_modules/table/node_modules/ajv-keywords": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz",
-      "integrity": "sha512-ZFztHzVRdGLAzJmpUT9LNFLe1YiVOEylcaNpEutM26PVTCtOD919IMfD01CgbRouB42Dd9atjx1HseC15DgOZA==",
-      "dev": true,
-      "peerDependencies": {
-        "ajv": "^5.0.0"
-      }
-    },
-    "node_modules/table/node_modules/ansi-regex": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz",
-      "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/table/node_modules/fast-deep-equal": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
-      "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==",
-      "dev": true
-    },
-    "node_modules/table/node_modules/is-fullwidth-code-point": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
-      "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/table/node_modules/json-schema-traverse": {
-      "version": "0.3.1",
-      "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
-      "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==",
-      "dev": true
-    },
-    "node_modules/table/node_modules/string-width": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
-      "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
-      "dev": true,
-      "dependencies": {
-        "is-fullwidth-code-point": "^2.0.0",
-        "strip-ansi": "^4.0.0"
       },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/table/node_modules/strip-ansi": {
-      "version": "4.0.0",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
-      "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==",
-      "dev": true,
       "dependencies": {
-        "ansi-regex": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=4"
+        "ajv": {
+          "version": "5.5.2",
+          "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
+          "integrity": "sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "co": "^4.6.0",
+            "fast-deep-equal": "^1.0.0",
+            "fast-json-stable-stringify": "^2.0.0",
+            "json-schema-traverse": "^0.3.0"
+          }
+        },
+        "ajv-keywords": {
+          "version": "2.1.1",
+          "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz",
+          "integrity": "sha512-ZFztHzVRdGLAzJmpUT9LNFLe1YiVOEylcaNpEutM26PVTCtOD919IMfD01CgbRouB42Dd9atjx1HseC15DgOZA==",
+          "dev": true,
+          "optional": true
+        },
+        "ansi-regex": {
+          "version": "3.0.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz",
+          "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==",
+          "dev": true,
+          "optional": true
+        },
+        "fast-deep-equal": {
+          "version": "1.1.0",
+          "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
+          "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==",
+          "dev": true,
+          "optional": true
+        },
+        "is-fullwidth-code-point": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+          "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+          "dev": true,
+          "optional": true
+        },
+        "json-schema-traverse": {
+          "version": "0.3.1",
+          "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
+          "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==",
+          "dev": true,
+          "optional": true
+        },
+        "string-width": {
+          "version": "2.1.1",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
+          "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "is-fullwidth-code-point": "^2.0.0",
+            "strip-ansi": "^4.0.0"
+          }
+        },
+        "strip-ansi": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
+          "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ansi-regex": "^3.0.0"
+          }
+        }
       }
     },
-    "node_modules/tapable": {
+    "tapable": {
       "version": "1.1.3",
       "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz",
       "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
+      "dev": true
     },
-    "node_modules/tar": {
+    "tar": {
       "version": "4.4.19",
       "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz",
       "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==",
-      "dependencies": {
+      "requires": {
         "chownr": "^1.1.4",
         "fs-minipass": "^1.2.7",
         "minipass": "^2.9.0",
@@ -15529,52 +12333,39 @@
         "safe-buffer": "^5.2.1",
         "yallist": "^3.1.1"
       },
-      "engines": {
-        "node": ">=4.5"
+      "dependencies": {
+        "safe-buffer": {
+          "version": "5.2.1",
+          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+          "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
+        }
       }
     },
-    "node_modules/tar/node_modules/safe-buffer": {
-      "version": "5.2.1",
-      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
-      "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
-      "funding": [
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/feross"
-        },
-        {
-          "type": "patreon",
-          "url": "https://www.patreon.com/feross"
-        },
-        {
-          "type": "consulting",
-          "url": "https://feross.org/support"
-        }
-      ]
-    },
-    "node_modules/terser": {
+    "terser": {
       "version": "4.8.1",
       "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz",
       "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "commander": "^2.20.0",
         "source-map": "~0.6.1",
         "source-map-support": "~0.5.12"
       },
-      "bin": {
-        "terser": "bin/terser"
-      },
-      "engines": {
-        "node": ">=6.0.0"
+      "dependencies": {
+        "commander": {
+          "version": "2.20.3",
+          "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+          "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/terser-webpack-plugin": {
+    "terser-webpack-plugin": {
       "version": "1.4.5",
       "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz",
       "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cacache": "^12.0.2",
         "find-cache-dir": "^2.1.0",
         "is-wsl": "^1.1.0",
@@ -15585,955 +12376,763 @@
         "webpack-sources": "^1.4.0",
         "worker-farm": "^1.7.0"
       },
-      "engines": {
-        "node": ">= 6.9.0"
-      },
-      "peerDependencies": {
-        "webpack": "^4.0.0"
-      }
-    },
-    "node_modules/terser-webpack-plugin/node_modules/find-cache-dir": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz",
-      "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==",
-      "dev": true,
       "dependencies": {
-        "commondir": "^1.0.1",
-        "make-dir": "^2.0.0",
-        "pkg-dir": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
+        "find-cache-dir": {
+          "version": "2.1.0",
+          "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz",
+          "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==",
+          "dev": true,
+          "requires": {
+            "commondir": "^1.0.1",
+            "make-dir": "^2.0.0",
+            "pkg-dir": "^3.0.0"
+          }
+        },
+        "find-up": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+          "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+          "dev": true,
+          "requires": {
+            "locate-path": "^3.0.0"
+          }
+        },
+        "locate-path": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+          "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+          "dev": true,
+          "requires": {
+            "p-locate": "^3.0.0",
+            "path-exists": "^3.0.0"
+          }
+        },
+        "make-dir": {
+          "version": "2.1.0",
+          "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
+          "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
+          "dev": true,
+          "requires": {
+            "pify": "^4.0.1",
+            "semver": "^5.6.0"
+          }
+        },
+        "p-limit": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+          "dev": true,
+          "requires": {
+            "p-try": "^2.0.0"
+          }
+        },
+        "p-locate": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+          "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+          "dev": true,
+          "requires": {
+            "p-limit": "^2.0.0"
+          }
+        },
+        "p-try": {
+          "version": "2.2.0",
+          "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+          "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+          "dev": true
+        },
+        "pkg-dir": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
+          "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
+          "dev": true,
+          "requires": {
+            "find-up": "^3.0.0"
+          }
+        },
+        "schema-utils": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
+          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
+          "dev": true,
+          "requires": {
+            "ajv": "^6.1.0",
+            "ajv-errors": "^1.0.0",
+            "ajv-keywords": "^3.1.0"
+          }
+        }
       }
     },
-    "node_modules/terser-webpack-plugin/node_modules/find-up": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
-      "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
-      "dev": true,
-      "dependencies": {
-        "locate-path": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/terser-webpack-plugin/node_modules/locate-path": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
-      "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
-      "dev": true,
-      "dependencies": {
-        "p-locate": "^3.0.0",
-        "path-exists": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/terser-webpack-plugin/node_modules/make-dir": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
-      "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
-      "dev": true,
-      "dependencies": {
-        "pify": "^4.0.1",
-        "semver": "^5.6.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/terser-webpack-plugin/node_modules/p-limit": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
-      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
-      "dev": true,
-      "dependencies": {
-        "p-try": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/terser-webpack-plugin/node_modules/p-locate": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
-      "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
-      "dev": true,
-      "dependencies": {
-        "p-limit": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/terser-webpack-plugin/node_modules/p-try": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
-      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/terser-webpack-plugin/node_modules/pkg-dir": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
-      "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
-      "dev": true,
-      "dependencies": {
-        "find-up": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/terser-webpack-plugin/node_modules/schema-utils": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
-      "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
-      "dev": true,
-      "dependencies": {
-        "ajv": "^6.1.0",
-        "ajv-errors": "^1.0.0",
-        "ajv-keywords": "^3.1.0"
-      },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/terser/node_modules/commander": {
-      "version": "2.20.3",
-      "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
-      "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
-      "dev": true
-    },
-    "node_modules/text-table": {
+    "text-table": {
       "version": "0.2.0",
       "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
       "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/thenify": {
+    "thenify": {
       "version": "3.3.1",
       "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz",
       "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "any-promise": "^1.0.0"
       }
     },
-    "node_modules/thenify-all": {
+    "thenify-all": {
       "version": "1.6.0",
       "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz",
       "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "thenify": ">= 3.1.0 < 4"
-      },
-      "engines": {
-        "node": ">=0.8"
       }
     },
-    "node_modules/thread-loader": {
+    "thread-loader": {
       "version": "2.1.3",
       "resolved": "https://registry.npmjs.org/thread-loader/-/thread-loader-2.1.3.tgz",
       "integrity": "sha512-wNrVKH2Lcf8ZrWxDF/khdlLlsTMczdcwPA9VEK4c2exlEPynYWxi9op3nPTo5lAnDIkE0rQEB3VBP+4Zncc9Hg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "loader-runner": "^2.3.1",
         "loader-utils": "^1.1.0",
         "neo-async": "^2.6.0"
       },
-      "engines": {
-        "node": ">= 6.9.0 <7.0.0 || >= 8.9.0"
-      },
-      "peerDependencies": {
-        "webpack": "^2.0.0 || ^3.0.0 || ^4.0.0"
-      }
-    },
-    "node_modules/thread-loader/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
       "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        }
       }
     },
-    "node_modules/thread-loader/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/throttle-debounce": {
+    "throttle-debounce": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-1.1.0.tgz",
-      "integrity": "sha512-XH8UiPCQcWNuk2LYePibW/4qL97+ZQ1AN3FNXwZRBNPPowo/NRU5fAlDCSNBJIYCKbioZfuYtMhG4quqoJhVzg==",
-      "engines": {
-        "node": ">=4"
-      }
+      "integrity": "sha512-XH8UiPCQcWNuk2LYePibW/4qL97+ZQ1AN3FNXwZRBNPPowo/NRU5fAlDCSNBJIYCKbioZfuYtMhG4quqoJhVzg=="
     },
-    "node_modules/through": {
+    "through": {
       "version": "2.3.8",
       "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
       "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
-    "node_modules/through2": {
+    "through2": {
       "version": "2.0.5",
       "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
       "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "readable-stream": "~2.3.6",
         "xtend": "~4.0.1"
       }
     },
-    "node_modules/thunky": {
+    "thunky": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz",
       "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==",
       "dev": true
     },
-    "node_modules/timers-browserify": {
+    "timers-browserify": {
       "version": "2.0.12",
       "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz",
       "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "setimmediate": "^1.0.4"
-      },
-      "engines": {
-        "node": ">=0.6.0"
       }
     },
-    "node_modules/timsort": {
+    "timsort": {
       "version": "0.3.0",
       "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz",
       "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==",
       "dev": true
     },
-    "node_modules/tmp": {
+    "tmp": {
       "version": "0.0.33",
       "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
       "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "os-tmpdir": "~1.0.2"
-      },
-      "engines": {
-        "node": ">=0.6.0"
       }
     },
-    "node_modules/to-arraybuffer": {
+    "to-arraybuffer": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
       "integrity": "sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==",
       "dev": true
     },
-    "node_modules/to-fast-properties": {
+    "to-fast-properties": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
       "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/to-object-path": {
+    "to-object-path": {
       "version": "0.3.0",
       "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
       "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "kind-of": "^3.0.2"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/to-object-path/node_modules/is-buffer": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
-      "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
-      "dev": true
-    },
-    "node_modules/to-object-path/node_modules/kind-of": {
-      "version": "3.2.2",
-      "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
-      "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
-      "dev": true,
       "dependencies": {
-        "is-buffer": "^1.1.5"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "is-buffer": {
+          "version": "1.1.6",
+          "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+          "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+          "dev": true
+        },
+        "kind-of": {
+          "version": "3.2.2",
+          "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+          "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+          "dev": true,
+          "requires": {
+            "is-buffer": "^1.1.5"
+          }
+        }
       }
     },
-    "node_modules/to-regex": {
+    "to-regex": {
       "version": "3.0.2",
       "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
       "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "define-property": "^2.0.2",
         "extend-shallow": "^3.0.2",
         "regex-not": "^1.0.2",
         "safe-regex": "^1.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/to-regex-range": {
+    "to-regex-range": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
       "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-number": "^3.0.0",
         "repeat-string": "^1.6.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/toidentifier": {
+    "toidentifier": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
       "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.6"
-      }
+      "dev": true
     },
-    "node_modules/toposort": {
+    "toposort": {
       "version": "1.0.7",
       "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz",
       "integrity": "sha512-FclLrw8b9bMWf4QlCJuHBEVhSRsqDj6u3nIjAzPeJvgl//1hBlffdlk0MALceL14+koWEdU4ofRAXofbODxQzg==",
       "dev": true
     },
-    "node_modules/tough-cookie": {
+    "tough-cookie": {
       "version": "2.5.0",
       "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
       "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
-      "dependencies": {
+      "requires": {
         "psl": "^1.1.28",
         "punycode": "^2.1.1"
-      },
-      "engines": {
-        "node": ">=0.8"
       }
     },
-    "node_modules/trim-newlines": {
+    "trim-newlines": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz",
       "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
+      "dev": true
     },
-    "node_modules/true-case-path": {
+    "true-case-path": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz",
       "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "glob": "^7.1.2"
       }
     },
-    "node_modules/tryer": {
+    "tryer": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz",
       "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==",
       "dev": true
     },
-    "node_modules/tty-browserify": {
+    "tty-browserify": {
       "version": "0.0.0",
       "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
       "integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==",
       "dev": true
     },
-    "node_modules/tunnel-agent": {
+    "tunnel-agent": {
       "version": "0.6.0",
       "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
       "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
-      "dependencies": {
+      "requires": {
         "safe-buffer": "^5.0.1"
-      },
-      "engines": {
-        "node": "*"
       }
     },
-    "node_modules/tweetnacl": {
+    "tweetnacl": {
       "version": "0.14.5",
       "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
       "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA=="
     },
-    "node_modules/type-check": {
+    "type-check": {
       "version": "0.3.2",
       "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
       "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "prelude-ls": "~1.1.2"
-      },
-      "engines": {
-        "node": ">= 0.8.0"
       }
     },
-    "node_modules/type-detect": {
+    "type-detect": {
       "version": "4.0.8",
       "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
       "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/type-fest": {
+    "type-fest": {
       "version": "0.6.0",
       "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
       "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
+      "dev": true
     },
-    "node_modules/type-is": {
+    "type-is": {
       "version": "1.6.18",
       "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
       "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "media-typer": "0.3.0",
         "mime-types": "~2.1.24"
-      },
-      "engines": {
-        "node": ">= 0.6"
       }
     },
-    "node_modules/typed-array-length": {
+    "typed-array-length": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz",
       "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "for-each": "^0.3.3",
         "is-typed-array": "^1.1.9"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/typedarray": {
+    "typedarray": {
       "version": "0.0.6",
       "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
       "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==",
       "dev": true
     },
-    "node_modules/uglify-js": {
+    "uglify-js": {
       "version": "3.4.10",
       "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz",
       "integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "commander": "~2.19.0",
         "source-map": "~0.6.1"
       },
-      "bin": {
-        "uglifyjs": "bin/uglifyjs"
-      },
-      "engines": {
-        "node": ">=0.8.0"
+      "dependencies": {
+        "commander": {
+          "version": "2.19.0",
+          "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz",
+          "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==",
+          "dev": true
+        }
       }
     },
-    "node_modules/uglify-js/node_modules/commander": {
-      "version": "2.19.0",
-      "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz",
-      "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==",
-      "dev": true
-    },
-    "node_modules/unbox-primitive": {
+    "unbox-primitive": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
       "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "call-bind": "^1.0.2",
         "has-bigints": "^1.0.2",
         "has-symbols": "^1.0.3",
         "which-boxed-primitive": "^1.0.2"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/unicode-canonical-property-names-ecmascript": {
+    "unicode-canonical-property-names-ecmascript": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz",
       "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/unicode-match-property-ecmascript": {
+    "unicode-match-property-ecmascript": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz",
       "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "unicode-canonical-property-names-ecmascript": "^2.0.0",
         "unicode-property-aliases-ecmascript": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=4"
       }
     },
-    "node_modules/unicode-match-property-value-ecmascript": {
+    "unicode-match-property-value-ecmascript": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz",
       "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/unicode-property-aliases-ecmascript": {
+    "unicode-property-aliases-ecmascript": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz",
       "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
+      "dev": true
     },
-    "node_modules/union-value": {
+    "union-value": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
       "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "arr-union": "^3.1.0",
         "get-value": "^2.0.6",
         "is-extendable": "^0.1.1",
         "set-value": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/uniq": {
+    "uniq": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
       "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==",
       "dev": true
     },
-    "node_modules/uniqs": {
+    "uniqs": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz",
       "integrity": "sha512-mZdDpf3vBV5Efh29kMw5tXoup/buMgxLzOt/XKFKcVmi+15ManNQWr6HfZ2aiZTYlYixbdNJ0KFmIZIv52tHSQ==",
       "dev": true
     },
-    "node_modules/unique-filename": {
+    "unique-filename": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz",
       "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "unique-slug": "^2.0.0"
       }
     },
-    "node_modules/unique-slug": {
+    "unique-slug": {
       "version": "2.0.2",
       "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz",
       "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "imurmurhash": "^0.1.4"
       }
     },
-    "node_modules/universalify": {
+    "universalify": {
       "version": "0.1.2",
       "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
       "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 4.0.0"
-      }
+      "dev": true
     },
-    "node_modules/unpipe": {
+    "unpipe": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
       "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8"
-      }
+      "dev": true
     },
-    "node_modules/unquote": {
+    "unquote": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz",
       "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==",
       "dev": true
     },
-    "node_modules/unset-value": {
+    "unset-value": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
       "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "has-value": "^0.3.1",
         "isobject": "^3.0.0"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/unset-value/node_modules/has-value": {
-      "version": "0.3.1",
-      "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
-      "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==",
-      "dev": true,
       "dependencies": {
-        "get-value": "^2.0.3",
-        "has-values": "^0.1.4",
-        "isobject": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
+        "has-value": {
+          "version": "0.3.1",
+          "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
+          "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==",
+          "dev": true,
+          "requires": {
+            "get-value": "^2.0.3",
+            "has-values": "^0.1.4",
+            "isobject": "^2.0.0"
+          },
+          "dependencies": {
+            "isobject": {
+              "version": "2.1.0",
+              "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
+              "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==",
+              "dev": true,
+              "requires": {
+                "isarray": "1.0.0"
+              }
+            }
+          }
+        },
+        "has-values": {
+          "version": "0.1.4",
+          "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
+          "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/unset-value/node_modules/has-value/node_modules/isobject": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
-      "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==",
-      "dev": true,
-      "dependencies": {
-        "isarray": "1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/unset-value/node_modules/has-values": {
-      "version": "0.1.4",
-      "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
-      "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/upath": {
+    "upath": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
       "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
-      "dev": true,
-      "engines": {
-        "node": ">=4",
-        "yarn": "*"
-      }
+      "dev": true
     },
-    "node_modules/update-browserslist-db": {
+    "update-browserslist-db": {
       "version": "1.0.11",
       "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz",
       "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==",
       "dev": true,
-      "funding": [
-        {
-          "type": "opencollective",
-          "url": "https://opencollective.com/browserslist"
-        },
-        {
-          "type": "tidelift",
-          "url": "https://tidelift.com/funding/github/npm/browserslist"
-        },
-        {
-          "type": "github",
-          "url": "https://github.com/sponsors/ai"
-        }
-      ],
-      "dependencies": {
+      "requires": {
         "escalade": "^3.1.1",
         "picocolors": "^1.0.0"
-      },
-      "bin": {
-        "update-browserslist-db": "cli.js"
-      },
-      "peerDependencies": {
-        "browserslist": ">= 4.21.0"
       }
     },
-    "node_modules/upper-case": {
+    "upper-case": {
       "version": "1.1.3",
       "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz",
       "integrity": "sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==",
       "dev": true
     },
-    "node_modules/uri-js": {
+    "uri-js": {
       "version": "4.4.1",
       "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
       "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
-      "dependencies": {
+      "requires": {
         "punycode": "^2.1.0"
       }
     },
-    "node_modules/urix": {
+    "urix": {
       "version": "0.1.0",
       "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
       "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==",
-      "deprecated": "Please see https://github.com/lydell/urix#deprecated",
       "dev": true
     },
-    "node_modules/url": {
+    "url": {
       "version": "0.11.0",
       "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
       "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "punycode": "1.3.2",
         "querystring": "0.2.0"
+      },
+      "dependencies": {
+        "punycode": {
+          "version": "1.3.2",
+          "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
+          "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/url-loader": {
+    "url-loader": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.1.2.tgz",
       "integrity": "sha512-dXHkKmw8FhPqu8asTc1puBfe3TehOCo2+RmOOev5suNCIYBcT626kxiWg1NBVkwc4rO8BGa7gP70W7VXuqHrjg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "loader-utils": "^1.1.0",
         "mime": "^2.0.3",
         "schema-utils": "^1.0.0"
       },
-      "engines": {
-        "node": ">= 6.9.0"
-      },
-      "peerDependencies": {
-        "webpack": "^3.0.0 || ^4.0.0"
-      }
-    },
-    "node_modules/url-loader/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
       "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        },
+        "schema-utils": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
+          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
+          "dev": true,
+          "requires": {
+            "ajv": "^6.1.0",
+            "ajv-errors": "^1.0.0",
+            "ajv-keywords": "^3.1.0"
+          }
+        }
       }
     },
-    "node_modules/url-loader/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/url-loader/node_modules/schema-utils": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
-      "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
-      "dev": true,
-      "dependencies": {
-        "ajv": "^6.1.0",
-        "ajv-errors": "^1.0.0",
-        "ajv-keywords": "^3.1.0"
-      },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/url-parse": {
+    "url-parse": {
       "version": "1.5.10",
       "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz",
       "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "querystringify": "^2.1.1",
         "requires-port": "^1.0.0"
       }
     },
-    "node_modules/url/node_modules/punycode": {
-      "version": "1.3.2",
-      "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
-      "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==",
-      "dev": true
-    },
-    "node_modules/use": {
+    "use": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
       "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "dev": true
     },
-    "node_modules/util": {
+    "util": {
       "version": "0.11.1",
       "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz",
       "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "inherits": "2.0.3"
+      },
+      "dependencies": {
+        "inherits": {
+          "version": "2.0.3",
+          "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+          "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
+          "dev": true
+        }
       }
     },
-    "node_modules/util-deprecate": {
+    "util-deprecate": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
       "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
     },
-    "node_modules/util.promisify": {
+    "util.promisify": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz",
       "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "define-properties": "^1.1.3",
         "es-abstract": "^1.17.2",
         "has-symbols": "^1.0.1",
         "object.getownpropertydescriptors": "^2.1.0"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/util/node_modules/inherits": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
-      "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
-      "dev": true
-    },
-    "node_modules/utila": {
+    "utila": {
       "version": "0.4.0",
       "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz",
       "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==",
       "dev": true
     },
-    "node_modules/utils-merge": {
+    "utils-merge": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
       "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.4.0"
-      }
+      "dev": true
     },
-    "node_modules/uuid": {
+    "uuid": {
       "version": "3.4.0",
       "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
-      "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
-      "deprecated": "Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.",
-      "bin": {
-        "uuid": "bin/uuid"
-      }
+      "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A=="
     },
-    "node_modules/validate-npm-package-license": {
+    "validate-npm-package-license": {
       "version": "3.0.4",
       "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
       "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "spdx-correct": "^3.0.0",
         "spdx-expression-parse": "^3.0.0"
       }
     },
-    "node_modules/vary": {
+    "vary": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
       "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
-      "dev": true,
-      "engines": {
-        "node": ">= 0.8"
-      }
+      "dev": true
     },
-    "node_modules/vendors": {
+    "vendors": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz",
       "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==",
-      "dev": true,
-      "funding": {
-        "type": "github",
-        "url": "https://github.com/sponsors/wooorm"
-      }
+      "dev": true
     },
-    "node_modules/verror": {
+    "verror": {
       "version": "1.10.0",
       "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
       "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==",
-      "engines": [
-        "node >=0.6.0"
-      ],
-      "dependencies": {
+      "requires": {
         "assert-plus": "^1.0.0",
         "core-util-is": "1.0.2",
         "extsprintf": "^1.2.0"
+      },
+      "dependencies": {
+        "core-util-is": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+          "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ=="
+        }
       }
     },
-    "node_modules/verror/node_modules/core-util-is": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
-      "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ=="
-    },
-    "node_modules/vm-browserify": {
+    "vm-browserify": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
       "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==",
       "dev": true
     },
-    "node_modules/vue": {
+    "vue": {
       "version": "2.7.14",
       "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.14.tgz",
       "integrity": "sha512-b2qkFyOM0kwqWFuQmgd4o+uHGU7T+2z3T+WQp8UBjADfEv2n4FEMffzBmCKNP0IGzOEEfYjvtcC62xaSKeQDrQ==",
-      "dependencies": {
+      "requires": {
         "@vue/compiler-sfc": "2.7.14",
         "csstype": "^3.1.0"
       }
     },
-    "node_modules/vue-axios": {
+    "vue-axios": {
       "version": "2.1.5",
       "resolved": "https://registry.npmjs.org/vue-axios/-/vue-axios-2.1.5.tgz",
-      "integrity": "sha512-th5xVbInVoyIoe+qY+9GCflEVezxAvztD4xpFF39SRQYqpoKD2qkmX8yv08jJG9a2SgNOCjirjJGSwg/wTrbmA==",
-      "peerDependencies": {
-        "vue": ">= 1.0.0"
-      }
+      "integrity": "sha512-th5xVbInVoyIoe+qY+9GCflEVezxAvztD4xpFF39SRQYqpoKD2qkmX8yv08jJG9a2SgNOCjirjJGSwg/wTrbmA=="
     },
-    "node_modules/vue-eslint-parser": {
+    "vue-eslint-parser": {
       "version": "2.0.3",
       "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-2.0.3.tgz",
       "integrity": "sha512-ZezcU71Owm84xVF6gfurBQUGg8WQ+WZGxgDEQu1IHFBZNx7BFZg3L1yHxrCBNNwbwFtE1GuvfJKMtb6Xuwc/Bw==",
       "dev": true,
       "optional": true,
-      "dependencies": {
+      "requires": {
         "debug": "^3.1.0",
         "eslint-scope": "^3.7.1",
         "eslint-visitor-keys": "^1.0.0",
@@ -16541,336 +13140,283 @@
         "esquery": "^1.0.0",
         "lodash": "^4.17.4"
       },
-      "engines": {
-        "node": ">=4"
-      },
-      "peerDependencies": {
-        "eslint": ">=3.9.0"
-      }
-    },
-    "node_modules/vue-eslint-parser/node_modules/eslint-scope": {
-      "version": "3.7.3",
-      "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz",
-      "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==",
-      "dev": true,
-      "optional": true,
       "dependencies": {
-        "esrecurse": "^4.1.0",
-        "estraverse": "^4.1.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
+        "eslint-scope": {
+          "version": "3.7.3",
+          "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz",
+          "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "esrecurse": "^4.1.0",
+            "estraverse": "^4.1.1"
+          }
+        }
       }
     },
-    "node_modules/vue-hot-reload-api": {
+    "vue-hot-reload-api": {
       "version": "2.3.4",
       "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz",
       "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==",
       "dev": true
     },
-    "node_modules/vue-i18n": {
+    "vue-i18n": {
       "version": "8.28.2",
       "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.28.2.tgz",
       "integrity": "sha512-C5GZjs1tYlAqjwymaaCPDjCyGo10ajUphiwA922jKt9n7KPpqR7oM1PCwYzhB/E7+nT3wfdG3oRre5raIT1rKA=="
     },
-    "node_modules/vue-loader": {
+    "vue-loader": {
       "version": "15.10.1",
       "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.1.tgz",
       "integrity": "sha512-SaPHK1A01VrNthlix6h1hq4uJu7S/z0kdLUb6klubo738NeQoLbS6V9/d8Pv19tU0XdQKju3D1HSKuI8wJ5wMA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@vue/component-compiler-utils": "^3.1.0",
         "hash-sum": "^1.0.2",
         "loader-utils": "^1.1.0",
         "vue-hot-reload-api": "^2.3.0",
         "vue-style-loader": "^4.1.0"
       },
-      "peerDependencies": {
-        "css-loader": "*",
-        "webpack": "^3.0.0 || ^4.1.0 || ^5.0.0-0"
-      },
-      "peerDependenciesMeta": {
-        "cache-loader": {
-          "optional": true
+      "dependencies": {
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
         },
-        "vue-template-compiler": {
-          "optional": true
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
         }
       }
     },
-    "node_modules/vue-loader/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
-      "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
-      }
-    },
-    "node_modules/vue-loader/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/vue-router": {
+    "vue-router": {
       "version": "3.6.5",
       "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.6.5.tgz",
       "integrity": "sha512-VYXZQLtjuvKxxcshuRAwjHnciqZVoXAjTjcqBTz4rKc8qih9g9pI3hbDjmqXaHdgL3v8pV6P8Z335XvHzESxLQ=="
     },
-    "node_modules/vue-style-loader": {
+    "vue-style-loader": {
       "version": "4.1.3",
       "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz",
       "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "hash-sum": "^1.0.2",
         "loader-utils": "^1.0.2"
-      }
-    },
-    "node_modules/vue-style-loader/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
-      "dependencies": {
-        "minimist": "^1.2.0"
       },
-      "bin": {
-        "json5": "lib/cli.js"
-      }
-    },
-    "node_modules/vue-style-loader/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
       "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        }
       }
     },
-    "node_modules/vue-template-compiler": {
+    "vue-template-compiler": {
       "version": "2.7.14",
       "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz",
       "integrity": "sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "de-indent": "^1.0.2",
         "he": "^1.2.0"
       }
     },
-    "node_modules/vue-template-es2015-compiler": {
+    "vue-template-es2015-compiler": {
       "version": "1.9.1",
       "resolved": "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz",
       "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==",
       "dev": true
     },
-    "node_modules/vuex": {
+    "vuex": {
       "version": "3.6.2",
       "resolved": "https://registry.npmjs.org/vuex/-/vuex-3.6.2.tgz",
-      "integrity": "sha512-ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw==",
-      "peerDependencies": {
-        "vue": "^2.0.0"
-      }
+      "integrity": "sha512-ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw=="
     },
-    "node_modules/wangeditor": {
+    "wangeditor": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/wangeditor/-/wangeditor-3.1.1.tgz",
       "integrity": "sha512-co18zRS96xVKhLyhTIqgqWs5khSbNPlZeoT8/B2dxnVKQMntRGu1D8ks+nbNOvZcIjyrdhhtde6LjqzVECL6DA=="
     },
-    "node_modules/watchpack": {
+    "watchpack": {
       "version": "1.7.5",
       "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz",
       "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==",
       "dev": true,
-      "dependencies": {
-        "graceful-fs": "^4.1.2",
-        "neo-async": "^2.5.0"
-      },
-      "optionalDependencies": {
+      "requires": {
         "chokidar": "^3.4.1",
+        "graceful-fs": "^4.1.2",
+        "neo-async": "^2.5.0",
         "watchpack-chokidar2": "^2.0.1"
       }
     },
-    "node_modules/watchpack-chokidar2": {
+    "watchpack-chokidar2": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz",
       "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==",
       "dev": true,
       "optional": true,
-      "dependencies": {
+      "requires": {
         "chokidar": "^2.1.8"
-      }
-    },
-    "node_modules/watchpack-chokidar2/node_modules/anymatch": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
-      "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "micromatch": "^3.1.4",
-        "normalize-path": "^2.1.1"
-      }
-    },
-    "node_modules/watchpack-chokidar2/node_modules/anymatch/node_modules/normalize-path": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
-      "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "remove-trailing-separator": "^1.0.1"
       },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/watchpack-chokidar2/node_modules/binary-extensions": {
-      "version": "1.13.1",
-      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
-      "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
-      "dev": true,
-      "optional": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/watchpack-chokidar2/node_modules/chokidar": {
-      "version": "2.1.8",
-      "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
-      "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
-      "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies",
-      "dev": true,
-      "optional": true,
       "dependencies": {
-        "anymatch": "^2.0.0",
-        "async-each": "^1.0.1",
-        "braces": "^2.3.2",
-        "glob-parent": "^3.1.0",
-        "inherits": "^2.0.3",
-        "is-binary-path": "^1.0.0",
-        "is-glob": "^4.0.0",
-        "normalize-path": "^3.0.0",
-        "path-is-absolute": "^1.0.0",
-        "readdirp": "^2.2.1",
-        "upath": "^1.1.1"
-      },
-      "optionalDependencies": {
-        "fsevents": "^1.2.7"
+        "anymatch": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
+          "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "micromatch": "^3.1.4",
+            "normalize-path": "^2.1.1"
+          },
+          "dependencies": {
+            "normalize-path": {
+              "version": "2.1.1",
+              "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
+              "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==",
+              "dev": true,
+              "optional": true,
+              "requires": {
+                "remove-trailing-separator": "^1.0.1"
+              }
+            }
+          }
+        },
+        "binary-extensions": {
+          "version": "1.13.1",
+          "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
+          "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
+          "dev": true,
+          "optional": true
+        },
+        "chokidar": {
+          "version": "2.1.8",
+          "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
+          "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "anymatch": "^2.0.0",
+            "async-each": "^1.0.1",
+            "braces": "^2.3.2",
+            "fsevents": "^1.2.7",
+            "glob-parent": "^3.1.0",
+            "inherits": "^2.0.3",
+            "is-binary-path": "^1.0.0",
+            "is-glob": "^4.0.0",
+            "normalize-path": "^3.0.0",
+            "path-is-absolute": "^1.0.0",
+            "readdirp": "^2.2.1",
+            "upath": "^1.1.1"
+          }
+        },
+        "fsevents": {
+          "version": "1.2.13",
+          "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz",
+          "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "nan": "^2.12.1"
+          }
+        },
+        "glob-parent": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
+          "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "is-glob": "^3.1.0",
+            "path-dirname": "^1.0.0"
+          },
+          "dependencies": {
+            "is-glob": {
+              "version": "3.1.0",
+              "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+              "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==",
+              "dev": true,
+              "optional": true,
+              "requires": {
+                "is-extglob": "^2.1.0"
+              }
+            }
+          }
+        },
+        "is-binary-path": {
+          "version": "1.0.1",
+          "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
+          "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "binary-extensions": "^1.0.0"
+          }
+        },
+        "readdirp": {
+          "version": "2.2.1",
+          "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
+          "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "graceful-fs": "^4.1.11",
+            "micromatch": "^3.1.10",
+            "readable-stream": "^2.0.2"
+          }
+        }
       }
     },
-    "node_modules/watchpack-chokidar2/node_modules/fsevents": {
-      "version": "1.2.13",
-      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz",
-      "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==",
-      "deprecated": "The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2",
-      "dev": true,
-      "hasInstallScript": true,
-      "optional": true,
-      "os": [
-        "darwin"
-      ],
-      "dependencies": {
-        "bindings": "^1.5.0",
-        "nan": "^2.12.1"
-      },
-      "engines": {
-        "node": ">= 4.0"
-      }
-    },
-    "node_modules/watchpack-chokidar2/node_modules/glob-parent": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
-      "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "is-glob": "^3.1.0",
-        "path-dirname": "^1.0.0"
-      }
-    },
-    "node_modules/watchpack-chokidar2/node_modules/glob-parent/node_modules/is-glob": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
-      "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "is-extglob": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/watchpack-chokidar2/node_modules/is-binary-path": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
-      "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "binary-extensions": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/watchpack-chokidar2/node_modules/readdirp": {
-      "version": "2.2.1",
-      "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
-      "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "graceful-fs": "^4.1.11",
-        "micromatch": "^3.1.10",
-        "readable-stream": "^2.0.2"
-      },
-      "engines": {
-        "node": ">=0.10"
-      }
-    },
-    "node_modules/wbuf": {
+    "wbuf": {
       "version": "1.7.3",
       "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz",
       "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "minimalistic-assert": "^1.0.0"
       }
     },
-    "node_modules/wcwidth": {
+    "wcwidth": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
       "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "defaults": "^1.0.3"
       }
     },
-    "node_modules/webpack": {
+    "webpack": {
       "version": "4.46.0",
       "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz",
       "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "@webassemblyjs/ast": "1.9.0",
         "@webassemblyjs/helper-module-context": "1.9.0",
         "@webassemblyjs/wasm-edit": "1.9.0",
@@ -16895,31 +13441,46 @@
         "watchpack": "^1.7.4",
         "webpack-sources": "^1.4.1"
       },
-      "bin": {
-        "webpack": "bin/webpack.js"
-      },
-      "engines": {
-        "node": ">=6.11.5"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/webpack"
-      },
-      "peerDependenciesMeta": {
-        "webpack-cli": {
-          "optional": true
+      "dependencies": {
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
         },
-        "webpack-command": {
-          "optional": true
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        },
+        "schema-utils": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
+          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
+          "dev": true,
+          "requires": {
+            "ajv": "^6.1.0",
+            "ajv-errors": "^1.0.0",
+            "ajv-keywords": "^3.1.0"
+          }
         }
       }
     },
-    "node_modules/webpack-bundle-analyzer": {
+    "webpack-bundle-analyzer": {
       "version": "3.9.0",
       "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.9.0.tgz",
       "integrity": "sha512-Ob8amZfCm3rMB1ScjQVlbYYUEJyEjdEtQ92jqiFUYt5VkEeO2v5UMbv49P/gnmCZm3A6yaFQzCBvpZqN4MUsdA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "acorn": "^7.1.1",
         "acorn-walk": "^7.1.1",
         "bfj": "^6.1.1",
@@ -16934,75 +13495,56 @@
         "opener": "^1.5.1",
         "ws": "^6.0.0"
       },
-      "bin": {
-        "webpack-bundle-analyzer": "lib/bin/analyzer.js"
-      },
-      "engines": {
-        "node": ">= 6.14.4"
+      "dependencies": {
+        "acorn": {
+          "version": "7.4.1",
+          "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
+          "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
+          "dev": true
+        },
+        "acorn-walk": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
+          "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
+          "dev": true
+        },
+        "commander": {
+          "version": "2.20.3",
+          "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+          "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+          "dev": true
+        }
       }
     },
-    "node_modules/webpack-bundle-analyzer/node_modules/acorn": {
-      "version": "7.4.1",
-      "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
-      "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
-      "dev": true,
-      "bin": {
-        "acorn": "bin/acorn"
-      },
-      "engines": {
-        "node": ">=0.4.0"
-      }
-    },
-    "node_modules/webpack-bundle-analyzer/node_modules/acorn-walk": {
-      "version": "7.2.0",
-      "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
-      "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.4.0"
-      }
-    },
-    "node_modules/webpack-bundle-analyzer/node_modules/commander": {
-      "version": "2.20.3",
-      "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
-      "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
-      "dev": true
-    },
-    "node_modules/webpack-chain": {
+    "webpack-chain": {
       "version": "4.12.1",
       "resolved": "https://registry.npmjs.org/webpack-chain/-/webpack-chain-4.12.1.tgz",
       "integrity": "sha512-BCfKo2YkDe2ByqkEWe1Rw+zko4LsyS75LVr29C6xIrxAg9JHJ4pl8kaIZ396SUSNp6b4815dRZPSTAS8LlURRQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "deepmerge": "^1.5.2",
         "javascript-stringify": "^1.6.0"
       }
     },
-    "node_modules/webpack-dev-middleware": {
+    "webpack-dev-middleware": {
       "version": "3.7.3",
       "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz",
       "integrity": "sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "memory-fs": "^0.4.1",
         "mime": "^2.4.4",
         "mkdirp": "^0.5.1",
         "range-parser": "^1.2.1",
         "webpack-log": "^2.0.0"
-      },
-      "engines": {
-        "node": ">= 6"
-      },
-      "peerDependencies": {
-        "webpack": "^4.0.0 || ^5.0.0"
       }
     },
-    "node_modules/webpack-dev-server": {
+    "webpack-dev-server": {
       "version": "3.11.3",
       "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.3.tgz",
       "integrity": "sha512-3x31rjbEQWKMNzacUZRE6wXvUFuGpH7vr0lIEbYpMAG9BOxi0928QU1BBswOAP3kg3H1O4hiS+sq4YyAn6ANnA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "ansi-html-community": "0.0.8",
         "bonjour": "^3.5.0",
         "chokidar": "^2.1.8",
@@ -17037,668 +13579,492 @@
         "ws": "^6.2.1",
         "yargs": "^13.3.2"
       },
-      "bin": {
-        "webpack-dev-server": "bin/webpack-dev-server.js"
-      },
-      "engines": {
-        "node": ">= 6.11.5"
-      },
-      "peerDependencies": {
-        "webpack": "^4.0.0 || ^5.0.0"
-      },
-      "peerDependenciesMeta": {
-        "webpack-cli": {
-          "optional": true
-        }
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/ansi-regex": {
-      "version": "4.1.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
-      "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/anymatch": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
-      "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
-      "dev": true,
       "dependencies": {
-        "micromatch": "^3.1.4",
-        "normalize-path": "^2.1.1"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/anymatch/node_modules/normalize-path": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
-      "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==",
-      "dev": true,
-      "dependencies": {
-        "remove-trailing-separator": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/binary-extensions": {
-      "version": "1.13.1",
-      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
-      "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/chokidar": {
-      "version": "2.1.8",
-      "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
-      "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
-      "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies",
-      "dev": true,
-      "dependencies": {
-        "anymatch": "^2.0.0",
-        "async-each": "^1.0.1",
-        "braces": "^2.3.2",
-        "glob-parent": "^3.1.0",
-        "inherits": "^2.0.3",
-        "is-binary-path": "^1.0.0",
-        "is-glob": "^4.0.0",
-        "normalize-path": "^3.0.0",
-        "path-is-absolute": "^1.0.0",
-        "readdirp": "^2.2.1",
-        "upath": "^1.1.1"
-      },
-      "optionalDependencies": {
-        "fsevents": "^1.2.7"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/debug": {
-      "version": "4.3.4",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
-      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
-      "dev": true,
-      "dependencies": {
-        "ms": "2.1.2"
-      },
-      "engines": {
-        "node": ">=6.0"
-      },
-      "peerDependenciesMeta": {
+        "ansi-regex": {
+          "version": "4.1.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
+          "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
+          "dev": true
+        },
+        "anymatch": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
+          "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
+          "dev": true,
+          "requires": {
+            "micromatch": "^3.1.4",
+            "normalize-path": "^2.1.1"
+          },
+          "dependencies": {
+            "normalize-path": {
+              "version": "2.1.1",
+              "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
+              "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==",
+              "dev": true,
+              "requires": {
+                "remove-trailing-separator": "^1.0.1"
+              }
+            }
+          }
+        },
+        "binary-extensions": {
+          "version": "1.13.1",
+          "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
+          "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
+          "dev": true
+        },
+        "chokidar": {
+          "version": "2.1.8",
+          "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
+          "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
+          "dev": true,
+          "requires": {
+            "anymatch": "^2.0.0",
+            "async-each": "^1.0.1",
+            "braces": "^2.3.2",
+            "fsevents": "^1.2.7",
+            "glob-parent": "^3.1.0",
+            "inherits": "^2.0.3",
+            "is-binary-path": "^1.0.0",
+            "is-glob": "^4.0.0",
+            "normalize-path": "^3.0.0",
+            "path-is-absolute": "^1.0.0",
+            "readdirp": "^2.2.1",
+            "upath": "^1.1.1"
+          }
+        },
+        "debug": {
+          "version": "4.3.4",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+          "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+          "dev": true,
+          "requires": {
+            "ms": "2.1.2"
+          }
+        },
+        "emoji-regex": {
+          "version": "7.0.3",
+          "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+          "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+          "dev": true
+        },
+        "find-up": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+          "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+          "dev": true,
+          "requires": {
+            "locate-path": "^3.0.0"
+          }
+        },
+        "fsevents": {
+          "version": "1.2.13",
+          "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz",
+          "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "nan": "^2.12.1"
+          }
+        },
+        "glob-parent": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
+          "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
+          "dev": true,
+          "requires": {
+            "is-glob": "^3.1.0",
+            "path-dirname": "^1.0.0"
+          },
+          "dependencies": {
+            "is-glob": {
+              "version": "3.1.0",
+              "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+              "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==",
+              "dev": true,
+              "requires": {
+                "is-extglob": "^2.1.0"
+              }
+            }
+          }
+        },
+        "is-absolute-url": {
+          "version": "3.0.3",
+          "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz",
+          "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==",
+          "dev": true
+        },
+        "is-binary-path": {
+          "version": "1.0.1",
+          "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
+          "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==",
+          "dev": true,
+          "requires": {
+            "binary-extensions": "^1.0.0"
+          }
+        },
+        "is-fullwidth-code-point": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+          "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+          "dev": true
+        },
+        "locate-path": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+          "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+          "dev": true,
+          "requires": {
+            "p-locate": "^3.0.0",
+            "path-exists": "^3.0.0"
+          }
+        },
+        "ms": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+          "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+          "dev": true
+        },
+        "p-limit": {
+          "version": "2.3.0",
+          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+          "dev": true,
+          "requires": {
+            "p-try": "^2.0.0"
+          }
+        },
+        "p-locate": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+          "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+          "dev": true,
+          "requires": {
+            "p-limit": "^2.0.0"
+          }
+        },
+        "p-try": {
+          "version": "2.2.0",
+          "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+          "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+          "dev": true
+        },
+        "readdirp": {
+          "version": "2.2.1",
+          "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
+          "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
+          "dev": true,
+          "requires": {
+            "graceful-fs": "^4.1.11",
+            "micromatch": "^3.1.10",
+            "readable-stream": "^2.0.2"
+          }
+        },
+        "schema-utils": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
+          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
+          "dev": true,
+          "requires": {
+            "ajv": "^6.1.0",
+            "ajv-errors": "^1.0.0",
+            "ajv-keywords": "^3.1.0"
+          }
+        },
+        "semver": {
+          "version": "6.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+          "dev": true
+        },
+        "string-width": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+          "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+          "dev": true,
+          "requires": {
+            "emoji-regex": "^7.0.1",
+            "is-fullwidth-code-point": "^2.0.0",
+            "strip-ansi": "^5.1.0"
+          },
+          "dependencies": {
+            "strip-ansi": {
+              "version": "5.2.0",
+              "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+              "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+              "dev": true,
+              "requires": {
+                "ansi-regex": "^4.1.0"
+              }
+            }
+          }
+        },
         "supports-color": {
-          "optional": true
+          "version": "6.1.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
+          "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
+          "dev": true,
+          "requires": {
+            "has-flag": "^3.0.0"
+          }
+        },
+        "yargs": {
+          "version": "13.3.2",
+          "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
+          "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
+          "dev": true,
+          "requires": {
+            "cliui": "^5.0.0",
+            "find-up": "^3.0.0",
+            "get-caller-file": "^2.0.1",
+            "require-directory": "^2.1.1",
+            "require-main-filename": "^2.0.0",
+            "set-blocking": "^2.0.0",
+            "string-width": "^3.0.0",
+            "which-module": "^2.0.0",
+            "y18n": "^4.0.0",
+            "yargs-parser": "^13.1.2"
+          }
+        },
+        "yargs-parser": {
+          "version": "13.1.2",
+          "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
+          "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
+          "dev": true,
+          "requires": {
+            "camelcase": "^5.0.0",
+            "decamelize": "^1.2.0"
+          }
         }
       }
     },
-    "node_modules/webpack-dev-server/node_modules/emoji-regex": {
-      "version": "7.0.3",
-      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
-      "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
-      "dev": true
-    },
-    "node_modules/webpack-dev-server/node_modules/find-up": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
-      "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
-      "dev": true,
-      "dependencies": {
-        "locate-path": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/fsevents": {
-      "version": "1.2.13",
-      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz",
-      "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==",
-      "deprecated": "The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2",
-      "dev": true,
-      "hasInstallScript": true,
-      "optional": true,
-      "os": [
-        "darwin"
-      ],
-      "dependencies": {
-        "bindings": "^1.5.0",
-        "nan": "^2.12.1"
-      },
-      "engines": {
-        "node": ">= 4.0"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/glob-parent": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
-      "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
-      "dev": true,
-      "dependencies": {
-        "is-glob": "^3.1.0",
-        "path-dirname": "^1.0.0"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/glob-parent/node_modules/is-glob": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
-      "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==",
-      "dev": true,
-      "dependencies": {
-        "is-extglob": "^2.1.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/is-absolute-url": {
-      "version": "3.0.3",
-      "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz",
-      "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/is-binary-path": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
-      "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==",
-      "dev": true,
-      "dependencies": {
-        "binary-extensions": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/is-fullwidth-code-point": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
-      "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/locate-path": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
-      "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
-      "dev": true,
-      "dependencies": {
-        "p-locate": "^3.0.0",
-        "path-exists": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/ms": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
-      "dev": true
-    },
-    "node_modules/webpack-dev-server/node_modules/p-limit": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
-      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
-      "dev": true,
-      "dependencies": {
-        "p-try": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/p-locate": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
-      "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
-      "dev": true,
-      "dependencies": {
-        "p-limit": "^2.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/p-try": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
-      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/readdirp": {
-      "version": "2.2.1",
-      "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
-      "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
-      "dev": true,
-      "dependencies": {
-        "graceful-fs": "^4.1.11",
-        "micromatch": "^3.1.10",
-        "readable-stream": "^2.0.2"
-      },
-      "engines": {
-        "node": ">=0.10"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/schema-utils": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
-      "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
-      "dev": true,
-      "dependencies": {
-        "ajv": "^6.1.0",
-        "ajv-errors": "^1.0.0",
-        "ajv-keywords": "^3.1.0"
-      },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/semver": {
-      "version": "6.3.0",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
-      "dev": true,
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/string-width": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
-      "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
-      "dev": true,
-      "dependencies": {
-        "emoji-regex": "^7.0.1",
-        "is-fullwidth-code-point": "^2.0.0",
-        "strip-ansi": "^5.1.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/string-width/node_modules/strip-ansi": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
-      "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
-      "dev": true,
-      "dependencies": {
-        "ansi-regex": "^4.1.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/supports-color": {
-      "version": "6.1.0",
-      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
-      "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
-      "dev": true,
-      "dependencies": {
-        "has-flag": "^3.0.0"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/yargs": {
-      "version": "13.3.2",
-      "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
-      "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
-      "dev": true,
-      "dependencies": {
-        "cliui": "^5.0.0",
-        "find-up": "^3.0.0",
-        "get-caller-file": "^2.0.1",
-        "require-directory": "^2.1.1",
-        "require-main-filename": "^2.0.0",
-        "set-blocking": "^2.0.0",
-        "string-width": "^3.0.0",
-        "which-module": "^2.0.0",
-        "y18n": "^4.0.0",
-        "yargs-parser": "^13.1.2"
-      }
-    },
-    "node_modules/webpack-dev-server/node_modules/yargs-parser": {
-      "version": "13.1.2",
-      "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
-      "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
-      "dev": true,
-      "dependencies": {
-        "camelcase": "^5.0.0",
-        "decamelize": "^1.2.0"
-      }
-    },
-    "node_modules/webpack-log": {
+    "webpack-log": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz",
       "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "ansi-colors": "^3.0.0",
         "uuid": "^3.3.2"
-      },
-      "engines": {
-        "node": ">= 6"
       }
     },
-    "node_modules/webpack-merge": {
+    "webpack-merge": {
       "version": "4.2.2",
       "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz",
       "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "lodash": "^4.17.15"
       }
     },
-    "node_modules/webpack-sources": {
+    "webpack-sources": {
       "version": "1.4.3",
       "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz",
       "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "source-list-map": "^2.0.0",
         "source-map": "~0.6.1"
       }
     },
-    "node_modules/webpack/node_modules/json5": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-      "dev": true,
-      "dependencies": {
-        "minimist": "^1.2.0"
-      },
-      "bin": {
-        "json5": "lib/cli.js"
-      }
-    },
-    "node_modules/webpack/node_modules/loader-utils": {
-      "version": "1.4.2",
-      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-      "dev": true,
-      "dependencies": {
-        "big.js": "^5.2.2",
-        "emojis-list": "^3.0.0",
-        "json5": "^1.0.1"
-      },
-      "engines": {
-        "node": ">=4.0.0"
-      }
-    },
-    "node_modules/webpack/node_modules/schema-utils": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
-      "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
-      "dev": true,
-      "dependencies": {
-        "ajv": "^6.1.0",
-        "ajv-errors": "^1.0.0",
-        "ajv-keywords": "^3.1.0"
-      },
-      "engines": {
-        "node": ">= 4"
-      }
-    },
-    "node_modules/websocket-driver": {
+    "websocket-driver": {
       "version": "0.7.4",
       "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz",
       "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "http-parser-js": ">=0.5.1",
         "safe-buffer": ">=5.1.0",
         "websocket-extensions": ">=0.1.1"
-      },
-      "engines": {
-        "node": ">=0.8.0"
       }
     },
-    "node_modules/websocket-extensions": {
+    "websocket-extensions": {
       "version": "0.1.4",
       "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz",
       "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.8.0"
-      }
+      "dev": true
     },
-    "node_modules/which": {
+    "which": {
       "version": "1.3.1",
       "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
       "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
-      "dependencies": {
+      "requires": {
         "isexe": "^2.0.0"
-      },
-      "bin": {
-        "which": "bin/which"
       }
     },
-    "node_modules/which-boxed-primitive": {
+    "which-boxed-primitive": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
       "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "is-bigint": "^1.0.1",
         "is-boolean-object": "^1.1.0",
         "is-number-object": "^1.0.4",
         "is-string": "^1.0.5",
         "is-symbol": "^1.0.3"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/which-module": {
+    "which-module": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz",
       "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==",
       "dev": true
     },
-    "node_modules/which-typed-array": {
+    "which-typed-array": {
       "version": "1.1.9",
       "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz",
       "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "available-typed-arrays": "^1.0.5",
         "call-bind": "^1.0.2",
         "for-each": "^0.3.3",
         "gopd": "^1.0.1",
         "has-tostringtag": "^1.0.0",
         "is-typed-array": "^1.1.10"
-      },
-      "engines": {
-        "node": ">= 0.4"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/ljharb"
       }
     },
-    "node_modules/wide-align": {
+    "wide-align": {
       "version": "1.1.5",
       "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
       "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
-      "dependencies": {
+      "requires": {
         "string-width": "^1.0.2 || 2 || 3 || 4"
       }
     },
-    "node_modules/word-wrap": {
+    "word-wrap": {
       "version": "1.2.3",
       "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
       "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
       "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
+      "optional": true
     },
-    "node_modules/worker-farm": {
+    "worker-farm": {
       "version": "1.7.0",
       "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz",
       "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "errno": "~0.1.7"
       }
     },
-    "node_modules/wrap-ansi": {
+    "wrap-ansi": {
       "version": "7.0.0",
       "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
       "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "ansi-styles": "^4.0.0",
         "string-width": "^4.1.0",
         "strip-ansi": "^6.0.0"
       },
-      "engines": {
-        "node": ">=10"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
-      }
-    },
-    "node_modules/wrap-ansi/node_modules/ansi-regex": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
-      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/wrap-ansi/node_modules/ansi-styles": {
-      "version": "4.3.0",
-      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
-      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-      "dev": true,
       "dependencies": {
-        "color-convert": "^2.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+        "ansi-regex": {
+          "version": "5.0.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+          "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+          "dev": true
+        },
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+          "dev": true
+        },
+        "is-fullwidth-code-point": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+          "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+          "dev": true
+        },
+        "string-width": {
+          "version": "4.2.3",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+          "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+          "dev": true,
+          "requires": {
+            "emoji-regex": "^8.0.0",
+            "is-fullwidth-code-point": "^3.0.0",
+            "strip-ansi": "^6.0.1"
+          }
+        },
+        "strip-ansi": {
+          "version": "6.0.1",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+          "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+          "dev": true,
+          "requires": {
+            "ansi-regex": "^5.0.1"
+          }
+        }
       }
     },
-    "node_modules/wrap-ansi/node_modules/color-convert": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
-      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-      "dev": true,
-      "dependencies": {
-        "color-name": "~1.1.4"
-      },
-      "engines": {
-        "node": ">=7.0.0"
-      }
-    },
-    "node_modules/wrap-ansi/node_modules/color-name": {
-      "version": "1.1.4",
-      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
-      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-      "dev": true
-    },
-    "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
-      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/wrap-ansi/node_modules/string-width": {
-      "version": "4.2.3",
-      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
-      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
-      "dev": true,
-      "dependencies": {
-        "emoji-regex": "^8.0.0",
-        "is-fullwidth-code-point": "^3.0.0",
-        "strip-ansi": "^6.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/wrap-ansi/node_modules/strip-ansi": {
-      "version": "6.0.1",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
-      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
-      "dev": true,
-      "dependencies": {
-        "ansi-regex": "^5.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/wrappy": {
+    "wrappy": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
       "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
     },
-    "node_modules/write": {
+    "write": {
       "version": "0.2.1",
       "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz",
       "integrity": "sha512-CJ17OoULEKXpA5pef3qLj5AxTJ6mSt7g84he2WIskKwqFO4T97d5V7Tadl0DYDk7qyUOQD5WlUlOMChaYrhxeA==",
       "dev": true,
-      "dependencies": {
+      "optional": true,
+      "requires": {
         "mkdirp": "^0.5.1"
-      },
-      "engines": {
-        "node": ">=0.10.0"
       }
     },
-    "node_modules/ws": {
+    "ws": {
       "version": "6.2.2",
       "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz",
       "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "async-limiter": "~1.0.0"
       }
     },
-    "node_modules/xtend": {
+    "xtend": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
       "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.4"
-      }
+      "dev": true
     },
-    "node_modules/y18n": {
+    "y18n": {
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
       "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
       "dev": true
     },
-    "node_modules/yallist": {
+    "yallist": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
       "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
     },
-    "node_modules/yargs": {
+    "yargs": {
       "version": "16.2.0",
       "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
       "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
       "dev": true,
-      "dependencies": {
+      "requires": {
         "cliui": "^7.0.2",
         "escalade": "^3.1.1",
         "get-caller-file": "^2.0.5",
@@ -17707,161 +14073,131 @@
         "y18n": "^5.0.5",
         "yargs-parser": "^20.2.2"
       },
-      "engines": {
-        "node": ">=10"
+      "dependencies": {
+        "ansi-regex": {
+          "version": "5.0.1",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+          "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+          "dev": true
+        },
+        "cliui": {
+          "version": "7.0.4",
+          "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
+          "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
+          "dev": true,
+          "requires": {
+            "string-width": "^4.2.0",
+            "strip-ansi": "^6.0.0",
+            "wrap-ansi": "^7.0.0"
+          }
+        },
+        "is-fullwidth-code-point": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+          "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+          "dev": true
+        },
+        "string-width": {
+          "version": "4.2.3",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+          "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+          "dev": true,
+          "requires": {
+            "emoji-regex": "^8.0.0",
+            "is-fullwidth-code-point": "^3.0.0",
+            "strip-ansi": "^6.0.1"
+          }
+        },
+        "strip-ansi": {
+          "version": "6.0.1",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+          "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+          "dev": true,
+          "requires": {
+            "ansi-regex": "^5.0.1"
+          }
+        },
+        "y18n": {
+          "version": "5.0.8",
+          "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
+          "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
+          "dev": true
+        }
       }
     },
-    "node_modules/yargs-parser": {
+    "yargs-parser": {
       "version": "20.2.9",
       "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
       "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
-      "dev": true,
-      "engines": {
-        "node": ">=10"
-      }
+      "dev": true
     },
-    "node_modules/yargs/node_modules/ansi-regex": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
-      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/yargs/node_modules/cliui": {
-      "version": "7.0.4",
-      "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
-      "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
-      "dev": true,
-      "dependencies": {
-        "string-width": "^4.2.0",
-        "strip-ansi": "^6.0.0",
-        "wrap-ansi": "^7.0.0"
-      }
-    },
-    "node_modules/yargs/node_modules/is-fullwidth-code-point": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
-      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
-      "dev": true,
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/yargs/node_modules/string-width": {
-      "version": "4.2.3",
-      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
-      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
-      "dev": true,
-      "dependencies": {
-        "emoji-regex": "^8.0.0",
-        "is-fullwidth-code-point": "^3.0.0",
-        "strip-ansi": "^6.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/yargs/node_modules/strip-ansi": {
-      "version": "6.0.1",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
-      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
-      "dev": true,
-      "dependencies": {
-        "ansi-regex": "^5.0.1"
-      },
-      "engines": {
-        "node": ">=8"
-      }
-    },
-    "node_modules/yargs/node_modules/y18n": {
-      "version": "5.0.8",
-      "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
-      "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
-      "dev": true,
-      "engines": {
-        "node": ">=10"
-      }
-    },
-    "node_modules/yorkie": {
+    "yorkie": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/yorkie/-/yorkie-2.0.0.tgz",
       "integrity": "sha512-jcKpkthap6x63MB4TxwCyuIGkV0oYP/YRyuQU5UO0Yz/E/ZAu+653/uov+phdmO54n6BcvFRyyt0RRrWdN2mpw==",
       "dev": true,
-      "hasInstallScript": true,
-      "dependencies": {
+      "requires": {
         "execa": "^0.8.0",
         "is-ci": "^1.0.10",
         "normalize-path": "^1.0.0",
         "strip-indent": "^2.0.0"
       },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/yorkie/node_modules/cross-spawn": {
-      "version": "5.1.0",
-      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
-      "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==",
-      "dev": true,
       "dependencies": {
-        "lru-cache": "^4.0.1",
-        "shebang-command": "^1.2.0",
-        "which": "^1.2.9"
+        "cross-spawn": {
+          "version": "5.1.0",
+          "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
+          "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==",
+          "dev": true,
+          "requires": {
+            "lru-cache": "^4.0.1",
+            "shebang-command": "^1.2.0",
+            "which": "^1.2.9"
+          }
+        },
+        "execa": {
+          "version": "0.8.0",
+          "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz",
+          "integrity": "sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA==",
+          "dev": true,
+          "requires": {
+            "cross-spawn": "^5.0.1",
+            "get-stream": "^3.0.0",
+            "is-stream": "^1.1.0",
+            "npm-run-path": "^2.0.0",
+            "p-finally": "^1.0.0",
+            "signal-exit": "^3.0.0",
+            "strip-eof": "^1.0.0"
+          }
+        },
+        "get-stream": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
+          "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==",
+          "dev": true
+        },
+        "lru-cache": {
+          "version": "4.1.5",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
+          "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
+          "dev": true,
+          "requires": {
+            "pseudomap": "^1.0.2",
+            "yallist": "^2.1.2"
+          }
+        },
+        "normalize-path": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-1.0.0.tgz",
+          "integrity": "sha512-7WyT0w8jhpDStXRq5836AMmihQwq2nrUVQrgjvUo/p/NZf9uy/MeJ246lBJVmWuYXMlJuG9BNZHF0hWjfTbQUA==",
+          "dev": true
+        },
+        "yallist": {
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
+          "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
+          "dev": true
+        }
       }
-    },
-    "node_modules/yorkie/node_modules/execa": {
-      "version": "0.8.0",
-      "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz",
-      "integrity": "sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA==",
-      "dev": true,
-      "dependencies": {
-        "cross-spawn": "^5.0.1",
-        "get-stream": "^3.0.0",
-        "is-stream": "^1.1.0",
-        "npm-run-path": "^2.0.0",
-        "p-finally": "^1.0.0",
-        "signal-exit": "^3.0.0",
-        "strip-eof": "^1.0.0"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/yorkie/node_modules/get-stream": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
-      "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==",
-      "dev": true,
-      "engines": {
-        "node": ">=4"
-      }
-    },
-    "node_modules/yorkie/node_modules/lru-cache": {
-      "version": "4.1.5",
-      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
-      "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
-      "dev": true,
-      "dependencies": {
-        "pseudomap": "^1.0.2",
-        "yallist": "^2.1.2"
-      }
-    },
-    "node_modules/yorkie/node_modules/normalize-path": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-1.0.0.tgz",
-      "integrity": "sha512-7WyT0w8jhpDStXRq5836AMmihQwq2nrUVQrgjvUo/p/NZf9uy/MeJ246lBJVmWuYXMlJuG9BNZHF0hWjfTbQUA==",
-      "dev": true,
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
-    "node_modules/yorkie/node_modules/yallist": {
-      "version": "2.1.2",
-      "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
-      "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
-      "dev": true
     }
   }
 }
diff --git a/Source/UBCS-WEB/package.json b/Source/UBCS-WEB/package.json
index ca32e57..3133c95 100644
--- a/Source/UBCS-WEB/package.json
+++ b/Source/UBCS-WEB/package.json
@@ -20,6 +20,7 @@
     "js-base64": "^2.5.1",
     "js-cookie": "^2.2.0",
     "js-md5": "^0.7.3",
+    "js-pinyin": "^0.2.4",
     "mockjs": "^1.0.1-beta3",
     "node-gyp": "^5.0.6",
     "nprogress": "^0.2.0",
diff --git a/Source/UBCS-WEB/src/api/GetItem.js b/Source/UBCS-WEB/src/api/GetItem.js
new file mode 100644
index 0000000..91f6755
--- /dev/null
+++ b/Source/UBCS-WEB/src/api/GetItem.js
@@ -0,0 +1,22 @@
+import request from "@/router/axios";
+
+export const MasterTable =(params)=>{
+  return request({
+    url: 'api/ubcs-code/ubcs-code//mdmEngineController/getUIInfoByClassifyOid',
+    method: 'get',
+    params:{
+      ...params
+    }
+  })
+}
+
+export const TableData =(params)=>{
+  return request({
+    url: 'api/ubcs-code/ubcs-code/mdmEngineController/gridTableDataByClassifyOid',
+    method: 'get',
+    params:{
+      ...params
+    }
+  })
+}
+
diff --git a/Source/UBCS-WEB/src/api/code/codeReferConfig.js b/Source/UBCS-WEB/src/api/code/codeReferConfig.js
new file mode 100644
index 0000000..39058b9
--- /dev/null
+++ b/Source/UBCS-WEB/src/api/code/codeReferConfig.js
@@ -0,0 +1,47 @@
+import request from '@/router/axios';
+
+export const getReferConfigPage = (page, limit, params) => {
+  return request({
+    url: '/api/ubcs-code/codeReferConfig/getReferConfigPage',
+    method: 'get',
+    params: {
+      ...params,
+      page,
+      limit,
+    }
+  })
+}
+
+export const getReferConfigList = (params) => {
+  return request({
+    url: '/api/ubcs-code/codeReferConfig/getReferConfigList',
+    method: 'get',
+    params: {
+      ...params
+    }
+  })
+}
+
+export const editCodeReferConfig = (CodeReferConfigVO) => {
+  return request({
+    url: '/api/ubcs-code/codeReferConfig/edit',
+    method: 'put',
+    data: CodeReferConfigVO,
+  })
+}
+
+export const addSaveCodeReferConfig = (data) => {
+  return request({
+    url: '/api/ubcs-code/codeReferConfig/addSave',
+    method: 'post',
+    data: data
+  })
+}
+
+export const deleteCodeReferConfig = (codeReferConfigDTO) => {
+  return request({
+    url: '/api/ubcs-code/codeReferConfig/del',
+    method: 'delete',
+    data: codeReferConfigDTO,
+  })
+}
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/api/common.js b/Source/UBCS-WEB/src/api/common.js
index e221159..1e299ad 100644
--- a/Source/UBCS-WEB/src/api/common.js
+++ b/Source/UBCS-WEB/src/api/common.js
@@ -12,10 +12,3 @@
   })
 }
 
-export const getFormTemplate = (params) => {
-  return request({
-    url: '/ubcs-code/ubcs-code/mdmEngineController/getFormDefineByTemplateOid',
-    method: 'get',
-    params
-  })
-}
diff --git a/Source/UBCS-WEB/src/api/formTemplate.js b/Source/UBCS-WEB/src/api/formTemplate.js
new file mode 100644
index 0000000..17498e9
--- /dev/null
+++ b/Source/UBCS-WEB/src/api/formTemplate.js
@@ -0,0 +1,27 @@
+
+import request from "@/router/axios";
+
+// 鑾峰彇琛ㄥ崟妯℃澘鏁版嵁
+export const getFormTemplate = (params) => {
+  return request({
+    url: 'api/ubcs-code/ubcs-code/mdmEngineController/getFormDefineByTemplateOid',
+    method: 'get',
+    params
+  })
+}
+// 琛ㄥ崟鏁版嵁鎵ц浠g爜
+export const executeCode = (params) => {
+  return request({
+    url: 'api/ubcs-code/ubcs-code/mdmEngineController/getFormDefineByTemplateOid',
+    method: 'get',
+    params
+  })
+}
+// 鐩镐技椤规煡璇�
+export const findLike = (data) => {
+  return request({
+    url: 'api/mdmEngineController/resembleQuery',
+    method: 'post',
+    data
+  })
+}
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/api/omd/btmType.js b/Source/UBCS-WEB/src/api/omd/btmType.js
index 86d043c..11938d0 100644
--- a/Source/UBCS-WEB/src/api/omd/btmType.js
+++ b/Source/UBCS-WEB/src/api/omd/btmType.js
@@ -56,4 +56,16 @@
         method: 'post',
         data: btmType
     })
+}
+
+export const btmPage = (current,size,params) => {
+    return request ({
+        url: '/api/ubcs-omd/btm-type/page',
+        method: 'get',
+        params: {
+            current,
+            size,
+            ...params
+        }
+    })
 }
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/api/refer/tree.js b/Source/UBCS-WEB/src/api/refer/tree.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Source/UBCS-WEB/src/api/refer/tree.js
diff --git a/Source/UBCS-WEB/src/components/Crud/Crud.vue b/Source/UBCS-WEB/src/components/Crud/Crud.vue
new file mode 100644
index 0000000..aeccd29
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/Crud/Crud.vue
@@ -0,0 +1,205 @@
+<template>
+  <basic-container>
+    <avue-crud ref="crud"
+               v-loading="loading"
+               :data="data"
+               :option="option"
+               :page="page"
+               @sort-change="sortChange"
+               @selection-change="selectionChange"
+               @on-load="onLoad">
+      <template slot="menu">
+        <el-button type="text">鏂囧瓧鎸夐挳</el-button>
+      </template>
+      <template slot="menuLeft">
+          <div>
+            <el-table :data="tableData" style="width: 100%" @cell-click="handleCellClick" @cell-dblclick="dbclick">
+              <div v-for="(item,index) in this.tableHeadData" :key="index">
+                <el-table-column :label="item.label" :prop="item.prop">
+<!--              缂栬緫鍜屽睍绀洪�昏緫 -->
+                  <template slot-scope="{ row }">
+                  <el-input v-if="editingRow === row && editShow== item.prop" v-model="row[item.prop]" @blur="saveRow"></el-input>
+                  <span v-else>{{row[item.prop]}}</span>
+                </template>
+                </el-table-column>
+              </div>
+              <el-table-column fixed="right" label="鎿嶄綔" width="120">
+                <template slot-scope="scope">
+                  <el-button size="small" type="text" @click.native.prevent="enumDeleteRow(scope.$index, tableData)">
+                    绉婚櫎
+                  </el-button>
+                </template>
+              </el-table-column>
+            </el-table>
+            <template>
+              <div style="display: flex;justify-content: right;margin-top: 15px">
+                <el-button type="primary"  size="small">淇濆瓨</el-button>
+                <el-button size="small" @click="enumVisible=false">鍙栨秷</el-button>
+              </div>
+            </template>
+          </div>
+      </template>
+    </avue-crud>
+  </basic-container>
+</template>
+
+<script>
+import {MasterTable, TableData} from "@/api/GetItem";
+
+export default {
+  name: "Crud.vue",
+  data() {
+    return {
+      editingRow:null,
+      editShow: "",
+      editAttr:"",
+      loading: false,
+      data: [],
+      option: {
+        //榛樿楂樺害,
+        align: 'center',
+        menuAlign: 'center',
+        addBtn: false,
+        editBtn: false,
+        selection: true,
+        selectionFixed: false,
+        index: true,
+        column: []
+      },
+      List: [],
+      columnType: {
+        text: "input",
+        combox: "select",
+        truefalse: "switch",
+        number: "number",
+        datetime: "datetime",
+      },
+      page: {
+        total: 0,
+        currentPage: 1,
+        pageSize: 10,
+        pageSizes: [10, 30, 50, 100, 200],
+      },
+      tableData:[],
+      tableHeadData:[],
+      items:{}
+    }
+  },
+  computed:{
+    editable(){
+      this.tableData.forEach(item=>{
+        this.items=item
+      })
+      return this.editShow === this.editingRow[this.items.prop];
+    }
+  },
+  created() {
+    this.CrudHeaderRend();
+    this.CrudRend()
+  },
+  activated() {
+    this.doLayout()
+  },
+  methods: {
+    // 鐩戝惉鍗曞厓鏍肩偣鍑讳簨浠跺苟瀛樺偍姝e湪缂栬緫鐨勮
+    handleCellClick(row, column) {
+      this.editingRow = row;
+      this.editShow = column.property;
+      console.log( this.editingRow['name'], this.editShow)
+    },
+    //鏋氫妇娉ㄥ叆鍒犻櫎
+    enumDeleteRow(row) {
+      console.log(row)
+      this.tableData.splice(row, 1)
+    },
+    // 灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬�
+    saveRow() {
+      this.editingRow = null;
+    },
+    doLayout() {
+      this.$nextTick(() => {
+        this.$refs.crud.doLayout();
+      });
+    },
+    //琛ㄦ牸澶存覆鏌�
+    CrudHeaderRend() {
+      MasterTable({
+        codeClassifyOid: "D9CF223F-317D-71EB-BD11-433A94CAD9F3",
+        functionId: 5,
+        _: 1685067339479
+      }).then(res => {
+        this.List = res.data.tableDefineVO.cols[0];
+        this.List.forEach(item => {
+          let columnItem = {
+            label: item.title,
+            prop: item.field,
+            type: this.columnType[item.type],
+            sortable: item.sort,
+            width: item.minWidth
+          };
+          this.option.column.push(columnItem);
+          this.option.column=this.tableHeadData;
+        })
+      })
+    },
+    //琛ㄦ牸鏁版嵁
+    CrudRend() {
+      TableData({
+        templateOid: "A12826E4-2B66-6D56-DE30-92BB1D7F607F",
+        codeClassifyOid: "D9CF223F-317D-71EB-BD11-433A94CAD9F3",
+        page: this.page.currentPage,
+        limit: this.page.pageSize,
+        _: 1685089123575
+      }).then(res => {
+        this.page.total = res.data.total;
+        this.data = res.data.data;
+        this.tableData=res.data.data;
+      })
+    },
+    // 鎺掑簭
+    sortChange(val) {
+      this.loading = true;
+      let order = ""
+      if (val.order == "ascending") {
+        order = "asc";
+      } else {
+        order = "desc";
+      }
+      TableData({
+        templateOid: "A12826E4-2B66-6D56-DE30-92BB1D7F607F",
+        codeClassifyOid: "D9CF223F-317D-71EB-BD11-433A94CAD9F3",
+        order: order,
+        sort: val.prop,
+        page: this.page.currentPage,
+        limit: this.page.pageSize,
+      }).then(res => {
+        setTimeout(() => {
+          this.data = res.data.data;
+          this.loading = false;
+        }, 100);
+      })
+    },
+    //鍒嗛〉鍒锋柊
+    async onLoad(val) {
+      console.log(val)
+      await TableData({
+        templateOid: "A12826E4-2B66-6D56-DE30-92BB1D7F607F",
+        codeClassifyOid: "D9CF223F-317D-71EB-BD11-433A94CAD9F3",
+        page: val.currentPage,
+        limit: val.pageSize,
+        _: 1685089123575
+      }).then(res => {
+        this.data = res.data.data;
+      })
+    },
+    //澶氶��
+    selectionChange(row) {
+      console.log(row)
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/Source/UBCS-WEB/src/components/FormTemplate/FindLike.vue b/Source/UBCS-WEB/src/components/FormTemplate/FindLike.vue
new file mode 100644
index 0000000..3dc09e9
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/FormTemplate/FindLike.vue
@@ -0,0 +1,636 @@
+<template>
+  <div v-if="visible">
+    <el-tabs v-model="activeName" type="card" @tab-click="handleClick">
+      <el-tab-pane label="鐩镐技椤规暟鎹�" name="findlike">
+        <el-table
+          :data="tableData"
+          v-loading="loading"
+          height="250"
+          :border="true"
+        >
+          <el-table-column
+            v-for="item in column"
+            :key="item.prop"
+            :prop="item.prop"
+            :label="item.label"
+          >
+            <template #default="{ row }">
+              <el-button type="text" @click="openFormTemlpate(row)">{{
+                row.id
+              }}</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </el-tab-pane>
+    </el-tabs>
+
+    <FormTemplate
+      type="detail"
+      :visible.sync="templateVisible"
+      templateOid="78B8C7C5-A042-0B96-FE6D-65421451782A"
+      codeClassifyOid="4524E801-6CC6-92E8-1AC3-2AB9604E8F96"
+    ></FormTemplate>
+  </div>
+</template>
+
+<script>
+import { findLike } from "@/api/formTemplate";
+import FormTemplate from "./index.vue";
+export default {
+  name: "FindLike",
+  components: { FormTemplate },
+  props: {
+    column: {
+      type: Array,
+      default: () => [{ prop: "id", label: "浠e彿" }],
+    },
+  },
+  data() {
+    return {
+      visible: false,
+      templateVisible: false,
+      activeName: 'findlike',
+      tableData: [
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "C2FD69E0-59CA-7A3C-D3BE-A95AB67F81D4",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test12",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "5052756D-CE43-8F30-AE6B-A4F4102A66C5",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 21:53:06.637",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 21:53:06.637",
+          nameoid: "69E5E86F-AD62-1DBE-05D3-E0CE4C07408F",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 21:53:06.637",
+        },
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "C33464B7-79A8-095B-D6FC-F9EB2EA0C985",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test12",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "4AF61981-D2E8-D8A2-9704-D12B043C22D1",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 21:51:06.262",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 21:51:06.262",
+          nameoid: "53E9B351-C410-2A78-3DC0-159BB3E695F9",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 21:51:06.262",
+        },
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "00813CDD-4066-5FF5-0AAF-4AFCDB0C2CAE",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test12",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "47E45EAF-74E3-C722-3FCA-8FC8F996684F",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 21:41:14.965",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 21:41:14.965",
+          nameoid: "0AA8ACA8-1961-A670-93C5-744DCFF64238",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 21:41:14.965",
+        },
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "413C9BA4-877D-AC01-554D-4DF3CCC0CCA5",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test12",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "E2F85B5B-9812-0A03-59D1-F4A48BCDA20B",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 21:38:11.315",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 21:38:11.315",
+          nameoid: "231D873D-ADF0-1E46-5E02-A2C0C1667324",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 21:38:11.315",
+        },
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "99E22C15-228E-E64B-E0F4-BB699CF1E686",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test1223",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "A750F940-B2EA-DB08-5240-1379FE34E9C1",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 21:26:31.626",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 21:26:31.626",
+          nameoid: "B38F560F-38EF-4E80-A843-0EF0556DBE1A",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 21:26:31.626",
+        },
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "0D8A595E-962C-E88A-1B75-CCBA29675B7A",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test12",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "80602381-F29D-E6A3-9DD4-FEF211DB8EAA",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 21:20:08.311",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 21:20:08.311",
+          nameoid: "DBDF377F-F7CF-67BA-673B-D8DE7E6D6587",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 21:20:08.311",
+        },
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "3EFB6B91-E320-58DD-8402-956E9D416D2C",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test12",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "0B6D7C29-DE6A-9D81-BC11-EB39D454877F",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 21:16:24.964",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 21:16:24.964",
+          nameoid: "3B3C476A-74E2-FF4A-7228-01D1F1EA18B8",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 21:16:24.964",
+        },
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "F3EB357A-1285-6BED-105E-4E4F1230CB76",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test12",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "247CF179-AA18-E636-F66E-054BF1A4A03C",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 20:28:37.591",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 20:28:37.591",
+          nameoid: "F95AF399-F100-8CD0-F944-DE528F8DFC93",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 20:28:37.591",
+        },
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "610F9365-8E6E-699F-07A0-BC35601BD952",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test12",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "9DBE4C77-D0E6-4326-621D-EA9AACD86AD4",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 20:27:05.35",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 20:27:05.35",
+          nameoid: "B1B51981-A1D9-20A0-F974-5A61C1B9F3FF",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 20:27:05.35",
+        },
+        {
+          lastmodifier: "1(涓氬姟娴嬭瘯)",
+          revisionseq: "1",
+          versionvalue: "1",
+          secondfl: "",
+          versionseq: "1",
+          checkinby: "",
+          firstfl: "",
+          jiliangdwname: "",
+          materialtype: "1001",
+          materialtypeText: "鏉愭枡",
+          chukufangshi: "鍏堣繘鍏堝嚭",
+          hesuanfenlei: "",
+          lctid: "wupinLC",
+          id: "******",
+          isfirstv: "1",
+          revisionoid: "7AF39DAB-A6EA-C0E0-303F-BD8B493553AE",
+          checkouttime: "",
+          btmname: "wupin",
+          codeclsfid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          revisionvalue: "1",
+          secretgradeText: "鏅�氬晢瀵�",
+          name: "",
+          secretgrade: "2",
+          isfirstr: "1",
+          xinghaoguige: "",
+          materialname: "test12",
+          codetemplateoid: "78B8C7C5-A042-0B96-FE6D-65421451782A",
+          description: "",
+          oid: "CD5EF43C-41E5-A0AC-42B1-BBEE6535AE1C",
+          thrifl: "",
+          revisionrule: "numberversionrule",
+          lcstatus_text: "缂栬緫涓�",
+          oldcode: "223",
+          hesuanfenleiname: "",
+          codeclsfpath:
+            "D9CF223F-317D-71EB-BD11-433A94CAD9F3##535FC9B6-FE27-241F-5FCA-ED4DC17CF95B##8EB35A1D-AB8B-2255-565C-84D309E0C62B##4524E801-6CC6-92E8-1AC3-2AB9604E8F96",
+          owner: "1",
+          xiaoshouwl: "false",
+          checkoutby: "",
+          creator: "1(涓氬姟娴嬭瘯)",
+          createtime: "2023-04-12 20:25:28.642",
+          tuhao: "yy002",
+          beizhushuoming: "",
+          versionrule: "0",
+          jiliangdw: "涓�",
+          islastr: "1",
+          copyfromversion: "",
+          materialclassify: "",
+          lastmodifytime: "2023-04-12 20:25:28.642",
+          nameoid: "9BC308A8-35D7-49FD-4E49-B93CB21E22A3",
+          lcstatus: "Editing",
+          islastv: "1",
+          checkintime: "",
+          ts: "2023-04-12 20:25:28.642",
+        },
+      ],
+      loading: false,
+      templateOid: "",
+      codeClassifyOid: "",
+    };
+  },
+  methods: {
+    findLinkClick(data) {
+      this.visible = true;
+      // findLike(data).then((res) => {
+      //   this.tableData = res.data.data
+      // });
+    },
+    openFormTemlpate(row) {
+      this.codetemplateoid = row.codetemplateoid;
+      this.codeClassifyOid = row.codeclsfid;
+      this.templateVisible = true;
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped></style>
diff --git a/Source/UBCS-WEB/src/components/FormTemplate/index.vue b/Source/UBCS-WEB/src/components/FormTemplate/index.vue
index 10b6e40..38a9f73 100644
--- a/Source/UBCS-WEB/src/components/FormTemplate/index.vue
+++ b/Source/UBCS-WEB/src/components/FormTemplate/index.vue
@@ -1,42 +1,769 @@
-<template>
-  <div>
-  </div>
-</template>
-
-<script>
-  import { getFormTemplate } from '../../api/common';
-  export default {
-    name: 'FormTemplate',
-    props: {
-      visible: {
-        type: Boolean,
-        default: false
-      },
-    },
-    created() {
-      this.getFormTemplate()
-    },
-    data() {
-      return {
-        load: false
-      }
-    },
-    methods: {
-      getFormTemplate() {
-        this.load = true
-        getFormTemplate({
-          templateOid: '78B8C7C5-A042-0B96-FE6D-65421451782A',
-          codeClassifyOid: '4524E801-6CC6-92E8-1AC3-2AB9604E8F96'
-        }).then(res => {
-          console.log(res);
-        }).catch(err => {
-          console.log(err);
-        })
-      }
-    }
-  }
-</script>
-
-<style lang='less' scoped>
-
-</style>
\ No newline at end of file
+<template>
+  <el-dialog
+    :visible.sync="dialogVisible"
+    v-dialogDrag
+    top="0vh"
+    :title="title"
+    class="avue-dialog avue-dialog--top"
+    :width="dialogOptions.width"
+    append-to-body
+    v-if="dialogVisible"
+  >
+    <avue-form
+      v-model="form"
+      :option="option"
+      v-loading="loading"
+      ref="form"
+      :key="index"
+    >
+      <template :slot="item.prop + 'Label'" v-for="item in option.column">
+        <span>
+          <span>{{ item.label }} </span>
+          <el-tooltip
+            v-if="item.keyAttr"
+            class="item"
+            effect="dark"
+            content="璇ュ睘鎬т负鍏抽敭灞炴��"
+            placement="top-start"
+          >
+            <i class="el-icon-star-on key_attr_icon"></i>
+          </el-tooltip>
+          <el-tooltip
+            v-if="item.tip"
+            class="item"
+            effect="dark"
+            :content="item.tip"
+            placement="top-start"
+          >
+            <i class="el-icon-warning"></i>
+          </el-tooltip>
+        </span>
+      </template>
+      <template :slot="item.prop + ''" v-for="item in option.column">
+        <vciWebRefer v-if="item.type=='refer'" :options="item.originalItem"></vciWebRefer>
+      </template>
+    </avue-form>
+    <FindLike ref="findLike"></FindLike>
+    <div class="avue-dialog__footer" v-if="type !== 'detail'">
+      <el-button @click="close()">鍙� 娑�</el-button>
+      <el-button @click="close()" type="primary" :loading="submitBtnLoading">纭� 瀹�</el-button>
+      <el-button @click="findLinkSubmit" type="primary">鐩镐技鍍忔煡璇�</el-button>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+import { getFormTemplate, executeCode, findLike } from "@/api/formTemplate";
+import { getDictionary } from "../../api/system/dict";
+import FindLike from "./FindLike.vue";
+import vciWebRefer from "../refer/vciWebRefer.vue";
+export default {
+  name: "FormTemplate",
+  components: { FindLike ,vciWebRefer},
+  props: {
+    visible: {
+      type: Boolean,
+      default: false,
+    },
+    disabledProp: {
+      type: Array,
+      default: () => ["id"],
+    },
+    templateOid: {
+      type: String,
+      default: "",
+    },
+    codeClassifyOid: {
+      type: String,
+      default: "",
+    },
+    type: {
+      type: String,
+      default: 'add'
+    },
+    title: {
+      type: String,
+      default: '琛ㄥ崟妯℃澘'
+    }
+  },
+  data() {
+    return {
+      index: 0,
+      form: {},
+      loading: false,
+      dialogOptions: {
+        width: "60%",
+      },
+      option: {
+        emptyBtn: false,
+        submitBtn: false,
+        labelWidth: "120",
+        column: [],
+      },
+      templateData: {},
+      columnType: {
+        text: "input",
+        combox: "select",
+        truefalse: "switch",
+        number: "number",
+        textarea: "textarea",
+        datetime: "datetime",
+        date: "date",
+        refer:'refer'
+      },
+      // 鍋囨暟鎹�
+      testItems: [
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "id",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "浼犲�肩鐢ㄥ姛鑳�",
+          tooltips: "",
+          type: "combox",
+          unique: false,
+          verify: "",
+        },
+        {
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "state",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: true,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "鎺ュ彛绂佺敤鍔熻兘",
+          tooltips: "",
+          type: "combox",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "oldcode",
+          hidden: false,
+          keyAttr: false,
+          prefix: "el-icon-search",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "鏂囨湰鍚庣紑娴嬭瘯",
+          text: "鍓嶅悗缂�鍔熻兘",
+          tooltips: "",
+          type: "text",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "materialname",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: true,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "姝e垯鏍¢獙鍔熻兘",
+          tooltips: "璇疯緭鍏ユ暟瀛�",
+          type: "text",
+          unique: false,
+          verify: "/[0-9]/",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: [
+            {
+              attributes: {},
+              key: "model_type",
+              value: "妯″瀷",
+            },
+            {
+              attributes: {},
+              key: "part_type",
+              value: "闆朵欢",
+            },
+          ],
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "dataSelect",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "鐩存帴杩斿洖涓嬫媺",
+          tooltips: "",
+          type: "combox",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: "formTemplateTest",
+          customClass: null,
+          data: [],
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "dictSelect",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "瀛楀吀杩斿洖涓嬫媺",
+          tooltips: "",
+          type: "combox",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "firstfl",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "鏁板瓧杈撳叆妗�",
+          tooltips: "",
+          type: "number",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "yyyy-MM-dd HH:mm:ss",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "datetime",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "鏃ユ湡鏃堕棿閫夋嫨鍣�",
+          tooltips: "",
+          type: "datetime",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "time",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "鏃堕棿閫夋嫨鍣�",
+          tooltips: "",
+          type: "date",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "false",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "xiaoshouwl",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "寮�鍏�",
+          tooltips: "",
+          type: "truefalse",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "鎴戞槸榛樿鍊�",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "tuhao",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "榛樿鍊煎姛鑳�",
+          tooltips: "鎻愮ず",
+          type: "text",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "xinghaoguige",
+          hidden: false,
+          keyAttr: true,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "灞炴�у叧閿��",
+          tooltips: "",
+          type: "text",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "jiliangdw",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          tip: "鎴戞槸鎻愮ず鍔熻兘",
+          required: false,
+          selectLibFlag: "",
+          showField: "jiliangdwname",
+          suffix: "",
+          text: "鎻愮ず鍔熻兘",
+          tooltips: "",
+          type: "text",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: "this.form.sum = this.form.fun1 + this.form.fun2",
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "fun1",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "鍙傛暟1娴嬭瘯js",
+          tooltips: "",
+          type: "text",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: "this.form.sum = this.form.fun1 + this.form.fun2",
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "fun2",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          required: false,
+          selectLibFlag: "",
+          showField: "hesuanfenleiname",
+          suffix: "",
+          text: "鍙傛暟2娴嬭瘯js",
+          tooltips: "",
+          type: "text",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: "",
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "sum",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: true,
+          required: false,
+          selectLibFlag: "",
+          showField: "",
+          suffix: "",
+          text: "鍙傛暟1鍙傛暟2姹傚拰",
+          tooltips: "",
+          type: "text",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "textarea",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: false,
+          referConfig: null,
+          required: false,
+          selectLibFlag: "",
+          showField: null,
+          suffix: "",
+          text: "鏂囨湰鍩�",
+          tooltips: "",
+          type: "textarea",
+          unique: false,
+          verify: "",
+        },
+        {
+          comboxKey: null,
+          customClass: null,
+          data: null,
+          dateFormate: "",
+          defaultValue: "",
+          displayExtension: null,
+          extendAttrMap: null,
+          extendAttrString: null,
+          field: "cz",
+          hidden: false,
+          keyAttr: false,
+          prefix: "",
+          readOnly: true,
+          referConfig: true,
+          required: false,
+          selectLibFlag: "",
+          showField: "depId",
+          suffix: "",
+          text: "鍙傜収",
+          tooltips: "",
+          type: "text",
+          unique: false,
+          verify: "",
+        },
+      ],
+      submitBtnLoading: false
+    };
+  },
+  created() {},
+  computed: {
+    dialogVisible: {
+      get() {
+        return this.visible;
+      },
+      set(val) {
+        this.$emit("update:visible", val);
+      },
+    },
+  },
+  methods: {
+    getFormTemplate() {
+      this.loading = true;
+      getFormTemplate({
+        templateOid: this.templateOid,
+        codeClassifyOid: this.codeClassifyOid,
+      })
+        .then((res) => {
+          if (res.status === 200) {
+            this.templateData = res.data;
+            this.templateRender();
+          }
+          this.loading = false;
+          console.log(res.data);
+        })
+        .catch((err) => {
+          this.loading = false;
+          console.log(err);
+        });
+    },
+    templateRender() {
+      const items = this.templateData.formDefineVO.items;
+      let column = [];
+      let dictKeys = [];
+      items.forEach((item) => {
+        // 闅愯棌琛ㄥ崟鍏冪礌
+        if (item.hide) {
+          return;
+        }
+        if (
+          item.type === "combox" &&
+          item.comboxKey &&
+          (!Array.isArray(item.dicData) || item.dicData.length === 0)
+        ) {
+          dictKeys.push({ dictKey: item.comboxKey, field: item.field });
+        }
+        // 绂佺敤閮ㄥ垎灞炴�э紙澶栭儴浼犲�肩鐢ㄥ拰鍙傜収绂佺敤锛�
+        if (this.disabledProp.includes(item.field) || this.$utilFunc.isValuableObj(item.referConfig)) {
+          item.readOnly = true;
+        }
+        // 璁剧疆琛ㄥ崟鏍¢獙鐨勮鍒欙紝鏂囨湰
+        let message = "璇烽�夋嫨";
+        let trigger = "change";
+        if (item.type === "text") {
+          message = "璇疯緭鍏�";
+          trigger = "blur";
+        } else if (item.type === "file") {
+          message = "璇蜂笂浼�";
+        }
+        let columnItem = {
+          label: item.text,
+          labelslot: true,
+          prop: this.$utilFunc.isValuableObj(item.referConfig) ? (item.showField || item.field) : item.field,
+          type: this.columnType[item.type],
+          dicData: this.getDataList(item.type, item.data),
+          disabled: this.type === 'detail' ? true : item.readOnly,
+          prepend: this.preOrSufFixShow("text", item.prefix),
+          append: this.preOrSufFixShow("text", item.suffix),
+          prefixIcon: this.preOrSufFixShow("icon", item.prefix),
+          suffixIcon: this.preOrSufFixShow("icon", item.suffix),
+          valueFormat: item.dateFormate,
+          format: item.dateFormate,
+          keyAttr: item.keyAttr,
+          value: item.defaultValue,
+          tip: item.tip,
+          comboxKey: item.comboxKey,
+          originalItem:item,
+          change: () => {
+            this.changeFun(item.displayExtension, item.prop);
+          },
+          span: item.type === "file" || item.type === "textarea" ? 24 : null,
+          click: this.clickFun(item.referConfig),
+          rules: [
+            {
+              required: item.required,
+              message: `璇�${message}${item.text}`,
+              trigger,
+            },
+            {
+              // 濡傛灉娌℃湁姝e垯鍒欏尮閰嶄换浣曞瓧绗�
+              pattern: item.verify ? item.verify : /[\s\S.]*/g,
+              message: item.tooltips,
+              trigger,
+            },
+          ],
+          props: {
+            label: "value",
+            value: "key",
+          },
+        };
+        column.push(columnItem);
+        this.$set(this.option, "column", column);
+      });
+      this.index++;
+      this.geDictData(dictKeys);
+    },
+    changeFun(displayExtension, prop) {
+      // executeCode({displayExtension, data: this.form}).then(res => {
+      //   this.form[prop] = res.data.data
+      // })
+    },
+    clickFun(referConfig) {
+      if (this.type === 'detail') {
+        return
+      }
+    },
+    // 鍓嶅悗缂�
+    preOrSufFixShow(type, val) {
+      if (this.$utilFunc.isEmpty(val) && typeof val !== "string") return;
+      const isIcon = val.slice(0, 8) === "el-icon-";
+      if ((type === "text" && !isIcon) || (type === "icon" && isIcon)) {
+        return val;
+      }
+    },
+    // 鑾峰彇swich鍜屽凡鎷垮埌鐨勪笅鎷夋暟鎹�
+    getDataList(type, dicData) {
+      if (type === "truefalse") {
+        return [
+          {
+            key: false,
+            value: "鍚�",
+          },
+          {
+            key: true,
+            value: "鏄�",
+          },
+        ];
+      } else if (type === "combox") {
+        return dicData;
+      }
+      return [];
+    },
+    // 鑾峰彇瀛楀吀鏁版嵁
+    geDictData(dictKeys) {
+      dictKeys.forEach((dictObj) => {
+        getDictionary({ code: dictObj.dictKey }).then((res) => {
+          if (res.data && res.data.code === 200) {
+            this.option.column = this.option.column.map((item) => {
+              if (item.field === dictObj.field) {
+                let dictData = (res.data.data || []).map((itm) => {
+                  itm.value = itm.dictValue;
+                  itm.key = itm.dictKey;
+                  return itm;
+                });
+                item.dicData = dictData;
+              }
+              return item;
+            });
+          }
+        });
+      });
+    },
+    findLinkSubmit() {
+      this.templateData.templateVO.data = this.form
+      console.log(this.$refs.findLike, 'this.$refs.findLike');
+      this.$refs.findLike.findLinkClick(this.templateData.templateVO)
+    }
+  },
+  watch: {
+    visible(newV) {
+      if (newV) {
+        this.getFormTemplate();
+        // this.templateRender()
+      }
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.key_attr_icon {
+  font-size: 24px;
+  position: relative;
+  top: 2px;
+  color: red;
+}
+// 瑙e喅swich缁勪欢涓嶅瀭鐩村眳涓殑闂
+/deep/ .el-switch {
+  vertical-align: baseline;
+}
+</style>
diff --git a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
index e5871d2..4121adf 100644
--- a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
+++ b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
@@ -539,7 +539,7 @@
             cell: false,
             labelWidth: 110,
             width: 125,
-            sortable: true,
+            sortable: false,
           },
           {
             label: "灞炴�т腑鏂囧悕绉�",
@@ -860,16 +860,17 @@
     },
     // 鎺掑簭
     sortChange(val) {
-      switch (val.order) {
-        // case "ascending":
-        //   this.data = this.data.sort((a,b) => { return b['name'].localeCompare(a['name']) })
-        //   this.data = this.data.sort((a,b) => { return b['id'].localeCompare(a['id']) })
-        //   break;
-        // case "descending":
-        //   this.data = this.data.sort((a,b) => { return a['name'].localeCompare(b['name']) })
-        //   this.data = this.data.sort((a,b) => { return a['id'].localeCompare(b['id']) })
-        //   break;
-      }
+      console.log(val)
+      // switch (val.order) {
+      //   // case "ascending":
+      //   //   this.data = this.data.sort((a,b) => { return b['name'].localeCompare(a['name']) })
+      //   //   this.data = this.data.sort((a,b) => { return b['id'].localeCompare(a['id']) })
+      //   //   break;
+      //   // case "descending":
+      //   //   this.data = this.data.sort((a,b) => { return a['name'].localeCompare(b['name']) })
+      //   //   this.data = this.data.sort((a,b) => { return a['id'].localeCompare(b['id']) })
+      //   //   break;
+      // }
     }
   }
 }
diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue
index dadabd7..5ff1791 100644
--- a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue
+++ b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue
@@ -42,7 +42,8 @@
           },
           {
             label:"鎻忚堪",
-            prop:"description"
+            prop:"description",
+            labelWidth:128,
           },
           {
             label: '瀛樺偍鐨勪笟鍔$被鍨�',
@@ -57,17 +58,18 @@
           },
           {
             label:"缂栫爜瑙勫垯",
-            prop:"coderuleoidName"
+            prop:"coderuleoidName",
+            labelWidth:128,
           },
           {
-            label:"蹇界暐澶у皬鍐欐煡閲�",
+            label:"鍏抽敭灞炴�ф煡璇㈣鍒�",
             prop:"codekeyattrrepeatoidName",
             labelWidth:128,
           },
           {
             label:"鐩镐技鏌ヨ瑙勫垯",
             prop:"codeResembleRuleOidName",
-            labelWidth:100,
+            labelWidth:128,
           },
         ]
       },
diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
index 4039188..f3d1fd1 100644
--- a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
+++ b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
@@ -12,7 +12,6 @@
             <el-button plain size="small" type="primary" @click="flushed">鍒锋柊</el-button>
           </div>
           <div style="display: flex;justify-content: space-around;margin-top: 5px;margin-bottom: 5px">
-
           </div>
         </div>
         <!--        鏍戣妭鐐规坊鍔犲璇濇-->
@@ -50,9 +49,9 @@
         </el-dialog>
         <!--        淇敼瀵硅瘽妗�-->
         <el-dialog :visible.sync="TreeEditFormVisible" append-to-body title="淇敼鍒嗙被">
-          <classifyTreeform ref="childForm" :TreeNewForm="TreeList" :nodeList="nodeList"></classifyTreeform>
+          <classifyTreeform ref="childForm" :loneTreeNewForm="TreeList" :nodeList="nodeList"></classifyTreeform>
         </el-dialog>
-        <avue-tree ref="tree" v-model="TreeAvueform" v-loading="loading" :data="Treedata" :defaultExpandAll="false"
+        <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata" :defaultExpandAll="false"
                    :option="Treeoption"
                    style="height: 80.5vh;padding-top: 5px;padding-bottom: 30px"
                    @node-click=" nodeClick"
@@ -74,6 +73,7 @@
                           @row-save="CrudRowSave"
                           @row-del="CrudRowDel"
                           @row-update="CrudRowUpdata"
+                          :before-close="beforeClose"
                >
             <template slot="menuLeft">
               <el-button plain size="small" type="primary" @click="FindFormVisible = true;">鏌ヨ</el-button>
@@ -118,12 +118,12 @@
                   <el-container>
                     <el-aside width="300px">
                       <div style="margin-bottom: 5px"><el-tag>涓婚搴撳垎绫�</el-tag></div>
+                      <!--                      鍏嬮殕妯℃澘鐨勬爲 娌跨敤棣栭〉鏍戠殑loading鍜宱ption锛屼絾鏄痙ata鍜寁-model缁戝畾鐨勬暟鎹垱寤轰竴涓柊鐨勫彉閲忥紝鍙﹀鐐瑰嚮鏂规硶涔熸槸閲嶆柊鑾峰彇鏉ユ搷浣滃厠闅嗘ā鏉跨殑鏁版嵁-->
                         <avue-tree ref="tree" v-model="TreeAvueform" v-loading="loading" :data="Treedata"
                                    :defaultExpandAll="false"
                                    :option="Treeoption"
                                    style="height: 50.5vh;margin-right: 10px"
-                                   @node-click=" nodeClick"
-                                   @check-change="checkChange"
+                                   @node-click="ClonenodeClick"
                         >
                         </avue-tree>
                     </el-aside>
@@ -244,6 +244,7 @@
       TreeAddFormVisible: false,
       //褰撳墠鐐瑰嚮椤�
       nodeClickList: "",
+      ClonenodeClickList:"",
       //鍒嗙被鍜屼富棰樺簱鐘舵��
       TreeFlag: false,
       //鏍戝姞杞�
@@ -264,7 +265,10 @@
       },
       //avue-tree鏁版嵁锛屾殏鏃舵病鏈変綔鐢紝閲岄潰鍔熻兘鐢╡lement鍐欎簡锛屽彧鐢╝vue鐨勪竴涓爲缁勪欢涓嶇敤鍐呯疆琛ㄥ崟浜嗐��
       TreeAvueform: {},
+      //鍏嬮殕鏍�
+      CloneTreeAvueform:{},
       Treedata: [],
+      CloneTreedata:[],
       Treeoption: {
         addBtn: false,
         editBtn: false,
@@ -290,7 +294,7 @@
       CloneSelectOptions: [{
         value: '0',
         label: '妯℃澘缂栧彿'
-        },
+      },
         {
           value: '1',
           label: '妯℃澘鍚嶇О'
@@ -343,7 +347,7 @@
           },
           {
             label: "妯℃澘鍚嶇О",
-            prop: "name"
+            prop: "name",
           },
           {
             label: "妯℃澘鎻忚堪",
@@ -401,18 +405,20 @@
     getAttr() {
       getAtrrList().then(res => {
         this.Treedata = res.data;
-        this.Treedata.forEach(() => {
+        this.CloneTreedata = res.data;
+        this.Treedata.forEach((item) => {
           for (let i = 0; i < this.Treedata.length; i++) {
             this.Treedata[i].value = i;
           }
         })
         //璋冪敤淇敼灞炴�у悕鏂规硶
         this.ModifyProperties(this.Treedata, 'text', 'label');
+        this.ModifyProperties(this.CloneTreedata, 'text', 'label');
       }).catch(res => {
         this.$message.error(res)
       })
     },
-    //瀹氫箟涓�涓慨鏀瑰璞″睘鎬у悕鐨勬柟娉� 杩欓噷鍒敼锛侊紒锛佸ソ鍍忔槸鍚庡彴鎺ュ彛鏁版嵁瀛楁涓嶄竴鑷达紝娣诲姞鐨勬柟娉曘�傚叿浣撲粈涔堝師鍥犳垜涔熷繕璁颁簡
+    //瀹氫箟涓�涓慨鏀规暟鎹睘鎬у悕鐨勬柟娉�
     ModifyProperties(obj, oldName, newName) {
       for (let key in obj) {
         if (key === oldName) {
@@ -598,21 +604,12 @@
         })
         //妯℃澘绠$悊琛ㄦ牸鏁版嵁
         await gridCodeClassifyTemplate({'conditionMap[codeclassifyoid]': data.oid}).then(res => {
-          if (this.CloneVisible != true) {
-            this.Formlist = res.data.data.filter(item => {
-              if (item.codeclassifyoid != "") {
-                this.codeClassifyOid = item.codeclassifyoid
-                return item.codeclassifyoid == this.nodeClickList.oid
-              }
-            })
-          } else {
-            this.CloneFormlist = res.data.data.filter(item => {
-              if (item.codeclassifyoid != "") {
-                this.codeClassifyOid = item.codeclassifyoid
-                return item.codeclassifyoid == this.nodeClickList.oid
-              }
-            })
-          }
+          this.Formlist = res.data.data.filter(item => {
+            if (item.codeclassifyoid != "") {
+              this.codeClassifyOid = item.codeclassifyoid
+              return item.codeclassifyoid == this.nodeClickList.oid
+            }
+          })
           gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]': this.Formlist[0].oid}).then(res => {
             this.ProData = res.data.data
             console.log(this.ProData)
@@ -633,9 +630,22 @@
         console.log(error)
       }
     },
+    //鍏嬮殕妯℃澘鏍戠殑鐐瑰嚮鍒囨崲鏁版嵁
+    async ClonenodeClick(data){
+      this.ClonenodeClickList=data;
+      console.log("aaa",this.ClonenodeClickList.oid)
+      await gridCodeClassifyTemplate({'conditionMap[codeclassifyoid]': data.oid}).then(res=>{
+        this.CloneFormlist = res.data.data.filter(item => {
+          if (item.codeclassifyoid != "") {
+            this.codeClassifyOid = item.codeclassifyoid
+            return item.codeclassifyoid == this.ClonenodeClickList.oid
+          }
+        })
+      })
+    },
     //tab鏍忓垏鎹�
     handleChange(column) {
-      this.type = column
+      this.type = column;
     },
     // //楂樼骇鏌ヨ鎸夐挳
     // handleSelectChange(key) {
@@ -702,22 +712,24 @@
         this.Formlist = res.data.data
       })
     },
+
     //妯℃澘绠$悊琛ㄦ牸娣诲姞
     CrudRowSave(row,done) {
-      debugger
-      console.log(nodeClickList.length)
       if (this.nodeClickList.length <= 0) {
         this.$message({
           type: 'warning',
           message: '璇峰厛浠庢爲涓婇�夋嫨涓�鏉℃暟鎹�!'
         });
       } else {
-        console.log(this.nodeClickList)
         let codeClassifyOid = this.codeClassifyOid
         this.$set(row, "codeclassifyoid", codeClassifyOid)
         addSave(row).then(res => {
+          this.$message({
+            type: "success",
+            message: "娣诲姞鎴愬姛!"
+          });
+          done(row)
           this.CrudRend()
-          done()
         }).catch(res => {
           this.$message({
             type: 'info',
@@ -727,14 +739,16 @@
       }
     },
     //妯℃澘绠$悊淇敼
-    CrudRowUpdata(row) {
-      editSave(row).then(() => {
+    CrudRowUpdata(row,index,done) {
+      editSave(row).then((res) => {
         this.CrudRend()
-      }).catch(res => {
         this.$message({
-          type: 'info',
-          message: res
+          type: "success",
+          message: "鎿嶄綔鎴愬姛!"
         });
+        done()
+      }).catch(res => {
+        console.log(res)
       })
     },
     //妯℃澘绠$悊鍒犻櫎
@@ -777,7 +791,7 @@
     },
     //鍏嬮殕妯℃澘閫夋嫨纭畾
     Clonehandler(){
-      if(this.CloneFormlist.length <= 0){
+      if(this.CloneSelect.length <= 0){
         this.$message({
           type: 'warning',
           message: '璇烽�夋嫨瑕佸厠闅嗙殑妯℃澘!'
@@ -788,7 +802,8 @@
           message: '鍙兘閫夋嫨涓�鏉℃暟鎹�!'
         });
       } else {
-        this.CloneinnerVisible=true
+        this.CloneinnerVisible=true;
+
       }
     },
     //鐐瑰嚮浠庡叾瀹冩ā鏉垮厠闅�
@@ -804,16 +819,27 @@
     },
     //鍏嬮殕妯℃澘鍗曢�夋鏀瑰彉
     selectionChange(row){
-      console.log(row)
-      this.CloneSelect=row
+      this.CloneSelect=row;
+      //鍙屽悜缁戝畾锛屾彁浜よ〃鍗曡緭鍏ユ鍥炲~涓婂綋鍓嶉�夋嫨鐨勬暟鎹�
       this.CloneModel.id=row[0].id;
       this.CloneModel.name=row[0].name;
+      //杩欓噷鏈夌偣缁曪紝CloneSelect鏄垜閫夋嫨妗嗛�夋嫨鐨勬暟鎹�傜瓑浜巘his.nodeClickList.oid鏄洜涓猴紝鍏嬮殕妯℃澘浼犻�掓暟鎹鎶婂綋鍓嶉�夋嫨鏍戠殑oid浼犻�掔粰鍚庣銆傝�屼笉鏄綋鍓嶈鍏嬮殕妯℃澘鐨刼id
+      this.CloneSelect[0].codeclassifyoid=this.nodeClickList.oid
     },
     //鍏嬮殕琛ㄥ崟鎻愪氦
-    Clonesubmit(done){
+    Clonesubmit(row,done){
+      //閲嶆柊璧嬪�糃loneSelect浼犻�掔殑鏁版嵁涓鸿緭鍏ユ鍙互淇敼鐨勬暟鎹紝CloneModel鎻愪氦琛ㄥ崟杈撳叆妗嗗弻鍚戠粦瀹氭暟鎹�
+      this.CloneSelect[0].id=this.CloneModel.id;
+      this.CloneSelect[0].name=this.CloneModel.name;
       copy(this.CloneSelect[0]).then(res=>{
-        console.log(res)
-        done()
+        //鍥犱负鏄祵濂楀脊绐楁墍浠ユ墜鍔ㄥ叧闂瑿loneinnerVisible锛孋loneVisible涓や釜寮圭獥銆�
+        this.CloneinnerVisible=false
+        this.CloneVisible=false
+        this.$message.success("澶嶅埗鎴愬姛")
+        this.CrudRend()
+        done(row)
+      }).catch(res=>{
+        done(res)
       })
     },
     //鍒锋柊
@@ -831,10 +857,6 @@
       setTimeout(() => {
         this.FormLoing = false
       }, 600);
-    },
-    // 宸︽爲澶氶��
-    checkChange(val) {
-      console.log(val)
     },
   }
 }
diff --git a/Source/UBCS-WEB/src/components/advanced-query/advanced-query.vue b/Source/UBCS-WEB/src/components/advanced-query/advanced-query.vue
new file mode 100644
index 0000000..17bcab3
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/advanced-query/advanced-query.vue
@@ -0,0 +1,13 @@
+<template>
+  
+</template>
+
+<script>
+export default {
+
+}
+</script>
+
+<style>
+
+</style>
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue
index 2ea5f05..a992916 100644
--- a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue
+++ b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigCrudDialog.vue
@@ -3,13 +3,13 @@
         title="閫夋嫨鍙傜収閰嶇疆"
         append-to-body
         :visible.sync="isShowReferConfigCrud"
-        width="94%"
+        width="95%"
         id="refer-config-dialog"
         style="height: 115vh; margin-top: -14vh; overflow-y: hidden">
         <div style="width: 100%; overflow-y: auto; height: 70vh">
             <el-row style="width: 100%; height:70%">
-                <el-col style="width: 70%; height: 100%;">
-                    <basic-container style="width: 100%; ">
+                <el-col :style="toggleBasicCrudWidth">
+                    <basic-container style="width: 100%;">
                         <avue-crud :option="referConfigCrudOption"
                             class="refer-config-crud"
                             :page.sync="referConfigParams.referConfigPage"
@@ -17,9 +17,11 @@
                             :data="referConfigParams.referConfigData"
                             :ref= "referConfigParams.ref"
                             @row-click="referConfigRowClick"
-                            @selection-change="referConfigDataChange"
                             @search-change="referConfigSearchChange"
-                            @search-reset="referConfigSearchReset">
+                            @search-reset="referConfigSearchReset"
+                            @current-change="referConfigCurrentChange"
+                            @size-change="referConfigSizeChange"
+                            @on-load="referConfigOnload">
                             <template #radio="{row}">
                                 <el-radio v-model="referConfigParams.referConfigSelectedRow"
                                     :label="row.$index">
@@ -29,26 +31,39 @@
                         </avue-crud>
                     </basic-container>
                 </el-col>
-                <el-col v-show="true" style="width: 30%; height: 100%;">
-                    <basic-container style="width: 100%;">
+                <el-col v-show="isShowForm" style="height: 100%; width: 30%;">
+                    <basic-container style="width: 100%; height: 100vh; overflow-y: hidden">
                         <avue-form ref="refereConfigForm" 
-                        style="height: 65vh;"
-                        :option="formOption" 
-                        class="refer-confg-form"
-                        ></avue-form>
+                            style="height: 65vh; overflow-y: auto;"
+                            :option="formOption"
+                            v-model="referConfigForm"
+                            class="refer-confg-form">
+                        </avue-form>
                     </basic-container>
                 </el-col>
             </el-row>
             <el-row style="width: 100%; height:30%; margin-top: 130px">
-                <basic-container style="width: 100%; height:100%;">
-                    <avue-crud :option="attrAndSrchCondOption"
-                        class="refer-attrorsrchcond-crud"
-                        :table-loading="attrAndSrchCondParams.attrAndSrchCondLoading"
-                        :data="attrAndSrchCondParams.attrAndSrchCondData"
-                        :ref= "attrAndSrchCondParams.ref"
-                        @row-click="attrAndSrchCondRowClick">
-                    </avue-crud>
-                </basic-container>
+                <el-col 
+                    :style="toggleSrchCrudWidth">
+                    <basic-container style="width: 100%; height:100%;">
+                        <avue-crud :option="srchCondOption"
+                            class="refer-srchcond-crud"
+                            :table-loading="srchCondParams.srchCondLoading"
+                            :data="srchCondParams.srchCondData"
+                            :ref= "srchCondParams.ref">
+                        </avue-crud>
+                    </basic-container>
+                </el-col>
+                <el-col v-show="showAttrParams.isShow" style="width: 60%; height: 100%;">
+                    <basic-container style="width: 100%; height:100%;">
+                        <avue-crud :option="showAttrOption"
+                            class="refer-attr-crud"
+                            :table-loading="showAttrParams.showAttrLoading"
+                            :data="showAttrParams.showAttrData"
+                            :ref= "showAttrParams.ref">
+                        </avue-crud>
+                    </basic-container>
+                </el-col>
             </el-row>
         </div>
         <div slot="footer" class="dialog-footer">
@@ -60,6 +75,7 @@
 
 <script>
 //import func from "@/util/func";
+import { getReferConfigPage } from "@/api/code/codeReferConfig";
 export default {
     name: "referConfigDialog",
         props: {
@@ -69,7 +85,7 @@
                 isShowReferConfigCrud:false,
                 referConfigCrudOption: {
                     border: true,
-                    height: '56vh',
+                    height: '45vh',
                     tip: false,
                     searchShow: true,
                     searchMenuSpan: 6,
@@ -106,7 +122,7 @@
                         },{
                             label: '鍙傜収鐨勪笟鍔$被鍨�',
                             search: false,
-                            prop: 'referType'
+                            prop: 'referTypeName'
                         },{
                             label: '鏄剧ず鐨勫睘鎬�',
                             search: false,
@@ -118,7 +134,7 @@
                         },{
                             label: '鍙傜収绐楀彛绫诲瀷',
                             search: false,
-                            prop: 'typeText' 
+                            prop: 'typeText',
                         }
                     ],
                 },
@@ -139,10 +155,45 @@
                 formOption: {
                     submitBtn: false,
                     emptyBtn: false,
-                    labelWidth: '110', //榛樿鏍囩瀹藉害
-                    column: [{            
-                            label: '姣忛〉鏄剧ず鏉℃暟',
-                            prop: 'limit',
+                    labelWidth: '150', //榛樿鏍囩瀹藉害
+                    // 榛樿閰嶇疆灏变负鏍戝舰绫诲瀷锛屾敼浜嗕細鍑虹幇闂
+                    column: [
+                        {
+                            label: '鏍戝舰鐨勪笂绾у睘鎬�',
+                            prop: 'parentFieldName',
+                            span: 24,
+                            disabled: true,
+                            row: true,
+                            placeholder: ' ',
+                        },{
+                            label: '涓婄骇灞炴�у�煎搴斿睘鎬�',
+                            prop: 'parentUsedField',
+                            span: 24,
+                            disabled: true,
+                            row: true,
+                            placeholder: ' ',
+                        },{
+                            label: '鏍硅妭鐐圭殑鍊�',
+                            prop: 'parentValue',
+                            span: 24,
+                            disabled: true,
+                            row: true,
+                            placeholder: ' ',
+                        },{
+                            label: '鏍戝姞杞芥柟寮�',
+                            prop: 'loadType',
+                            span: 24,
+                            disabled: true,
+                            row: true,
+                            placeholder: ' ',
+                            dicData: [{
+                                label: '鍏ㄩ儴', value: 'all'
+                            }, {
+                                label: '閫愮骇鍔犺浇', value: 'node'
+                            }],
+                        },{
+                            label: '鏄惁鍙兘閫夋嫨鍙跺瓙鑺傜偣',
+                            prop: 'onlyLeaf',
                             span: 24,
                             disabled: true,
                             row: true,
@@ -158,18 +209,18 @@
                             label: '鎺掑簭绫诲瀷',
                             prop: 'sortType',
                             span: 24,
+                            disabled: true,
+                            row: true,
+                            placeholder: ' ',
                             dicData: [{
                                 label: '鍗囧簭', value: 'asc'
                             }, {
                                 label: '闄嶅簭', value: 'desc'
                             }],
-                            type: 'select',
-                            disabled: true,
-                            row: true,
-                            placeholder: ' ',
-                        }
-                    ]
+                        },
+                    ],
                 },
+                referConfigForm:{},
                 // 鎺掑簭绫诲瀷鐨勮〃鍗曢厤缃�
                 sortColumn:[{            
                     label: '姣忛〉鏄剧ず鏉℃暟',
@@ -189,95 +240,98 @@
                     label: '鎺掑簭绫诲瀷',
                     prop: 'sortType',
                     span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
                     dicData: [{
                         label: '鍗囧簭', value: 'asc'
                     }, {
                         label: '闄嶅簭', value: 'desc'
                     }],
-                    type: 'select',
-                    disabled: true,
-                    row: true,
-                    placeholder: ' ',
                 }],
                 // 鏍戝舰绫诲瀷鐨勮〃鍗曢厤缃�
                 treeColumn:[{
                     label: '鏍戝舰鐨勪笂绾у睘鎬�',
                     prop: 'parentFieldName',
-                    span: 7,
-                    tip: '鏍戝舰灞曠ず鐨勬椂鍊欙紝涓婁笅绾у叧绯绘煡鎵剧殑灞炴�с��',
-                    tipPlacement: 'right',
-                    rules: [{
-                        required: true,
-                        message: "(鏍戝舰鐨勪笂绾у睘鎬�)蹇呭~椤逛笉鑳戒负绌�",
-                        trigger: "blur",
-                    }],
+                    span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
                 },{
                     label: '涓婄骇灞炴�у�煎搴斿睘鎬�',
                     prop: 'parentUsedField',
-                    span: 7,
-                    tip: '涓婄骇灞炴�у瓨鍌ㄧ殑鍊�,鏄笂绾ф暟鎹殑浠�涔堝睘鎬с�備竴鑸兘鏄痮id銆�',
-                    value: 'oid',
-                    tipPlacement: 'right',
+                    span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
                 },{
                     label: '鏍硅妭鐐圭殑鍊�',
                     prop: 'parentValue',
-                    span: 7,
-                    tip: '鏍戝舰灞曠ず鐨勬椂鍊欙紝涓婄骇鐨勫�笺��',
-                    tipPlacement: 'right',
-                },{
+                    span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
+                },
+                {
                     label: '鏍戝姞杞芥柟寮�',
                     prop: 'loadType',
-                    span: 7,
-                    value: 'all',
+                    span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
                     dicData: [{
                         label: '鍏ㄩ儴', value: 'all'
                     }, {
                         label: '閫愮骇鍔犺浇', value: 'node'
                     }],
-                    type: 'select',
                 },{
                     label: '鏄惁鍙兘閫夋嫨鍙跺瓙鑺傜偣',
                     prop: 'onlyLeaf',
-                    span: 7,
-                    value: false,
-                    type: 'switch',
+                    span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
                 },{
                     label: '鎺掑簭瀛楁',
                     prop: 'sortField',
-                    span: 7,
-                    //type: 'table',
-                    tip: '鏌ヨ鏁版嵁鏃剁殑鎺掑簭瀛楁',
-                    tipPlacement: 'right',
+                    span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
                 },{
                     label: '鎺掑簭绫诲瀷',
                     prop: 'sortType',
-                    span: 7,
-                    type: 'select',
-                    value: 'asc',
+                    span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
                     dicData: [{
                         label: '鍗囧簭', value: 'asc'
                     }, {
                         label: '闄嶅簭', value: 'desc'
                     }],
-                },],
+                },
+                ],
                 // 骞冲彴绫诲瀷鐨勮〃鍗曢厤缃�
                 standColumn:[{
                     label: '鍙傝�冪殑UI涓婁笅鏂�',
                     prop: 'referContent',
-                    span: 7,
-                    tip: '鍙湁鍙傜収绐楀彛绫诲瀷鏄痵tand鏃舵墠蹇呴』璁剧疆,涓斿湪stand绫诲瀷涓嬫墠鑳界敓鏁�',
-                    tipPlacement: 'right',
+                    span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
                 },
                 {
                     label: '骞冲彴鐨勮〃鏍肩紪鍙�',
                     prop: 'displayTable',
-                    span: 7,
-                    tip: '涓庡弬鐓х殑UI涓婁笅鏂囦簰鏂ワ紝鍙湁鍙傜収绐楀彛绫诲瀷鏄痵tand鏃舵墠蹇呴』璁剧疆锛屼笖鍦╯tand绫诲瀷涓嬫墠鑳界敓鏁�',
-                    tipPlacement: 'right',
+                    span: 24,
+                    disabled: true,
+                    row: true,
+                    placeholder: ' ',
                 }],
 
-                // 鏄剧ず鐨勫睘鎬у拰鏌ヨ鏉′欢琛ㄦ牸鍖哄煙
-                attrAndSrchCondOption: {
+                // 鏌ヨ鏉′欢琛ㄦ牸鍖哄煙
+                srchCondOption: {
                     border: true,
                     height: '40vh',
                     tip: false,
@@ -309,7 +363,40 @@
                                     prop: 'filterValue',
                                 }
                             ],
-                        },{
+                        }, 
+                    ],
+                },
+                srchCondParams: {
+                    ref: "srchCondCrud",
+                    srchCondLoading: false,
+                    srchCondData: [],
+                    isShow: true,
+                },
+                toggleSrchCrudWidth: {
+                    width: '40%',
+                    height: '100%',
+                },
+
+                //鏄剧ず鐨勫睘鎬ц〃鏍奸厤缃尯鍩�
+                showAttrOption: {
+                    border: true,
+                    height: '40vh',
+                    tip: false,
+                    searchShow: false,
+                    searchMenuSpan: 6,
+                    index: true,
+                    selection: false,
+                    menu: false,
+                    addBtn: false,
+                    refreshBtn: false,
+                    searchShowBtn: false,
+                    columnBtn: false,
+                    dialogClickModal: false,
+                    highlightCurrentRow: true,
+                    align: 'center',
+                    menuAlign: 'center',
+                    column: [
+                        {
                             label: '鏄剧ず鐨勫睘鎬�',
                             children: [
                                 {
@@ -327,36 +414,62 @@
                                     prop: 'title'
                                 },{
                                     label: '瀛楁绫诲瀷',
-                                    prop: 'fieldType'
+                                    prop: 'fieldTypeText'
                                 },{
                                     label: '鍒楄〃鍙帓搴�',
                                     prop: 'sort' 
                                 },{
                                     label: '鎺掑簭瀛楁',
-                                    prop: 'sortField' 
+                                    prop: 'attrSortField' 
                                 },{
                                     label: '瀛楁瀹藉害',
                                     prop: 'width' 
                                 },{
                                     label: '鍒楀浐瀹氫綅缃�',
-                                    prop: 'fixedText' 
+                                    prop: 'fixedPositionText' 
                                 },{
                                     label: 'js鏄剧ず浠g爜',
                                     prop: 'templet' 
+                                },{
+                                    label: '鏄惁蹇�熸煡璇�',
+                                    prop: 'isQuery' 
                                 }
                             ]
                         }, 
                     ],
                 },
-                attrAndSrchCondParams: {
-                    ref: "attrOrSrchCondCrud",
-                    attrAndSrchCondLoading: false,
-                    attrAndSrchCondData: [],
+                showAttrParams: {
+                    ref: "showAttrCrud",
+                    showAttrLoading: false,
+                    showAttrData: [],
+                    isShow: true,
+                },
+
+                // 鏄惁鏄剧ず鍙樺姩鐨勮〃鍗曞尯鍩�
+                isShowForm: true,
+                toggleBasicCrudWidth: {
+                    height: '100%',
+                    width: '70%',
                 },
                 
+                // 鏄惁鏄剧ず灞炴�ц〃鏍�
+                isShowAttrCrud: true,
+                
+                defaultOrGridForm: ['limit','sortField','sortType'],
+                standForm: ['referContent','displayTable'],
+                treeForm: [
+                    'parentFieldName',
+                    'parentUsedField',
+                    'parentValue',
+                    'loadType',
+                    'onlyLeaf',
+                    'sortField',
+                    'sortType'
+                ],
             }
         },
         methods: {
+
             // 涓嬩竴姝ヨ杩涜鐨勬搷浣滈�夋嫨骞朵繚瀛樻垨閫夋嫨骞朵慨鏀�
             selectedreferConfig(condition) {
                 // 褰撳墠閫変腑鐨勫弬鐓ч厤缃
@@ -365,35 +478,142 @@
                     this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹紒");
                     return;
                 }
+                let filterForm = this.filterForm(currentSeletedRow);
                 if(condition == "selectedSave"){
-                    console.log(currentSeletedRow);
+                    // 鐩存帴淇濆瓨,鎵�浠ョ洿鎺ヨ皟鐢╟ode鐣岄潰鐨勭晫闈㈠洖鏄� 
+                    this.$emit('echoReferConfig',filterForm);
+                    // console.log(filterForm);
                 }else {
-                    console.log(currentSeletedRow);
-                }
-            },
-            referConfigOnload(page, params = {}){
-                this.referConfigParams.referConfigLoading = true;
-                this.referConfigParams.referConfigData = [
-                    {
-                        id: 'test',
-                        name: '娴嬭瘯',
-                        referType: 'test',
-                        textField: 'test',
-                        valueField: 'test',
-                        typeText:'榛樿閰嶇疆',
-                    },{
-                        id: 'test1',
-                        name: '娴嬭瘯1',
-                        referType: 'test1',
-                        textField: 'test1',
-                        valueField: 'test1',
-                        typeText:'骞冲彴閰嶇疆',
+                    // 閫夋嫨骞朵慨鏀�,鎵цcode鏈嶅姟涓殑鎵撳紑鐣岄潰锛屾墍浠ヨ鍏堟瀯閫犲嚭鎵�闇�鐨勬暟鎹�
+                    let submitForm = {
+                        referBtmName: filterForm.referType,
+                        referBtmId: filterForm.referTypeName,
+                        referConfig:  JSON.stringify(filterForm),
                     }
+                    this.$emit('openReconfigInterFace',submitForm);
+                }
+                this.isShowReferConfigCrud = false;
+            },
+            // 杩囨护鍑哄綋鍓嶇被鍨嬫墍闇�瑕佺殑灞炴��
+            filterForm(currentRow){
+                // 闇�瑕佷繚鐣欑殑鍩虹灞炴��
+                let submittDefaultForm = [
+                    'referTypeName',
+                    'referType',
+                    'textField',
+                    'valueField',
+                    'type', //鍙傜収绐楀彛绫诲瀷
+                    'url',
+                    'backPath',
+                    'method',
+                    'height',
+                    'useFormKey',
+                    'paramForFormKey',
+                    'isMuti',
+                    'mapFields', 
+                    'isOpenGlobal', //鏄惁寮�鍚叏灞�
+                    'isPersistence',
+                    'id',
+                    'name',
                 ];
-                this.$nextTick(() => {
-                    this.$refs[this.referConfigParams.ref].doLayout()
-                })
-                this.referConfigParams.referConfigLoading = false;
+                // 闇�瑕佹牴鎹被鍨嬫坊鍔犵殑灞炴��
+                let addArray = [];
+                let newForm ={};
+                // 鏍规嵁涓嶅悓绫诲瀷杩囨护鍑轰笉鍚岀殑鐨勮〃鍗曞睘鎬�
+                if(currentRow.type == 'stand'){
+                    addArray = ['referContent', 'displayTable'];
+                } else if(currentRow.type == 'default' || currentRow.type == 'grid'){
+                    addArray = ['limit', 'sortField', 'sortType'];
+                } else if(currentRow.type == 'tree'){
+                    addArray = [
+                        "parentFieldName", 
+                        'parentUsedField',
+                        'parentValue', 
+                        'loadType',
+                        'onlyLeaf',
+                        'sortField',
+                        'sortType'
+                    ];
+                }
+                // 鎷兼帴涓や釜鏁扮粍
+                submittDefaultForm = submittDefaultForm.concat(addArray);
+                if(currentRow.codeSrchCondConfigVOS.length > 0){
+                    //console.log(currentRow.codeSrchCondConfigVOS);
+                    newForm = {
+                        codeSrchCondConfigVOS: currentRow.codeSrchCondConfigVOS,
+                    }
+                }
+                if((currentRow.type == 'default' || currentRow.type  == 'grid') && currentRow.codeShowFieldConfigVOS.length >= 0){
+                    newForm = Object.assign(newForm,{codeShowFieldConfigVOS: currentRow.codeShowFieldConfigVOS});
+                }
+                // 杩囨护鍑虹┖鍊煎睘鎬у拰涓嶉渶瑕佺殑灞炴��
+                submittDefaultForm.forEach(item=>{
+                    // console.log(!this.checkStringIsEmpty(currentRow[item]) || !this.checkArrayIsUndefined(currentRow[item]));
+                    if((item == 'isMuti' || item == 'onlyLeaf') || (!this.checkStringIsEmpty(currentRow[item]) || !this.checkArrayIsUndefined(currentRow[item]))){
+                        //console.log(item,currentRow[item]);
+                        newForm = Object.assign(newForm,{[item]:currentRow[item]});  
+                    }
+                });
+                // console.log(newForm);
+                return newForm;
+            },
+             /**
+             * 涓虹┖
+             * @param val
+             * @returns {boolean}
+            */
+            checkStringIsEmpty(val){
+                if (
+                    val === null ||
+                    typeof val === 'undefined' ||
+                    (typeof val === 'string' && val === "" && val !== 'undefined')
+                ) {
+                    return true;
+                }
+                    return false;
+            },
+             /**
+             * 鏄惁涓哄畾涔�
+             * @param val
+             * @returns {boolean}
+             */
+            checkArrayIsUndefined(val){
+                return typeof val === 'array' && (val.length === 0 || val === null || typeof val === 'undefined' || val === []);
+            },
+            referConfigOnload(){
+                let refer = this.referConfigParams;
+                refer.referConfigLoading = true;
+                let param = {};
+                // 澶氫釜conditionMap杩欐牱浼犲弬
+                if(refer.referConfigQuery){
+                    Object.keys(refer.referConfigQuery).forEach(key=>{
+                        param['conditionMap['+key+']'] = refer.referConfigQuery[key];
+                    });
+                }
+                getReferConfigPage(
+                    refer.referConfigPage.currentPage, 
+                    refer.referConfigPage.pageSize,
+                    param
+                ).then(res=>{
+                    const data = res.data.data;
+                    this.referConfigParams.referConfigPage.total = data.total;
+                    this.referConfigParams.referConfigData = data.records;
+                    this.referConfigParams.referConfigLoading = false;
+                    //console.log(this.referConfigParams.referConfigData.length > 0); 
+                    // 娓叉煋鍏朵粬鍖哄煙鏁版嵁    
+                    if(this.referConfigParams.referConfigData.length > 0) {      
+                        this.$nextTick(() => {
+                            // 琛ㄦ牸閿欒闂
+                            this.$refs[this.referConfigParams.ref].doLayout()
+                            // 榛樿閫変腑绗竴琛�
+                            this.referConfigParams.referConfigSelectedRow = 0;
+                            this.$refs[this.referConfigParams.ref].setCurrentRow(this.referConfigParams.referConfigData[0]);
+                            this.referConfigParams.referConfigSelectedRowData = this.referConfigParams.referConfigData[0];
+                            this.attrAndSrchCondOnload(this.referConfigParams.referConfigData[0]);
+                            this.loadDefaultOrGridOrStandOrTreeForm(this.referConfigParams.referConfigData[0]);
+                        }) 
+                    }
+                });
             },
             referBtmTypeSizeChange(pageSize){
                 this.referConfigParams.referConfigPage.pageSize = pageSize;
@@ -402,27 +622,98 @@
                 this.referConfigParams.referConfigPage.currentPage = currentPage;
             },
             referConfigRowClick(row){
+                // 瀵瑰綋鍓嶉�変腑琛岃繘琛岃褰�
                 this.referConfigParams.referConfigSelectedRowData = row;
+                // 鍗曢�夋閫変腑
                 this.referConfigParams.referConfigSelectedRow = row.$index
                 this.attrAndSrchCondOnload(row);
+                this.loadDefaultOrGridOrStandOrTreeForm(row);
             },
-            referConfigDataChange(params, done){
+            referConfigSearchChange(params, done){
                 this.referConfigParams.referConfigQuery = params;
                 this.referConfigParams.referConfigPage.currentPage = 1;
-                this.referConfigOnload(this.referConfigParams.referConfigPage, params);
+                this.referConfigOnload();
                 done();
             },
             referConfigSearchReset(){
                 this.referConfigParams.referConfigQuery = {};
                 this.referConfigOnload(this.referConfigParams.referConfigPage);
             },
+            referConfigCurrentChange(currentPage){
+                this.referConfigParams.referConfigPage.currentPage = currentPage;               
+            },
+            referConfigSizeChange(pageSize){
+                this.referConfigParams.referConfigPage.pageSize = pageSize;
+            },
+            // 鍔犺浇琛ㄥ崟鏄剧ず鍐呭
+            loadDefaultOrGridOrStandOrTreeForm(currentFormData){
+                if(currentFormData.type != 'tree' & 
+                   currentFormData.type != 'stand' &
+                   currentFormData.type != 'default'&
+                   currentFormData.type != 'grid') {
+                    //鎺у埗鍙傜収閰嶇疆琛ㄦ牸鍜岃〃鍗曟樉绀烘瘮渚�
+                    this.isShowForm = false;
+                    this.toggleBasicCrudWidth.width = '100%';
+                }else {
+                    this.isShowForm = true;
+                    this.toggleBasicCrudWidth.width = '70%';
+                    this.toggleFormOption(currentFormData);
+                }
+                this.toggleCurdWidth(currentFormData);
+                //console.log(this.isShowForm);
+                //console.log(this.toggleBasicCrudWidth.width);
+            },
 
+            // 鏍规嵁type鐨勫彉鍔ㄥ垏鎹㈣〃鍗曠殑閰嶇疆option
+            toggleFormOption(data){
+                //console.log(data);
+                let currentForm = '';
+                if(data.type=='default' || data.type=='grid'){
+                    this.formOption.column = this.sortColumn;
+                    currentForm = 'defaultOrGridForm';
+                }else if(data.type == 'stand'){
+                    this.formOption.column = this.standColumn;
+                    currentForm = 'standForm';
+                }else if(data.type == 'tree'){
+                    this.formOption.column = this.treeColumn;
+                    currentForm = 'treeForm'
+                }
+                this.referConfigForm = {},
+                //console.log( this.formOption);
+                this[currentForm].forEach(item=>{
+                    Vue.set(this.referConfigForm, item, data[item])
+                    //this.referConfigForm = Object.assign(this.referConfigForm,{[item]:data[item]})
+                })
+                // console.log(this.referConfigForm);
+            },
+            // 鏍规嵁type鐨勫彉鍔ㄥ垏鎹ttr琛ㄦ牸鐨勬樉绀洪殣钘忥紝璋冩暣鏌ヨ鏉′欢琛ㄦ牸鐨勫搴�
+            toggleCurdWidth(data) {
+                if(data.type=='default' || data.type=='grid'){
+                    this.showAttrParams.isShow = true;
+                    // 涓嶉渶瑕佹樉绀哄睘鎬ц〃鏍兼墍鏈夐渶瑕佸皢鏌ヨ璋冧环琛ㄦ牸缂╁皬涓�100%
+                    this.toggleSrchCrudWidth.width = '40%';
+                }else {
+                    this.showAttrParams.isShow = false;
+                    // 涓嶉渶瑕佹樉绀哄睘鎬ц〃鏍兼墍鏈夐渶瑕佸皢鏌ヨ璋冧环琛ㄦ牸缂╁皬涓�100%
+                    this.toggleSrchCrudWidth.width = '100%';
+                }
+                // console.log(this.toggleSrchCrudWidth);
+                // console.log(this.showAttrParams.isShow);
+            },
 
             // 鏄剧ず鐨勫睘鎬у拰鏌ヨ鏉′欢鐩稿叧鏂规硶
             attrAndSrchCondOnload(row){
-                this.attrAndSrchCondParams.attrAndSrchCondLoading = true;
-                this.attrAndSrchCondParams.attrAndSrchCondParams = row.attrAndSrchCondParams
-                this.attrAndSrchCondParams.attrAndSrchCondLoading = false;
+                this.srchCondParams.srchCondLoading = true;
+                this.showAttrParams.showAttrLoading = true;
+                this.$nextTick(() => {
+                    this.$refs[this.srchCondParams.ref].doLayout()
+                    this.$refs[this.showAttrParams.ref].doLayout()
+                });
+                this.srchCondParams.srchCondData = row.codeSrchCondConfigVOS
+                this.showAttrParams.showAttrData = row.codeShowFieldConfigVOS
+                //console.log(this.showAttrParams.showAttrData);
+                this.srchCondParams.srchCondLoading = false;
+                this.showAttrParams.showAttrLoading = false;
             },
 
         },
@@ -434,7 +725,10 @@
     .refer-config-crud > .el-card > .el-card__body > .avue-crud__menu {
         display: none!important;
     }
-    .refer-attrorsrchcond-crud > .el-card > .el-card__body > .avue-crud__menu {
+    .refer-srchcond-crud > .el-card > .el-card__body > .avue-crud__menu  {
+        display: none!important;
+    }
+    .refer-attr-crud > .el-card > .el-card__body > .avue-crud__menu {
         display: none!important;
     }
 
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue
index 40d4f9d..24293a2 100644
--- a/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue
+++ b/Source/UBCS-WEB/src/components/code-dialog-page/referConfigFormDialog.vue
@@ -10,7 +10,7 @@
       style="height: 115vh; margin-top: -14vh; overflow-y: hidden">
         <div style="width: 100%; overflow-y: auto; height: 70vh">
             <el-row>
-                <avue-form ref="form" :option="formOption" v-model="form" class="referTypeForm">
+                <avue-form :ref="formRefs[0]" :option="formOption" v-model="form" class="referTypeForm">
                     <template #referTypeName="{disabled,size}">
                         <el-input :disabled="disabled"
                             :size="size"
@@ -37,76 +37,101 @@
                     </template>
                 </avue-form>
             </el-row>
-            <el-row v-show="form.type=='default' || form.type=='grid'">
-                <avue-crud
-                    ref="crudAttr"
-                    class="crud-attr"
-                    :option="attrOption"
-                    @cell-click="clickAttrEdit"
-                    :data="attrData">
-                    <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
-                    <template slot="menu" slot-scope="scope">
-                        <el-button type="text"
-                            size="small"
-                            icon="el-icon-search"
-                            plain
-                            @click="scope.row.isquery=!scope.row.isquery">
-                            {{scope.row.isquery ? "鍙栨秷蹇�熸煡璇�":"蹇�熸煡璇�"}}
-                        </el-button>
-                        <el-button type="text"
-                            size="small"
-                            icon="el-icon-minus"
-                            plain
-                            @click="removeCurrentRow(scope.row,'removeAttr')">绉婚櫎
-                        </el-button>
-                    </template>
-                    <!-- 琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
-                    <template slot="menuLeft" slot-scope="scope">
-                        <el-button type="primary"
-                            size="small"
-                            icon="el-icon-plus"
-                            @click="openSelectionTable('selectAttr')">閫夋嫨灞炴��
-                        </el-button>
-                        <div class="tag-group" style="display: inline">
-                            <el-tag
-                                v-for="item in attrData"
-                                v-show="item.isquery && item.title!=''"
-                                style="margin-left: 3px"
-                                :key="item.title"
-                                type="info"
-                                size="small"
-                                effect="dark">
-                                {{ item.title }}
-                            </el-tag>
-                        </div>
-                    </template>
-                </avue-crud>
-            </el-row>
-            <el-row style="margin-top: 10px">
-                <avue-crud
-                    ref="crudAddCondition"
-                    :option="addSearchCondtionOption" 
-                    @cell-click="clickAddSearchCondtionEdit"
-                    :data="addSearchCondtionData">
-                    <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
-                    <template slot="menu" slot-scope="scope">
-                        <el-button type="text"
-                            size="small"
-                            icon="el-icon-minus"
-                            plain
-                            @click="removeCurrentRow(scope.row,'removeaddSearchCondtion')">绉婚櫎
-                        </el-button>
-                    </template>
-                    <!-- 琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
-                    <template slot="menuLeft" slot-scope="scope">
-                        <el-button type="primary"
-                            size="small"
-                            icon="el-icon-plus"
-                            @click="openSelectionTable('addSearchCondition')">
-                            娣诲姞鏌ヨ鏉′欢
-                        </el-button>
-                    </template>
-                </avue-crud>
+            <el-row>
+                <el-tabs type="border-card" v-model="activeName">
+                    <el-tab-pane name="first" :disabled="isDisabledTabs">
+                        <span slot="label"><i class="el-icon-monitor"></i>鏄剧ず鐨勫睘鎬т笌鍏朵粬閰嶇疆</span>
+                        <el-row>
+                            <avue-form :ref="formRefs[1]" :option="formOtherOption" v-model="form" class="referTypeForm">
+                                <template #sortField="{disabled,size}">
+                                    <el-input :disabled="disabled"
+                                        :size="size"
+                                        v-model="form.sortField"
+                                        ref="sortField" 
+                                        placeholder="璇烽�夋嫨 鎺掑簭瀛楁"
+                                        prefix-icon="el-icon-search"
+                                        readonly="true"
+                                        @focus="openSelectionTable('sortField')">
+                                        <i slot="suffix" class="el-icon-circle-close" @click="clearSelectionTable('sortField')" style="margin-right: 5px;cursor: pointer;"></i>
+                                    </el-input>
+                                </template>
+                            </avue-form>
+                        </el-row>
+                        <el-row v-show="form.type=='default' || form.type=='grid'">
+                            <el-divider content-position="left" style="margin-bottom: -40px;">閰嶇疆鏄剧ず鐨勫睘鎬�</el-divider>
+                            <avue-crud
+                                ref="crudAttr"
+                                class="crud-attr"
+                                :option="attrOption"
+                                @cell-click="clickAttrEdit"
+                                :data="codeShowFieldConfigVOS">
+                                <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
+                                <template slot="menu" slot-scope="scope">
+                                    <el-button type="text"
+                                        size="small"
+                                        icon="el-icon-search"
+                                        plain
+                                        @click="scope.row.isquery=!scope.row.isquery">
+                                        {{scope.row.isquery ? "鍙栨秷蹇�熸煡璇�":"蹇�熸煡璇�"}}
+                                    </el-button>
+                                    <el-button type="text"
+                                        size="small"
+                                        icon="el-icon-minus"
+                                        plain
+                                        @click="removeCurrentRow(scope.row,'removeAttr')">绉婚櫎
+                                    </el-button>
+                                </template>
+                                <!-- 琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
+                                <template slot="menuLeft" slot-scope="scope">
+                                    <el-button type="primary"
+                                        size="small"
+                                        icon="el-icon-plus"
+                                        @click="openSelectionTable('selectAttr')">閫夋嫨灞炴��
+                                    </el-button>
+                                    <div class="tag-group" style="display: inline">
+                                        <el-tag
+                                            v-for="item in codeShowFieldConfigVOS"
+                                            v-show="item.isquery && item.title!=''"
+                                            style="margin-left: 3px"
+                                            :key="item.title"
+                                            type="info"
+                                            size="small"
+                                            effect="dark">
+                                            {{ item.title }}
+                                        </el-tag>
+                                    </div>
+                                </template>
+                            </avue-crud>
+                        </el-row>
+                    </el-tab-pane>
+                    <el-tab-pane name="second">
+                        <span slot="label"><i class="el-icon-search"></i>娣诲姞鏌ヨ鏉′欢</span>
+                        <avue-crud
+                            ref="crudAddCondition"
+                            :option="addSearchCondtionOption" 
+                            @cell-click="clickAddSearchCondtionEdit"
+                            :data="form.codeSrchCondConfigVOS">
+                            <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
+                            <template slot="menu" slot-scope="scope">
+                                <el-button type="text"
+                                    size="small"
+                                    icon="el-icon-minus"
+                                    plain
+                                    @click="removeCurrentRow(scope.row,'removeaddSearchCondtion')">绉婚櫎
+                                </el-button>
+                            </template>
+                            <!-- 琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
+                            <template slot="menuLeft" slot-scope="scope">
+                                <el-button type="primary"
+                                    size="small"
+                                    icon="el-icon-plus"
+                                    @click="openSelectionTable('addSearchCondition')">
+                                    娣诲姞鏌ヨ鏉′欢
+                                </el-button>
+                            </template>
+                        </avue-crud>
+                    </el-tab-pane>
+                </el-tabs>
             </el-row>
         </div>
 
@@ -233,7 +258,6 @@
             let element = '';
             return {
 
-                activeName: 'first', //褰撳墠娲诲姩鐨則abs
                 labelWidth: '150',   // 鏍囬瀹藉害
                 isShowReferConfigForm: false,  // 绗竴灞傚璇濇鏄剧ず闅愯棌鎺у埗
                 referTypeIsReadOnly: false,
@@ -252,6 +276,11 @@
                     paramForFormKey: '',
                     isMuti: false,
                     mapFields: '',
+                    isOpenGlobal: true, //鏄惁寮�鍚叏灞�
+                    codeSrchCondConfigVOS: [],
+                    isPersistence: true, // 鏄惁鎸佷箙鍖�
+                    id: '',
+                    name: '',
                      // 鏌ヨ鏉′欢鍒楄〃
                     // limit: '15',
                     // sortField: '',
@@ -264,7 +293,21 @@
                     // loadType: 'all',
                     // onlyLeaf: false,
                 },
-                attrData: [],
+                // type鍒囨崲鏃跺form琛ㄥ崟灞炴�ц繘琛岀Щ闄�
+                removeFormAttr: [
+                    'limit',
+                    'sortField',
+                    'sortType',
+                    'parentFieldName',
+                    'parentUsedField',
+                    'parentValue',
+                    'loadType',
+                    'onlyLeaf',
+                    'sortType',
+                    'referContent',
+                    'displayTable',
+                ],
+                codeShowFieldConfigVOS: [],
                 attrOption: {
                     height:'180',
                     tip: false,
@@ -282,6 +325,8 @@
                     columnBtn: false,
                     dialogClickModal: false,
                     highlightCurrentRow: true,
+                    indexFixed: false,
+                    menuFixed: false,  
                     column: [
                         {
                             label: "鍒楀瓧娈�(*)",
@@ -327,7 +372,7 @@
                             blur: (value) => this.updateAttrBlur(value),
                         },{
                             label: "鎺掑簭瀛楁",
-                            prop: "sortField",
+                            prop: "attrSortField",
                             cell: true,
                             clearable: false,
                             blur: (value) => this.updateAttrBlur(value),
@@ -339,7 +384,7 @@
                             blur: (value) => this.updateAttrBlur(value),
                         },{
                             label: "鍒楀浐瀹氫綅缃�",
-                            prop: "fixedText",
+                            prop: "fixedPosition",
                             cell: true,
                             type:"select",
                             clearable: false,
@@ -355,7 +400,7 @@
                         },
                     ]
                 },
-                addSearchCondtionData: [],
+                // addSearchCondtionData: [],
                 addSearchCondtionOption: {
                     height:'150',
                     tip: false,
@@ -408,6 +453,13 @@
                         }
                     ]
                 },
+                // 涓や釜琛ㄥ崟鐨剅ef
+                formRefs: ['form','otherForm'],
+
+                // tabs鎺у埗
+                isDisabledTabs: false,
+                activeName: 'first', //褰撳墠娲诲姩鐨則abs
+
 
                 //涓恒�愬弬鐓х殑涓氬姟绫诲瀷銆戦�夊彇鍊煎璇濇
                 selectionReferBtmTypeOption: {
@@ -638,205 +690,280 @@
                     submitBtn: false,
                     emptyBtn: false,
                     labelWidth: '145', //榛樿鏍囩瀹藉害
-                    // 鍩虹琛ㄥ崟淇℃伅灞曠ず鍖哄煙
-                    column: [
-                        {
-                            label: '鍙傜収鐨勪笟鍔$被鍨�',
-                            prop: 'referTypeName',
-                            span: 7,
-                            disabled: this.referTypeIsReadOnly,
-                            clearable: !this.referTypeIsReadOnly,
-                            tip: '鍙傜収鏁版嵁鏌ヨ鐨勪笟鍔$被鍨嬨��',
-                            tipPlacement: 'right',
-                            rules: [{
-                                required: true,
-                                message: "(鍙傜収鐨勪笟鍔$被鍨�)蹇呭~椤逛笉鑳戒负绌�",
-                                trigger: ["blur","change"],
-                            }],
-                        },{
-                            label: '鏄剧ず鐨勫睘鎬�',
-                            prop: 'textField',
-                            tip: '閫夋嫨鏁版嵁鍚庯紝鏄剧ず鍒板瓧娈典笂鐨勪俊鎭墍灞炵殑灞炴�э紝涓�鑸兘鏄痭ame,濡傛灉鏄涓睘鎬т娇鐢ㄩ�楀彿鍒嗗壊锛屽id,name銆�',
-                            tipPlacement: 'right',
-                            span: 7,
-                            value: 'name',
-                            rules: [{
-                                required: true,
-                                message: "(鏄剧ず鐨勫睘鎬�)蹇呭~椤逛笉鑳戒负绌�",
-                                trigger: "blur",
-                            }],
-                        },{
-                            label: '瀛樺偍鍊肩殑灞炴��',
-                            prop: 'valueField',
-                            tip: '閫夋嫨鏁版嵁鍚庯紝淇濆瓨鍒版暟鎹簱閲岀殑灞炴�э紝涓�鑸兘鏄痮id鎴栬�卛d锛屽鏋滄槸澶氫釜灞炴�т娇鐢ㄩ�楀彿鍒嗗壊锛屽oid ,id',
-                            value: 'oid',
-                            tipPlacement: 'right',
-                            span: 7,
-                            rules: [{
-                                required: true,
-                                message: "(瀛樺偍鍊肩殑灞炴��)蹇呭~椤逛笉鑳戒负绌�",
-                                trigger: "blur",
-                            }],
-                        },{
-                            label: '鍙傜収绐楀彛绫诲瀷',
-                            prop: 'type',
-                            tip: 'default:榛樿鐨勫弬鐓х獥鍙f牱寮�; stand:UI涓婁笅鏂囬厤缃殑鏂瑰紡; classify:鍒嗙被+妗f鐨勬樉绀�; 鑷畾涔夌殑鍙傜収鐩存帴鍐檍s鐨勭粍浠惰矾寰勶紱tree:鏍戝舰灞曠ず;grid:鍒楄〃灞曠ず',
-                            tipPlacement: 'right',
-                            span: 7,
-                            value: 'default',
-                            type: 'select',
-                            dicData: [{
-                                label: '榛樿鏍峰紡',
-                                value: 'default'
-                            }, {
-                                label: '骞冲彴閰嶇疆',
-                                value: 'stand'
-                            }, {
-                                label: '鏍戝舰',
-                                value: 'tree'
-                            }, {
-                                label: '鍒楄〃',
-                                value: 'grid'
-                            }, {
-                                label: '閮ㄩ棬鏍�',
-                                value: 'refer/OrgDepartmentRefer'
-                            }, {
-                                label: '閮ㄩ棬鍒楄〃',
-                                value: 'refer/OrgDepartmentGridRefers'
-                            }, {
-                                label: '鐢ㄦ埛',
-                                value: 'refer/SmUserRefer'
-                            }, {
-                                label: '鐢ㄦ埛鍒楄〃',
-                                value: 'refer/SmUserGridRefer'
-                            }, {
-                                label: '瑙掕壊鍒楄〃',
-                                value: 'refer/SmRoleRefer'
-                            }, {
-                                label: '鑱屽姟',
-                                value: 'refer/OrgDutyRefer'
-                            }, {
-                                label: '宸ョ',
-                                value: 'refer/SmWorkTypeRefer'
-                            }, {
-                                label: '娴佺▼妯℃澘',
-                                value: 'refer/WfProcessTemplateRefer'
-                            }],
-                            rules: [{
-                                required: true,
-                                message: "(鍙傜収绐楀彛绫诲瀷)蹇呭~椤逛笉鑳戒负绌�",
-                                trigger: "blur",
-                            }],
-                            change: ({ value, column }) => {
-                                // 澶嶅師琛ㄥ崟,鍥犱负鍏朵粬鍒嗙粍涓鏋滃瓨鍦ㄥ�硷紝鍦ㄥ垏鎹㈡椂,浼氫繚鐣欒緭鍏ョ殑瀛楁鍊兼墍浠ラ渶瑕佽繕鍘�
-                                let oldForm = this.form;
-                                this.form = {};  // 琛ㄥ崟瀵硅薄璧嬬┖
-                                this.form.referType = oldForm.referType
-                                this.form.textField = oldForm.textField
-                                this.form.valueField = oldForm.valueField
-                                this.form.type = oldForm.type //鍙傜収绐楀彛绫诲瀷
-                                this.form.url =  oldForm.url
-                                this.form.backPath =  oldForm.backPath
-                                this.form.method =  oldForm.method
-                                this.form.height =  oldForm.height
-                                this.form.useFormKey =  oldForm.useFormKey
-                                this.form.paramForFormKey =  oldForm.paramForFormKey
-                                this.form.isMuti =  oldForm.isMuti
-                                this.form.mapFields =  oldForm.mapFields
-                                let addFrom = {};  //鏍规嵁绫诲瀷闇�瑕佹坊鍔犵殑涓嶅悓灞炴��
-                                if(value == 'stand'){
-                                    addFrom = {
-                                        referContent: '',
-                                        displayTable: '',
-                                    }
-                                } else if(value == 'default' || value == 'grid'){
-                                    addFrom = {
-                                        limit: '15',
-                                        sortField: '',
-                                        sortType: 'asc',
-                                    }
-                                } else if(value == 'tree'){
-                                    addFrom = {
-                                        parentFieldName: '',
-                                        parentUsedField: 'oid',
-                                        parentValue: '',
-                                        loadType: 'all',
-                                        onlyLeaf: false,
-                                        sortField: '',
-                                        sortType: 'asc',
-                                    }
+                    group: [
+                        {   
+                            // 鍩虹琛ㄥ崟淇℃伅灞曠ず鍖哄煙
+                            //display: this.form.type=='default'||this.form.type=='grid',
+                            icon: 'el-icon-info',
+                            label: '蹇呭~鐨勫弬鐓ч厤缃�',
+                            collapse: true,
+                            labelWidth: '115',
+                            prop: 'groupDdefaultOrGrid',
+                            column: [
+                                {
+                                    label: '鍙傜収鐨勪笟鍔$被鍨�',
+                                    prop: 'referTypeName',
+                                    span: 6,
+                                    labelWidth: '130',
+                                    disabled: this.referTypeIsReadOnly,
+                                    clearable: !this.referTypeIsReadOnly,
+                                    tip: '鍙傜収鏁版嵁鏌ヨ鐨勪笟鍔$被鍨嬨��',
+                                    tipPlacement: 'bottom',
+                                    rules: [{
+                                        required: true,
+                                        message: "(鍙傜収鐨勪笟鍔$被鍨�)蹇呭~椤逛笉鑳戒负绌�",
+                                        trigger: ["blur","change"],
+                                    }],
+                                },{
+                                    label: '鏄剧ず鐨勫睘鎬�',
+                                    prop: 'textField',
+                                    tip: '閫夋嫨鏁版嵁鍚庯紝鏄剧ず鍒板瓧娈典笂鐨勪俊鎭墍灞炵殑灞炴�э紝涓�鑸兘鏄痭ame,濡傛灉鏄涓睘鎬т娇鐢ㄩ�楀彿鍒嗗壊锛屽id,name銆�',
+                                    tipPlacement: 'bottom',
+                                    span: 6,
+                                    value: 'name',
+                                    rules: [{
+                                        required: true,
+                                        message: "(鏄剧ず鐨勫睘鎬�)蹇呭~椤逛笉鑳戒负绌�",
+                                        trigger: "blur",
+                                    }],
+                                },{
+                                    label: '瀛樺偍鍊肩殑灞炴��',
+                                    prop: 'valueField',
+                                    tip: '閫夋嫨鏁版嵁鍚庯紝淇濆瓨鍒版暟鎹簱閲岀殑灞炴�э紝涓�鑸兘鏄痮id鎴栬�卛d锛屽鏋滄槸澶氫釜灞炴�т娇鐢ㄩ�楀彿鍒嗗壊锛屽oid ,id',
+                                    value: 'oid',
+                                    tipPlacement: 'bottom',
+                                    span: 6,
+                                    rules: [{
+                                        required: true,
+                                        message: "(瀛樺偍鍊肩殑灞炴��)蹇呭~椤逛笉鑳戒负绌�",
+                                        trigger: "blur",
+                                    }],
+                                },{
+                                    label: '鍙傜収绐楀彛绫诲瀷',
+                                    prop: 'type',
+                                    tip: 'default:榛樿鐨勫弬鐓х獥鍙f牱寮�; stand:UI涓婁笅鏂囬厤缃殑鏂瑰紡; classify:鍒嗙被+妗f鐨勬樉绀�; 鑷畾涔夌殑鍙傜収鐩存帴鍐檍s鐨勭粍浠惰矾寰勶紱tree:鏍戝舰灞曠ず;grid:鍒楄〃灞曠ず',
+                                    tipPlacement: 'bottom',
+                                    span: 6,
+                                    value: 'default',
+                                    type: 'select',
+                                    dicData: [{
+                                        label: '榛樿鏍峰紡',
+                                        value: 'default'
+                                    }, {
+                                        label: '骞冲彴閰嶇疆',
+                                        value: 'stand'
+                                    }, {
+                                        label: '鏍戝舰',
+                                        value: 'tree'
+                                    }, {
+                                        label: '鍒楄〃',
+                                        value: 'grid'
+                                    }, {
+                                        label: '閮ㄩ棬鏍�',
+                                        value: 'refer/OrgDepartmentRefer'
+                                    }, {
+                                        label: '閮ㄩ棬鍒楄〃',
+                                        value: 'refer/OrgDepartmentGridRefers'
+                                    }, {
+                                        label: '鐢ㄦ埛',
+                                        value: 'refer/SmUserRefer'
+                                    }, {
+                                        label: '鐢ㄦ埛鍒楄〃',
+                                        value: 'refer/SmUserGridRefer'
+                                    }, {
+                                        label: '瑙掕壊鍒楄〃',
+                                        value: 'refer/SmRoleRefer'
+                                    }, {
+                                        label: '鑱屽姟',
+                                        value: 'refer/OrgDutyRefer'
+                                    }, {
+                                        label: '宸ョ',
+                                        value: 'refer/SmWorkTypeRefer'
+                                    }, {
+                                        label: '娴佺▼妯℃澘',
+                                        value: 'refer/WfProcessTemplateRefer'
+                                    }],
+                                    rules: [{
+                                        required: true,
+                                        message: "(鍙傜収绐楀彛绫诲瀷)蹇呭~椤逛笉鑳戒负绌�",
+                                        trigger: "blur",
+                                    }],
+                                    change: ({ value, column }) => {
+                                        // console.log("start",value);
+                                        // 澶嶅師琛ㄥ崟,鍥犱负鍏朵粬鍒嗙粍涓鏋滃瓨鍦ㄥ�硷紝鍦ㄥ垏鎹㈡椂,浼氫繚鐣欒緭鍏ョ殑瀛楁鍊兼墍浠ラ渶瑕佽繕鍘�
+                                        let addFrom = {}; 
+                                        this.activeName = 'first'; // 榛樿鍒囨崲鑷崇涓�涓猼ab
+                                        //鏍规嵁绫诲瀷瀵筬orm琛ㄥ崟灞炴�ц繘琛岃皟鏁�
+                                        if(value == 'stand'){
+                                            addFrom = {
+                                                referContent: '',
+                                                displayTable: '',
+                                            };
+                                            this.isDisabledTabs = false;
+                                        } else if(value == 'default' || value == 'grid'){
+                                            addFrom = {
+                                                limit: '15',
+                                                sortField: '',
+                                                sortType: 'asc',
+                                            };
+                                            this.isDisabledTabs = false;
+                                        } else if(value == 'tree'){
+                                            addFrom = {
+                                                parentFieldName: '',
+                                                parentUsedField: 'oid',
+                                                parentValue: '',
+                                                loadType: 'all',
+                                                onlyLeaf: false,
+                                                sortField: '',
+                                                sortType: 'asc',
+                                            };
+                                            // 涓嶇煡閬撲负浠�涔坱ype涓簍ree鐨勬椂鍊欎細瑙﹀彂涓ゆchange浜嬩欢
+                                            // 瀵艰嚧type鍒囨崲澶辫触
+                                            this.form.type = 'tree';
+                                            this.isDisabledTabs = false;
+                                        }else {
+                                            this.isDisabledTabs = true;
+                                            this.activeName = 'second';
+                                        }
+                                       // 绫诲瀷鍒囨崲鏃讹紝瀵逛笉闇�瑕佺殑灞炴�ц繘琛岀瓫闄�
+                                        this.removeFormAttr.forEach(attr=>{
+                                            // console.log(attr);
+                                            this.$delete(this.form,attr)
+                                        })
+                                        // 鍚堝苟涓や釜琛ㄥ崟
+                                        this.form = Object.assign(addFrom,this.form);
+                                        // console.log("endFilter",this.form.type);
+                                        //console.log(this.form);
+                                    },
+                                },{
+                                    label: '鏄惁寮�鍚寔涔呭寲',
+                                    prop: 'isPersistence',
+                                    tip: 'true:寮�鍚寔涔呭寲锛屽褰撳墠瀹氫箟鐨勫弬鐓ч厤缃繘琛屾寔涔呭寲瀛樺偍锛屼笅娆″彲鐩存帴閫夊彇锛沠alse:浠呭褰撳墠娆$爜娈垫柊澧炵敓鏁堛��',
+                                    tipPlacement: 'bottom',
+                                    span: 6,
+                                    type: 'switch',
+                                },{
+                                    display: this.form.isPersistence | this.form.isPersistence=='true',
+                                    label: '缂栧彿',
+                                    prop: 'id',
+                                    rules: [{
+                                        required: true,
+                                        message: "(寮�濮嬫寔涔呭寲鏃剁紪鍙�)蹇呭~椤逛笉鑳戒负绌�",
+                                        trigger: "blur",
+                                    }],
+                                    span: 6,
+                                },{
+                                    display: this.form.isPersistence | this.form.isPersistence=='true',
+                                    label: '鍚嶇О',
+                                    prop: 'name',
+                                    rules: [{
+                                        required: true,
+                                        message: "(寮�濮嬫寔涔呭寲鏃跺悕绉�)蹇呭~椤逛笉鑳戒负绌�",
+                                        trigger: "blur",
+                                    }],
+                                    span: 6,
                                 }
-                                // 鍚堝苟涓や釜琛ㄥ崟
-                                this.form = Object.assign(addFrom,this.form);
-                                //console.log(this.form);
-                            },
-                        },{
-                            label: '鑷畾涔夌殑鍚庡彴璺緞',
-                            prop: 'url',
-                            tip: '閫氬父涓虹┖;濡傛灉鏄垪琛紝鍚庡彴蹇呴』杩斿洖DataGrid锛屽鏋滄槸鏍戯紝鍚庡彴蹇呴』杩斿洖List<Tree>',
-                            tipPlacement: 'right',
-                            span: 7,
-                        },{
-                            label: '鏈嶅姟鐨勫湴鍧�',
-                            prop: 'backPath',
-                            tip: '閫氬父涓虹┖锛屽湪鏀寔寰湇鍔℃垨鑰呭垎甯冨紡閮ㄧ讲鐨勬椂鍊欐墠閰嶇疆',
-                            tipPlacement: 'right',
-                            span: 7,
-                        },{
-                            label: '璇锋眰鍚庡彴鐨勫崗璁柟寮�',
-                            prop: 'method',
-                            tip: 'HTTP鐨勫崗璁柟寮忥紝鏀寔POST,PUT,GET锛屼竴鑸兘鏄疓ET',
-                            tipPlacement: 'right',
-                            span: 7,
-                            value: 'GET',
-                            type: 'select',
-                            dicData: [{
-                                label:'GET',value: "GET"
-                            },{
-                                label:'PUT',value: "PUT"
-                            },
-                            {
-                                label:'POST',value: "POST"
-                            }],
-                        },{
-                            label: '绐楀彛鏄剧ず鐨勯珮搴�',
-                            prop: 'height',
-                            tip: '榛樿绌虹潃锛岃缃悗琛ㄧず寮哄埗鏄剧ず杩欐牱鐨勯珮搴�',
-                            tipPlacement: 'right',
-                            span: 7,
-                            rules:[{
-                                validator: validateNumber,
-                                message: "绐楀彛鏄剧ず鐨勯珮搴﹀繀椤讳负鏁板�肩被鍨�",
-                                trigger: "blur",
-                            }]
-                        },{
-                            label: '杩囨护(绾ц仈)灞炴��',
-                            prop: 'useFormKey',
-                            tip: '鑾峰彇琛ㄥ崟涓婄殑鍏朵粬灞炴�х殑灞炴�х殑鍊兼潵杩囨护,鎴栬�呬娇鐢ㄦ煇涓睘鎬ф潵绾ц仈閫夋嫨',
-                            tipPlacement: 'right',
-                            span: 7,
-                        },{
-                            label: '杩囨护灞炴�ц姹傚弬鏁�',
-                            prop: 'paramForFormKey',
-                            tip: '浣跨敤杩囨护灞炴�ф椂锛屽彂閫佺粰鍚庡彴鐨勮姹傚弬鏁�',
-                            tipPlacement: 'right',
-                            span: 7,
-                        },{
-                            label: '鏄惁澶氶��',
-                            type: 'switch',
-                            prop: 'isMuti',
-                            value: false,
-                            span: 7,
-                            row: true,
-                        },{
-                            label: '鏄犲皠鍏朵粬灞炴��',
-                            prop: 'mapFields',
-                            tip: '閫夋嫨鏁版嵁鍚庯紝灏嗛�夋嫨鐨勬暟鎹嫹璐濆埌琛ㄥ崟閲岀殑鍏朵粬灞炴�э紝涔﹀啓鏍煎紡涓簕褰撳墠琛ㄥ崟涓婄殑灞炴��:閫夋嫨鏁版嵁閲岀殑灞炴��,XXXXx:yyyy}',
-                            tipPlacement: 'right',
-                            span: 18,
-                        }
-                    ],
+                                
+                            ]
+                        },
+                        {   
+                            icon: 'el-icon-info',
+                            label: '椤甸潰鍙傛暟閰嶇疆',
+                            collapse: false,
+                            prop: 'webConfig',
+                            column: [
+                                {
+                                    label: '绐楀彛鏄剧ず鐨勯珮搴�',
+                                    prop: 'height',
+                                    tip: '榛樿绌虹潃锛岃缃悗琛ㄧず寮哄埗鏄剧ず杩欐牱鐨勯珮搴�',
+                                    tipPlacement: 'right',
+                                    span: 7,
+                                    rules:[{
+                                        validator: validateNumber,
+                                        message: "绐楀彛鏄剧ず鐨勯珮搴﹀繀椤讳负鏁板�肩被鍨�",
+                                        trigger: "blur",
+                                    }]
+                                },{
+                                    label: '杩囨护(绾ц仈)灞炴��',
+                                    prop: 'useFormKey',
+                                    tip: '鑾峰彇琛ㄥ崟涓婄殑鍏朵粬灞炴�х殑灞炴�х殑鍊兼潵杩囨护,鎴栬�呬娇鐢ㄦ煇涓睘鎬ф潵绾ц仈閫夋嫨',
+                                    tipPlacement: 'right',
+                                    span: 7,
+                                },{
+                                    label: '杩囨护灞炴�ц姹傚弬鏁�',
+                                    prop: 'paramForFormKey',
+                                    tip: '浣跨敤杩囨护灞炴�ф椂锛屽彂閫佺粰鍚庡彴鐨勮姹傚弬鏁�',
+                                    tipPlacement: 'right',
+                                    span: 7,
+                                },{
+                                    label: '鏄犲皠鍏朵粬灞炴��',
+                                    prop: 'mapFields',
+                                    tip: '閫夋嫨鏁版嵁鍚庯紝灏嗛�夋嫨鐨勬暟鎹嫹璐濆埌琛ㄥ崟閲岀殑鍏朵粬灞炴�э紝涔﹀啓鏍煎紡涓簕褰撳墠琛ㄥ崟涓婄殑灞炴��:閫夋嫨鏁版嵁閲岀殑灞炴��,XXXXx:yyyy}',
+                                    tipPlacement: 'right',
+                                    span: 7,
+                                },{
+                                    label: '鏄惁寮�鍚叏灞�',
+                                    prop: 'isOpenGlobal',
+                                    tip: '寮�鍚叏灞�涔嬪悗瀵瑰叏閮ㄥ弬鐓ч厤缃暟鎹繘琛屾煡璇紝榛樿鏍规嵁绉熸埛杩涜鏌ヨ銆�',
+                                    tipPlacement: 'right',
+                                    type: 'switch',
+                                    span: 7,
+                                },{
+                                    label: '鏄惁澶氶��',
+                                    type: 'switch',
+                                    prop: 'isMuti',
+                                    value: false,
+                                    span: 7,
+                                    row: true,
+                                }
+                            ]
+                        },
+                        {   
+                            icon: 'el-icon-info',
+                            label: '鍚庡彴鍙傛暟閰嶇疆',
+                            collapse: false,
+                            prop: 'backstageConfig',
+                            column: [
+                                {
+                                label: '鑷畾涔夌殑鍚庡彴璺緞',
+                                prop: 'url',
+                                tip: '閫氬父涓虹┖;濡傛灉鏄垪琛紝鍚庡彴蹇呴』杩斿洖DataGrid锛屽鏋滄槸鏍戯紝鍚庡彴蹇呴』杩斿洖List<Tree>',
+                                tipPlacement: 'right',
+                                span: 7,
+                                },{
+                                    label: '鏈嶅姟鐨勫湴鍧�',
+                                    prop: 'backPath',
+                                    tip: '閫氬父涓虹┖锛屽湪鏀寔寰湇鍔℃垨鑰呭垎甯冨紡閮ㄧ讲鐨勬椂鍊欐墠閰嶇疆',
+                                    tipPlacement: 'right',
+                                    span: 7,
+                                },{
+                                    label: '璇锋眰鍚庡彴鐨勫崗璁柟寮�',
+                                    prop: 'method',
+                                    tip: 'HTTP鐨勫崗璁柟寮忥紝鏀寔POST,PUT,GET锛屼竴鑸兘鏄疓ET',
+                                    tipPlacement: 'right',
+                                    span: 7,
+                                    value: 'GET',
+                                    type: 'select',
+                                    dicData: [{
+                                        label:'GET',value: "GET"
+                                    },{
+                                        label:'PUT',value: "PUT"
+                                    },
+                                    {
+                                        label:'POST',value: "POST"
+                                    }],
+                                },
+                            ]
+                        },
+                    ]
+                }
+            },
+            formOtherOption(){
+                return {
                     // 鍙樺姩鐨勮〃鍗曞尯鍩�
+                    submitBtn: false,
+                    emptyBtn: false,
+                    labelWidth: '145', //榛樿鏍囩瀹藉害
                     group: [
                         {   
                             display: this.form.type=='default'||this.form.type=='grid',
@@ -848,21 +975,21 @@
                                 {
                                     label: '姣忛〉鏄剧ず鏉℃暟',
                                     prop: 'limit',
-                                    span: 7,
+                                    span: 8,
                                     tip: '鍒嗛〉鏃舵瘡椤垫樉绀虹殑鏁伴噺锛屼笉鍒嗛〉濉�-1',
                                     //value: 15,
                                     tipPlacement: 'right',
                                 },{
                                     label: '鎺掑簭瀛楁',
                                     prop: 'sortField',
-                                    span: 7,
+                                    span: 8,
                                     tip: '鏌ヨ鏁版嵁鏃剁殑鎺掑簭瀛楁',
                                     //clearable: false,
                                     tipPlacement: 'right',
                                 },{
                                     label: '鎺掑簭绫诲瀷',
                                     prop: 'sortType',
-                                    span: 7,
+                                    span: 8,
                                     dicData: [{
                                         label: '鍗囧簭', value: 'asc'
                                     }, {
@@ -885,14 +1012,14 @@
                                 {
                                     label: '鍙傝�冪殑UI涓婁笅鏂�',
                                     prop: 'referContent',
-                                    span: 7,
+                                    span: 8,
                                     tip: '鍙湁鍙傜収绐楀彛绫诲瀷鏄痵tand鏃舵墠蹇呴』璁剧疆,涓斿湪stand绫诲瀷涓嬫墠鑳界敓鏁�',
                                     tipPlacement: 'right',
                                 },
                                 {
                                     label: '骞冲彴鐨勮〃鏍肩紪鍙�',
                                     prop: 'displayTable',
-                                    span: 7,
+                                    span: 8,
                                     tip: '涓庡弬鐓х殑UI涓婁笅鏂囦簰鏂ワ紝鍙湁鍙傜収绐楀彛绫诲瀷鏄痵tand鏃舵墠蹇呴』璁剧疆锛屼笖鍦╯tand绫诲瀷涓嬫墠鑳界敓鏁�',
                                     tipPlacement: 'right',
                                 },
@@ -942,12 +1069,6 @@
                                     }],
                                     type: 'select',
                                 },{
-                                    label: '鏄惁鍙兘閫夋嫨鍙跺瓙鑺傜偣',
-                                    prop: 'onlyLeaf',
-                                    span: 7,
-                                    value: false,
-                                    type: 'switch',
-                                },{
                                     label: '鎺掑簭瀛楁',
                                     prop: 'sortField',
                                     span: 7,
@@ -965,10 +1086,16 @@
                                     }, {
                                         label: '闄嶅簭', value: 'desc'
                                     }],
-                                },
+                                },{
+                                    label: '鏄惁鍙兘閫夋嫨鍙跺瓙鑺傜偣',
+                                    prop: 'onlyLeaf',
+                                    span: 7,
+                                    value: false,
+                                    type: 'switch',
+                                }
                             ]
                         },
-                    ]
+                    ],
                 }
             },
         },
@@ -993,8 +1120,7 @@
         },
         watch: {
             // 璐煎潙锛屽垏鎹㈢被鍨嬫椂琛ㄦ牸锛岄殣钘忓啀鏄剧ず灏变細鍑虹幇琛ㄦ牸閿欎綅闂锛�
-            'form.type'(val) {
-                //console.log(val);
+            'form.type'(value) {
                 this.onloadAttrData();
             }
         },
@@ -1003,22 +1129,23 @@
             // 鍗曞嚮琛ㄦ牸瀹炵幇琛ㄦ牸琛岀紪杈�
             clickAttrEdit(row, column, event){
                 if(this.preClickAttrRow && this.preClickAttrRow != row){
-                    //console.log(this.attrData[this.preClickAttrRow.$index]);
-                    this.attrData[this.preClickAttrRow.$index].$cellEdit = false;
+                    //console.log(this.codeShowFieldConfigVOS[this.preClickAttrRow.$index]);
+                    this.codeShowFieldConfigVOS[this.preClickAttrRow.$index].$cellEdit = false;
                 }
                 row.$cellEdit = true;
                 this.preClickAttrRow = row;
             },
             // 灞炴�ц〃鏍艰缂栬緫澶卞幓鐒︾偣鏃朵繚瀛樻柟娉�
             // updateAttrBlur(value){
-                //console.log(this.attrData[0]);
+                //console.log(this.codeShowFieldConfigVOS[0]);
                 
             // },
+
             // 鍗曞嚮琛ㄦ牸瀹炵幇琛ㄦ牸琛岀紪杈�
             clickAddSearchCondtionEdit(row, column, event){
                 if(this.preClickAddSearchConditionRow && this.preClickAddSearchConditionRow != row){
-                    //console.log(this.attrData[this.preClickAttrRow.$index]);
-                    this.addSearchCondtionData[this.preClickAddSearchConditionRow.$index].$cellEdit = false;
+                    //console.log(this.codeShowFieldConfigVOS[this.preClickAttrRow.$index]);
+                    this.form.codeSrchCondConfigVOS[this.preClickAddSearchConditionRow.$index].$cellEdit = false;
                 }
                 row.$cellEdit = true;
                 this.preClickAddSearchConditionRow = row;
@@ -1028,8 +1155,13 @@
                 //console.log(val);
                 if(func.notEmpty(val.referConfig)){
                     this.form = JSON.parse(val.referConfig);
-                    //console.log(val);
+                    // console.log(this.form);
+                    this.form.isPersistence = this.form.isPersistence == 'true' ? true:false;
+                    // 鍙傜収寮曠敤鐨勪笟鍔$被鍨嬩笉鍙��
                     this.referTypeIsReadOnly = true;
+                    if((this.form.type == 'default' || this.form.type  == 'grid') && (this.form.codeShowFieldConfigVOS != undefined && this.form.codeShowFieldConfigVOS.length > 0)){
+                        this.codeShowFieldConfigVOS = this.form.codeShowFieldConfigVOS;
+                    }
                     return;
                 }
                 if(func.notEmpty(val.referType)){
@@ -1041,37 +1173,43 @@
                 //console.log(localStorage.getItem("userId"));
             },
             // 閫夋嫨瀹屽弬鐓ч厤缃箣鍚庣偣鍑讳繚瀛樻寜閽Е鍙�
-            selectedListReferConfig(){
-                //琛ㄥ崟楠岃瘉
-                this.$refs.form.validate((valid, done, msg) => {
-                    if (valid) {
-                        // 鏍规嵁绫诲瀷瀵筬orm琛ㄥ崟涓殑鍙傛暟杩涜杩囨护锛屽彧淇濈暀闈炵┖涓旈渶瑕佺殑灞炴��
-                        let submitForm = this.filterForm();
-                        //console.log(submitForm);
-                        this.$emit('echoReferConfig', submitForm) // 瑙﹀彂update:data灏嗗瓙缁勪欢鍊间紶閫掔粰鐖剁粍浠�
-                        this.isShowReferConfigForm = false;
-                        done()
-                    } else {
-                        for(let attr in msg) {
-                            //console.log(msg[attr][0].message);
-                            this.$message.warning(msg[attr][0].message);
-                            break;
-                        }
-                        return false;
-                    }
+            async selectedListReferConfig(){
+                // 鏍囪鎵�鏈夎〃鍗曟槸鍚﹂�氳繃鏍¢獙鐨勫彉閲�
+                let isValid = true;
+                // 閬嶅巻琛ㄥ崟鏁扮粍锛屼緷娆″姣忎釜琛ㄥ崟杩涜鏍¢獙
+                await this.formRefs.forEach(ref => {
+                    this.$refs[ref].validate((valid, done, msg) => {
+                        if (!valid) {
+                            for(let attr in msg) {
+                                this.$message.warning(msg[attr][0].message);
+                                break;
+                            }
+                            isValid = false;
+                            //console.log(valid);
+                        }                            
+                        done();
+                    })
                 })
+                // 濡傛灉鎵�鏈夎〃鍗曢兘鏍¢獙閫氳繃锛屾墽琛屾彁浜ゆ搷浣�
+                if (isValid) {
+                    // 鏍规嵁绫诲瀷瀵筬orm琛ㄥ崟涓殑鍙傛暟杩涜杩囨护锛屽彧淇濈暀闈炵┖涓旈渶瑕佺殑灞炴��
+                    let submitForm = this.filterForm();
+                    // console.log(submitForm);
+                    this.$emit('echoReferConfig', submitForm) // 瑙﹀彂update:data灏嗗瓙缁勪欢鍊间紶閫掔粰鐖剁粍浠�
+                    this.isShowReferConfigForm = false;
+                }
             },
             /** 鍏跺疄閫夊彇灞炴�ц〃鏍肩殑榛樿鏁版嵁涓嶉渶瑕佸姞杞斤紝
              浣嗘槸寮圭獥鎵撳紑浼氭湁琛ㄦ牸閿欒闂鎵�浠ラ渶瑕佸湪杩欒皟鐢╠oLayout鏂规硶*/
             onloadAttrData(){
-                this.attrData = [
+                this.codeShowFieldConfigVOS = [
                     {
                         field: 'id',
                         title: '缂栧彿',
                         fieldType: 'text',
                         fieldTypeText: '鏂囨湰妗�',
                         sort: true,
-                        sortField: 'id',
+                        attrSortField: 'id',
                         width: '150',
                         isquery: true,
                         $cellEdit: false
@@ -1081,7 +1219,7 @@
                         fieldType: 'text',
                         fieldTypeText: '鏂囨湰妗�',
                         sort: true,
-                        sortField: 'name',
+                        attrSortField: 'name',
                         width: '180',
                         isquery: true,
                         $cellEdit: false
@@ -1094,10 +1232,10 @@
             // 灞炴�ч�夋嫨琛ㄦ牸涓殑绉婚櫎鎸夐挳鍔熻兘
             removeCurrentRow(row,condition){
                 if(condition=='removeAttr'){
-                    this.$delete(this.attrData, row.$index);
+                    this.$delete(this.codeShowFieldConfigVOS, row.$index);
                     return;
                 }
-                this.$delete(this.addSearchCondtionData, row.$index);
+                this.$delete(this.form.codeSrchCondConfigVOS, row.$index);
             },
             // 璇ョ晫闈㈢殑鏁版嵁杩涜鍒濆鍖栧鍘�
             recoveryDataAndForm(condition){
@@ -1133,7 +1271,9 @@
                     'paramForFormKey',
                     'isMuti',
                     'mapFields', 
-                    'searchCondition', 
+                    'codeSrchCondConfigVOS', 
+                    'isOpenGlobal', //鏄惁寮�鍚叏灞�
+                    'isPersistence',
                 ];
                 let addArray = [];
                 let newForm ={};
@@ -1153,14 +1293,18 @@
                         'sortType'
                     ];
                 }
+                // 寮�鍚寔涔呭寲鍙傜収閰嶇疆
+                if(oldForm.isPersistence=='true' | oldForm.isPersistence){
+                    submittDefaultForm =  submittDefaultForm.concat(['id','name'])
+                }
                 submittDefaultForm = submittDefaultForm.concat(addArray);
-                if(!this.checkArrayIsUndefined(this.addSearchCondtionData)){
+                if(!this.checkArrayIsUndefined(this.form.codeSrchCondConfigVOS)){
                     newForm = {
-                        searchCondition: this.addSearchCondtionData,
+                        codeSrchCondConfigVOS: this.form.codeSrchCondConfigVOS,
                     }
                 }
-                if((oldForm.type == 'default' || oldForm.type  == 'grid') && (this.attrData.length >= 0 && !this.checkArrayIsUndefined(this.addSearchCondtionData))){
-                    newForm = Object.assign(newForm,{attrData:this.attrData});
+                if((oldForm.type == 'default' || oldForm.type  == 'grid') && (this.codeShowFieldConfigVOS.length >= 0 && !this.checkArrayIsUndefined(this.codeShowFieldConfigVOS))){
+                    newForm = Object.assign(newForm,{codeShowFieldConfigVOS:this.codeShowFieldConfigVOS});
                 }
                 // 杩囨护鍑虹┖鍊煎睘鎬у拰涓嶉渶瑕佺殑灞炴��
                 submittDefaultForm.forEach(item=>{
@@ -1170,7 +1314,7 @@
                         newForm = Object.assign(newForm,{[item]:oldForm[item]});  
                     }
                 });
-                // console.log(newForm);
+                //console.log(newForm);
                 return newForm;
             },
             /**
@@ -1397,14 +1541,14 @@
                 }
                 //this.showFieldSelectList;
                 this.showFieldSelectList.forEach(item => {
-                    this.attrData.push(
+                    this.codeShowFieldConfigVOS.push(
                         {
                             field: item.id,
                             title: item.id,
                             fieldType: item.attrType,
                             fieldTypeText: item.attrTypeText,
                             sort: false,
-                            sortField: item.id,
+                            attrSortField: item.id,
                             width: item.attrLength,
                             isquery: false,
                             $cellEdit: false
@@ -1459,16 +1603,17 @@
                 this.sortFieldOnLoad();
             },
             selectedSearchCondition(){
-                console.log(this.searchConditionSelectList);
+                // console.log(this.searchConditionSelectList);
                 if(this.searchConditionSelectList.length <= 0) {
                     this.$message.warning("璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�");
                     return;
                 }
                 this.searchConditionSelectList.forEach(item => {
-                    this.addSearchCondtionData.push(
+                    this.form.codeSrchCondConfigVOS.push(
                         {
                             filterField: item.id,
                             filterType: '=',
+                            filterTypeText: item.name, 
                             filterValue: '',
                             $cellEdit: false
                         }
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/tableEdit.vue b/Source/UBCS-WEB/src/components/code-dialog-page/tableEdit.vue
deleted file mode 100644
index c8e44ad..0000000
--- a/Source/UBCS-WEB/src/components/code-dialog-page/tableEdit.vue
+++ /dev/null
@@ -1,87 +0,0 @@
-<template>
-    <div>
-      <el-table :data="tableOptions.tableData" @cell-click="cellCilck" @cell-mouse-leave="cellMouseLeave" height="250" border style="width: 100%">
-        <el-table-column v-for="(item,index) in tableOptions.options" :key="index" align="center"
-          :prop="item.prop" :label="item.label" :width="item.labelWidth">
-          <template slot-scope="{row}">
-            <!-- 鑷畾涔夌殑瀛楁 -->
-            <div v-if="item.isSlot">
-              <slot :name="item.prop" :row="row"></slot>
-            </div>
-            <div v-else>          
-              <el-input v-if="row.isClickProperty == item.prop" v-model="row[item.prop]" placeholder="璇疯緭鍏ュ唴瀹�" @change="valChange"></el-input>
-              <span v-else>{{row[item.prop]}}</span>
-            </div>
-          </template>
-          <!-- 琛ㄦ牸鍐呮搷浣滄寜閽� -->
-          <template slot="menu" slot-scope="{scope}">
-              <el-button type="text"
-                  size="small"
-                  icon="el-icon-search"
-                  plain
-                  @click="scope.row.isquery=!scope.row.isquery">
-                  {{scope.row.isquery ? "鍙栨秷蹇�熸煡璇�":"蹇�熸煡璇�"}}
-              </el-button>
-              <el-button type="text"
-                  size="small"
-                  icon="el-icon-minus"
-                  plain
-                  @click="removeCurrentRow(scope.row,'removeAttr')">绉婚櫎
-              </el-button>
-          </template>
-          <!-- 琛ㄦ牸宸︿笂鏂规寜閽尯鍩� -->
-          <template slot="menuLeft" slot-scope="scope">
-              <el-button type="primary"
-                  size="small"
-                  icon="el-icon-plus"
-                  @click="openSelectionTable('selectAttr')">閫夋嫨灞炴��
-              </el-button>
-              <div class="tag-group" style="display: inline">
-                  <el-tag
-                      v-for="item in attrData"
-                      v-show="item.isquery && item.title!=''"
-                      style="margin-left: 3px"
-                      :key="item.title"
-                      type="info"
-                      size="small"
-                      effect="dark">
-                      {{ item.title }}
-                  </el-tag>
-              </div>
-          </template>
-        </el-table-column>       
-      </el-table>
-    </div>
-  </template>
-  <script>
-  export default {
-    name: "tableEdit",
-    props:{
-      tableOptions:{
-        type:Object,
-        default(){
-          return {}
-        }
-      }
-    },
-    data(){
-      return{}
-    },
-    methods:{
-      //鍗曞嚮鍗曞厓鏍煎紑鍚紪杈�
-      cellCilck(row, column, cell, event){
-        this.$set(row, "isClickProperty", column.property);    
-        console.log(row,column,cell,event);
-      },
-      //榧犳爣绂诲紑鍗曞厓鏍硷紝缂栬緫鍏抽棴
-      cellMouseLeave(row){
-        this.$set(row, "isClickProperty", "");
-      },
-      //缂栬緫鍗曞厓鏍煎�煎彉鍖�
-      valChange(val){
-        this.$emit("editTable",val)
-      }
-    }
-  }
-  </script>
-  
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue b/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue
new file mode 100644
index 0000000..93bfa72
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue
@@ -0,0 +1,33 @@
+<template>
+  <vciWebReferTree v-if="refertype=='tree'" :defaultValue="defaultValue" :options="referConfig"></vciWebReferTree>
+</template>
+
+<script>
+import vciWebReferTree from "./vciWebReferTree.vue";
+export default {
+  name: "vciWebRefer",
+  props:["options"],
+  components: { vciWebReferTree},
+  data() {
+    return {
+      referConfig:this.options.referConfig,
+      refertype:this.options.referConfig.type,
+      defaultValue:this.options.defaultValue
+    };
+  },
+  created() {
+    if(this.refertype=='tree'){
+      console.log('referConfig:')
+      console.log(this.options)
+    }
+
+  },
+  mounted() {
+
+  }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue
new file mode 100644
index 0000000..ed3dba2
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue
@@ -0,0 +1,33 @@
+<template>
+  <avue-input-tree default-expand-all v-model="defaultValue" :placeholder="placeholder" :dic="dicData"></avue-input-tree>
+</template>
+
+<script>
+export default {
+  name: "vciWebReferTree",
+  props:["options","defaultValue"],
+  data() {
+    return {
+      placeholder:'璇烽�夋嫨鍐呭',
+      dicData:[{
+        label:'閫夐」1',
+        value:0,
+        children:[{
+          label:'閫夐」3',
+          value:2
+        },{
+          label:'閫夐」4',
+          value:3
+        }]
+      },{
+        label:'閫夐」2',
+        value:1
+      }]
+    };
+  }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/Source/UBCS-WEB/src/components/transfer/index.vue b/Source/UBCS-WEB/src/components/transfer/index.vue
new file mode 100644
index 0000000..f8af0ec
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/transfer/index.vue
@@ -0,0 +1,224 @@
+<template>
+    <div class="el-transfer">
+        <transfer-panel v-bind="$props" ref="leftPanel" :data="sourceData" :title="titles[0] || t('el.transfer.titles.0')"
+            :default-checked="leftDefaultChecked" :placeholder="filterPlaceholder || t('el.transfer.filterPlaceholder')"
+            @checked-change="onSourceCheckedChange">
+            <slot name="left-footer"></slot>
+        </transfer-panel>
+        <div class="el-transfer__buttons">
+            <el-button type="primary" :class="['el-transfer__button', hasButtonTexts ? 'is-with-texts' : '']"
+                @click.native="addToLeft" :disabled="rightChecked.length === 0">
+                <i class="el-icon-arrow-left"></i>
+                <span v-if="buttonTexts[0] !== undefined">{{ buttonTexts[0] }}</span>
+            </el-button>
+            <el-button type="primary" :class="['el-transfer__button', hasButtonTexts ? 'is-with-texts' : '']"
+                @click.native="addToRight" :disabled="leftChecked.length === 0">
+                <span v-if="buttonTexts[1] !== undefined">{{ buttonTexts[1] }}</span>
+                <i class="el-icon-arrow-right"></i>
+            </el-button>
+        </div>
+        <transfer-panel v-bind="$props" ref="rightPanel" :data="targetData" :title="titles[1] || t('el.transfer.titles.1')"
+            :default-checked="rightDefaultChecked" :placeholder="filterPlaceholder || t('el.transfer.filterPlaceholder')"
+            @checked-change="onTargetCheckedChange">
+            <slot name="right-footer"></slot>
+        </transfer-panel>
+    </div>
+</template>
+  
+<script>
+import ElButton from 'element-ui/packages/button';
+import Emitter from 'element-ui/src/mixins/emitter';
+import Locale from 'element-ui/src/mixins/locale';
+import TransferPanel from './transfer-panel.vue';
+// import TransferPanel from './transfer-panel2.vue';
+import Migrating from 'element-ui/src/mixins/migrating';
+
+export default {
+    name: 'ElTransfer',
+
+    mixins: [Emitter, Locale, Migrating],
+
+    components: {
+        TransferPanel,
+        ElButton
+    },
+
+    props: {
+        data: {
+            type: Array,
+            default() {
+                return [];
+            }
+        },
+        titles: {
+            type: Array,
+            default() {
+                return [];
+            }
+        },
+        buttonTexts: {
+            type: Array,
+            default() {
+                return [];
+            }
+        },
+        filterPlaceholder: {
+            type: String,
+            default: ''
+        },
+        filterMethod: Function,
+        leftDefaultChecked: {
+            type: Array,
+            default() {
+                return [];
+            }
+        },
+        rightDefaultChecked: {
+            type: Array,
+            default() {
+                return [];
+            }
+        },
+        renderContent: Function,
+        value: {
+            type: Array,
+            default() {
+                return [];
+            }
+        },
+        format: {
+            type: Object,
+            default() {
+                return {};
+            }
+        },
+        filterable: Boolean,
+        props: {
+            type: Object,
+            default() {
+                return {
+                    label: 'label',
+                    key: 'key',
+                    disabled: 'disabled'
+                };
+            }
+        },
+        targetOrder: {
+            type: String,
+            default: 'original'
+        }
+    },
+
+    data() {
+        return {
+            leftChecked: [],
+            rightChecked: []
+        };
+    },
+
+    computed: {
+        dataObj() {
+            const key = this.props.key;
+            return this.data.reduce((o, cur) => (o[cur[key]] = cur) && o, {});
+        },
+
+        sourceData() {
+            return this.data.filter(item => this.value.indexOf(item[this.props.key]) === -1);
+        },
+
+        targetData() {
+            if (this.targetOrder === 'original') {
+                return this.data.filter(item => this.value.indexOf(item[this.props.key]) > -1);
+            } else {
+                return this.value.reduce((arr, cur) => {
+                    const val = this.dataObj[cur];
+                    if (val) {
+                        arr.push(val);
+                    }
+                    return arr;
+                }, []);
+            }
+        },
+
+        hasButtonTexts() {
+            return this.buttonTexts.length === 2;
+        }
+    },
+
+    watch: {
+        value:{
+            handler(val) {
+            this.dispatch('ElFormItem', 'el.form.change', val);
+        },
+        immediate:true,
+        deep:true
+    }
+    },
+
+    methods: {
+        getMigratingConfig() {
+            return {
+                props: {
+                    'footer-format': 'footer-format is renamed to format.'
+                }
+            };
+        },
+
+        onSourceCheckedChange(val, movedKeys) {
+            this.leftChecked = val;
+            if (movedKeys === undefined) return;
+            this.$emit('left-check-change', val, movedKeys);
+        },
+
+        onTargetCheckedChange(val, movedKeys) {
+            this.rightChecked = val;
+            if (movedKeys === undefined) return;
+            this.$emit('right-check-change', val, movedKeys);
+        },
+
+        addToLeft() {
+            let currentValue = this.value.slice();
+            this.rightChecked.forEach(item => {
+                const index = currentValue.indexOf(item);
+                if (index > -1) {
+                    currentValue.splice(index, 1);
+                }
+            });
+            this.$emit('input', currentValue);
+            this.$emit('change', currentValue, 'left', this.rightChecked);
+        },
+
+        addToRight() {
+            let currentValue = this.value.slice();
+            let itemsToBeMoved = [];
+            const key = this.props.key;
+            this.data.forEach(item => {
+                const itemKey = item[key];
+                if (
+                    this.leftChecked.indexOf(itemKey) > -1 &&
+                    this.value.indexOf(itemKey) === -1
+                ) {
+                    // itemsToBeMoved.push(itemKey)
+                    itemsToBeMoved = [itemKey]
+                    console.log(itemsToBeMoved)
+                }
+            });
+            // currentValue = this.targetOrder === 'unshift'
+            //     ? itemsToBeMoved.concat(currentValue)
+            //     : currentValue.concat(itemsToBeMoved);
+            currentValue = itemsToBeMoved
+            this.$emit('input', currentValue);
+            this.$emit('change', currentValue, 'right', this.leftChecked);
+        },
+
+        clearQuery(which) {
+            if (which === 'left') {
+                this.$refs.leftPanel.query = '';
+            } else if (which === 'right') {
+                this.$refs.rightPanel.query = '';
+            }
+        }
+    }
+};
+</script>
+  
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/components/transfer/transfer-panel.vue b/Source/UBCS-WEB/src/components/transfer/transfer-panel.vue
new file mode 100644
index 0000000..4cde3a8
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/transfer/transfer-panel.vue
@@ -0,0 +1,232 @@
+<template>
+    <div class="el-transfer-panel">
+        <p class="el-transfer-panel__header">
+                {{ title }}
+        </p>
+
+        <div :class="['el-transfer-panel__body', hasFooter ? 'is-with-footer' : '']">
+            <el-input class="el-transfer-panel__filter" v-model="query" size="small" :placeholder="placeholder"
+                @mouseenter.native="inputHover = true" @mouseleave.native="inputHover = false" v-if="filterable">
+                <i slot="prefix" :class="['el-input__icon', 'el-icon-' + inputIcon]" @click="clearQuery"></i>
+            </el-input>
+
+            <el-radio-group v-model="checked" v-show="!hasNoMatch && data.length > 0"
+                :class="{ 'is-filterable': filterable }" class="el-transfer-panel__list">
+                <el-radio class="el-transfer-panel__item" :label="item[keyProp]" :disabled="item[disabledProp]"
+                    :key="item[keyProp]" v-for="item in filteredData"><option-content
+                        :option="item"></option-content></el-radio>
+            </el-radio-group>
+            <p class="el-transfer-panel__empty" v-show="hasNoMatch">{{ t('el.transfer.noMatch') }}</p>
+            <p class="el-transfer-panel__empty" v-show="data.length === 0 && !hasNoMatch">{{ t('el.transfer.noData') }}</p>
+        </div>
+        <p class="el-transfer-panel__footer" v-if="hasFooter">
+            <slot></slot>
+        </p>
+    </div>
+</template>
+  
+<script>
+import ElCheckboxGroup from 'element-ui/packages/checkbox-group';
+import ElCheckbox from 'element-ui/packages/checkbox';
+import ElInput from 'element-ui/packages/input';
+import Locale from 'element-ui/src/mixins/locale';
+
+export default {
+    mixins: [Locale],
+
+    name: 'ElTransferPanel',
+
+    componentName: 'ElTransferPanel',
+
+    components: {
+        ElCheckboxGroup,
+        ElCheckbox,
+        ElInput,
+        OptionContent: {
+            props: {
+                option: Object
+            },
+            render(h) {
+                const getParent = vm => {
+                    if (vm.$options.componentName === 'ElTransferPanel') {
+                        return vm;
+                    } else if (vm.$parent) {
+                        return getParent(vm.$parent);
+                    } else {
+                        return vm;
+                    }
+                };
+                const panel = getParent(this);
+                const transfer = panel.$parent || panel;
+                return panel.renderContent
+                    ? panel.renderContent(h, this.option)
+                    : transfer.$scopedSlots.default
+                        ? transfer.$scopedSlots.default({ option: this.option })
+                        : <span>{this.option[panel.labelProp] || this.option[panel.keyProp]}</span>;
+            }
+        }
+    },
+
+    props: {
+        data: {
+            type: Array,
+            default() {
+                return [];
+            }
+        },
+        renderContent: Function,
+        placeholder: String,
+        title: String,
+        filterable: Boolean,
+        format: Object,
+        filterMethod: Function,
+        defaultChecked: Array,
+        props: Object
+    },
+
+    data() {
+        return {
+            checked: [],
+            allChecked: false,
+            query: '',
+            inputHover: false,
+            checkChangeByUser: true
+        };
+    },
+
+    watch: {
+        checked(val, oldVal) {
+            this.updateAllChecked();
+            let vals = Array.isArray(val)? val:[val]
+            let oldVals = Array.isArray(oldVal)? oldVal:[oldVal]
+            if (this.checkChangeByUser) {
+                const movedKeys = vals.concat(oldVals)
+                    .filter(v => vals.indexOf(v) === -1 || oldVals.indexOf(v) === -1);
+                this.$emit('checked-change', vals,movedKeys);
+            } else {
+                this.$emit('checked-change', vals);
+                this.checkChangeByUser = true;
+            }
+        },
+
+        data() {
+            const checked = [];
+            const filteredDataKeys = this.filteredData.map(item => item[this.keyProp]);
+            let checkeds = Array.isArray(this.checked)? this.checked:[this.checked]
+            checkeds.forEach(item => {
+                if (filteredDataKeys.indexOf(item) > -1) {
+                    checked.push(item);
+                }
+            });
+            this.checkChangeByUser = false;
+            this.checked = checked;
+        },
+
+        checkableData() {
+            this.updateAllChecked();
+        },
+
+        defaultChecked: {
+            immediate: true,
+            handler(val, oldVal) {
+                if (oldVal && val.length === oldVal.length &&
+                    val.every(item => oldVal.indexOf(item) > -1)) return;
+                const checked = [];
+                const checkableDataKeys = this.checkableData.map(item => item[this.keyProp]);
+                val.forEach(item => {
+                    if (checkableDataKeys.indexOf(item) > -1) {
+                        checked.push(item);
+                    }
+                });
+                this.checkChangeByUser = false;
+                this.checked = checked;
+            }
+        }
+    },
+
+    computed: {
+        filteredData() {
+            return this.data.filter(item => {
+                console.log(item)
+                if (typeof this.filterMethod === 'function') {
+                    return this.filterMethod(this.query, item);
+                } else {
+                    const label = item[this.labelProp] || item[this.keyProp].toString();
+                    return label.toLowerCase().indexOf(this.query.toLowerCase()) > -1;
+                }
+            });
+        },
+
+        checkableData() {
+            return this.filteredData.filter(item => !item[this.disabledProp]);
+        },
+
+        checkedSummary() {
+            const checkedLength = this.checked.length;
+            const dataLength = this.data.length;
+            const { noChecked, hasChecked } = this.format;
+            if (noChecked && hasChecked) {
+                return checkedLength > 0
+                    ? hasChecked.replace(/\${checked}/g, checkedLength).replace(/\${total}/g, dataLength)
+                    : noChecked.replace(/\${total}/g, dataLength);
+            } else {
+                return `${checkedLength}/${dataLength}`;
+            }
+        },
+
+        isIndeterminate() {
+            const checkedLength = this.checked.length;
+            return checkedLength > 0 && checkedLength < this.checkableData.length;
+        },
+
+        hasNoMatch() {
+            return this.query.length > 0 && this.filteredData.length === 0;
+        },
+
+        inputIcon() {
+            return this.query.length > 0 && this.inputHover
+                ? 'circle-close'
+                : 'search';
+        },
+
+        labelProp() {
+            return this.props.label || 'label';
+        },
+
+        keyProp() {
+            return this.props.key || 'key';
+        },
+
+        disabledProp() {
+            return this.props.disabled || 'disabled';
+        },
+
+        hasFooter() {
+            return !!this.$slots.default;
+        }
+    },
+
+    methods: {
+        updateAllChecked() {
+            
+            const checkableDataKeys = this.checkableData.map(item => item[this.keyProp]);
+          
+            this.allChecked = checkableDataKeys.length > 0 &&
+                checkableDataKeys.every(item => this.checked===item);
+        },
+
+        handleAllCheckedChange(value) {
+            this.checked = value
+                ? this.checkableData.map(item => item[this.keyProp])
+                : [];
+        },
+
+        clearQuery() {
+            if (this.inputIcon === 'circle-close') {
+                this.query = '';
+            }
+        }
+    }
+};
+</script>
+  
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/const/code/selectAttrOptionDialog.js b/Source/UBCS-WEB/src/const/code/selectAttrOptionDialog.js
index 2437b44..c03a7aa 100644
--- a/Source/UBCS-WEB/src/const/code/selectAttrOptionDialog.js
+++ b/Source/UBCS-WEB/src/const/code/selectAttrOptionDialog.js
@@ -11,6 +11,8 @@
     viewBtn: false,
     selection: true,
     menu: false,
+    columnBtn: false,
+    searchShowBtn: false, //	琛ㄦ牸鎼滅储鏄鹃殣鎸夐挳
     dialogClickModal: false,
     highlightCurrentRow: true,
     column: [
@@ -30,12 +32,12 @@
       },
       {
         label: "灞炴�ч暱搴�",
-        prop: "attrLength",
+        prop: "attrlength",
         search: false,
       },
       {
         label: "灞炴�х被鍨�",
-        prop: "attributeDataTypeText",
+        prop: "attributedatatypetext",
         search: false,
       }
     ]
diff --git a/Source/UBCS-WEB/src/const/code/selectattroption.js b/Source/UBCS-WEB/src/const/code/selectattroption.js
deleted file mode 100644
index 6aa7405..0000000
--- a/Source/UBCS-WEB/src/const/code/selectattroption.js
+++ /dev/null
@@ -1,43 +0,0 @@
-export default {
-    with: '60%',
-    calcHeight: 30,
-    tip: false,
-    editBtn: false,
-    addBtn: false,
-    searchShow: true,
-    searchMenuSpan: 5,
-    disablePage: false,
-    border: true,
-    index: true,
-    viewBtn: false,
-    selection: true,
-    menu: false,
-    dialogClickModal: false,
-    highlightCurrentRow: true, //琛岄�変腑鏃堕珮浜�
-    column: [
-      {
-        label: "灞炴�ц嫳鏂囧悕绉�",
-        prop: "id",
-        search: true,
-        searchLabelWidth: 100,
-        searchSpan: 7,
-      },
-      {
-        label: "灞炴�т腑鏂囧悕绉�",
-        prop: "name",
-        search: true,
-        searchLabelWidth: 100,
-        searchSpan: 7,
-      },
-      {
-        label: "灞炴�ч暱搴�",
-        prop: "description",
-        search: false,
-      },
-      {
-        label: "灞炴�х被鍨�",
-        prop: "attributeDataTypeText",
-        search: false,
-      }
-    ]
-}
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/main.js b/Source/UBCS-WEB/src/main.js
index df2be16..3cf0e47 100644
--- a/Source/UBCS-WEB/src/main.js
+++ b/Source/UBCS-WEB/src/main.js
@@ -40,7 +40,12 @@
 import referConfigCrudDialog from "@/components/code-dialog-page/referConfigCrudDialog"
 import referConfigFormDialog from "@/components/code-dialog-page/referConfigFormDialog"
 import businessAdd from "@/views/modeling/BusinessAdd"
+import TableCrud from "@/components/Crud/Crud"
+import originalAdd from "@/views/modeling/originalAdd"
 
+// 灏嗗伐鍏峰嚱鏁版坊鍔犲埌鍏ㄥ眬
+import utilFunc from './util/func'
+Vue.prototype.$utilFunc = utilFunc
 // 娉ㄥ唽鍏ㄥ眬crud椹卞姩
 window.$crudCommon = crudCommon;
 // 鍔犺浇Vue鎷撳睍
@@ -78,7 +83,8 @@
 Vue.component('referConfigFormDialog',referConfigFormDialog)
 Vue.component('businessAdd',businessAdd)
 Vue.component('attrCrud',attrCrud)
-
+Vue.component('TableCrud',TableCrud)
+Vue.component('originalAdd',originalAdd)
 
 
 // 鍔犺浇鐩稿叧url鍦板潃
diff --git a/Source/UBCS-WEB/src/util/func.js b/Source/UBCS-WEB/src/util/func.js
index c347c27..12f731b 100644
--- a/Source/UBCS-WEB/src/util/func.js
+++ b/Source/UBCS-WEB/src/util/func.js
@@ -102,4 +102,12 @@
     }
     return str;
   }
+  /**
+   * 鍒ゆ柇鏄惁涓哄璞″苟涓嶄负绌哄璞�
+   * @param value
+   * @returns {Boolean}
+   */
+  static isValuableObj(value) {
+    return typeof value === 'object' && value !== null && Object.keys(value).length > 0;
+  }
 }
diff --git a/Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue b/Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue
index 253facd..0ab521c 100644
--- a/Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue
+++ b/Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue
@@ -1,11 +1,19 @@
 <template>
-  <div></div>
-</template>
+  <div>
+    <el-button @click="visible = true">娴嬭瘯</el-button>
+    <FormTemplate :visible.sync="visible" templateOid="78B8C7C5-A042-0B96-FE6D-65421451782A" codeClassifyOid="4524E801-6CC6-92E8-1AC3-2AB9604E8F96"></FormTemplate>
+  </div>
+</template>codeClassifyOid
 
 <script>
-
+import FormTemplate from "../../components/FormTemplate/index";
+export default {
+  name: "FormTempalteTest",
+  components: { FormTemplate },
+  data() {
+    return {
+      visible: false,
+    };
+  },
+};
 </script>
-
-<style lang='less' scoped>
-
-</style>
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/views/MasterData/items.vue b/Source/UBCS-WEB/src/views/MasterData/items.vue
new file mode 100644
index 0000000..94b1072
--- /dev/null
+++ b/Source/UBCS-WEB/src/views/MasterData/items.vue
@@ -0,0 +1,77 @@
+<template>
+    <el-container>
+      <el-aside>
+        <basic-container style="height: 85vh; max-height: 155vh; overflow-y: scroll;">
+          <avue-tree  :option="option" :data="data"  v-model="form" style="height: 80.5vh;padding-top: 5px;padding-bottom: 30px"></avue-tree>
+        </basic-container>
+      </el-aside>
+      <el-main>
+      <TableCrud></TableCrud>
+      </el-main>
+    </el-container>
+</template>
+
+<script>
+export default {
+  name: "items.vue",
+  data(){
+    return{
+      form:{},
+      data:[
+        {
+          value:0,
+          label:'涓�绾ч儴闂�',
+          children:[
+            {
+              value:1,
+              label:'涓�绾ч儴闂�1',
+            },{
+              value:2,
+              label:'涓�绾ч儴闂�2',
+            }
+          ]
+        },{
+          value:3,
+          label:'浜岀骇閮ㄩ棬',
+          children:[
+            {
+              value:4,
+              label:'浜岀骇閮ㄩ棬1',
+            },{
+              value:5,
+              label:'浜岀骇閮ㄩ棬2',
+            }
+          ]
+        }
+      ],
+      option:{
+        title:'鎴戞槸鏍囬',
+        filterText:"鎼滅储鍏抽敭瀛楄嚜瀹氫箟",
+        defaultExpandAll:true,
+        addBtnText:'鏂板鑷畾涔夋枃妗�',
+        editBtnText:'淇敼鑷畾涔夋枃妗�',
+        delBtnText:'鍒犻櫎鑷畾涔夋枃妗�',
+        defaultExpandedKeys:[1],
+        height:900,
+        formOption:{
+          labelWidth:100,
+          column:[{
+            label:'鑷畾涔夐」',
+            prop:'label'
+          }],
+        },
+        props:{
+          labelText:'鏍囬',
+          label:'label',
+          value:'value',
+          children:'children'
+        }
+      }
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue
index 723d656..7ca7a33 100644
--- a/Source/UBCS-WEB/src/views/code/code.vue
+++ b/Source/UBCS-WEB/src/views/code/code.vue
@@ -259,7 +259,7 @@
             size="small"
             icon="el-icon-plus"
             :disabled="selectionList.length <= 0"
-            @click="addBasicCodeSec">
+            @click="openAddBasicCodeSec">
             鏂� 澧�
         </el-button>
         <el-button type="danger"
@@ -680,7 +680,7 @@
                   :option="attrOption"
                   :table-loading="selectAttrOptionLoading"
                   ref="selectionAttrCrud"
-                  @search-change="selectAttrOptionSearchChange"
+                  @search-change="selectAttrSearchChange"
                   @search-reset="searchAttrReset"
                   @row-click="selectionAttrRowClick"
                   @selection-change="selectionChangeAttr">
@@ -760,11 +760,13 @@
       <!-- 绗簩灞傚璇濇,鑷畾涔夊弬鐓ч厤缃瓼orm缁勪欢 -->
       <refer-config-form-dialog
         ref="referConfigFormDialog"
-        @echoReferConfig="echoReferConfig" >
+        @echoReferConfig="echoReferConfig">
       </refer-config-form-dialog>
-      <!-- 绗簩灞傚璇濇,鐩存帴閫夋嫨鍙傜収閰嶇疆curd缁勪欢 -->
+      <!-- 绗簩灞傚璇濇,鐩存帴閫夋嫨鍙傜収閰嶇疆crud缁勪欢 -->
       <refer-config-crud-dialog
-        ref="referConfigCrudDialog">
+        ref="referConfigCrudDialog"
+        @openReconfigInterFace="openReconfigInterFace"
+        @echoReferConfig="echoReferConfig">
       </refer-config-crud-dialog>
 
     </el-dialog>
@@ -1121,6 +1123,7 @@
 
         /* 寮曠敤鐮佹鍙傜収閰嶇疆,瀛愮粍浠跺~瀹屽弬鐓ч厤缃箣鍚庡唴瀹瑰洖鏄炬椂璋冪敤 */
         echoReferConfig(content){
+          // console.log(content.referTypeName);
           this.form.referBtmId = content.referType;
           this.form.referBtmName = content.referTypeName;
           //杞崲鎴怞SON瀛楃涓茶繘琛岀埗缁勪欢鍥炴樉
@@ -1274,19 +1277,13 @@
           //杩欏効杩橀渶瑕佸畬鍠�
           this.selectAttrOptionLoading = true;
           listClassifyLinkAttr({"page": 1,"limit": -1,'conditionMap[codeClassifyOid]':this.currentSelectTreeData.oid}).then(res=>{
-          //console.log(res.data.data);
-          //閫犲亣鏁版嵁
-          let dataInfo =[ 
-            {"id":"address","name":"浼氳瀹ゅ湴鍧�","oid":"058D840D-1010-A7DE-7C52-B39C03CE89C1","attrLength":"150","description":"","attributeDataTypeText":"瀛楃涓�"},
-            {"id":"businesslicensetype","name":"钀ヤ笟鎵х収绫诲瀷","oid":"BDAC6D3E-1827-35A0-F3CA-0E58A43F6A07","attrLength":"255","description":"钀ヤ笟鎵х収绫诲瀷","attributeDataTypeText":"瀛楃涓�"},
-            {"id":"certificatenumber","name":"淇濆瘑璇佺紪鍙�","oid":"E2BC8332-A721-3713-26C3-C9F6340C2C1D","attrLength":"255","description":"淇濆瘑璇佺紪鍙�","attributeDataTypeText":"瀛楃涓�"},
-          ]
-          this.selectattrData = dataInfo;
-          this.selectAttrOptionLoading = false;
+            console.log(res.data.data);
+            this.selectattrData = res.data.data;
+            this.selectAttrOptionLoading = false;
           })
         },
         // 鐐瑰嚮鎼滅储鍚庤Е鍙戣浜嬩欢
-        selectAttrOptionSearchChange(params, done) {
+        selectAttrSearchChange(params, done) {
           this.query = params;
           //console.log(params);  //杩欏効闇�瑕佹敼
           this.loadlistClassifyLinkAttr(Object.assign(params,{'conditionMap[codeClassifyOid]':this.currentSelectTreeData.oid}));
@@ -1663,7 +1660,7 @@
           // this.changeSectypeFormItems(null);
         },
         // 鎵撳紑鏂板绐楀彛
-        addBasicCodeSec(){
+        openAddBasicCodeSec(){
           if(!this.tipsMessage(this.selectionList)){
             return;
           }
@@ -1709,10 +1706,10 @@
           if(this.form.oid == '' || this.form.oid == null){
             if(this.checkForm()){
               addSave(this.form).then(() => {
-              this.$message({
-                type: "success",
-                message: "鎿嶄綔鎴愬姛!"
-              });
+                this.$message({
+                  type: "success",
+                  message: "鎿嶄綔鎴愬姛!"
+                });
               }, error => {
                 window.console.log(error);
               });
@@ -2373,7 +2370,6 @@
           });
         },
 
-
         /** 绗竴灞傚璇濇鐩稿叧鏂规硶 */
         // 鎵撳紑浜屽眰瀵硅瘽妗嗘柟娉�
         openAttrSelectOrGetValue(condition){
@@ -2389,20 +2385,26 @@
             this.refreshReferBtmDataChange();
           }else if(condition === 'referConfig'){
             if(func.notEmpty(this.form.referConfig) || func.notEmpty(this.form.referBtmName)){
-              this.$refs.referConfigFormDialog.isShowReferConfig = true;
-              let value = {
-                referTypeName: this.form.referBtmName,
-                referType: this.form.referBtmId,
-                referConfig: this.form.referConfig,
-              }
-              this.$refs.referConfigFormDialog.initPageData(value);
+              this.openReconfigInterFace(this.form);
             }else{
               this.openTipsChooseOrCust();
             }
              //this.$refs.referConfigFormDialog.onloadAttrData();
           }
         },
-        // 鎵撳紑鑷畾涔夊弬鐓ч厤缃垨鐩存帴閫夋嫨鍙傜収閰嶇疆鐣岄潰
+
+        // 褰撳墠宸插瓨鍦ㄧ紪杈戣繃鐨勫弬灞曢厤缃紝鎵�浠ョ洿鎺ユ墦寮�鍙傜収閰嶇疆鐣岄潰
+        openReconfigInterFace(preReferConfigForm){
+          // console.log(preReferConfigForm);
+          this.$refs.referConfigFormDialog.isShowReferConfigForm = true;
+              let value = {
+                referTypeName: preReferConfigForm.referBtmName,
+                referType: preReferConfigForm.referBtmId,
+                referConfig: preReferConfigForm.referConfig,
+              }
+              this.$refs.referConfigFormDialog.initPageData(value);
+        },
+        // 鎵撳紑鑷畾涔夊弬鐓ч厤缃垨鐩存帴閫夋嫨鍙傜収閰嶇疆鐨勬彁绀烘
         openTipsChooseOrCust(){
           this.$confirm('璇烽�夋嫨鍙傜収閰嶇疆鐨勫畾涔夋柟寮忥紵','鍙傜収閰嶇疆鐨勬柟寮�', {
             distinguishCancelAndClose: true,
@@ -2441,6 +2443,7 @@
             this.form.parentClassifySecOid = '';
           }else if(condition === 'referBtmId'){
             this.form.referBtmId = '';
+            this.form.referBtmName = '';
             this.form.referConfig = '';
           }else if(condition === 'referConfig'){
             this.form.referConfig = '';
@@ -2510,7 +2513,7 @@
               serialStart: row!=null&&row.serialStart != '' ? row.serialStart:1,  //娴佹按鍙疯捣濮嬪��
               serialStep: row!=null&&row.serialStep != '' ? row.serialStep:1,   //娴佹按鐨勬闀�
               codeFillType: row!=null&&row.codeFillType != '' ? row.codeFillType:'code_fill_right', //缂栫爜琛ヤ綅鏂瑰紡
-              codeFillSeparatorSelect: row!=null&&row.codeFillSeparatorSelect != '' ? row.codeFillSeparatorSelect:0,    //琛ヤ綅鏃剁殑瀛楃锛岄�変腑鐨勪笅鎷夋鐨勪笅鏍�
+              codeFillSeparatorSelect: row!=null&&row.codeFillSeparator != '' ? row.codeFillSeparatorSelect:0,    //琛ヤ綅鏃剁殑瀛楃锛岄�変腑鐨勪笅鎷夋鐨勪笅鏍�
               codeFillSeparator: row!=null&&row.codeFillSeparator != '' ? row.codeFillSeparator:0,          //琛ヤ綅鏃剁殑瀛楃
               codeFillLength: row!=null&&row.codeFillLength != '' ? row.codeFillLength:'',              //濉厖闀垮害
               codeFillLimit: row!=null&&row.codeFillLimit != '' ? row.codeFillLimit:'',               //娴佹按涓婇檺
@@ -2569,7 +2572,7 @@
         },
         //鏋氫妇鍜屽彲杈撳彲閫夊唴瀹规煡璇�
         loadCodeSecType(){
-          getDictionary({code: "codeBasicSecType"}).then(res=>{
+          getDictionary({code: "codeSecType"}).then(res=>{
             this.sectypeList = res.data.data;
           })
           this.loadCodeSecLength();
diff --git a/Source/UBCS-WEB/src/views/flow/flowPath.vue b/Source/UBCS-WEB/src/views/flow/flowPath.vue
new file mode 100644
index 0000000..8a034ed
--- /dev/null
+++ b/Source/UBCS-WEB/src/views/flow/flowPath.vue
@@ -0,0 +1,191 @@
+<template>
+    <div>
+        <el-button @click="outerVisible = true">娴佺▼娴嬭瘯</el-button>
+        <el-dialog :title="`鎵ц${title}`" width="90%" append-to-body="true" :visible.sync="outerVisible">
+            <div class="dialogwarp">
+                <div class="dialogwarp_tab">
+                    <el-card class="dialogwarp_tab_card">
+                        <el-tabs v-model="activeName" @tab-click="handleClick">
+                            <el-tab-pane label="涓氬姟鏁版嵁淇℃伅" name="first">
+
+                            </el-tab-pane>
+                            <el-tab-pane label="娴佺▼璺熻釜" name="second">
+                                <avue-crud :data="data" :option="option" ref="crud">
+                                </avue-crud>
+                                <div style="padding: 10px 0; width: 100%; height: 100% ">
+                                    <el-image :src="url" flt="fill"></el-image>
+                                </div>
+                                
+                            </el-tab-pane>
+                        </el-tabs>
+                    </el-card>
+                </div>
+                <div class="dialogwarp_card">
+                    <el-card class="box-card">
+                        <div slot="header" class="clearfix">
+                            <span>褰撳墠浠诲姟锛�</span>
+                            <span>{{ title }}</span>
+                        </div>
+                        <div style="width: 100%;">
+                            <p>璇峰湪涓嬫柟杈撳叆鎮ㄧ殑瀹℃壒鎰忚锛�</p>
+                            <el-input type="textarea" :rows="4" placeholder="璇疯緭鍏ュ唴瀹�" show-word-limit v-model="opinionVal">
+                            </el-input>
+                        </div>
+                        <div style="width: 100%;">
+                            <p>瀹℃壒鎰忚闄勪欢锛�</p>
+                            <el-upload drag action="https://jsonplaceholder.typicode.com/posts/" multiple
+                                style="width: 100%;">
+                                <i class="el-icon-upload"></i>
+                                <div class="el-upload__text">灏嗘枃浠舵嫋鍒版澶勶紝鎴�<em>鐐瑰嚮涓婁紶</em></div>
+                            </el-upload>
+                        </div>
+                        <div style="width: 100%;">
+                            <p>宸蹭笂浼犲鎵规枃浠讹細</p>
+                            <el-card class="box-card">
+                                <el-table :data="tableData" stripe style="width: 100%">
+                                    <el-table-column prop="date" label="鏂囦欢鍚�">
+                                    </el-table-column>
+                                    <el-table-column prop="name" label="涓婁紶浜�  ">
+                                    </el-table-column>
+                                    <el-table-column prop="address" label="鎿嶄綔">
+                                    </el-table-column>
+                                </el-table>
+                            </el-card>
+                        </div>
+                        <div style="margin-top: 20px;">
+                            <el-button v-if="!isRefuse" type="primary" size="mini" @click="handelAgree">鍚屾剰</el-button>
+                            <el-button v-if="!isAgree" type="primary" size="mini" @click="handelRefuse">涓嶅悓鎰�</el-button>
+                            <el-button v-if="isAgree && !isRefuse" type="primary" size="mini" @click="handelRevert"
+                                v-for="item in btnList" :key="item">{{ item }}</el-button>
+                            <el-button v-if="isRefuse" type="primary" size="mini" @click="handelExecute">鎵ц</el-button>
+                        </div>
+                    </el-card>
+                </div>
+            </div>
+        </el-dialog>
+    </div>
+</template>
+
+<script>
+export default {
+    data() {
+        return {
+            outerVisible: false,
+            destroyClose: true,
+            activeName: 'first',
+            fits: ['fill', 'contain', 'cover', 'none', 'scale-down'],
+            url: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
+            title: '涓氬姟娴嬭瘯-鐢宠-鐗╁搧-瀹℃牳',
+            data: [
+                {
+                    name: '寮犱笁',
+                    sex: '鐢�'
+                }, {
+                    name: '鏉庡洓',
+                    sex: '濂�'
+                }, {
+                    name: '鏉庡洓',
+                    sex: '濂�'
+                }, {
+                    name: '鏉庡洓',
+                    sex: '濂�'
+                }
+            ],
+            btnList: ['杩斿洖1', '杩斿洖1', '杩斿洖1'],
+            isAgree: false,
+            isRefuse: false,
+            opinionVal: '',
+            option: {
+                menu: false,
+                addBtn: false,
+                refreshBtn: false,
+                columnBtn: false,
+                index: true,
+                header: false,
+                stripe: true,
+                indexLabelClassName: '搴忓彿',
+                column: [
+                    { label: '浠诲姟鍚嶇О', prop: 'name', minWidth: 120 },
+                    { label: '鎵ц鎿嶄綔', prop: 'sex', minWidth: 80 },
+                    { label: '浠诲姟寮�濮嬫椂闂�', prop: 'sex', minWidth: 140 },
+                    { label: '瀹℃壒鎰忚', prop: 'sex', minWidth: 220, overHidden: true },
+                    { label: '鎵ц浜�', prop: 'sex', minWidth: 80 },
+                    { label: '浠诲姟瀹屾垚鏃堕棿', prop: 'sex', minWidth: 140 },
+                    { label: '宸蹭笂浼犲鎵规枃浠�', prop: 'sex', minWidth: 220, overHidden: true },
+                ]
+            },
+        }
+    },
+    methods: {
+        closeDialog() {
+            this.destroyClose = true
+            this.outerVisible = false
+        },
+        handleClick(tab, event) {
+            console.log(event)
+        },
+        handelAgree() {
+            this.isAgree = !this.isAgree
+            this.outerVisible = false
+            console.log(this.isAgree)
+        },
+        handelRefuse() {
+            if (!this.opinionVal) {
+                this.$alert('褰撳鐞嗘柟寮忎负涓嶅悓鎰忔椂锛岄渶瑕佸~鍐欏鎵规剰瑙�', '鎻愮ず淇℃伅', {
+                    confirmButtonText: '纭畾',
+                }).then(() => {
+
+                });
+            } else {
+                this.isRefuse = true
+                this.isAgree = true
+                this.outerVisible = false
+                this.opinionVal = ''
+            }
+        },
+        handelExecute() {
+            this.outerVisible = false
+            this.isAgree = false
+            this.isRefuse = false
+        },
+        handelRevert() {
+            this.outerVisible = false
+            this.isAgree = false
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+.dialogwarp {
+    display: -webkit-box;
+    display: -ms-flexbox;
+    display: flex;
+    justify-content: space-between;
+    height: 70vh;
+
+    &_tab {
+        width: 79%;
+
+
+        &_card {
+            width: 100%;
+            height: 100%;
+        }
+    }
+
+    &_card {
+        // margin-left: 20px;
+        width: 20%;
+    }
+}
+
+/deep/ .el-upload,
+/deep/ .el-upload-dragger {
+    width: 100%;
+    height: 120px;
+}
+
+/deep/ .el-upload-dragger .el-icon-upload {
+    margin: 15px 0 16px;
+}
+</style>
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/views/integration/integrationIndex.vue b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue
new file mode 100644
index 0000000..37dd110
--- /dev/null
+++ b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue
@@ -0,0 +1,342 @@
+<template>
+    <div>
+        <el-container style="height: 100%; border: 1px solid #fff">
+            <el-card :style="{ marginRight: '10px' }">
+                <el-aside width="300px" style="background-color: #fff">
+                    <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" v-model="filterText">
+                    </el-input>
+                    <el-menu :default-openeds="['1', '3']">
+                        <el-tree class="filter-tree" :data="treeData" :props="defaultProps" default-expand-all
+                            :filter-node-method="filterNode" ref="tree">
+                        </el-tree>
+                    </el-menu>
+                </el-aside>
+            </el-card>
+            <el-main>
+                <el-card>
+                    <avue-crud :data="tableData" :option="option" ref="crud" @row-update="addUpdate" @row-save="rowSave"
+                        @row-click="handleRowClick">
+                        <template slot="menuLeft">
+                            <el-button icon="el-icon-plus" size="small" type="primary" @click="dialogPush = true">鏂� 澧�
+                            </el-button>
+                            <el-button icon="el-icon-check" size="small" type="primary" @click="handleSave">淇� 瀛�
+                            </el-button>
+                            <el-button icon="el-icon-connection" size="small" type="primary" @click="handleSync">鍚屾妯″瀷
+                            </el-button>
+                        </template>
+                    </avue-crud>
+                    <el-card :style="{ marginTop: '20px' }">
+                        <avue-crud :data="tableData" :option="optinos" ref="crud" @row-update="addUpdate"
+                            @row-save="rowSave" @row-click="handleRowClick">
+                        </avue-crud>
+                    </el-card>
+                </el-card>
+                <el-dialog title="缂栫爜灞炴��" :visible.sync="dialogPush" destroy-on-close append-to-body="true" width="30%"
+                    :before-close="handleClose">
+                    <el-form :model="form">
+                        <el-form-item label="鏌ヨ鏉′欢" label-width="70px" size="small">
+                            <el-input v-model="form.name" autocomplete="off" @change="handleQuery"></el-input>
+                        </el-form-item>
+                    </el-form>
+                    <p class="text_tip">*閫夋嫨鍒嗙被杩涜灞炴�ц繃婊�, 鎴栬�呰緭鍏ュ睘鎬х殑鍏ㄦ嫾鎴栬�呯畝鎷艰繘琛屾煡璇�! 濡�: 濮撳悕 (鍙緭鍏m鎴杧inming )</p>
+                    <transfer v-model="transferValue" :data="transferData" :filter-method="filterMethod"
+                        filter-placeholder="璇疯緭鍏ュ睘鎬ф嫾闊冲叏鎷兼垨鑰呮嫾闊崇缉鍐�" @left-check-change="handelLeftCheck"></transfer>
+                    <span slot="footer" class="dialog-footer">
+                        <el-button @click="dialogPush = false">鍙� 娑�</el-button>
+                        <el-button type="primary" @click="dialogVisible = false">淇� 瀛�</el-button>
+                    </span>
+                </el-dialog>
+            </el-main>
+        </el-container>
+    </div>
+</template>
+<script>
+import transfer from '@/components/transfer/index'
+import pinyin from 'js-pinyin'
+export default {
+    components: {
+        transfer
+    },
+    data() {
+        const generateData = () => {
+            pinyin.setOptions({ checkPolyphone: false, charCase: 1 });
+            const data = [];
+            const cities = ['涓婃捣', '鍖椾含', '骞垮窞', '娣卞湷', '鍗椾含', '瑗垮畨', '鎴愰兘'];
+            cities.forEach((city, index) => {
+                data.push({
+                    label: city,
+                    key: index,
+                    pinyin: pinyin.getFullChars(city),
+                    pinyins: pinyin.getCamelChars(city),
+                });
+            });
+            return data;
+        };
+        return {
+            form: {
+                name: '',
+            },
+            transferData: generateData(),
+            transferValue: [],
+            dialogPush: false,
+            tableData: [
+                {
+                    id: 1,
+                    groupTypeName: '浜哄憳',
+                    codeView: '缂栫爜瑙嗗浘',
+                    sex: '鎬у埆',
+                    typeName: '铻烘爴',
+                    attributeName: '',
+                    defaultValue: '',
+                },
+                {
+                    id: 2,
+                    groupTypeName: '浜哄憳',
+                    codeView: '缂栫爜瑙嗗浘',
+                    sex: '鎬у埆',
+                    typeName: '铻烘爴',
+                    attributeName: '',
+                    defaultValue: '',
+                },
+                {
+                    id: 3,
+                    groupTypeName: '浜哄憳',
+                    codeView: '缂栫爜瑙嗗浘',
+                    sex: '鎬у埆',
+                    typeName: '铻烘爴',
+                    attributeName: '',
+                    defaultValue: '',
+                },
+                {
+                    id: 3,
+                    groupTypeName: '浜哄憳',
+                    codeView: '缂栫爜瑙嗗浘',
+                    sex: '鎬у埆',
+                    typeName: '铻烘爴',
+                    attributeName: '',
+                    defaultValue: '',
+                },
+                {
+                    id: 3,
+                    groupTypeName: '浜哄憳',
+                    codeView: '缂栫爜瑙嗗浘',
+                    sex: '鎬у埆',
+                    typeName: '铻烘爴',
+                    attributeName: '',
+                    defaultValue: '',
+                },
+                {
+                    id: 3,
+                    groupTypeName: '浜哄憳',
+                    codeView: '缂栫爜瑙嗗浘',
+                    sex: '鎬у埆',
+                    typeName: '铻烘爴',
+                    attributeName: '',
+                    defaultValue: '',
+                },
+                {
+                    id: 3,
+                    groupTypeName: '浜哄憳',
+                    codeView: '缂栫爜瑙嗗浘',
+                    sex: '鎬у埆',
+                    typeName: '铻烘爴',
+                    attributeName: '',
+                    defaultValue: '',
+                },
+                {
+                    id: 3,
+                    groupTypeName: '浜哄憳',
+                    codeView: '缂栫爜瑙嗗浘',
+                    sex: '鎬у埆',
+                    typeName: '铻烘爴',
+                    attributeName: '',
+                    defaultValue: '',
+                },
+                {
+                    id: 3,
+                    groupTypeName: '浜哄憳',
+                    codeView: '缂栫爜瑙嗗浘',
+                    sex: '鎬у埆',
+                    typeName: '铻烘爴',
+                    attributeName: '',
+                    defaultValue: '',
+                }
+            ],
+            filterText: '',
+            optinos: {
+                title: '闆嗗洟灞炴��',
+                maxHeight: '300px',
+                menu: true,
+                delBtn: false,
+                addBtn: false,
+                index: true,
+                header: false,
+                columnBtn: false,
+                searchShow: true,
+                emptyBtn: false,
+                searchBtn: false,
+                searchShowBtn: false,
+                cellBtn: true,
+                border: true,
+                searchMenuSpan: 8,
+                column: [
+                    { label: '灞炴�ч泦鍥㈡灇涓惧��', prop: 'groupTypeName', minWidth: 80, },
+                    { label: '闆嗗洟灞炴�ф灇涓炬樉绀哄悕绉�', prop: 'codeView', minWidth: 80 },
+                    { label: 'MDM鏋氫妇鍊�', prop: 'sex', minWidth: 80 },
+                    { label: 'MDM鏋氫妇鏄剧ず鍚嶇О', prop: 'typeName', minWidth: 80, overHidden: true },
+                ]
+            },
+            option: {
+                maxHeight: '500px',
+                menu: true,
+                delBtn: false,
+                addBtn: false,
+                index: true,
+                header: true,
+                columnBtn: false,
+                searchShow: true,
+                emptyBtn: false,
+                searchBtn: false,
+                searchShowBtn: false,
+                cellBtn: true,
+                border: true,
+                searchMenuSpan: 8,
+                column: [
+                    {
+                        label: '闆嗗洟鍒嗙被',
+                        prop: 'groupTypeName',
+                        minWidth: 80,
+                        type: "select",
+                        dicUrl: "/api/ubcs-system/dict/dictionary?code=org_category",
+                        props: {
+                            label: "dictValue",
+                            value: "dictKey"
+                        },
+                        slot: true,
+                        search: true,
+                        rules: [{
+                            message: "璇疯緭鍏ラ泦鍥㈠垎绫诲悕绉�"
+                        }]
+                    },
+                    { label: '鎵�灞炶鍥�', prop: 'codeView', minWidth: 80 },
+                    { label: '闆嗗洟灞炴��', prop: 'sex', minWidth: 80 },
+                    { label: '鍒嗙被鍚嶇О', prop: 'typeName', minWidth: 80, overHidden: true },
+                    { label: '灞炴�у悕绉�', prop: 'attributeName', minWidth: 80, cell: true },
+                    { label: '榛樿鍊�', prop: 'defaultValue', minWidth: 140, cell: true },
+                ]
+            },
+            treeData: [{
+                id: 1,
+                label: '涓�绾� 1',
+                children: [{
+                    id: 4,
+                    label: '浜岀骇 1-1',
+                    children: [{
+                        id: 9,
+                        label: '涓夌骇 1-1-1'
+                    }, {
+                        id: 10,
+                        label: '涓夌骇 1-1-2'
+                    }]
+                }]
+            }, {
+                id: 2,
+                label: '涓�绾� 2',
+                children: [{
+                    id: 5,
+                    label: '浜岀骇 2-1'
+                }, {
+                    id: 6,
+                    label: '浜岀骇 2-2'
+                }]
+            }, {
+                id: 3,
+                label: '涓�绾� 3',
+                children: [{
+                    id: 7,
+                    label: '浜岀骇 3-1'
+                }, {
+                    id: 8,
+                    label: '浜岀骇 3-2'
+                }]
+            }],
+            defaultProps: {
+                children: 'children',
+                label: 'label'
+            }
+        }
+    },
+    watch: {
+        filterText(val) {
+            this.$refs.tree.filter(val);
+        }
+    },
+    created() {
+        pinyin.setOptions({ checkPolyphone: false, charCase: 1 });
+        console.log(pinyin.getFullChars('绠$悊鍛�'))
+        console.log(pinyin.getCamelChars('绠$悊鍛�'))
+
+    },
+    methods: {
+        filterNode(value, data) {
+            if (!value) return true;
+            return data.label.indexOf(value) !== -1;
+        },
+        handleSave() {
+
+        },
+        handlePush() {
+
+        },
+        handelLeftCheck(event) {
+            console.log(event)
+        },
+        addUpdate(event, done) {
+            console.log(event)
+            done()
+        },
+        rowSave(event, done) {
+            console.log(event)
+            done()
+        },
+        handleRowClick(row, event, column) {
+            console.log(row)
+            console.log(event)
+            console.log(column)
+        },
+        handleQuery(event) {
+            console.log(event)
+            this.form.name = event
+        },
+        filterMethod(query, item) {
+            return item.pinyins.indexOf(this.form.name) > -1;
+        },
+    }
+}
+</script>
+<style lang="scss" scoped>
+.text_tip {
+    padding: 10px 0;
+    color: #F56C6C;
+}
+
+/deep/ .el-transfer-panel__list {
+    width: 100%;
+}
+
+/deep/ .el-input {
+    width: auto;
+}
+
+/deep/ .el-transfer-panel {
+    width: 270px;
+}
+
+/deep/ .el-transfer-panel__list {
+    height: 370px;
+}
+
+/deep/ .el-transfer-panel__body {
+    height: 370px;
+}
+</style>
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/views/modeling/classifyTree.vue b/Source/UBCS-WEB/src/views/modeling/classifyTree.vue
index 761a794..d3596ee 100644
--- a/Source/UBCS-WEB/src/views/modeling/classifyTree.vue
+++ b/Source/UBCS-WEB/src/views/modeling/classifyTree.vue
@@ -15,6 +15,7 @@
       crudTreeOption: {
         index: true,
         border: true,
+        height:180,
         column: [
           {
             label: "妯℃澘缂栧彿",
diff --git a/Source/UBCS-WEB/src/views/modeling/original.vue b/Source/UBCS-WEB/src/views/modeling/original.vue
index fe46d55..9757875 100644
--- a/Source/UBCS-WEB/src/views/modeling/original.vue
+++ b/Source/UBCS-WEB/src/views/modeling/original.vue
@@ -2,22 +2,30 @@
   <el-container>
     <el-main>
       <basic-container>
-        <avue-crud v-model="form" :option="option" :data="data" ref="crud" @on-load="onLoad" @row-save="rowSave"
-          @row-update="rowUpdate" :before-open="beforeOpen" @row-del="rowDel" :page.sync="page"
-          @refresh-change="refreshChange" @row-click="rowClick"
-          @selection-change="selectChange">
-          <template slot-scope="{row,index,type}" slot="selInputForm">
-          <div style="margin-left: 75px">
-            <el-input v-model="form.text" :size="size" style="width: 210px" :readonly="true" @focus="selectBtmType" :disabled="referType.disable"></el-input>
-          </div>
-        </template>
-        <template slot="radio"
-                slot-scope="{row}">
-                    <el-radio v-model="selectRow"
-                        :label="row.$index">&nbsp;
-                    </el-radio>
+        <avue-crud v-model="form" 
+          ref="crud" 
+          :option="option" 
+          :data="data" 
+          @on-load="onLoad" 
+          :page.sync="page"
+          @refresh-change="refreshChange" 
+          @row-click="rowClick">
+               <template slot="radio"
+                  slot-scope="{row}">
+                      <el-radio v-model="selectRow"
+                          :label="row.$index">&nbsp;
+                      </el-radio>
                 </template>
+          <template slot="menu">
+             <el-button icon="el-icon-edit" size="small" type="text" @click="updateSave">缂栬緫</el-button>
+             <el-button icon="el-icon-delete" size="small" type="text" @click="deleteSave">鍒犻櫎</el-button>
+          </template>
          <template slot="menuLeft">
+            <el-button size="small"
+              type="primary"
+              icon="el-icon-plus"
+              @click="addSave">鏂�&nbsp;&nbsp;澧�
+            </el-button>
             <el-button size="small"
                        plain
                        type="primary"
@@ -31,76 +39,105 @@
             <avue-crud v-model="applyRange.model" :option="applyRange.option" :data="applyRange.data" class="applyRangeTable"
             ></avue-crud>
         </el-dialog>
-        <el-dialog :visible.sync="referType.display" append-to-body :title="referType.title" width="1000px">
-          <original-range @rowchange="rowchange"></original-range>
-          <span slot="footer" class="dialog-footer">
-            <el-button @click="dialoghandelfalse">鍙� 娑�</el-button>
-            <el-button type="primary" @click="dialoghandeltrue">纭� 瀹�</el-button>
-          </span>
-        </el-dialog>
-        <!-- <el-dialog :visible.sync="packageLinkBox" append-to-body title="鏌ョ湅閾炬帴绫诲瀷" width="1000px">
-          <original-link @rowLinkchange="rowLinkchange"></original-link>
-          <span slot="footer" class="dialog-footer">
-            <el-button @click="Linkdialoghandelfalse">鍙� 娑�</el-button>
-            <el-button type="primary" @click="Linkdialoghandeltrue">纭� 瀹�</el-button>
-          </span>
-        </el-dialog> -->
       </basic-container>
     </el-main>
     <el-aside>
       <basic-container class="itemForm">
-        <el-tabs v-model="activeName" @tab-click="handleClick">
-          <el-tab-pane label="灞炴�ч」" name="attrTab">
-            <el-form ref="form" :model="itemData" label-width="80px" style="height: 656px;">
-              <el-form-item label="灞炴�х紪鐮�">
-                <el-input v-model="itemData.id" :disabled="true"></el-input>
-              </el-form-item>
-              <el-form-item label="灞炴�у悕绉�">
-                <el-input v-model="itemData.name" :disabled="true"></el-input>
-              </el-form-item>
-              <el-form-item label="灞炴�х被鍨�">
-                <el-input v-model="itemData.typeValue" :disabled="true"></el-input>
-              </el-form-item>
-              <el-form-item label="鏍囩">
-                <el-input v-model="itemData.hashtag" :disabled="true"></el-input>
-              </el-form-item>
-              <el-form-item label="榛樿鍊�">
-                <el-input v-model="itemData.defaultValue" :disabled="true"></el-input>
-              </el-form-item>
-              <el-form-item label="鍏佽涓虹┖">
-                <el-switch v-model="itemData.nullable" :disabled="true"></el-switch>
-              </el-form-item>
-              <el-form-item label="闀垮害">
-                <el-input v-model="itemData.maxLength" :disabled="true"></el-input>
-              </el-form-item>
-              <el-form-item label="鎻忚堪">
-                <el-input v-model="itemData.description" :disabled="true"></el-input>
-              </el-form-item>
-            </el-form>
-          </el-tab-pane>
-          <el-tab-pane label="鍙傜収" name="valueTab">
-            <el-form ref="form" :model="itemData" label-width="80px" style="height: 656px;">
-              <el-form-item label="鍙傜収绫诲瀷">
-                <el-input v-model="itemData.referTypeValue" :disabled="true"></el-input>
-              </el-form-item>
-              <el-form-item label="鍙傜収鍚嶇О">
-                <el-input v-model="itemData.referToName" :disabled="true"></el-input>
-              </el-form-item>
-            </el-form>
+            <el-descriptions class="margin-top" :column="1" size="medium" border title="灞炴�ч」">
+              <el-descriptions-item>
+                <template slot="label">
+                  灞炴�х紪鍙�
+                </template>
+                {{ itemForm.itemData.id }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  灞炴�у悕绉�
+                </template>
+                {{ itemForm.itemData.name }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  灞炴�х被鍨�
+                </template>
+                {{ itemForm.itemData.typeValue }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  鏍囩
+                </template>
+                {{ itemForm.itemData.hashtag }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  榛樿鍊�
+                </template>
+                {{ itemForm.itemData.defaultValue }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  鍏佽涓虹┖
+                </template>
+                {{ itemForm.itemData.nullable }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  闀垮害
+                </template>
+                {{ itemForm.itemData.maxLength }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  鎻忚堪
+                </template>
+                {{ itemForm.itemData.description }}
+              </el-descriptions-item>
+            </el-descriptions>
+            <div style="height:15px"></div>
+        <el-descriptions class="margin-top" :column="1" size="medium" border title="灞炴�ч厤缃�"></el-descriptions>
+        <el-tabs v-model="itemForm.activeName" @tab-click="handleClick" stretch="true" style="height:235px">
+        <el-tab-pane label="鍙傜収" name="referTab">
+            <el-descriptions class="margin-top" :column="1" size="medium" border>
+              <el-descriptions-item>
+                <template slot="label">
+                  浣跨敤鍙傜収
+                </template>
+                {{ itemForm.itemData.referTypeValue ? '鏄�' : '鍚�' }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  鍙傜収绫诲瀷
+                </template>
+                {{ itemForm.itemData.referTypeValue }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  鍙傜収鍚嶇О
+                </template>
+                {{ itemForm.itemData.referToName }}
+              </el-descriptions-item>
+            </el-descriptions>
           </el-tab-pane>
           <el-tab-pane label="鏋氫妇" name="enumTab">
-            <el-form ref="form" :model="itemData" label-width="80px" style="height: 656px;">
-              <el-form-item label="浣跨敤鏋氫妇">
-                <el-switch v-model="itemData.usingDict" :disabled="true"></el-switch>
-              </el-form-item>
-              <el-form-item label="鏋氫妇绫诲瀷">
-                <el-input v-model="form.dictCode" :disabled="true"></el-input>
-              </el-form-item>
-            </el-form>
+            <el-descriptions class="margin-top" :column="1" :size="small" border>
+              <el-descriptions-item>
+                <template slot="label">
+                  浣跨敤鏋氫妇
+                </template>
+                {{ itemForm.itemData.usingDict ? '鏄�' : '鍚�' }}
+              </el-descriptions-item>
+              <el-descriptions-item>
+                <template slot="label">
+                  鏋氫妇绫诲瀷
+                </template>
+                {{ itemForm.itemData.dictCode }}
+              </el-descriptions-item>
+            </el-descriptions>
           </el-tab-pane>
         </el-tabs>
       </basic-container>
     </el-aside>
+    <originalAdd ref="originalAdd" :attribute="attribute" @refreshTable="refreshChange"></originalAdd>
   </el-container>
 </template>
 
@@ -112,52 +149,21 @@
   update, getPage, getApplyRange
 } from "@/api/omd/OmdAttribute";
 
-import { getDictionary } from "@/api/omd/enum";
-
 export default {
   name: "original",
   data() {
-    return {
-      datas: [],
-      itemData: {},
-      activeName: 'attrTab',
-      formAtrr: {},
-      rouname: "",
-      referType: {
-        code: 'referType',
-        key: '',
-        value: '',
-        display: false,
-        title: '',
-        disable: true
-      },
-      //鍊煎煙涓嬫媺妗嗘暟鎹�
-      Typelist: [],
-      //鐗堟湰鏁版嵁
-      banList: [],
-      // 灞炴�х被鍨嬩笅鎷夋鏁版嵁
-      typeSelectList: [
-        {
-          label: "鍝堝搱鍝�",
-          value: 0
-        },],
-      // 鏄惁涓虹┖
-      nullable: [],
-      form: {
-        text: ""
-      },
-      detailForm: {
-        text: ""
-      },
+    return {  
       page: {
         pageSize: 10,
         currentPage: 1,
         total: 100
       },
       selectRow: '',
-      data: [
-
-      ],
+      data: [],
+      form:{},
+      attribute: {
+        nullable: true
+      },
       option: {
         height: "550px",
         headerAlign: 'center',
@@ -165,7 +171,13 @@
         index: true,
         rowKey: 'id',
         tabs: true,
+        stripe:true,
+        indexFixed: false,
+        menuWidth: 150,
         highlightCurrentRow: true,
+        addBtn:false,
+        editBtn:false,
+        delBtn:false,
         column: [{
             label: '閫夋嫨',
             prop: 'radio',
@@ -178,7 +190,8 @@
             prop: 'id',
             align: 'left',
             display: false,
-            width: 200
+            width: 200,
+            required: true
           }, {
             label: '灞炴�у悕绉�',
             prop: 'name',
@@ -200,10 +213,10 @@
             display: false,
             dicData: [{
               label: '鏄�',
-              value: 0
+              value: 'true'
             }, {
               label: '鍚�',
-              value: 1
+              value: 'false'
             }]
           },
           {
@@ -226,10 +239,10 @@
             labelWidth: 132,
             dicData: [{
               label: '鍚�',
-              value: 1
+              value: 'false'
             }, {
               label: '鏄�',
-              value: 0
+              value: 'true'
             }]
           },
           {
@@ -244,195 +257,6 @@
             type: "textarea",
             display: false
           },
-        ],
-        group: [
-          {
-            label: '灞炴�ч」',
-            prop: "index",
-            column: [
-              {
-                label: '灞炴�х紪鍙�',
-                prop: 'id',
-                align: 'left',
-              },
-              {
-                label: '灞炴�у悕绉�',
-                prop: 'name',
-                align: 'left',
-              },
-              {
-                label: '鏍囩',
-                prop: 'hashtag',
-                hide: true
-              }, {
-                label: '灞炴�х被鍨嬪瓧鍏哥爜',
-                prop: 'typeCode',
-                display: false,
-                value: 'attributeType'
-              },
-              {
-                label: '灞炴�х被鍨�',
-                prop: 'typeKey',
-                type: "select",
-                dicUrl: '/api/ubcs-omd/dict-biz/dictionary?code=attributeType',
-                dicType: 'String',
-                props: {
-                  label: 'dictValue',
-                  value: 'dictKey'
-                },
-                rules: [
-                  {
-                    required: true,
-                    message: "璇烽�夋嫨灞炴�х被鍨�",
-                    trigger: "click"
-                  }
-                ]
-              },
-              {
-                label: '榛樿鍊�',
-                prop: 'defaultValue',
-              },
-              {
-                label: '鍏佽涓虹┖',
-                prop: 'nullable',
-                type: 'switch',
-                hide: true,
-                labelWidth: 132,
-                dicData: [{
-                  label: '鍚�',
-                  value: 1
-                }, {
-                  label: '鏄�',
-                  value: 0
-                }]
-              },
-              {
-                label: "闀垮害",
-                prop: "maxLength",
-                hide: true
-              },
-              {
-                label: '鎻忚堪',
-                prop: 'description',
-                type: "textarea"
-              },
-            ]
-          },
-          {
-            label: '鍙傜収',
-            column: [
-              {
-                label: '鍙傜収绫诲埆',
-                prop: 'referTypeCode',
-                display: false,
-                hide: true
-              },{
-                span: 12,
-                label: '鍙傜収绫诲埆',
-                prop: 'referTypeKey',
-                type: "select",
-                change: this.selectChange,
-                dicUrl: '/api/ubcs-omd/dict-biz/dictionary?code=referType',
-                dicType: 'String',
-                props: {
-                  label: 'dictValue',
-                  value: 'dictKey'
-                },
-                rules: [
-                  {
-                    required: true,
-                    message: "璇烽�夋嫨鍙傜収绫诲埆",
-                    trigger: "click"
-                  }
-                ]
-              },
-              {
-                prop: "selInput",
-                placeholder: false,
-                readonly: true,
-                display: true,
-                formslot: true,
-              },
-              // {
-              //   label: "閫夋嫨鐗堟湰",
-              //   prop: "banben",
-              //   type: 'select',
-              //   value: 0,
-              //   change: this.selchange,
-              //   display: true,
-              //   dicData: [
-              //     {
-              //       label: '褰撳墠鐗堟湰娆�',
-              //       value: 0
-              //     },
-              //     {
-              //       label: '鏈�鏂扮増鏈',
-              //       value: 1
-              //     }
-              //   ]
-              // },
-              {
-                //榛樿琛ㄦ牸鎻掓Ы
-                prop: "default",
-                span: 24,
-                display: false
-              }
-            ]
-          },
-          {
-            label: '鏋氫妇',
-            column: [
-              {
-                label: '鏄惁浣跨敤鏋氫妇',
-                prop: 'isnot',
-                type: 'switch',
-                hide: true,
-                labelWidth: 132,
-                span: 8,
-                dicData: [{
-                  label: '鍚�',
-                  value: 1
-                }, {
-                  label: '鏄�',
-                  value: 0
-                }]
-              },
-              {
-                prop: 'text',
-                type: 'input',
-                placeholder: '璇疯緭鍏ュ唴瀹�',
-                hide: true,
-                display: false
-              },
-              {
-                prop: 'enumerationSelect',
-                type: 'select',
-                placeholder: '璇烽�夋嫨',
-                hide: true,
-                span: 12,
-                dicData: [
-                  {
-                    label: 'a',
-                    value: 0
-                  },
-                  {
-                    label: 'b',
-                    value: 1
-                  },
-                  {
-                    label: 'c',
-                    value: 2
-                  }
-                ]
-              },
-              {
-                label: '鎻忚堪',
-                prop: 'endesc',
-                type: "textarea",
-                labelWidth: 132,
-              },
-            ]
-          }
         ]
       },
       applyRange: {
@@ -464,115 +288,32 @@
         },
         data: [],
         display: false,
+      },
+      itemForm:{
+        itemData: {},
+        activeName: 'referTab',
+        form:{}
       }
     }
   },
-
-
   created() {
-    const column =this.findObject(this.option.group,"referTypeKey")
-    console.log(column);
+    
   },
   methods: {
-    rowLinkchange(row) {
-      this.form.text = row.name
-    },
-    rowchange(row) {
-      this.form.text = row.name
-    },
-    //鍊煎煙绫诲瀷閫夋嫨
-    addHandle() {
-      this.packageBox = true
-      if (this.Typelist.value == 0) {
-        this.packageBox = true
-        this.packageLinkBox = false
-      } else if (this.Typelist.value == 1) {
-        this.packageBox = false
-        this.packageLinkBox = true
-      }
-    },
-    // 鍊煎煙涓氬姟绫诲瀷瀵硅瘽妗嗗彇娑�
-    dialoghandelfalse() {
-      this.packageBox = false;
-      this.form.text = ""
-    },
-    //鍊煎煙涓氬姟绫诲瀷瀵硅瘽妗嗙‘瀹�
-    dialoghandeltrue() {
-      this.packageBox = false
-    },
-    // 鍊煎煙閾炬帴绫诲瀷瀵硅瘽妗嗗彇娑�
-    Linkdialoghandelfalse() {
-      this.packageLinkBox = false;
-      this.form.text = ""
-    },
-    //鍊煎煙閾炬帴绫诲瀷瀵硅瘽妗嗙‘瀹�
-    Linkdialoghandeltrue() {
-      this.packageLinkBox = false
-    },
-    selectChange(val) {
-       this.referType.key = val.value
-      if (val.value == 'businessType'){
-        this.referType.value = '涓氬姟绫诲瀷'
-      }
-      if (val.value == 'linkType'){
-        this.referType.value = '閾炬帴绫诲瀷'
-      }
-      if(val.value){
-        this.referType.disable = false
-      }
-    },
-    selchange(val) {
-      this.banList = val
-      console.log(val);
-    },
     refreshChange() {
       this.onLoad(this.pageParent, this.query);
     },
-    beforeOpen(done, type) {
-      
-      done();
-
+    addSave(){
+      this.$refs.originalAdd.showSubmitDialog = true;
+      this.$refs.originalAdd.attribute = {};
     },
-    rowDel(row) {
-      this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", {
-        confirmButtonText: "纭畾",
-        cancelButtonText: "鍙栨秷",
-        type: "warning"
-      })
-        .then(() => {
-          return remove(row.id);
-        })
-        .then(() => {
-          this.$message({
-            type: "success",
-            message: "鎿嶄綔鎴愬姛!"
-          });
-          this.onLoad();
-        });
+    updateSave(){
+      this.$refs.originalAdd.showSubmitDialog = true;
+      this.$refs.originalAdd.attribute = this.attribute;
     },
-    rowSave(row, done) {
-      add(row).then(() => {
-        this.$message({
-          type: "success",
-          message: "鎿嶄綔鎴愬姛!"
-        });
-        done(row)
-        this.onLoad()
-      }).catch((res) => {
-        this.$message({
-          type: "success",
-          message: res
-        });
-      })
-    },
-    rowUpdate(row, index, done) {
-      update(row).then(() => {
-        this.onLoad()
-        this.$message({
-          type: "success",
-          message: "淇敼鎴愬姛!"
-        });
-        done(row)
+    deleteSave(){
+      remove(this.itemForm.itemData).then(res => {
+        this.$message.success("鍒犻櫎鎴愬姛");
       })
     },
     onLoad(page, params = {}) {
@@ -587,9 +328,9 @@
       })
     },
     rowClick(row) {
-      this.itemData = row;
+      this.itemForm.itemData = row;
       this.selectRow = row.$index;
-
+      this.attribute = row;
     }
     ,selectBtmType(){
         this.referType.display = true;
@@ -603,11 +344,9 @@
           })
         }
         var oid = this.data[this.selectRow].oid;
-        console.log(oid);
         getApplyRange(oid).then(res => {
             this.applyRange.data = res.data.data;
         })
-        console.log("success");
         this.applyRange.display = true;
     },
     applyRangeClose(){
diff --git a/Source/UBCS-WEB/src/views/modeling/originalAdd.vue b/Source/UBCS-WEB/src/views/modeling/originalAdd.vue
new file mode 100644
index 0000000..fc2bae1
--- /dev/null
+++ b/Source/UBCS-WEB/src/views/modeling/originalAdd.vue
@@ -0,0 +1,456 @@
+<template>
+    <el-container>
+        <el-dialog title="鍏冩暟鎹�" :visible.sync="showSubmitDialog" append-to-body @close="closeSubmitDialog" width="700px"
+            style="height: 115vh;">
+            <!-- 鍏冩暟鎹殑澧炴敼寮圭獥 -->
+            <el-form ref="form" :model="attribute" show-message="true" inline size="medium" label-suffix=":"
+                class="attributeForm" :rules="rules" @resetFields="resetAttributeForm" status-icon="true">
+                <el-form-item label="灞炴�х紪鍙�" label-width="100px" prop="id">
+                    <el-input v-model="attribute.id" maxlength="15" show-word-limit type="text"></el-input>
+                </el-form-item>
+                <el-form-item label="灞炴�у悕绉�" label-width="100px" prop="name">
+                    <el-input v-model="attribute.name"></el-input>
+                </el-form-item>
+                <el-form-item label="灞炴�х被鍨�" label-width="100px" prop="typeValue">
+                    <el-select v-model="attribute.typeValue" placeholder="璇烽�夋嫨灞炴�х被鍨�" @change="typeSelectChange">
+                        <el-option v-for="item in typeList" :key="item.value" :label="item.label" :value="item.value">
+                        </el-option>
+                    </el-select>
+                </el-form-item>
+                <el-form-item label="鏍囩" label-width="100px">
+                    <el-input v-model="attribute.hashtag"></el-input>
+                </el-form-item>
+                <el-form-item label="榛樿鍊�" label-width="100px">
+                    <el-input v-model="attribute.defaultValue"></el-input>
+                </el-form-item>
+                <el-form-item label="鍏佽涓虹┖" label-width="100px">
+                    <el-switch v-model="attribute.nullable" active-text="鍏佽" inactive-text="涓嶅厑璁�"></el-switch>
+                </el-form-item>
+                <el-form-item label="闀垮害" label-width="100px" prop="maxLength">
+                    <el-input-number v-model="attribute.maxLength" :min="1" :max="4000" :step="1" controls-position="right"></el-input-number>
+                </el-form-item>
+                <el-form-item label="绮惧害" label-width="100px" v-if="attribute.typeValue == 'VTDouble'">
+                    <el-input-number v-model="attribute.precision" :min="1" :max="20" :step="1" controls-position="right" @change="changeNumber"></el-input-number>
+                </el-form-item>
+                <el-form-item label="鎻忚堪" label-width="100px">
+                    <el-input v-model="attribute.description" type="text"></el-input>
+                </el-form-item>
+
+                <el-tabs v-model="activeName" @tab-click="handleClick" stretch="true">
+                    <el-tab-pane label="鍙傜収" name="referTab">
+                        <el-form-item label="鍙傜収绫诲瀷" label-width="100px">
+                            <el-select v-model="attribute.referTypeKey" @change="referTypeSelectChange">
+                                <el-option v-for="item in btmRefer.referTypeList" :key="item.value" :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                        <el-form-item label="鍙傜収鍚嶇О" label-width="100px">
+                            <el-input v-model="attribute.referToName" @focus="openReferConfig" clearable="true"
+                                :disabled="referToFlag" @clear="clearReferTo">
+                                <i slot="suffix" class="el-input__icon el-icon-search"></i>
+                            </el-input>
+                        </el-form-item>
+                    </el-tab-pane>
+                    <el-tab-pane label="鏋氫妇" name="enumTab">
+                        <el-form-item label="鏋氫妇" label-width="100px">
+                            <el-input v-model="attribute.dictValue" @focus="openEnumConfig" clearable="true">
+                                <i slot="suffix" class="el-input__icon el-icon-search"></i>
+                            </el-input>
+                        </el-form-item>
+                        <el-form-item label="鏋氫妇椤�" label-width="100px">
+                            
+                        </el-form-item>
+                    </el-tab-pane>
+                </el-tabs>
+            </el-form>
+            <div slot="footer" class="dialog-footer">
+                <el-button type="primary" @click="submitAttribute">纭畾</el-button>
+                <el-button @click="cancleSubmit">鍙栨秷</el-button>
+            </div>
+            <!-- 閫夋嫨鍙傜収鏃剁殑寮圭獥 -->
+            <el-dialog title="鍙傜収鍒楄〃" :visible.sync="btmRefer.show" append-to-body @close="closeReferDialog" width="80%"
+                style="height: 115vh;">
+                <el-container>
+                    <el-aside>
+                        <basic-container>
+                           <span class="el-dialog__title"> {{ domain.treeOption.title }} </span>
+                            <div style="height:20px;"></div>
+                            <avue-tree id="domain" :data="domain.data" :option="domain.treeOption" @node-click="nodeClick"
+                                class="businessTree" style="height: 418px">
+                                <span class="el-tree-node__label" slot-scope="{ node, data }">
+                                    <span>
+                                        <i class="el-icon-star-on"></i>
+                                        {{ (node || {}).label }}
+                                    </span>
+                                </span>
+                            </avue-tree>
+                        </basic-container>
+                    </el-aside>
+                    <el-main>
+                        <basic-container>
+                            <avue-crud ref="btmTable" :option="btmRefer.option" :data="btmRefer.data" class="btmTable" @row-click="btmReferClick">
+                                <template slot="radio" slot-scope="{row}">
+                                    <el-radio v-model="btmRefer.selectRow" :label="row.$index">&nbsp;
+                                    </el-radio>
+                                </template>
+                            </avue-crud>
+                        </basic-container>
+                    </el-main>
+
+                </el-container>
+                <div slot="footer" class="dialog-footer">
+                    <el-button type="primary" @click="confirmBtm" size="small">纭畾</el-button>
+                    <el-button @click="cancleBtm" size="small">鍙栨秷</el-button>
+                </div>
+            </el-dialog>
+            <!-- 閫夋嫨鏋氫妇鏃剁殑寮圭獥 -->
+            <el-dialog title="鏋氫妇鍒楄〃" :visible.sync="enumRefer.show" append-to-body @close="closeEnumDialog" width="70%" 
+                style="height: 115vh;">
+                <avue-crud ref="eunmTable" :option="enumRefer.option" :data="enumRefer.data" class="enumTable" @row-click="enumReferClick" :page.sync="enumRefer.enumPage">
+                    <template slot="radio" slot-scope="{row}">
+                        <el-radio v-model="enumRefer.selectRow" :label="row.$index">&nbsp;
+                        </el-radio>
+                    </template>
+                </avue-crud>
+                <div slot="footer" class="dialog-footer">
+                    <el-button type="primary" @click="confirmEnum" size="small">纭畾</el-button>
+                    <el-button @click="cancleEnum" size="small">鍙栨秷</el-button>
+                </div>
+            </el-dialog>
+        </el-dialog>
+
+    </el-container>
+</template>
+
+<script>
+import { getDictionary,getParentList } from '@/api/omd/enum'
+import { initTree,btmPage } from '@/api/omd/btmType'
+import { add} from '@/api/omd/OmdAttribute'
+export default {
+    name: 'originalAdd',
+    props: {
+        attribute: {
+            type: Object
+        },
+    },
+    data() {
+        return {
+            showSubmitDialog: false,
+            // 榛樿鐨勯〉绛�
+            activeName: 'referTab',
+            // 灞炴�х被鍨嬩笅鎷夋鏁版嵁
+            typeList: [],
+            // 鍙傜収涓嬫媺妗嗘槸鍚﹀彲鐢�
+            referToFlag: true,
+            // 琛ㄥ崟鏍¢獙瑙勫垯
+            rules: {
+                id: [
+                    { required: true, message: '璇疯緭鍏ュ睘鎬х紪鍙�', trigger: 'blur' },
+                    { pattern: /^[A-Za-z]+$/, message: '灞炴�х紪鍙峰彧鑳戒负鑻辨枃', trigger: 'blur' },
+                    { min: 2, max: 15, message: '闀垮害鍦�2鍒�15涓瓧绗�', trigger: 'blur' }
+                ],
+                name: [
+                    { required: true, message: '璇疯緭鍏ュ睘鎬у悕绉�', trigger: 'blur' }
+                ],
+                typeValue: [
+                    { required: true, message: '璇烽�夋嫨灞炴�х被鍨�', trigger: 'change' }
+                ],
+                maxLength: [
+                    { required: true, message: '闇�瑕佹寚瀹氶暱搴�', trigger: 'blur' }
+                ]
+            },
+            // 鍙傜収椤甸潰琛ㄦ牸閰嶇疆
+            btmRefer: {
+                show: false,
+                btmPage: {
+                    pageSize: 10,
+                    currentPage: 1,
+                    total: 100
+                },
+                option: {
+                    height: 405,
+                    addBtn: false,
+                    refreshBtn: false,
+                    columnBtn: false,
+                    menu: false,
+                    border: true,
+                    reserveSelection: true,
+                    searchMenuSpan: 32,
+                    searchShowBtn: false,
+                    highlightCurrentRow: true,
+                    column: [
+                        {
+                        label: '',
+                        prop: 'radio',
+                        width: 60,
+                        hide: false
+                    },
+                    {
+                        label: '鑻辨枃鍚嶇О',
+                        prop: 'id',
+                        align: 'center',
+                        searchSpan:8,
+                        search: true,
+                    }, {
+                        label: '涓枃鍚嶇О',
+                        prop: 'name',
+                        align: 'center',
+                        searchSpan:8,
+                        search: true,
+                    }]
+                },
+                // 鍙傜収椤甸潰琛ㄦ牸鏁版嵁
+                data: [],
+                selectRow: '',
+                selectItem: {},
+                referTypeList: []
+            },
+            // 鏋氫妇鍙傜収琛ㄦ牸閰嶇疆
+            enumRefer: {
+                show: false,
+                enumPage: {
+                    pageSize: 10,
+                    currentPage: 1,
+                    total: 100
+                },
+                option: {
+                    height: 360,
+                    addBtn: false,
+                    refreshBtn: false,
+                    columnBtn: false,
+                    selection: true,
+                    menu: false,
+                    border: true,
+                    reserveSelection: true,
+                    searchMenuSpan: 32,
+                    searchShowBtn: false,
+                    highlightCurrentRow: true,
+                    column: [{
+                        label: '',
+                        prop: 'radio',
+                        width: 60,
+                        hide: false
+                    },{
+                        label: '鏋氫妇浠e彿',
+                        prop: 'name',
+                        align: 'center',
+                        searchSpan:8,
+                        search: true,
+                    }, {
+                        label: '鏋氫妇鍚嶇О',
+                        prop: 'label',
+                        align: 'center',
+                        searchSpan:8,
+                        search: true,
+                    }]
+                },
+                // 鏋氫妇鍙傜収琛ㄦ牸鏁版嵁
+                data: [],
+                enumDictionary: [],
+                // 閫夊畾琛�
+                selectRow: '',
+                selectItem: {}
+            },
+            domain: {
+                data: [],
+                treeOption: {
+                    defaultExpandAll: true,
+                    title: '棰嗗煙鏈嶅姟鏍�',
+                    props: {
+                        labelText: '',
+                        label: 'name',
+                        value: 'oid',
+                    }
+                }
+            }
+        }
+    },
+    created() {
+        this.initAttributeTypeList();
+        this.initAttributeReferTypeList();
+    },
+    methods: {
+        closeSubmitDialog() {
+            this.resetAttributeForm();
+            this.showSubmitDialog = false;
+        },
+        resetAttributeForm() {
+            this.attribute = {
+                nullable: true,
+                referTypeKey: '',
+            };
+            this.referToFlag = true;
+            this.$refs.form.resetFields();
+        },
+        submitAttribute() { 
+            add(this.attribute).then(res => {
+                this.$message.success("淇濆瓨鎴愬姛");
+                this.showSubmitDialog = false;
+                this.attribute = {};
+                this.$emit('refreshTable');
+            });
+            
+        },
+        cancleSubmit() {
+            this.closeSubmitDialog();
+        },
+        closeEnumDialog() {
+            this.cancleEnum();
+         },
+        closeReferDialog() { 
+            this.cancleBtm();
+        },
+        confirmBtm() { 
+            this.attribute.referToId = this.btmRefer.selectItem.oid;
+            this.attribute.referToName = this.btmRefer.selectItem.name;
+            this.btmRefer.show = false;
+        },
+        cancleBtm() { 
+            this.btmRefer.selectItem = {};
+            this.btmRefer.show = false;
+            this.btmRefer.selectRow = '';
+        },
+        confirmEnum() {
+            this.attribute.usingDict = true;
+            this.attribute.dictCode = this.enumRefer.selectItem.name;
+            this.attribute.dictValue = this.enumRefer.selectItem.label;
+            this.enumRefer.show = false;
+         },
+        cancleEnum() { 
+            this.enumRefer.selectItem = {};
+            this.enumRefer.show = false;
+            this.enumRefer.selectRow = '';
+        },
+        // 鍙傜収鍚嶇О杈撳叆妗嗚幏鍙栫劍鐐规椂鐨勪簨浠�
+        openReferConfig() {
+            if (!this.attribute.referTypeKey) {
+                this.$message.warning('璇峰厛閫夋嫨鍙傜収鐨勭被鍨�');
+                this.referToFlag = true;
+                return;
+            }
+            this.domain.data = [];
+            this.btmRefer.data = [];
+            initTree().then(res => {
+                this.domain.data = res.data.data;
+            })
+            this.btmRefer.show = true;
+
+        },
+        // 鍙傜収绫诲瀷鏍戠殑鐐瑰嚮浜嬩欢
+        nodeClick(data) {
+            // 鍖哄垎涓氬姟绫诲瀷鐨勬煡璇㈠拰閾炬帴绫诲瀷鐨勬煡璇�
+            if(this.attribute.referTypeKey == 'btmType'){
+                btmPage(this.btmRefer.btmPage.currentPage,this.btmRefer.btmPage.pageSize,{domain:data.id}).then(res => {
+                    this.btmRefer.data = res.data.data.records;
+                    this.btmRefer.btmPage.total = res.data.data.total;
+                })
+            }
+            if(this.attribute.referTypeKey == 'linkType'){
+
+            }
+        },
+        // 鏋氫妇绫诲瀷杈撳叆妗嗚幏寰楃劍鐐规椂鐨勪簨浠�
+        openEnumConfig() {
+            getParentList(this.enumRefer.enumPage.currentPage,this.enumRefer.enumPage.pageSize).then(res => {
+                this.enumRefer.enumPage.total = res.data.data.total;
+                this.enumRefer.data = res.data.data.records;
+            })
+            this.enumRefer.show = true;
+        },
+        // 灞炴�х被鍨嬩笅鎷夋閫夋嫨浜嬩欢
+        typeSelectChange(value) {
+            if (value == 'VTString') {
+                this.$set(this.attribute,"maxLength",150)
+            } else if (value == 'VTInteger') {
+                this.$set(this.attribute,"maxLength",50)
+            } else if (value == 'VTBoolean') {
+                this.$set(this.attribute,"maxLength",5)
+            } else if (value == 'VTDouble') {
+                this.$set(this.attribute,"maxLength",26)
+                this.$set(this.attribute,"precision",8)
+            } else if (value == 'VTLong') {
+                this.$set(this.attribute,"maxLength",150)
+            } else if (value == 'VTDate' || value == 'VTTime' || value == 'VTDateTime') {
+                this.$set(this.attribute,"maxLength",6)
+            } else {
+                this.$set(this.attribute,"maxLength",50)
+            }
+            this.attribute.typeCode = 'attributeType';
+            this.attribute.typeKey = value;
+        },
+        referTypeSelectChange(value) {
+            this.attribute.referTypeCode = 'attributeReferType';
+            this.attribute.referTypeKey = value;
+            this.referToFlag = false;
+        },
+        initAttributeTypeList() {
+            getDictionary({ code: 'attributeType' }).then(res => {
+                res.data.data.forEach(element => {
+                    this.typeList.push(
+                        { value: element.itemValue, label: element.itemName }
+                    )
+                });
+            }).catch(() => {
+                this.$message.error('灞炴�х被鍨嬫病鎵惧埌鎴栬�呮湭瀹氫箟')
+            })
+        },
+        initAttributeReferTypeList(){
+            getDictionary({ code: 'attributeReferType' }).then(res => {
+                res.data.data.forEach(element => {
+                    this.btmRefer.referTypeList.push(
+                        { value: element.itemValue, label: element.itemName }
+                    )
+                });
+            }).catch(() => {
+                this.$message.error('鍙傜収绫诲瀷娌℃壘鍒版垨鑰呮湭瀹氫箟')
+            })
+        },
+        btmReferClick(row){
+            this.btmRefer.selectItem = row;
+            this.btmRefer.selectRow = row.$index;
+        },
+        enumReferClick(row){
+            this.enumRefer.selectItem = row;
+            this.enumRefer.selectRow = row.$index;
+        },
+        // 鍙傜収鍚嶇О鐐瑰嚮娓呴櫎鏁版嵁
+        clearReferTo(){
+            this.$delete(this.attribute,'referToId');
+            this.$delete(this.attribute,'referToName');
+            this.btmRefer.selectItem = {};
+            this.btmRefer.selectRow = '';
+        },
+        handleClick(tab){
+            // 鍥犱负鍙兘鍙傜収鍜屾灇涓句簩閫変竴銆傛墍浠ュ湪鍒囨崲鐨勬椂鍊欐妸灞炴�х粰娓呯┖銆�
+            this.$delete(this.attribute,'referTypeCode');
+            this.$delete(this.attribute,'referTypeKey');
+            this.$delete(this.attribute,'referTypeValue');
+            this.$delete(this.attribute,'referToId');
+            this.$delete(this.attribute,'referToName');
+            this.$delete(this.attribute,'dictCode');
+            this.$delete(this.attribute,'dictKey');
+            this.$delete(this.attribute,'dictValue');
+            this.$delete(this.attribute,'usingDict');
+        }
+    }
+}
+</script>
+
+<style>
+.btmTable>.el-card:nth-of-type(2)>.el-card__body>.avue-crud__menu {
+    display: none !important;
+}
+
+.enumTable>.el-card:nth-of-type(2)>.el-card__body>.avue-crud__menu {
+    display: none !important;
+}
+
+.attributeForm>.el-form-item>.el-form-item__content>.el-input>.el-input__inner {
+    width: 200px;
+}
+
+.attributeForm>.el-form-item>.el-form-item__content> .el-select>.el-input>.el-input__inner {
+    width: 200px;
+}
+</style>
\ No newline at end of file
diff --git a/Source/UBCS-WEB/vue.config.js b/Source/UBCS-WEB/vue.config.js
index 1a23368..d3136dc 100644
--- a/Source/UBCS-WEB/vue.config.js
+++ b/Source/UBCS-WEB/vue.config.js
@@ -26,9 +26,10 @@
     proxy: {
       '/api': {
         //鏈湴鏈嶅姟鎺ュ彛鍦板潃
-        // target: 'http://localhost:37000',
-        //target: 'http://192.168.3.7:37000',
-        target: 'http://dev.vci-tech.com:37000',
+          target: 'http://localhost:37000',
+        // target: 'http://192.168.3.7:37000',
+        //target: 'http://dev.vci-tech.com:37000',
+        //target: 'http://192.168.1.51:37000/',
         //杩滅▼婕旂ず鏈嶅姟鍦板潃,鍙敤浜庣洿鎺ュ惎鍔ㄩ」鐩�
         // target: 'https://saber.bladex.vip/api',
         ws: true,
diff --git a/Source/UBCS/ubcs-common/src/main/java/com/vci/ubcs/common/constant/LauncherConstant.java b/Source/UBCS/ubcs-common/src/main/java/com/vci/ubcs/common/constant/LauncherConstant.java
index 8c8a346..ff73742 100644
--- a/Source/UBCS/ubcs-common/src/main/java/com/vci/ubcs/common/constant/LauncherConstant.java
+++ b/Source/UBCS/ubcs-common/src/main/java/com/vci/ubcs/common/constant/LauncherConstant.java
@@ -41,7 +41,7 @@
 	 * nacos dev 鍦板潃
 	 */
 	//String NACOS_DEV_ADDR = "dev.vci-tech.com:38848";
-	String NACOS_DEV_ADDR = "localhost:8848";
+	String NACOS_DEV_ADDR = "127.0.0.1:8848";
 
 	/**
 	 * nacos prod 鍦板潃
diff --git a/Source/UBCS/ubcs-service-api/pom.xml b/Source/UBCS/ubcs-service-api/pom.xml
index e1875a9..8ee821c 100644
--- a/Source/UBCS/ubcs-service-api/pom.xml
+++ b/Source/UBCS/ubcs-service-api/pom.xml
@@ -25,6 +25,7 @@
         <module>ubcs-omd-api</module>
         <module>ubcs-util-api</module>
         <module>ubcs-ddl-api</module>
+        <module>ubcs-webservice-api</module>
     </modules>
 
     <dependencies>
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/CodeReferConfigDTO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/CodeReferConfigDTO.java
new file mode 100644
index 0000000..8e7e464
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/CodeReferConfigDTO.java
@@ -0,0 +1,27 @@
+package com.vci.ubcs.code.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.github.yulichang.annotation.EntityMapping;
+import com.vci.ubcs.code.entity.CodeReferConfig;
+import com.vci.ubcs.code.entity.CodeShowFieldConfig;
+import com.vci.ubcs.code.entity.CodeSrchCondConfig;
+
+import java.util.List;
+
+/**
+ * @author ludc
+ * @date 2023/5/24 11:31
+ */
+public class CodeReferConfigDTO extends CodeReferConfig {
+
+	/**
+	 * 鏄剧ず鐨勫睘鎬�-鏄剧ず瀵硅薄
+	 */
+	private List<CodeShowFieldConfig> codeShowFieldConfigs;
+
+	/**
+	 * 鏌ヨ鏉′欢鏄剧ず瀵硅薄
+	 */
+	private List<CodeSrchCondConfig> codeSrchCondConfigs;
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsattributeEntity.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsattributeEntity.java
index d79bed8..c0b753d 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsattributeEntity.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsattributeEntity.java
@@ -97,5 +97,4 @@
 	@ApiModelProperty(value = "鍙栧�艰寖鍥�")
 	private String range;
 
-
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsbtmtypeattributeEntity.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsbtmtypeattributeEntity.java
index 4c0a4df..92070a7 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsbtmtypeattributeEntity.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeOsbtmtypeattributeEntity.java
@@ -45,7 +45,6 @@
 	 */
 	private static final long serialVersionUID = -4431848943790920077L;
 
-
 	@JsonSerialize(
 		using = ToStringSerializer.class
 	)
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java
index ce80f90..4ff4161 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java
@@ -1,7 +1,11 @@
 package com.vci.ubcs.code.entity;
 
+import com.alibaba.fastjson.annotation.JSONField;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFilter;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.github.yulichang.annotation.EntityMapping;
 import com.vci.ubcs.code.vo.CodeShowFieldConfigVO;
 import com.vci.ubcs.code.vo.CodeSrchCondConfigVO;
 import com.vci.ubcs.starter.revision.model.BaseModel;
@@ -22,6 +26,7 @@
 @Data
 @TableName("PL_CODE_REFERCONFIG")
 @ApiModel(value = "CodeReferConfig瀵硅薄", description = "缂栫爜瑙勫垯绠$悊-寮曠敤鐮佹-鍙傜収閰嶇疆")
+@JsonInclude(JsonInclude.Include.NON_EMPTY)  //涓嶈緭鍑烘帀绌哄瓧娈�
 public class CodeReferConfig extends BaseModel {
 
 	/**
@@ -32,6 +37,7 @@
 	/**
 	 * 绉熸埛ID
 	 */
+	@JSONField()
 	private String tenantId;
 
 	/**
@@ -140,20 +146,39 @@
 	private String onlyLeaf;
 
 	/**
+	 * 鍙傜収鐨勪笟鍔$被鍨�-鏄剧ず鏂囨湰
+	 */
+	private String referTypeName;
+
+	/**
+	 * 鏄惁寮�鍚叏灞�
+	 */
+	private String isOpenGlobal;
+
+	/**
 	 * 鎺掑簭
 	 */
 	private Integer orderNum;
 
 	/**
+	 * 鏄惁寮�鍚寔涔呭寲
+	 */
+	private String isPersistence;
+
+	/**
 	 * 鏄剧ず鐨勫睘鎬�-鏄剧ず瀵硅薄
 	 */
 	@TableField(exist = false)
+	@EntityMapping(thisField = "oid", joinField = "referConfigOid")
+	@JsonInclude(JsonInclude.Include.NON_NULL)
 	private List<CodeShowFieldConfig> codeShowFieldConfigs;
 
 	/**
 	 * 鏌ヨ鏉′欢鏄剧ず瀵硅薄
 	 */
 	@TableField(exist = false)
+	@EntityMapping(thisField = "oid", joinField = "referConfigOid")
+	@JsonInclude(JsonInclude.Include.NON_NULL)
 	private List<CodeSrchCondConfig> codeSrchCondConfigs;
 
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeShowFieldConfig.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeShowFieldConfig.java
index 1c1faa5..4d66c38 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeShowFieldConfig.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeShowFieldConfig.java
@@ -1,9 +1,14 @@
 package com.vci.ubcs.code.entity;
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.github.yulichang.annotation.EntityMapping;
 import com.vci.ubcs.starter.revision.model.BaseModel;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
+
+import java.io.Serializable;
 
 /**
  * 缂栫爜瑙勫垯绠$悊-寮曠敤鐮佹-鍙傜収閰嶇疆-鏄剧ず灞炴�ч厤缃�
@@ -14,9 +19,15 @@
 @Data
 @TableName("PL_CODE_SHOWFIELDCONFIG")
 @ApiModel(value = "CodeShowFieldConfig瀵硅薄", description = "缂栫爜瑙勫垯绠$悊-寮曠敤鐮佹-鍙傜収閰嶇疆-鏄剧ず灞炴�ч厤缃�")
-public class CodeShowFieldConfig extends BaseModel {
+public class CodeShowFieldConfig implements Serializable {
 
 	private static final long serialVersionUID = -71135592796848692L;
+
+	/**
+	 * 涓婚敭
+	 */
+	@TableId(value = "OID",type = IdType.ASSIGN_UUID)
+	private String oid;
 
 	/**
 	 * 鍒楀瓧娈�
@@ -39,9 +50,9 @@
 	private String sort;
 
 	/**
-	 * 鎺掑簭瀛楁
+	 * 鏄剧ず鐨勫睘鎬т腑鐨�-鎺掑簭瀛楁
 	 */
-	private String sortField;
+	private String attrSortField;
 
 	/**
 	 * 瀛楁瀹藉害
@@ -59,6 +70,11 @@
 	private String templet;
 
 	/**
+	 * 鏄惁蹇�熸煡璇�
+	 */
+	private String isQuery;
+
+	/**
 	 * 鍏宠仈鐨勫弬鐓ч厤缃富閿�
 	 */
 	private String referConfigOid;
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeSrchCondConfig.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeSrchCondConfig.java
index 72855b5..7dff2bc 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeSrchCondConfig.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeSrchCondConfig.java
@@ -1,5 +1,7 @@
 package com.vci.ubcs.code.entity;
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.vci.ubcs.starter.revision.model.BaseModel;
 import io.swagger.annotations.ApiModel;
@@ -15,11 +17,17 @@
 @Data
 @TableName("PL_CODE_SRCHCONDCONFIG")
 @ApiModel(value = "CodeSrchCondConfig瀵硅薄", description = "缂栫爜瑙勫垯绠$悊-寮曠敤鐮佹-鍙傜収閰嶇疆-鎼滅储鏉′欢閰嶇疆")
-public class CodeSrchCondConfig extends BaseModel {
+public class CodeSrchCondConfig {
 
 	private static final long serialVersionUID = -51655155561881523L;
 
 	/**
+	 * 涓婚敭
+	 */
+	@TableId(value = "OID",type = IdType.ASSIGN_UUID)
+	private String oid;
+
+	/**
 	 * 绛涢�夊瓧娈�
 	 */
 	private String filterField;
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeButtonClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeButtonClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeButtonClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeButtonClient.java
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java
similarity index 62%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java
index 3ec61d2..0d61f55 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java
@@ -17,10 +17,18 @@
 package com.vci.ubcs.code.feign;
 
 import com.vci.ubcs.code.entity.CodeClassify;
+import com.vci.ubcs.code.entity.CodeClassifyTemplateAttr;
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
+import com.vci.ubcs.starter.revision.model.TreeQueryObject;
+import com.vci.ubcs.starter.web.pagemodel.Tree;
 import org.springblade.core.mp.support.BladePage;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
 
 /**
  * 涓婚搴撳畾涔夎〃 Feign鎺ュ彛绫�
@@ -35,6 +43,8 @@
 
     String API_PREFIX = "/codeClass";
     String TOP = API_PREFIX + "/top";
+	String CODE_CLASSIFY_TREE=API_PREFIX+"/referCodeClassifyTree";
+	String CODE_ATTRIBUTE_LIST=API_PREFIX+"/listCodeAttributeByClassId";
 
     /**
      * 鑾峰彇涓婚搴撳畾涔夎〃鍒楄〃
@@ -46,4 +56,19 @@
     @GetMapping(TOP)
     BladePage<CodeClassify> top(@RequestParam("current") Integer current, @RequestParam("size") Integer size);
 
+	/***
+	 * 鑾峰彇涓婚搴撳垎绫诲眰绾ф爲
+	 * @param treeQueryObject
+	 * @return 涓婚搴撳垎绫�
+	 */
+	@PostMapping(CODE_CLASSIFY_TREE)
+	public List<Tree> referCodeClassifyTree(@RequestBody TreeQueryObject treeQueryObject);
+
+	/***
+	 * 鑾峰彇涓绘暟鎹ā鏉垮睘鎬т俊鎭�
+	 * @param codeClassifyId
+	 * reutn 杩斿洖涓绘暟鎹ā鏉垮睘鎬т俊鎭�
+	 */
+	@GetMapping(CODE_ATTRIBUTE_LIST)
+	public List<CodeClassifyTemplateAttrVO> listCodeAttributeByClassId(@RequestParam("codeClassifyId") String codeClassifyId);
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyTemplateAttrClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyTemplateAttrClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyTemplateAttrClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyTemplateAttrClient.java
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeOsbtmtypeClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeOsbtmtypeClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeOsbtmtypeClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeOsbtmtypeClient.java
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodePhaseAttrClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodePhaseAttrClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodePhaseAttrClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodePhaseAttrClient.java
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeSynonymClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeSynonymClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeSynonymClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeSynonymClient.java
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeTempButtonClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeTempButtonClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeTempButtonClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeTempButtonClient.java
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeTempphaseClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeTempphaseClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeTempphaseClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeTempphaseClient.java
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeWupinClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeWupinClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/ICodeWupinClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeWupinClient.java
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java
new file mode 100644
index 0000000..74564c5
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java
@@ -0,0 +1,63 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 搴勯獮 (smallchill@163.com)
+ */
+package com.vci.ubcs.code.feign;
+
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import org.springblade.core.launch.constant.AppConstant;
+import org.springblade.core.tool.api.R;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 缂栫爜淇℃伅 Feign鎺ュ彛绫�
+ *
+ * @author yuxc
+ * @since 2023-05-05
+ */
+@FeignClient(
+	value = AppConstant.APPLICATION_NAME_CODE,
+	fallback = IMdmEngineFallback.class
+)
+public interface IMdmEngineClient {
+
+    String API_PREFIX = "/mdmEngineClient";
+    String SELECT_BY_TYPE_OID = API_PREFIX + "/selectByTypeAndOid";
+    String INSERT_BATCH_BY_TYPE = API_PREFIX + "/insertBatchByType";
+
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩竜id闆嗗悎鏌ヨ鏁版嵁杩涜杩斿洖
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param oids      闇�瑕佹煡璇㈢殑oid闆嗗悎 閫楀彿鍒嗗紑
+	 * @return 鏌ヨ鍑虹殑鏁版嵁
+	 */
+    @GetMapping(SELECT_BY_TYPE_OID)
+	R<List<BaseModel>> selectByTypeAndOid(@RequestParam("btmType") String btmType, @RequestParam("oids") String oids);
+
+
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鎻掑叆鎿嶄綔
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param baseModels      澶勭悊鏁版嵁
+	 * @return 澶勭悊鎴愬姛鏁版嵁鏉℃暟
+	 */
+	@PostMapping(INSERT_BATCH_BY_TYPE)
+	R<Integer> insertBatchByType(@RequestParam("btmType")String btmType,@RequestBody List<BaseModel> baseModels);
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineFallback.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineFallback.java
new file mode 100644
index 0000000..7571929
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineFallback.java
@@ -0,0 +1,41 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 搴勯獮 (smallchill@163.com)
+ */
+package com.vci.ubcs.code.feign;
+
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import org.springblade.core.tool.api.R;
+import org.springframework.stereotype.Component;
+import java.util.List;
+
+/**
+ * Feign澶辫触閰嶇疆
+ *
+ * @author Chill
+ */
+@Component
+public class IMdmEngineFallback implements IMdmEngineClient {
+
+	@Override
+	public R<List<BaseModel>> selectByTypeAndOid(String btmType, String oids) {
+		return R.fail("鑾峰彇鏁版嵁澶辫触");
+	}
+
+	@Override
+	public R<Integer> insertBatchByType(String btmType, List<BaseModel> baseModels){
+		return R.fail("鑾峰彇鏁版嵁澶辫触");
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/lCodeClassifyTemplateClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/lCodeClassifyTemplateClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/lCodeClassifyTemplateClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/lCodeClassifyTemplateClient.java
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/lCodeKeyAttrRepeatClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/lCodeKeyAttrRepeatClient.java
similarity index 100%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/lCodeKeyAttrRepeatClient.java
rename to Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/lCodeKeyAttrRepeatClient.java
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeReferConfigVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeReferConfigVO.java
index 951cc9a..2c33f37 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeReferConfigVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeReferConfigVO.java
@@ -27,70 +27,9 @@
 	private static final long serialVersionUID = 957685333614390234L;
 
 	/**
-	 * 鍙傜収鐨勪笟鍔$被鍨�-鏄剧ず鏂囨湰
-	 */
-	private String referTypeText;
-
-	/**
-	 * 鍙傜収绐楀彛绫诲瀷-鏄剧ず鏂囨湰
+	 * 鍙傜収绐楀彛绫诲瀷-鏄剧ず灞炴��
 	 */
 	private String typeText;
-
-	/**
-	 * 璇锋眰鍚庡彴鐨勫崗璁柟寮�
-	 */
-	private String method;
-
-
-	/**
-	 * 鍙傝�冪殑UI涓婁笅鏂�
-	 */
-	private String referContent;
-
-	/**
-	 * 骞冲彴鐨勮〃鏍肩紪鍙�
-	 */
-	private String displayTable;
-
-	/**
-	 * 姣忛〉鏄剧ず鏉℃暟
-	 */
-	private String limit;
-
-	/**
-	 * 鎺掑簭瀛楁
-	 */
-	private String sortField;
-
-	/**
-	 * 鎺掑簭绫诲瀷
-	 */
-	private String sortType;
-
-	/**
-	 * 鏍戝舰鐨勪笂绾у睘鎬�
-	 */
-	private String parentFieldName;
-
-	/**
-	 * 涓婄骇灞炴�у�煎搴斿睘鎬�
-	 */
-	private String parentUsedField;
-
-	/**
-	 * 鏍硅妭鐐圭殑鍊�
-	 */
-	private String parentValue;
-
-	/**
-	 * 鏍戝姞杞芥柟寮�
-	 */
-	private String loadType;
-
-	/**
-	 * 鏄惁鍙兘閫夋嫨鍙跺瓙鑺傜偣
-	 */
-	private String onlyLeaf;
 
 	/**
 	 * 鏄剧ず鐨勫睘鎬�-鏄剧ず瀵硅薄
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeShowFieldConfigVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeShowFieldConfigVO.java
index ea63cc9..e00a345 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeShowFieldConfigVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeShowFieldConfigVO.java
@@ -19,11 +19,6 @@
 	private static final long serialVersionUID = -71135592796848692L;
 
 	/**
-	 * 鍏宠仈鐨勫弬鐓ч厤缃甶d
-	 */
-	private String configOid;
-
-	/**
 	 * 瀛楁绫诲瀷-鏄剧ず鏂囨湰
 	 */
 	private String fieldTypeText;
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeSrchCondConfigVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeSrchCondConfigVO.java
index 6002bef..f804e38 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeSrchCondConfigVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/CodeSrchCondConfigVO.java
@@ -20,11 +20,6 @@
 	private static final long serialVersionUID = -51655155561881523L;
 
 	/**
-	 * 鍏宠仈鐨勫弬鐓ч厤缃甶d
-	 */
-	private String configOid;
-
-	/**
 	 * 绛涢�夌被鍨�
 	 */
 	private String filterTypeText;
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java
index 050798b..8898595 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java
@@ -291,4 +291,64 @@
 	 */
 	private String parentQueryAttr;
 
+	@Override
+	public String toString() {
+		return "CodeClassifyTemplateAttrVO{" +
+			"classifyTemplateOid='" + classifyTemplateOid + '\'' +
+			", classifyTemplateOidName='" + classifyTemplateOidName + '\'' +
+			", classifyAttributeOid='" + classifyAttributeOid + '\'' +
+			", classifyAttributeOidName='" + classifyAttributeOidName + '\'' +
+			", attributeDataType='" + attributeDataType + '\'' +
+			", attributeDataTypeText='" + attributeDataTypeText + '\'' +
+			", keyAttrFlag='" + keyAttrFlag + '\'' +
+			", queryAttrFlag='" + queryAttrFlag + '\'' +
+			", seniorQueryAttrFlag='" + seniorQueryAttrFlag + '\'' +
+			", sameRepeatAttrFlag='" + sameRepeatAttrFlag + '\'' +
+			", sortAttrFlag='" + sortAttrFlag + '\'' +
+			", qrcodeFlag='" + qrcodeFlag + '\'' +
+			", barcodeFlag='" + barcodeFlag + '\'' +
+			", componentRule='" + componentRule + '\'' +
+			", verifyRule='" + verifyRule + '\'' +
+			", classifyInvokeLevel='" + classifyInvokeLevel + '\'' +
+			", classifyInvokeAttr='" + classifyInvokeAttr + '\'' +
+			", classifyInvokeAttrName='" + classifyInvokeAttrName + '\'' +
+			", classifyInvokeEditFlag='" + classifyInvokeEditFlag + '\'' +
+			", orderNum=" + orderNum +
+			", formDisplayFlag='" + formDisplayFlag + '\'' +
+			", tableDisplayFlag='" + tableDisplayFlag + '\'' +
+			", attributeGroup='" + attributeGroup + '\'' +
+			", enumId='" + enumId + '\'' +
+			", enumName='" + enumName + '\'' +
+			", enumEditFlag='" + enumEditFlag + '\'' +
+			", referBtmId='" + referBtmId + '\'' +
+			", referBtmName='" + referBtmName + '\'' +
+			", referConfig='" + referConfig + '\'' +
+			", requireFlag='" + requireFlag + '\'' +
+			", readOnlyFlag='" + readOnlyFlag + '\'' +
+			", controlLength=" + controlLength +
+			", formDisplayStyle='" + formDisplayStyle + '\'' +
+			", tableDisplayStyle='" + tableDisplayStyle + '\'' +
+			", formHref='" + formHref + '\'' +
+			", tableHref='" + tableHref + '\'' +
+			", precisionLength=" + precisionLength +
+			", scaleLength=" + scaleLength +
+			", valueArea='" + valueArea + '\'' +
+			", codeDateFormat='" + codeDateFormat + '\'' +
+			", tableDisplayJs='" + tableDisplayJs + '\'' +
+			", textAreaFlag='" + textAreaFlag + '\'' +
+			", imageFlag='" + imageFlag + '\'' +
+			", defaultValue='" + defaultValue + '\'' +
+			", prefixValue='" + prefixValue + '\'' +
+			", suffixValue='" + suffixValue + '\'' +
+			", filterSourceAttr='" + filterSourceAttr + '\'' +
+			", filterSourceAttrName='" + filterSourceAttrName + '\'' +
+			", enumString='" + enumString + '\'' +
+			", attrTableWidth=" + attrTableWidth +
+			", explain='" + explain + '\'' +
+			", libraryIdentification='" + libraryIdentification + '\'' +
+			", parentCode='" + parentCode + '\'' +
+			", parentName='" + parentName + '\'' +
+			", parentQueryAttr='" + parentQueryAttr + '\'' +
+			'}';
+	}
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ClassifyVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ClassifyVO.java
new file mode 100644
index 0000000..c388477
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ClassifyVO.java
@@ -0,0 +1,141 @@
+package com.vci.ubcs.code.vo.webserviceModel.coderule;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
+
+@XStreamAlias("classify")
+public class ClassifyVO {
+    /**
+     * 鍒嗙被id
+     */
+    @XStreamAsAttribute
+    private String id;
+    /***
+     * 鍒嗙被鍚嶇О
+     */
+    @XStreamAsAttribute
+    private String name;
+    /***
+     * 鐖惰妭鐐筰d
+     */
+    @XStreamAsAttribute
+    private String pid;
+    /***
+     * 鍒嗙被浠e彿
+     */
+    @XStreamAsAttribute
+    private String classCode;
+    /***
+     * 鎻忚堪
+     */
+    @XStreamAsAttribute
+    private  String description;
+    /***
+     * 鍒嗙被閾炬帴璺緞
+     */
+    @XStreamAsAttribute
+    private  String fullPathName;
+    /***
+     * 鍒嗙被鐘舵��
+     */
+    @XStreamAsAttribute
+    private String lcStatus;
+	/***
+	 * 瑙勫垯id
+	 */
+	@XStreamAsAttribute
+	private String codeRuleId;
+
+	/***
+	 * 鏄惁涓哄彾瀛愯妭鐐�
+	 */
+	@XStreamAsAttribute
+	private boolean isLeaf;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getPid() {
+        return pid;
+    }
+
+    public void setPid(String pid) {
+        this.pid = pid;
+    }
+
+    public String getClassCode() {
+        return classCode;
+    }
+
+    public void setClassCode(String classCode) {
+        this.classCode = classCode;
+    }
+
+    public String getDescription() {
+        return description;
+    }
+
+    public void setDescription(String description) {
+        this.description = description;
+    }
+
+    public String getFullPathName() {
+        return fullPathName;
+    }
+
+    public void setFullPathName(String fullPathName) {
+        this.fullPathName = fullPathName;
+    }
+
+    public String getLcStatus() {
+        return lcStatus;
+    }
+
+    public void setLcStatus(String lcStatus) {
+        this.lcStatus = lcStatus;
+    }
+
+	public String getCodeRuleId() {
+		return codeRuleId;
+	}
+
+	public void setCodeRuleId(String codeRuleId) {
+		this.codeRuleId = codeRuleId;
+	}
+
+	public boolean isLeaf() {
+		return isLeaf;
+	}
+
+	public void setLeaf(boolean leaf) {
+		isLeaf = leaf;
+	}
+
+	@Override
+	public String toString() {
+		return "ClassifyVO{" +
+			"id='" + id + '\'' +
+			", name='" + name + '\'' +
+			", pid='" + pid + '\'' +
+			", classCode='" + classCode + '\'' +
+			", description='" + description + '\'' +
+			", fullPathName='" + fullPathName + '\'' +
+			", lcStatus='" + lcStatus + '\'' +
+			", codeRuleId='" + codeRuleId + '\'' +
+			", isLeaf=" + isLeaf +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/CodeRuleVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/CodeRuleVO.java
new file mode 100644
index 0000000..8ab2193
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/CodeRuleVO.java
@@ -0,0 +1,5 @@
+package com.vci.ubcs.code.vo.webserviceModel.coderule;
+
+public class CodeRuleVO {
+//	private String
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/LibraryVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/LibraryVO.java
new file mode 100644
index 0000000..14b4b0f
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/LibraryVO.java
@@ -0,0 +1,52 @@
+package com.vci.ubcs.code.vo.webserviceModel.coderule;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
+import com.thoughtworks.xstream.annotations.XStreamImplicit;
+
+import java.util.List;
+
+@XStreamAlias("library ")
+public class LibraryVO {
+    @XStreamAsAttribute
+    private String id;
+    @XStreamAsAttribute
+    private  String name;
+    @XStreamImplicit
+    private List<ClassifyVO>classify;
+
+	private List<CodeRuleVO> coderule;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public List<ClassifyVO> getClassify() {
+        return classify;
+    }
+
+    public void setClassify(List<ClassifyVO> classify) {
+        this.classify = classify;
+    }
+
+    @Override
+    public String toString() {
+        return "LibraryVO{" +
+                "id='" + id + '\'' +
+                ", name='" + name + '\'' +
+                ", classify=" + classify +
+                '}';
+    }
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryClassifyVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryClassifyVO.java
new file mode 100644
index 0000000..a5680d8
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryClassifyVO.java
@@ -0,0 +1,23 @@
+package com.vci.ubcs.code.vo.webserviceModel.coderule;
+
+public class QueryClassifyVO {
+    /***
+     *
+     */
+    private QueryData data;
+
+    public QueryData getData() {
+        return data;
+    }
+
+    public void setData(QueryData data) {
+        this.data = data;
+    }
+
+    @Override
+    public String toString() {
+        return "QueryClassifyVO{" +
+                "data=" + data +
+                '}';
+    }
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryData.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryData.java
new file mode 100644
index 0000000..a62ecb4
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryData.java
@@ -0,0 +1,45 @@
+package com.vci.ubcs.code.vo.webserviceModel.coderule;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
+import com.vci.ubcs.code.vo.webserviceModel.apply.UserVO;
+
+@XStreamAlias("data")
+public class QueryData {
+    @XStreamAsAttribute
+    private String systemId;
+    private UserVO user;
+    private QueryLibraryVO library ;
+    public QueryLibraryVO getLibrary() {
+        return library;
+    }
+
+    public void setLibrary(QueryLibraryVO library) {
+        this.library = library;
+    }
+
+    public String getSystemId() {
+        return systemId;
+    }
+
+    public void setSystemId(String systemId) {
+        this.systemId = systemId;
+    }
+
+	public UserVO getUser() {
+		return user;
+	}
+
+	public void setUser(UserVO user) {
+		this.user = user;
+	}
+
+	@Override
+    public String toString() {
+        return "QueryData{" +
+                "systemId='" + systemId + '\'' +
+                ", library=" + library +
+                '}';
+    }
+}
+
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryLibraryVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryLibraryVO.java
new file mode 100644
index 0000000..614b60c
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/QueryLibraryVO.java
@@ -0,0 +1,39 @@
+package com.vci.ubcs.code.vo.webserviceModel.coderule;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
+import com.thoughtworks.xstream.annotations.XStreamImplicit;
+
+import java.util.List;
+
+@XStreamAlias("library")
+public class QueryLibraryVO {
+    @XStreamAsAttribute
+    private String id;
+    @XStreamImplicit
+    private List<String> classifyid;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public List<String> getClassifyid() {
+        return classifyid;
+    }
+
+    public void setClassifyid(List<String> classifyid) {
+        this.classifyid = classifyid;
+    }
+
+    @Override
+    public String toString() {
+        return "LibraryVO{" +
+                "id='" + id + '\'' +
+                ", classifyid=" + classifyid +
+                '}';
+    }
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ResultClassifyVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ResultClassifyVO.java
new file mode 100644
index 0000000..b514fa9
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ResultClassifyVO.java
@@ -0,0 +1,21 @@
+package com.vci.ubcs.code.vo.webserviceModel.coderule;
+
+public class ResultClassifyVO {
+
+   private ResultData resultData;
+
+    public ResultData getResultData() {
+        return resultData;
+    }
+
+    public void setResultData(ResultData resultData) {
+        this.resultData = resultData;
+    }
+
+    @Override
+    public String toString() {
+        return "ResultClassifyVO{" +
+                "resultData=" + resultData +
+                '}';
+    }
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ResultData.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ResultData.java
new file mode 100644
index 0000000..2164004
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ResultData.java
@@ -0,0 +1,45 @@
+package com.vci.ubcs.code.vo.webserviceModel.coderule;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+
+@XStreamAlias("data")
+public class ResultData {
+    @XStreamAlias("errorid")
+    private  String errorid;
+    @XStreamAlias("msg")
+    private String msg;
+    private LibraryVO library ;
+
+    public LibraryVO getLibrary() {
+        return library;
+    }
+
+    public void setLibrary(LibraryVO library) {
+        this.library = library;
+    }
+
+    public String getErrorid() {
+        return errorid;
+    }
+
+    public void setErrorid(String errorid) {
+        this.errorid = errorid;
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+
+    @Override
+    public String toString() {
+        return "ResultData{" +
+                "code='" + errorid + '\'' +
+                ", msg='" + msg + '\'' +
+                ", library=" + library +
+                '}';
+    }
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/BtmTypeCache.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/BtmTypeCache.java
index 799f1fa..1243815 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/BtmTypeCache.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/BtmTypeCache.java
@@ -8,7 +8,6 @@
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.SpringUtil;
 import org.springblade.core.tool.utils.StringPool;
-
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/EnumCache.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/EnumCache.java
index ba9f2ac..cc8674a 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/EnumCache.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/cache/EnumCache.java
@@ -73,7 +73,6 @@
 		return getValue(name.getName(), nameChild);
 	}
 
-
 	/**
 	 * 鑾峰彇瀛楀吀鍊�
 	 *
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Attribute.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Attribute.java
index aa2c7cb..d808be2 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Attribute.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Attribute.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -36,6 +37,7 @@
 	 */
 	@ApiModelProperty(value = "涓婚敭")
 	@NotNull
+	@TableId
 	private String oid;
 
 	/**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmType.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmType.java
index fa1e56c..89e6ada 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmType.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmType.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -27,6 +28,7 @@
     /**
      * 涓婚敭
      */
+	@TableId
     private String oid;
 
     /**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmTypeAttribute.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmTypeAttribute.java
index 9d902d0..760b6c1 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmTypeAttribute.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/BtmTypeAttribute.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -25,6 +26,7 @@
     /**
      * 涓婚敭
      */
+	@TableId
     private String oid;
 
     /**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleEvent.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleEvent.java
index 73adf55..0c41e84 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleEvent.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleEvent.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -26,6 +27,7 @@
     /**
      * 涓婚敭
      */
+	@TableId
     private String oid;
 
     /**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLine.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLine.java
index 88fd971..1cb65c1 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLine.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLine.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -61,12 +62,13 @@
     /**
      * 涓婚敭
      */
+	@TableId
     private String oid;
 
     /**
      * 涓氬姟绫诲瀷鍚嶇О
      */
-    private String btmname;
+    private String btmName;
 
     /**
      * 鎷ユ湁鑰�
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLineEvent.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLineEvent.java
index ad1f478..2f8d1cf 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLineEvent.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleLineEvent.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -25,6 +26,7 @@
     /**
      * 涓婚敭
      */
+	@TableId
     private String oid;
 
     /**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleRule.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleRule.java
index bebe70c..6aed6d3 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleRule.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LifeCycleRule.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -26,6 +27,7 @@
     /**
      * 涓婚敭
      */
+	@TableId
     private String oid;
 
     /**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java
index 12f4ef1..c8df463 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -24,6 +25,7 @@
     /**
      * 涓婚敭
      */
+	@TableId
     private String oid;
 
     /**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkTypeAttribute.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkTypeAttribute.java
index af7355e..785b2f9 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkTypeAttribute.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkTypeAttribute.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -26,6 +27,7 @@
     /**
      * 涓婚敭
      */
+	@TableId
     private String oid;
 
     /**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/ModifyAttributeInfo.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/ModifyAttributeInfo.java
index d85eb5c..eb5a27b 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/ModifyAttributeInfo.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/ModifyAttributeInfo.java
@@ -1,5 +1,6 @@
 package com.vci.ubcs.omd.entity;
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -105,6 +106,7 @@
 	/**
 	 * 涓婚敭
 	 */
+	@TableId
 	private String oid;
 
 	/**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/RevisionRule.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/RevisionRule.java
index 12964ad..fb466bc 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/RevisionRule.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/RevisionRule.java
@@ -1,5 +1,6 @@
 package com.vci.ubcs.omd.entity;
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -24,6 +25,7 @@
 	/**
 	 * 涓婚敭
 	 */
+	@TableId
 	private String oid;
 
 	/**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Status.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Status.java
index 5bf9899..0bce9c4 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Status.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/Status.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.omd.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
@@ -27,6 +28,7 @@
 	/**
 	 * 涓婚敭
 	 */
+	@TableId
 	private String oid;
 
 	/**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/enums/EnumEnum.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/enums/EnumEnum.java
index bfa9ab6..283d057 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/enums/EnumEnum.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/enums/EnumEnum.java
@@ -88,6 +88,59 @@
 	 * 鐢ㄦ埛骞冲彴
 	 */
 	USER_TYPE("user_type"),
+	/**
+	 * codeSecType 鐮佸�肩被鍨�
+	 */
+	CODE_SEC_TYPE("codeSecType"),
+	/**
+	 * 灞傜骇鐮佹鐨勫眰绾х被鍨�
+	 */
+	CODE_LEVEL_TYPE("codeLevelType"),
+	/**
+	 * 鐮佹闀垮害绫诲瀷
+	 */
+	CODE_SEC_LENGTH("codeSecLength"),
+	/**
+	 * 鍊兼埅鍙栫被鍨�
+	 */
+	CODE_CUT_TYPE("codeCutType"),
+	/**
+	 * 鍊兼埅鍙栫被鍨�
+	 */
+	CODE_GET_VALUE_TYPE("codeGetValueType"),
+	/**
+	 * 鍒嗙被涓殑娴佺▼妯℃澘鐢ㄩ��
+	 */
+	CODE_CLASSIFY_PROCESS_USE("codeClassifyProcessUse"),
+	/**
+	 * 灞炴�х被鍨�
+	 */
+	VCO_FIELD_TYPE("vciFieldType"),
+	/**
+	 * 绐楀彛绫诲瀷
+	 */
+	CODE_REFER_CONFIG_TYPE("codeReferConfigType"),
+	/**
+	 * 缂栫爜瑙勫垯鐨勭敓鍛藉懆鏈�
+	 */
+	CODE_RULE_LC("codeRuleLC"),
+	/**
+	 * 鍙傜収閰嶇疆涓敤鍒扮殑瀛楁绫诲瀷
+	 */
+	CODE_REFER_CONFIG_FIELD_TYPE("codeReferConfigFieldType"),
+	/**
+	 * 鍙傜収閰嶇疆涓敤鍒扮殑鍒楀浐瀹氫綅缃�
+	 */
+	CODE_REFER_CONFIG_FIXED("codeReferConfigFixed"),
+	/**
+	 * 绛涢�夌被鍨�
+	 */
+	CODE_REFER_CONFIG_FILTER_TYPE("codeReferConfigFilterType"),
+	/**
+	 * 妯℃澘鐨勬寜閽敤閫�
+	 */
+	CODE_TEMPLATE_BUTTON_USE("codeTemplateButtonUse"),
+
 	;
 
 	final String name;
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IRevisionRuleFallback.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IRevisionRuleFallback.java
index ebd891e..68ab067 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IRevisionRuleFallback.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IRevisionRuleFallback.java
@@ -5,6 +5,7 @@
 import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
+import org.springframework.stereotype.Component;
 
 import java.util.Collection;
 import java.util.List;
@@ -16,6 +17,7 @@
  * @author LiHang
  * @date 2023/5/22
  */
+@Component
 public class IRevisionRuleFallback implements IRevisionRuleClient{
 	/**
 	 * 鑾峰彇鐗堟湰瑙勫垯璇︽儏淇℃伅
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/enumpack/NewAppConstantEnum.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/enumpack/NewAppConstantEnum.java
index 8aae482..217976b 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/enumpack/NewAppConstantEnum.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/enumpack/NewAppConstantEnum.java
@@ -7,7 +7,7 @@
 	/**
 	 * 缂栫爜瑙勫垯锛屾湇鍔″惎鍔ㄥ悕
 	 */
-	APPLICATION_NAME_CODE(AppConstant.APPLICATION_NAME_CODE,"缂栫爜瑙勫垯鏈嶅姟"),
+	APPLICATION_NAME_CODE(AppConstant.APPLICATION_NAME_CODE,"涓绘暟鎹�"),
 	;
 
 	/**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java
index 9252a9a..e12fc17 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java
@@ -26,6 +26,8 @@
 	private String id;
 
 	private String name;
+	//闆嗗洟鐮�
+	//private String groupcode;
 
 	private String description;
 
@@ -340,6 +342,14 @@
 		this.lctid = lctid;
 	}
 
+/*	public String getGroupcode() {
+		return this.groupcode;
+	}
+
+	public void setGroupcode(String groupcode) {
+		this.groupcode = groupcode;
+	}*/
+
 	public Map<String, String> getData() {
 		return this.data;
 	}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/MdmBtmTypeConstant.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/MdmBtmTypeConstant.java
new file mode 100644
index 0000000..ed3f9a8
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/MdmBtmTypeConstant.java
@@ -0,0 +1,201 @@
+package com.vci.ubcs.starter.util;
+
+/**
+ * 涓绘暟鎹浉鍏崇殑涓氬姟绫诲瀷缂栧彿
+ */
+public class MdmBtmTypeConstant {
+
+
+	/**
+	 * 鐘舵��
+	 */
+	public static final String CODE_STATUS_FILED = "lcstatus";
+
+	/**
+	 * 闆嗗洟鐮佺殑瀛楁
+	 */
+	public static final String CODE_GROUP_FIELD = "groupcode";
+
+	/**
+	 * 鍒嗙被鐨勪富閿瓧娈�
+	 */
+	public static final String CODE_CLASSIFY_OID_FIELD = "codeclsfid";
+    /**
+     * 涓婚搴撳垎绫�
+     */
+    public static final String CODE_CLASSIFY = "codeclassify";
+    /**
+     * 涓婚搴撳垎绫诲寘鍚殑妯℃澘
+     */
+    public static final String CODE_CLASSIFY_TEMPLATE = "codeclstemplate";
+    /**
+     * 涓婚搴撳垎绫绘ā鏉� 鍖呭惈鐨勫睘鎬�
+     */
+    public static final String CODE_CLASSIFY_TEMPLATE_ATTR = "codeclstempattr";
+
+    /**
+     * 涓绘暟鎹腑鐨勬寜閽墿灞�
+     */
+    public static final String CODE_BUTTON = "codebutton";
+    /**
+     * 涓绘暟鎹腑鐨勬ā鏉垮叧鑱旂殑鎸夐挳
+     */
+    public static final String CODE_TEMPLATE_BUTTON = "codetempbutton";
+    /**
+     * 涓绘暟鎹腑鐨勭紪鐮佽鍒�
+     */
+    public static final String CODE_RULE = "coderule";
+
+
+    /**
+     * 鍏抽敭灞炴�у垽鏂噸澶�
+     */
+    public static final String CODE_KEY_ATTR_REPEAT_RULE = "codekeyattrrepeat";
+
+    /**
+     * 鐩镐技鏌ヨ瑙勫垯
+     */
+    public static final String CODE_RESEMBLE_RULE = "coderesemblerule";
+    /**
+     * 妯℃澘闃舵
+     */
+    public static final String CODE_TEMPLATE_PHASE = "codetempphase";
+    /**
+     * 闃舵鐨勫睘鎬�
+     */
+    public static final String CODE_PHASE_ATTR = "codephaseattr";
+	/**
+	 * 闃舵鐨勫睘鎬�
+	 */
+	public static final String CODE_PHASE_ATTR_TABLENAME = "code_phaseattr";
+
+    /**
+     * 涓绘暟鎹垎绫讳娇鐢ㄧ殑娴佺▼妯℃澘
+     */
+    public static final String CODE_CLASSIFY_PROCESS_TEMPLATE = "codeclsflowtemp";
+
+    /**
+     *鍒嗙被鐨勬ā鏉垮搴旀祦绋嬩腑鐨勯樁娈甸厤缃�
+     */
+    public static final String CODE_CLASSIFY_PROCESS_PHASE = "codeclsflowphase" ;
+
+    /**
+     * 鍥哄畾鐮佺殑鐮佸��
+     */
+    public static final String CODE_FIXED_VALUE = "codefixedvalue";
+
+    /**
+     * 鍒嗙被鐮佺殑鐮佸��
+     */
+    public static final String CODE_CLASSIFY_VALUE = "codeclassifyvalue";
+
+    /**
+     * 鏄犲皠瑙勫垯
+     */
+    public static final String CODE_TEMPLATE_MAP = "codetempmap";
+    /**
+     * 鏄犲皠瑙勫垯鏄庣粏
+     */
+    public static final String CODE_TEMPLATE_MAP_ITEM = "codetempmapitem";
+    /**
+     * 鐮佹鍩虹淇℃伅
+     */
+    public static final String CODE_BASIC_SEC = "codebasicsec";
+
+    /**
+     * 鍚屼箟璇嶉厤缃�
+     */
+    public static final String CODE_SYNONYM = "codesynonym";
+    /**
+     * 鍏ㄩ儴鐨勭爜鍊�
+     */
+    public static final String CODE_ALL_CODE = "codeallcode";
+
+    /**
+     * 缂栫爜瑙勫垯鐨勬祦姘村��
+     */
+    public static final String CODE_SERIAL_VALUE = "codeserialvalue" ;
+
+    /**
+     * 璧勬簮瀵规帴閫氱煡銆佹煡璇㈡帴鍙f棩蹇�
+     */
+    public static final String DOCKING_LOGE = "codedockinglog";
+
+    /**
+     * 璧勬簮瀵规帴瑙﹀彂鍣ㄦ彃鍏ヨ鎺ㄩ�佺殑鏁版嵁
+     */
+    public static final String DOCKING_DATA = "codedockingdata";
+
+    /**
+     * 璧勬簮瀵规帴瑙﹀彂鍣ㄦ彃鍏ヨ鎺ㄩ�佺殑鏁版嵁鍜岀郴缁熶俊鎭�
+     */
+    public static final String DOCKING_TASK = "codedockingtask";
+
+    /**
+     * 棰勭敵璇锋暟鎹�
+     */
+    public static final String DOCKING_PRE_APPLY_DATA = "dockingpadata";
+
+    /**
+     * 棰勭敵璇锋暟鎹俊鎭�
+     */
+    public static final String DOCKING_PRE_APPLY_DATA_INFO = "dockingpadatainfo";
+
+    /**
+     * 绯荤粺闆嗘垚鐨勭郴缁�
+     */
+    public static final String SYS_INT_BASE = "sysintbase";
+    /**
+     * 绯荤粺闆嗘垚鎺ュ彛鐨勫熀纭�淇℃伅
+     */
+    public static final String SYS_INT_INFO = "sysintinfo";
+
+    /**
+     * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佹柟寮�
+     */
+    public static final String SYS_INT_AUTHORITY = "sysintauthority";
+
+    /**
+     * 绯荤粺闆嗘垚鎺ュ彛鐨勫弬鏁�,http瀵瑰簲鐨刾aramter
+     */
+    public static final String SYS_INT_PARAMTERY = "sysintparemter";
+
+    /**
+     * 绯荤粺闆嗘垚鎺ュ彛鐨勮璇佷俊鎭�,http瀵瑰簲鐨刪eader,webserver瀵瑰簲鐨勮处鍙峰瘑鐮佺瓑淇℃伅
+     */
+    public static final String SYS_INT_HEADER = "sysintheader";
+
+
+    /**
+     * 闆嗘垚灞炴�ф槧灏勫叧绯讳笟鍔$被鍨�
+     */
+    public static final String DOCKING_PRE_JINTEGMAPCONFIG = "jintegmapconfig";
+
+    /**
+     * 闆嗘垚闆嗗洟鍒嗙被涓氬姟绫诲瀷
+     */
+    public static final String DOCKING_PRE_JCLASSIFY = "jclassify";
+    /**
+     * 闆嗘垚闆嗗洟妯″瀷灞炴�т笟鍔$被鍨�
+     */
+    public static final String DOCKING_PRE_JMETAATRR = "jmetaattr";
+
+    /**
+     * 闆嗘垚灞炴�у彇鍊艰寖鍥村叧绯讳笟鍔$被鍨�
+     */
+    public static final String DOCKING_PRE_JRANGE = "jrange";
+
+
+	/**
+	 * 闆嗘垚闆嗗洟鐢宠鍗曚笟鍔$被鍨�
+	 */
+	public static final String DOCKING_PRE_JAPPLYFORM = "japplyform";
+
+
+
+	/**
+	 * 闆嗘垚闆嗗洟妯″瀷灞炴�т笟鍔$被鍨�
+	 */
+	public static final String DOCKING_PRE_JVIEWMODEL = "jviewmodel";
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java
index a4e1111..7bf4b8b 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java
@@ -7,6 +7,7 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.serializer.SerializerFeature;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.vci.ubcs.starter.exception.VciBaseException;
 import com.vci.ubcs.starter.web.enumpck.BooleanEnum;
@@ -19,7 +20,9 @@
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.ResourceUtils;
 
+import java.beans.BeanInfo;
 import java.beans.IntrospectionException;
+import java.beans.Introspector;
 import java.beans.PropertyDescriptor;
 import java.io.File;
 import java.io.IOException;
@@ -32,6 +35,8 @@
 import java.math.BigInteger;
 import java.net.InetAddress;
 import java.net.NetworkInterface;
+import java.sql.Timestamp;
+import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -1244,5 +1249,118 @@
 
 	}
 
+	/**
+	 * 灏� JavaBean瀵硅薄杞寲涓� Map
+	 * @author wyply115
+	 * @param bean 瑕佽浆鍖栫殑绫诲瀷
+	 * @return Map瀵硅薄
+	 * @version 2016骞�3鏈�20鏃� 11:03:01
+	 */
+	public static Map convertBean2Map(Object bean) throws Exception {
+		Class type = bean.getClass();
+		Map returnMap = new HashMap();
+		BeanInfo beanInfo = Introspector.getBeanInfo(type);
+		PropertyDescriptor[] propertyDescriptors = beanInfo
+			.getPropertyDescriptors();
+		Field[] declaredFields = type.getDeclaredFields();
+		String existField = "";
+		for (Field declaredField : declaredFields) {
+			declaredField.setAccessible(true);
+
+			// 鑾峰彇瀛楁鐨勫��
+			boolean isTableField = declaredField.isAnnotationPresent(TableField.class);
+			if (isTableField) {
+				TableField tableField = declaredField.getAnnotation(TableField.class);
+				Boolean fieldValue = tableField.exist();
+				if(fieldValue == false){
+					existField += declaredField.getName().toLowerCase()+",";
+				}
+			}
+		}
+
+		for (int i = 0, n = propertyDescriptors.length; i <n ; i++) {
+			PropertyDescriptor descriptor = propertyDescriptors[i];
+			String propertyName = descriptor.getName();
+
+			if (!propertyName.equals("class") &&
+				((!"".equals(existField) && !existField.contains(propertyName.toLowerCase()+","))||"data".equals(propertyName))) {
+				Method readMethod = descriptor.getReadMethod();
+				Object result = readMethod.invoke(bean, new Object[0]);
+
+				if (result != null) {
+					if ("data".equals(propertyName)){
+						returnMap.putAll((Map) result);
+					}else {
+						returnMap.put(propertyName, result);
+					}
+				} else {
+					returnMap.put(propertyName, "");
+				}
+			}
+		}
+		return returnMap;
+	}
+
+	public static <T> List<T> mapToBean(List<Map> maps, Class<T> tClass) {
+		List<T> beanList = new ArrayList<>();
+		try {
+			for (Map map : maps) {
+					T t = tClass.newInstance();
+					BeanInfo beanInfo = Introspector.getBeanInfo(tClass);
+					PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors();
+
+					for (PropertyDescriptor property : propertyDescriptors) {
+
+						String key = property.getName();
+						if ("class".equals(key)) {
+							continue;
+						}
+
+//						String sqlField = camelToUnderscore(key);
+
+
+						if (map.containsKey(key.toUpperCase())) {
+							try {
+								Object value = map.get(key.toUpperCase());
+								// 寰楀埌property瀵瑰簲鐨剆etter鏂规硶
+								Method setter = property.getWriteMethod();
+								Class<?> type = property.getPropertyType();
+								// 寮鸿浆涓哄瓧娈电殑绫诲瀷锛屼笉闇�瑕佹椂鍙互鍘婚櫎锛屼緷璧朿ommons-beanutilss-beanutils
+								//Object convert = ConvertUtils.convert(String.valueOf(value), type);
+								//setter.invoke(t, convert);
+								setter.invoke(t, value);
+							} catch (Exception e) {
+								throw new RuntimeException("銆愯祴鍊煎紓甯搞��", e);
+							}
+						}
+
+					}
+					beanList.add(t);
+			}
+		} catch (Exception e) {
+			throw new RuntimeException("銆怣ap杞崲瀹炰綋寮傚父銆�", e);
+		}
+		return beanList;
+}
+
+	public static String camelToUnderscore(String name) {
+		if (name == null && name.length() <= 0) {
+			return name;
+		}
+		StringBuilder sb = new StringBuilder();
+		String lowerName = name.toLowerCase();
+		for (int i = 0; i < lowerName.length(); i++) {
+			String nameChar = name.substring(i, i + 1);
+			String lowerChar = lowerName.substring(i, i + 1);
+			if (!nameChar.equals(lowerChar)) {
+				sb.append("_").append(lowerChar);
+			} else {
+				sb.append(nameChar);
+			}
+		}
+
+		return sb.toString();
+	}
+
 }
 
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/pom.xml b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/pom.xml
new file mode 100644
index 0000000..3331c2c
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/pom.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>ubcs-service-api</artifactId>
+        <groupId>com.vci.ubcs</groupId>
+        <version>3.0.1.RELEASE</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>ubcs-webservice-api</artifactId>
+    <name>${project.artifactId}</name>
+    <version>3.0.1.RELEASE</version>
+    <packaging>jar</packaging>
+
+    <dependencies>
+        <dependency>
+            <groupId>com.vci.ubcs</groupId>
+            <artifactId>ubcs-util-api</artifactId>
+            <version>3.0.1.RELEASE</version>
+        </dependency>
+        <dependency>
+            <groupId>com.vci.ubcs</groupId>
+            <artifactId>ubcs-code-api</artifactId>
+            <version>3.0.1.RELEASE</version>
+        </dependency>
+        <dependency>
+            <groupId>com.vci.ubcs</groupId>
+            <artifactId>ubcs-util-api</artifactId>
+            <version>3.0.1.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.thoughtworks.xstream</groupId>
+            <artifactId>xstream</artifactId>
+        </dependency>
+    </dependencies>
+
+</project>
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreApplyFormDTO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreApplyFormDTO.java
similarity index 65%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreApplyFormDTO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreApplyFormDTO.java
index 049e5af..4d2b304 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreApplyFormDTO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreApplyFormDTO.java
@@ -1,6 +1,7 @@
-package com.vci.ubcs.code.dto;
+package com.vci.ubcs.code.webservice.dto;
 
-import com.vci.ubcs.code.vo.pagemodel.BaseModelVO;
+
+import com.vci.ubcs.code.webservice.vo.BaseModelVO;
 
 /**
  * 璁板綍闆嗘垚灞炴暟鎹敵璇穒d
@@ -16,6 +17,11 @@
 	/***
 	 * 闆嗗洟缂栫爜
 	 */
+	private String groupCode;
+	/***
+	 * 閿欒鏍囪瘑鐮�
+	 */
+
 	private String code;
 
 	/***
@@ -34,6 +40,11 @@
 	 * 娑堟伅
 	 */
 	private String msg;
+
+	/**
+	 * 鐢宠鍗曠被鍨�1:鐢宠锛�2锛氭洿鏀�
+	 */
+	private  String operationType;
 
 	public String getCode() {
 		return code;
@@ -75,14 +86,32 @@
 		this.msg = msg;
 	}
 
+	public String getOperationType() {
+		return operationType;
+	}
+
+	public void setOperationType(String operationType) {
+		this.operationType = operationType;
+	}
+
+	public String getGroupCode() {
+		return groupCode;
+	}
+
+	public void setGroupCode(String groupCode) {
+		this.groupCode = groupCode;
+	}
+
 	@Override
 	public String toString() {
-		return "DockingPreApplyCodeFormVO{" +
-			"code='" + code + '\'' +
+		return "DockingPreApplyFormDTO{" +
+			"groupCode='" + groupCode + '\'' +
+			", code='" + code + '\'' +
 			", content='" + content + '\'' +
 			", dataOid='" + dataOid + '\'' +
 			", dataBtmName='" + dataBtmName + '\'' +
 			", msg='" + msg + '\'' +
+			", operationType='" + operationType + '\'' +
 			'}';
 	}
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreAttrMappingDTO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreAttrMappingDTO.java
similarity index 96%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreAttrMappingDTO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreAttrMappingDTO.java
index 3484adf..c898dad 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreAttrMappingDTO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreAttrMappingDTO.java
@@ -1,8 +1,8 @@
-package com.vci.ubcs.code.dto;
+package com.vci.ubcs.code.webservice.dto;
 
 
-import com.vci.ubcs.code.vo.pagemodel.BaseModelVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
+import com.vci.ubcs.code.webservice.vo.BaseModelVO;
+import com.vci.ubcs.code.webservice.vo.DockingPreAttrRangeVO;
 
 import java.util.List;
 
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreAttrRangeDTO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreAttrRangeDTO.java
similarity index 94%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreAttrRangeDTO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreAttrRangeDTO.java
index 1039f65..382928b 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreAttrRangeDTO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreAttrRangeDTO.java
@@ -1,6 +1,6 @@
-package com.vci.ubcs.code.dto;
+package com.vci.ubcs.code.webservice.dto;
 
-import com.vci.ubcs.code.vo.pagemodel.BaseModelVO;
+import com.vci.ubcs.code.webservice.vo.BaseModelVO;
 
 /**
  * 璁板綍闆嗘垚灞炴�у彇鍊艰寖鍥撮厤缃�
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreClassifyDTO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreClassifyDTO.java
similarity index 68%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreClassifyDTO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreClassifyDTO.java
index 3a3403a..1021e7e 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreClassifyDTO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreClassifyDTO.java
@@ -1,6 +1,8 @@
-package com.vci.ubcs.code.dto;
+package com.vci.ubcs.code.webservice.dto;
 
-import com.vci.ubcs.code.vo.pagemodel.BaseModelVO;
+import com.vci.ubcs.code.webservice.vo.BaseModelVO;
+
+import java.util.List;
 
 /***
  * 璁板綍闆嗗洟鍒嗙被淇℃伅
@@ -29,6 +31,10 @@
 	 * 鐖剁骇鑺傜偣
 	 */
 	private  String pid;
+	/**
+	 * 闆嗗洟鍒嗙被鍖呭惈鐨勬ā鍨嬭鍥�
+	 */
+	List<DockingPreViewModelDTO> dockingPreViewModelDTOList;
 
 	public String getClassName() {
 		return className;
@@ -62,6 +68,14 @@
 		this.pid = pid;
 	}
 
+	public List<DockingPreViewModelDTO> getDockingPreViewModelDTOList() {
+		return dockingPreViewModelDTOList;
+	}
+
+	public void setDockingPreViewModelDTOList(List<DockingPreViewModelDTO> dockingPreViewModelDTOList) {
+		this.dockingPreViewModelDTOList = dockingPreViewModelDTOList;
+	}
+
 	@Override
 	public String toString() {
 		return "DockingPreClassifyDTO{" +
@@ -69,6 +83,7 @@
 			", nodeLink='" + nodeLink + '\'' +
 			", getNodeLinkName='" + getNodeLinkName + '\'' +
 			", pid='" + pid + '\'' +
+			", dockingPreViewModelDTOList=" + dockingPreViewModelDTOList +
 			'}';
 	}
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreMetaAttrDTO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreMetaAttrDTO.java
similarity index 95%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreMetaAttrDTO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreMetaAttrDTO.java
index ca6ec62..83a3ee3 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreMetaAttrDTO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreMetaAttrDTO.java
@@ -1,7 +1,6 @@
-package com.vci.ubcs.code.dto;
+package com.vci.ubcs.code.webservice.dto;
 
-import com.vci.ubcs.code.vo.pagemodel.BaseModelVO;
-
+import com.vci.ubcs.code.webservice.vo.BaseModelVO;
 public class DockingPreMetaAttrDTO extends BaseModelVO {
 
 	/**
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreViewModelDTO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreViewModelDTO.java
similarity index 63%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreViewModelDTO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreViewModelDTO.java
index 779cee7..3fa725b 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingPreViewModelDTO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/dto/DockingPreViewModelDTO.java
@@ -1,6 +1,8 @@
-package com.vci.ubcs.code.dto;
+package com.vci.ubcs.code.webservice.dto;
 
-import com.vci.ubcs.code.vo.pagemodel.BaseModelVO;
+import com.vci.ubcs.code.webservice.vo.BaseModelVO;
+
+import java.util.List;
 
 /**
  * 璁板綍闆嗘垚闆嗗洟鍒嗙被瑙嗗浘淇℃伅
@@ -27,7 +29,10 @@
 	 * 鏁版嵁xinx
 	 */
 	private  String impactList;
-
+	/***
+	 * 妯″瀷瑙嗗浘鍖呭惈鐨勫睘鎬�
+	 */
+	private List<DockingPreMetaAttrDTO> dockingPreMetaAttrDTOList;
 
 	public String getViewName() {
 		return viewName;
@@ -53,12 +58,21 @@
 		this.impactList = impactList;
 	}
 
+	public List<DockingPreMetaAttrDTO> getDockingPreMetaAttrDTOList() {
+		return dockingPreMetaAttrDTOList;
+	}
+
+	public void setDockingPreMetaAttrDTOList(List<DockingPreMetaAttrDTO> dockingPreMetaAttrDTOList) {
+		this.dockingPreMetaAttrDTOList = dockingPreMetaAttrDTOList;
+	}
+
 	@Override
 	public String toString() {
-		return "DockingPreViewModelVO{" +
+		return "DockingPreViewModelDTO{" +
 			"viewName='" + viewName + '\'' +
 			", sourceClassifyId='" + sourceClassifyId + '\'' +
 			", impactList='" + impactList + '\'' +
+			", dockingPreMetaAttrDTOList=" + dockingPreMetaAttrDTOList +
 			'}';
 	}
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreApplyForm.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreApplyForm.java
similarity index 75%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreApplyForm.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreApplyForm.java
index 324cc99..b6270ed 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreApplyForm.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreApplyForm.java
@@ -1,4 +1,4 @@
-package com.vci.ubcs.code.entity;
+package com.vci.ubcs.code.webservice.entity;
 
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.vci.ubcs.starter.revision.model.BaseModel;
@@ -6,21 +6,26 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+
 /**
  * 闆嗗洟缂栫爜鐢宠鍗曡褰曞璞�
  * @author xiejun
  * @date  2023-05-22
  */
 @Data
-@TableName("PL_CODE_JINTEGMAPCONFIG")
+@TableName("PL_CODE_JAPPLYCODEFORM")
 @ApiModel(value = "DockingPreApplyForm", description = "闆嗗洟缂栫爜鐢宠鍗曡褰曞璞�")
 @EqualsAndHashCode
 public class DockingPreApplyForm extends BaseModel {
-
 	/***
 	 * 闆嗗洟缂栫爜
 	 */
 	@ApiModelProperty(value = "闆嗗洟缂栫爜")
+	private String groupCode;
+	/***
+	 * 閿欒鏍囪瘑鐮�
+	 */
+	@ApiModelProperty(value = "閿欒鏍囪瘑鐮�")
 	private String code;
 
 	/***
@@ -43,4 +48,9 @@
 	 */
 	@ApiModelProperty(value = "娑堟伅")
 	private String msg;
+	/**
+	 * 鐢宠鍗曠被鍨�1:鐢宠锛�2锛氭洿鏀�
+	 */
+	@ApiModelProperty(value = "娑堟伅")
+	private  String operationType;
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrMapping.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreAttrMapping.java
similarity index 97%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrMapping.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreAttrMapping.java
index 1372480..4038928 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrMapping.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreAttrMapping.java
@@ -1,4 +1,4 @@
-package com.vci.ubcs.code.entity;
+package com.vci.ubcs.code.webservice.entity;
 
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -7,8 +7,6 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
-
-import java.util.List;
 
 /**
  * 璁板綍闆嗘垚灞炴�т笌涓绘暟鎹睘鎬ф槧灏勫叧绯诲璞�
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrRange.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreAttrRange.java
similarity index 95%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrRange.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreAttrRange.java
index 0f98be4..9fd8874 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrRange.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreAttrRange.java
@@ -1,4 +1,4 @@
-package com.vci.ubcs.code.entity;
+package com.vci.ubcs.code.webservice.entity;
 
 
 import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreClassify.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreClassify.java
similarity index 92%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreClassify.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreClassify.java
index 9ef9f13..eac2632 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreClassify.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreClassify.java
@@ -1,4 +1,4 @@
-package com.vci.ubcs.code.entity;
+package com.vci.ubcs.code.webservice.entity;
 
 
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -7,13 +7,14 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+
 /**
  * 璁板綍闆嗘垚闆嗗洟鍒嗙被淇℃伅
  * @author xiejun
  * @date 2023-05-22
  */
 @Data
-@TableName("PL_CODE_CLASSIFY")
+@TableName("PL_CODE_JCLASSIFY")
 @ApiModel(value = "DockingPreClassify", description = "闆嗘垚闆嗗洟鍒嗙被淇℃伅")
 @EqualsAndHashCode
 public class DockingPreClassify extends BaseModel {
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreMetaAttr.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreMetaAttr.java
similarity index 92%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreMetaAttr.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreMetaAttr.java
index a69a6eb..9a5bde0 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreMetaAttr.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreMetaAttr.java
@@ -1,4 +1,4 @@
-package com.vci.ubcs.code.entity;
+package com.vci.ubcs.code.webservice.entity;
 
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -9,7 +9,7 @@
 import lombok.EqualsAndHashCode;
 
 @Data
-@TableName("PL_CODE_JVIEWMODE")
+@TableName("PL_CODE_JMETAATTR")
 @ApiModel(value = "DockingPreViewModel", description = "闆嗗洟鍒嗙被妯″瀷瑙嗗浘淇℃伅")
 @EqualsAndHashCode
 public class DockingPreMetaAttr extends BaseModel {
@@ -54,6 +54,7 @@
 	 * 瑙嗗浘妯″瀷id
 	 */
 	@ApiModelProperty(value = "瑙嗗浘妯″瀷涓婚敭")
+	@TableField(value = "viewModeId")
 	private String viewModelId;
 	/***
 	 * 榛樿鍊�
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreViewModel.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreViewModel.java
similarity index 95%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreViewModel.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreViewModel.java
index 79799d1..0e8c862 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreViewModel.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreViewModel.java
@@ -1,4 +1,4 @@
-package com.vci.ubcs.code.entity;
+package com.vci.ubcs.code.webservice.entity;
 
 
 import com.baomidou.mybatisplus.annotation.TableField;
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/IMdmInterJtClient.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/IMdmInterJtClient.java
new file mode 100644
index 0000000..e80491b
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/IMdmInterJtClient.java
@@ -0,0 +1,51 @@
+package com.vci.ubcs.code.webservice.feign;
+
+
+import com.vci.ubcs.code.webservice.vo.DockingClassifyModelAttrVO;
+import com.vci.ubcs.code.webservice.vo.DockingResultVO;
+import com.vci.ubcs.code.webservice.vo.DockingReturnStoreVO;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import org.springblade.core.tool.api.R;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import javax.validation.constraints.NotNull;
+
+
+/****
+ * 闆嗗洟鐮佺敵璇锋彁渚涚粰澶栭儴璋冪敤鎺ュ彛
+ * @author xiejun
+ * @date 2023-05-26
+ */
+@FeignClient(
+	value = "ubcs-code"
+)
+public interface IMdmInterJtClient {
+
+	String API_PREFIX = "/mdmInterService";
+	String RETURNGROUPCODE = API_PREFIX + "/getApplyGroupCode";
+
+	String PUBMDMMODEL = API_PREFIX + "/pubMdmModel";
+
+
+
+	/***
+	 * 灏嗛泦鍥㈢敵璇锋垚鍔熺殑缂栫爜瀛樺叆鐩稿叧鏁版嵁涔嬩腑
+	 * @param dockingResultVO
+	 * @return 杩斿洖瀛樺偍鏄惁鎴愬姛淇℃伅
+	 */
+	@GetMapping(RETURNGROUPCODE)
+	public R getApplyGroupCode( @RequestParam("dockingResultVO") DockingReturnStoreVO dockingResultVO);
+
+	/***
+	 * 涓绘暟鎹ā鍨嬭鍥惧彂甯�
+	 * @param dockingClassifyModelAttrVO
+	 * @return
+	 */
+	@PostMapping(PUBMDMMODEL)
+	R pubMdmModel(@RequestParam("dockingClassifyModelAttrVO") DockingClassifyModelAttrVO dockingClassifyModelAttrVO);
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/MdmApplyGroupCodeProvider.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/MdmApplyGroupCodeProvider.java
new file mode 100644
index 0000000..c8283d5
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/MdmApplyGroupCodeProvider.java
@@ -0,0 +1,65 @@
+package com.vci.ubcs.code.webservice.feign;
+
+/***
+ * @author xiejun
+ * @date 2023-05-26
+ */
+
+import com.vci.ubcs.code.webservice.vo.*;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import javax.validation.constraints.NotNull;
+
+/****
+ * 闆嗗洟鐮佺敵璇锋彁渚涚粰澶栭儴璋冪敤鎺ュ彛
+ * @author xiejun
+ * @date 2023-05-26
+ */
+@FeignClient(name = "qmsIntegration",
+	url = "${docking.apply.jtInterUrl:http://116.205.176.185:8099}",
+	path = "")
+public interface MdmApplyGroupCodeProvider {
+
+	/**
+	 * mdm鍚戦泦鍥㈢敵璇烽泦鍥㈢爜鎺ュ彛
+	 * @param dockingGroupDataVO AO/TO鐨勪俊鎭�
+	 * @return 鎵ц缁撴灉
+	 */
+	@PostMapping("/externalMainData/receiveAddApply")
+	DockingResultVO receiveAddApply(@NotNull @RequestBody DockingGroupDataVO dockingGroupDataVO)throws VciBaseException;
+	/**
+	 * mdm鍚戦泦鍥㈡洿鏂伴泦鍥㈢爜鎺ュ彛
+	 * @param dockingGroupDataVO AO/TO鐨勪俊鎭�
+	 * @return 鎵ц缁撴灉
+	 */
+
+	@PostMapping("/externalMainData/receiveAddApply")
+	DockingResultVO receiveEditApply(@NotNull @RequestBody DockingGroupDataVO dockingGroupDataVO)throws VciBaseException;
+
+	/***
+	 * 鏌ヨ涓诲垎绫绘ā鍨�
+	 * @param dockingModelQueryVO
+	 * @return 鎵ц缁撴灉
+	 */
+	@PostMapping("/externalMainData/queryMdmModel")
+	DockingQueryModelVO queryMdmModel(@NotNull @RequestBody DockingModelQueryVO dockingModelQueryVO);
+
+	/***
+	 * 鏌ヨ鍒嗙被璇︾粏妯″瀷瑙嗗浘
+	 * @param dockingModelQueryVO
+	 * @return 鎵ц缁撴灉
+	 */
+	@PostMapping("/externalMainData/queryClassModel")
+	DockingQueryClassModelVO queryClassModel(@NotNull @RequestBody DockingModelQueryVO dockingModelQueryVO);
+	/***
+	 * 鏌ヨ鐢宠鍗曠姸鎬�
+	 * @param dockingModelQueryVO
+	 * @return 鎵ц缁撴灉
+	 */
+	@PostMapping("/externalMainData/queryApplyState")
+	DockingApplyFormStatusVO queryApplyState(@NotNull @RequestBody DockingModelQueryVO dockingModelQueryVO);
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/BaseModelVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/BaseModelVO.java
new file mode 100644
index 0000000..0098f1f
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/BaseModelVO.java
@@ -0,0 +1,333 @@
+//
+// Source code recreated from a .class file by IntelliJ IDEA
+// (powered by FernFlower decompiler)
+//
+package com.vci.ubcs.code.webservice.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.data.annotation.Transient;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.Map;
+
+public class BaseModelVO implements Serializable {
+	private String oid;
+	private String id;
+	private String name;
+	private String description;
+	private String revisionOid;
+	private String nameOid;
+	private String btmname;
+	private String lastR;
+	private String firstR;
+	private String lastV;
+	private String firstV;
+	private String creator;
+	private Date createTime;
+	private String lastModifier;
+	private Date lastModifyTime;
+	private String revisionRule;
+	private Integer revisionSeq;
+	private String revisionValue;
+	private String versionRule;
+	private Integer versionSeq;
+	private String versionValue;
+	private String lcStatus;
+	private String lcStatusText;
+	@JsonFormat(
+		pattern = "yyyy-MM-dd HH:mm:ss.SSS"
+	)
+	private Date ts;
+	private String owner;
+//	private String checkInBy;
+//	private Date checkInTime;
+//	private String checkOutBy;
+//	private Date checkOutTime;
+	private String copyFromVersion;
+	private Integer secretGrade;
+	private String secretGradeText;
+	private String lctid;
+	@Transient
+	private Map<String, String> data;
+
+	public BaseModelVO() {
+	}
+
+	public String getOid() {
+		return this.oid;
+	}
+
+	public void setOid(String oid) {
+		this.oid = oid;
+	}
+
+	public String getId() {
+		return this.id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getName() {
+		return this.name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getDescription() {
+		return this.description;
+	}
+
+	public void setDescription(String description) {
+		this.description = description;
+	}
+
+	public String getRevisionOid() {
+		return this.revisionOid;
+	}
+
+	public void setRevisionOid(String revisionOid) {
+		this.revisionOid = revisionOid;
+	}
+
+	public String getNameOid() {
+		return this.nameOid;
+	}
+
+	public void setNameOid(String nameOid) {
+		this.nameOid = nameOid;
+	}
+
+	public String getBtmname() {
+		return this.btmname;
+	}
+
+	public void setBtmname(String btmname) {
+		this.btmname = btmname;
+	}
+
+	public String getLastR() {
+		return this.lastR;
+	}
+
+	public void setLastR(String lastR) {
+		this.lastR = lastR;
+	}
+
+	public String getFirstR() {
+		return this.firstR;
+	}
+
+	public void setFirstR(String firstR) {
+		this.firstR = firstR;
+	}
+
+	public String getLastV() {
+		return this.lastV;
+	}
+
+	public void setLastV(String lastV) {
+		this.lastV = lastV;
+	}
+
+	public String getFirstV() {
+		return this.firstV;
+	}
+
+	public void setFirstV(String firstV) {
+		this.firstV = firstV;
+	}
+
+	public String getCreator() {
+		return this.creator;
+	}
+
+	public void setCreator(String creator) {
+		this.creator = creator;
+	}
+
+	public String getLastModifier() {
+		return this.lastModifier;
+	}
+
+	public void setLastModifier(String lastModifier) {
+		this.lastModifier = lastModifier;
+	}
+
+	public Date getLastModifyTime() {
+		return this.lastModifyTime;
+	}
+
+	public void setLastModifyTime(Date lastModifyTime) {
+		this.lastModifyTime = lastModifyTime;
+	}
+
+	public String getRevisionRule() {
+		return this.revisionRule;
+	}
+
+	public void setRevisionRule(String revisionRule) {
+		this.revisionRule = revisionRule;
+	}
+
+	public String getVersionRule() {
+		return this.versionRule;
+	}
+
+	public void setVersionRule(String versionRule) {
+		this.versionRule = versionRule;
+	}
+
+	public Integer getRevisionSeq() {
+		return this.revisionSeq;
+	}
+
+	public void setRevisionSeq(Integer revisionSeq) {
+		this.revisionSeq = revisionSeq;
+	}
+
+	public String getRevisionValue() {
+		return this.revisionValue;
+	}
+
+	public void setRevisionValue(String revisionValue) {
+		this.revisionValue = revisionValue;
+	}
+
+	public Integer getVersionSeq() {
+		return this.versionSeq;
+	}
+
+	public void setVersionSeq(Integer versionSeq) {
+		this.versionSeq = versionSeq;
+	}
+
+	public String getVersionValue() {
+		return this.versionValue;
+	}
+
+	public void setVersionValue(String versionValue) {
+		this.versionValue = versionValue;
+	}
+
+	public String getLcStatus() {
+		return this.lcStatus;
+	}
+
+	public void setLcStatus(String lcStatus) {
+		this.lcStatus = lcStatus;
+	}
+
+	public Date getTs() {
+		return this.ts;
+	}
+
+	public void setTs(Date ts) {
+		this.ts = ts;
+	}
+
+	public String getOwner() {
+		return this.owner;
+	}
+
+	public void setOwner(String owner) {
+		this.owner = owner;
+	}
+
+	/*public String getCheckInBy() {
+		return this.checkInBy;
+	}
+
+	public void setCheckInBy(String checkInBy) {
+		this.checkInBy = checkInBy;
+	}
+
+	public Date getCheckInTime() {
+		return this.checkInTime;
+	}
+
+	public void setCheckInTime(Date checkInTime) {
+		this.checkInTime = checkInTime;
+	}
+
+	public String getCheckOutBy() {
+		return this.checkOutBy;
+	}
+
+	public void setCheckOutBy(String checkOutBy) {
+		this.checkOutBy = checkOutBy;
+	}
+
+	public Date getCheckOutTime() {
+		return this.checkOutTime;
+	}
+
+	public void setCheckOutTime(Date checkOutTime) {
+		this.checkOutTime = checkOutTime;
+	}*/
+
+	public String getCopyFromVersion() {
+		return this.copyFromVersion;
+	}
+
+	public void setCopyFromVersion(String copyFromVersion) {
+		this.copyFromVersion = copyFromVersion;
+	}
+
+	public String getLcStatusText() {
+		return this.lcStatusText;
+	}
+
+	public void setLcStatusText(String lcStatusText) {
+		this.lcStatusText = lcStatusText;
+	}
+
+	public Date getCreateTime() {
+		return this.createTime;
+	}
+
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+
+	public Integer getSecretGrade() {
+		return this.secretGrade;
+	}
+
+	public void setSecretGrade(Integer secretGrade) {
+		this.secretGrade = secretGrade;
+	}
+
+	public String getSecretGradeText() {
+		return this.secretGradeText;
+	}
+
+	public void setSecretGradeText(String secretGradeText) {
+		this.secretGradeText = secretGradeText;
+	}
+
+	public String getLctid() {
+		return this.lctid;
+	}
+
+	public void setLctid(String lctid) {
+		this.lctid = lctid;
+	}
+
+	public Map<String, String> getData() {
+		return this.data;
+	}
+
+	public void setData(Map<String, String> data) {
+		this.data = data;
+	}
+
+	@Override
+	public String toString() {
+		return "BaseModelVO{oid='" + this.oid + '\'' + ", id='" + this.id + '\'' + ", name='" + this.name + '\'' + ", description='" + this.description + '\'' + ", revisionOid='" + this.revisionOid + '\'' + ", nameOid='" + this.nameOid + '\'' + ", btmname='" + this.btmname + '\'' + ", lastR='" + this.lastR + '\'' + ", firstR='" + this.firstR + '\'' + ", lastV='" + this.lastV + '\'' + ", firstV='" + this.firstV + '\'' + ", creator='" + this.creator + '\'' + ", createTime=" + this.createTime + ", lastModifier='" + this.lastModifier + '\'' + ", lastModifyTime=" + this.lastModifyTime + ", revisionRule='" + this.revisionRule + '\'' + ", revisionSeq=" + this.revisionSeq + ", revisionValue='" + this.revisionValue + '\'' + ", versionRule='" + this.versionRule + '\'' + ", versionSeq=" + this.versionSeq + ", versionValue='" + this.versionValue + '\'' + ", lcStatus='" + this.lcStatus + '\'' + ", lcStatusText='" + this.lcStatusText + '\'' + ", ts=" + this.ts + ", owner='" + this.owner + '\'' + ", checkInBy='" + ", copyFromVersion='" + this.copyFromVersion + '\'' + ", secretGrade=" + this.secretGrade + ", secretGradeText='" + this.secretGradeText + '\'' + ", lctid='" + this.lctid + '\'' + ", data=" + this.data + '}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingApplyFormStatusVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingApplyFormStatusVO.java
new file mode 100644
index 0000000..e78acd8
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingApplyFormStatusVO.java
@@ -0,0 +1,55 @@
+package com.vci.ubcs.code.webservice.vo;
+
+/***
+ * 鐢宠鍗曠姸鎬佸璞�
+ * @author xiejun
+ * @date 2023-05-29
+ */
+public class DockingApplyFormStatusVO {
+
+	/***
+	 * 鐢宠鍗曞彿
+	 */
+	private String applyNum;
+	/***
+	 * 鐢宠鍗曠姸鎬�
+	 */
+	private String formState;
+	/**
+	 * 瀹℃牳鎰忚
+	 */
+	private String examineOpinion;
+
+	public String getApplyNum() {
+		return applyNum;
+	}
+
+	public void setApplyNum(String applyNum) {
+		this.applyNum = applyNum;
+	}
+
+	public String getFormState() {
+		return formState;
+	}
+
+	public void setFormState(String formState) {
+		this.formState = formState;
+	}
+
+	public String getExamineOpinion() {
+		return examineOpinion;
+	}
+
+	public void setExamineOpinion(String examineOpinion) {
+		this.examineOpinion = examineOpinion;
+	}
+
+	@Override
+	public String toString() {
+		return "DockingApplyFormStatusVO{" +
+			"applyNum='" + applyNum + '\'' +
+			", formState='" + formState + '\'' +
+			", examineOpinion='" + examineOpinion + '\'' +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyMainVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyMainVO.java
new file mode 100644
index 0000000..15a6104
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyMainVO.java
@@ -0,0 +1,35 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.List;
+import java.util.Map;
+
+/***
+ * 鍒嗙被淇℃伅锛屽強鍏舵ā鍨嬭鍥惧璞�
+ * @author xiejun
+ * @date 2023-05-26
+ */
+public class DockingClassifyMainVO {
+
+	/**
+	 * 鍒嗙被瀵硅薄鐨勬ā鍨嬭鍥�
+	 */
+	private Map<String,List<DockingClassifyViewVO>>classInfos;
+	/***
+	 * 鍒嗙被闆嗗悎
+	 */
+	private List<DockingClassifyVO> classList;
+
+	public Map<String, List<DockingClassifyViewVO>> getClassInfos() {
+		return classInfos;
+	}
+	public void setClassInfos(Map<String, List<DockingClassifyViewVO>> classInfos) {
+		this.classInfos = classInfos;
+	}
+	public List<DockingClassifyVO> getClassList() {
+		return classList;
+	}
+	public void setClassList(List<DockingClassifyVO> classList) {
+		this.classList = classList;
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyMetaAttrVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyMetaAttrVO.java
new file mode 100644
index 0000000..d7c7f78
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyMetaAttrVO.java
@@ -0,0 +1,112 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.Map;
+
+/***
+ * 闆嗗洟鍒嗙被灞炴�т俊鎭�
+ * @author xiejun
+ * @date 2023-05-26
+ */
+public class DockingClassifyMetaAttrVO {
+
+	/***
+	 * 涓枃鍚嶇О
+	 */
+	private String chineseName;
+	/***
+	 * 鑻辨枃鍚嶇О
+	 */
+	private String englishName;
+	/***
+	 * 绫诲瀷
+	 */
+	private Integer metadataType;
+	/***
+	 * 鏄惁蹇呭~
+	 */
+	private Integer necessaryConf;
+	/**
+	 * 榛樿鍊�
+	 */
+	private String defaultValue;
+	/***
+	 * 涓嬪睘瀵硅薄
+	 */
+	private DockingClassifyMetaAttrVO compositeMeta;
+
+	/**
+	 * 鍊煎煙
+	 */
+	private Map<String,String> range;
+
+
+	public String getChineseName() {
+		return chineseName;
+	}
+
+
+	public void setChineseName(String chineseName) {
+		this.chineseName = chineseName;
+	}
+
+
+	public String getEnglishName() {
+		return englishName;
+	}
+
+
+	public void setEnglishName(String englishName) {
+		this.englishName = englishName;
+	}
+
+
+	public Integer getMetadataType() {
+		return metadataType;
+	}
+
+
+	public void setMetadataType(Integer metadataType) {
+		this.metadataType = metadataType;
+	}
+
+
+	public Integer getNecessaryConf() {
+		return necessaryConf;
+	}
+
+
+	public void setNecessaryConf(Integer necessaryConf) {
+		this.necessaryConf = necessaryConf;
+	}
+
+
+	public String getDefaultValue() {
+		return defaultValue;
+	}
+
+
+	public void setDefaultValue(String defaultValue) {
+		this.defaultValue = defaultValue;
+	}
+
+
+	public Map<String, String> getRange() {
+		return range;
+	}
+
+
+	public void setRange(Map<String, String> range) {
+		this.range = range;
+	}
+
+
+	public DockingClassifyMetaAttrVO getCompositeMeta() {
+		return compositeMeta;
+	}
+
+
+	public void setCompositeMeta(DockingClassifyMetaAttrVO compositeMeta) {
+		this.compositeMeta = compositeMeta;
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyModelAttrVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyModelAttrVO.java
new file mode 100644
index 0000000..a58ce49
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyModelAttrVO.java
@@ -0,0 +1,51 @@
+package com.vci.ubcs.code.webservice.vo;
+
+/***
+ * 鎺ュ彛浼犻�掑璞�
+ * @author xiejun
+ * @date 2023-05-26
+ */
+public class DockingClassifyModelAttrVO {
+	/***
+	 * 绯荤粺鏍囪瘑
+	 */
+	private String sysName;
+	/***
+	 * 鏁版嵁闆�
+	 */
+	private DockingClassifyMainVO mainData;
+	private String applyEntId;
+	/***
+	 * 鏁版嵁闆�
+	 */
+	private DockingClassifyMainVO dataStructure;
+
+	public String getSysName() {
+		return sysName;
+	}
+	public void setSysName(String sysName) {
+		this.sysName = sysName;
+	}
+	public String getApplyEntId() {
+		return applyEntId;
+	}
+	public void setApplyEntId(String applyEntId) {
+		this.applyEntId = applyEntId;
+	}
+	public DockingClassifyMainVO getDataStructure() {
+		return dataStructure;
+	}
+	public void setDataStructure(DockingClassifyMainVO dataStructure) {
+		this.dataStructure = dataStructure;
+	}
+	public DockingClassifyMainVO getMainData() {
+		return mainData;
+	}
+	public void setMainData(DockingClassifyMainVO mainData) {
+		this.mainData = mainData;
+	}
+
+
+
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyVO.java
new file mode 100644
index 0000000..32f58b4
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyVO.java
@@ -0,0 +1,85 @@
+package com.vci.ubcs.code.webservice.vo;
+
+/***
+ * 闆嗗洟鍒嗙被淇℃伅
+ * @author xiejun
+ * @date 2023-05-26
+ */
+public class DockingClassifyVO {
+
+	/**
+	 * 涓婚敭ID
+	 */
+	private String id;
+
+
+	/**
+	 * 鍒嗙被鍚嶇О
+	 */
+	private String className;
+
+	/***
+	 * 鍒嗙被浠e彿
+	 */
+	private String classNumber;
+
+
+	private String version;
+
+	/**
+	 * 鐖禝D
+	 */
+	private String pid ;
+
+	/***
+	 * 鑺傜偣鍒嗙被閾捐矾
+	 */
+	private String nodeLink;
+	/**
+	 * 鑺傜偣鍒嗙被閾捐矾
+	 */
+	private String nodeLinkName;
+	public String getId() {
+		return id;
+	}
+	public void setId(String id) {
+		this.id = id;
+	}
+	public String getClassName() {
+		return className;
+	}
+	public void setClassName(String className) {
+		this.className = className;
+	}
+	public String getPid() {
+		return pid;
+	}
+	public void setPid(String pid) {
+		this.pid = pid;
+	}
+	public String getNodeLink() {
+		return nodeLink;
+	}
+	public void setNodeLink(String nodeLink) {
+		this.nodeLink = nodeLink;
+	}
+	public String getNodeLinkName() {
+		return nodeLinkName;
+	}
+	public void setNodeLinkName(String nodeLinkName) {
+		this.nodeLinkName = nodeLinkName;
+	}
+	public String getClassNumber() {
+		return classNumber;
+	}
+	public void setClassNumber(String classNumber) {
+		this.classNumber = classNumber;
+	}
+	public String getVersion() {
+		return version;
+	}
+	public void setVersion(String version) {
+		this.version = version;
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyViewVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyViewVO.java
new file mode 100644
index 0000000..c682fdd
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifyViewVO.java
@@ -0,0 +1,44 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.List;
+
+/***
+ * 瑙嗗浘妯″瀷瀵硅薄
+ * @author xj
+ * @date 2023-05-26
+ */
+public class DockingClassifyViewVO {
+
+	/**
+	 * 妯″瀷瑙嗗浘鍚嶇О
+	 */
+	private String viewName;
+
+	/***
+	 * 褰卞搷缂栫爜椤圭殑鏁版嵁
+	 */
+	private String impactList;
+
+	/**
+	 * 妯″瀷瑙嗗浘灞炴�ч泦鍚�
+	 */
+	private List<DockingClassifyMetaAttrVO> metaList;
+	public String getViewName() {
+		return viewName;
+	}
+	public void setViewName(String viewName) {
+		this.viewName = viewName;
+	}
+	public List<DockingClassifyMetaAttrVO> getMetaList() {
+		return metaList;
+	}
+	public void setMetaList(List<DockingClassifyMetaAttrVO> metaList) {
+		this.metaList = metaList;
+	}
+	public String getImpactList() {
+		return impactList;
+	}
+	public void setImpactList(String impactList) {
+		this.impactList = impactList;
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifysVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifysVO.java
new file mode 100644
index 0000000..3cee524
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingClassifysVO.java
@@ -0,0 +1,24 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.List;
+import java.util.Map;
+
+/***
+ * 闆嗗洟鍒嗙被淇℃伅
+ * @author xiejun
+ * @date 2023-05-26
+ */
+public class DockingClassifysVO {
+
+	private Map<String,List<DockingClassifyViewVO>> classInfos;
+
+	public Map<String, List<DockingClassifyViewVO>> getClassInfos() {
+		return classInfos;
+	}
+
+	public void setClassInfos(Map<String, List<DockingClassifyViewVO>> classInfos) {
+		this.classInfos = classInfos;
+	}
+
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingDataVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingDataVO.java
new file mode 100644
index 0000000..4ddefed
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingDataVO.java
@@ -0,0 +1,41 @@
+package com.vci.ubcs.code.webservice.vo;
+
+
+/***
+ * 杩斿洖瀵硅薄淇℃伅
+ * @author xiejun
+ * @date 2023-05-26
+ */
+public class DockingDataVO {
+
+	private String msg;
+
+	private String code;
+
+	private DockingMainDataVO data;
+
+	public String getMsg() {
+		return msg;
+	}
+
+	public void setMsg(String msg) {
+		this.msg = msg;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public DockingMainDataVO getData() {
+		return data;
+	}
+
+	public void setData(DockingMainDataVO data) {
+		this.data = data;
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingGroupDataVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingGroupDataVO.java
new file mode 100644
index 0000000..06d0a19
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingGroupDataVO.java
@@ -0,0 +1,30 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+/***
+ * 闆嗗洟鐢宠鎺ュ彛鍙傛暟淇℃伅
+ */
+@Data
+public class DockingGroupDataVO {
+
+	/***
+	 * 绯荤粺鏍囪瘑
+	 */
+
+	private String sysName;
+	/**
+	 * 涓氬姟鏁版嵁
+	 */
+	private List<DockingMainData> mainData;
+
+	@Override
+	public String toString() {
+		return "DockingGroupDataVO{" +
+			"sysName='" + sysName + '\'' +
+			", mainData=" + mainData +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingMainData.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingMainData.java
new file mode 100644
index 0000000..168be50
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingMainData.java
@@ -0,0 +1,46 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class DockingMainData {
+	/**
+ 	* 鐢宠鍗曞彿
+ 	*/
+	private String  applyId;
+	/***
+	 * 瀵嗙骇
+	 */
+	private  String secretLevel;
+
+	/***
+	 * 鐢宠鍗曚綅浠g爜锛堝131460锛�
+	 */
+	private  String applyEntId;
+	/***
+	 * 鐢宠浜哄憳缂栫爜锛堢敤鎴峰悕锛屽85645824锛�
+	 */
+	private  String createBy;
+	/***
+	 * 鍒嗙被鍚嶇О
+	 */
+	private String  className;
+	/***
+	 * 妯″瀷瑙嗗浘淇℃伅
+	 */
+	private List<DockingViewVO> viewInfos;
+
+	@Override
+	public String toString() {
+		return "DockingMainData{" +
+			"applyId='" + applyId + '\'' +
+			", secretLevel='" + secretLevel + '\'' +
+			", applyEntId='" + applyEntId + '\'' +
+			", createBy='" + createBy + '\'' +
+			", className='" + className + '\'' +
+			", viewInfos=" + viewInfos +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingMainDataVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingMainDataVO.java
new file mode 100644
index 0000000..f912e08
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingMainDataVO.java
@@ -0,0 +1,28 @@
+package com.vci.ubcs.code.webservice.vo;
+
+public class DockingMainDataVO {
+
+	private String applyId;
+	private String customCoding;
+	private String formState;
+	public String getApplyId() {
+		return applyId;
+	}
+	public void setApplyId(String applyId) {
+		this.applyId = applyId;
+	}
+	public String getCustomCoding() {
+		return customCoding;
+	}
+	public void setCustomCoding(String customCoding) {
+		this.customCoding = customCoding;
+	}
+	public String getFormState() {
+		return formState;
+	}
+	public void setFormState(String formState) {
+		this.formState = formState;
+	}
+
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingModelQueryVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingModelQueryVO.java
new file mode 100644
index 0000000..2db7723
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingModelQueryVO.java
@@ -0,0 +1,42 @@
+package com.vci.ubcs.code.webservice.vo;
+
+public class DockingModelQueryVO {
+	private  String sysName;
+
+	private String classId;
+
+	private String applyNums;
+
+	public String getSysName() {
+		return sysName;
+	}
+
+	public void setSysName(String sysName) {
+		this.sysName = sysName;
+	}
+
+	public String getClassId() {
+		return classId;
+	}
+
+	public void setClassId(String classId) {
+		this.classId = classId;
+	}
+
+	public String getApplyNums() {
+		return applyNums;
+	}
+
+	public void setApplyNums(String applyNums) {
+		this.applyNums = applyNums;
+	}
+
+	@Override
+	public String toString() {
+		return "DockingModelQueryVO{" +
+			"sysName='" + sysName + '\'' +
+			", classId='" + classId + '\'' +
+			", applyNums='" + applyNums + '\'' +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreApplyFormVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreApplyFormVO.java
similarity index 92%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreApplyFormVO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreApplyFormVO.java
index 2832160..bf7280d 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreApplyFormVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreApplyFormVO.java
@@ -1,5 +1,4 @@
-package com.vci.ubcs.code.vo.pagemodel;
-
+package com.vci.ubcs.code.webservice.vo;
 
 /**
  * 璁板綍闆嗘垚灞炴暟鎹敵璇穒d
@@ -15,6 +14,10 @@
 	/***
 	 * 闆嗗洟缂栫爜
 	 */
+	private String  groupCode;
+	/***
+	 * 閿欒鏍囪瘑鐮�
+	 */
 	private String code;
 
 	/***
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreAttrMappingVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreAttrMappingVO.java
similarity index 96%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreAttrMappingVO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreAttrMappingVO.java
index 8a460d3..53327b7 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreAttrMappingVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreAttrMappingVO.java
@@ -1,8 +1,4 @@
-package com.vci.ubcs.code.vo.pagemodel;
-
-
-import com.vci.ubcs.code.dto.DockingPreAttrRangeDTO;
-import com.vci.ubcs.code.vo.pagemodel.BaseModelVO;
+package com.vci.ubcs.code.webservice.vo;
 
 import java.util.List;
 
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreAttrRangeVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreAttrRangeVO.java
similarity index 94%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreAttrRangeVO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreAttrRangeVO.java
index 774bcea..32c3b02 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreAttrRangeVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreAttrRangeVO.java
@@ -1,6 +1,4 @@
-package com.vci.ubcs.code.vo.pagemodel;
-
-import com.vci.ubcs.code.vo.pagemodel.BaseModelVO;
+package com.vci.ubcs.code.webservice.vo;
 
 /**
  * 璁板綍闆嗘垚灞炴�у彇鍊艰寖鍥撮厤缃�
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreClassifyVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreClassifyVO.java
similarity index 69%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreClassifyVO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreClassifyVO.java
index 8284527..4fbd1a3 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreClassifyVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreClassifyVO.java
@@ -1,4 +1,6 @@
-package com.vci.ubcs.code.vo.pagemodel;
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.List;
 
 /**
  * 璁板綍闆嗘垚闆嗗洟鍒嗙被淇℃伅
@@ -27,6 +29,10 @@
 	 * 鐖剁骇鑺傜偣
 	 */
 	private  String pid;
+	/***
+	 * 鍒嗙被妯″瀷瑙嗗浘
+	 */
+	private List<DockingPreViewModelVO> dockingPreViewModelVOList;
 
 	public String getClassName() {
 		return className;
@@ -60,13 +66,22 @@
 		this.pid = pid;
 	}
 
+	public List<DockingPreViewModelVO> getDockingPreViewModelVOList() {
+		return dockingPreViewModelVOList;
+	}
+
+	public void setDockingPreViewModelVOList(List<DockingPreViewModelVO> dockingPreViewModelVOList) {
+		this.dockingPreViewModelVOList = dockingPreViewModelVOList;
+	}
+
 	@Override
 	public String toString() {
-		return "DockingPreClassifyDTO{" +
+		return "DockingPreClassifyVO{" +
 			"className='" + className + '\'' +
 			", nodeLink='" + nodeLink + '\'' +
 			", getNodeLinkName='" + getNodeLinkName + '\'' +
 			", pid='" + pid + '\'' +
+			", dockingPreViewModelVOList=" + dockingPreViewModelVOList +
 			'}';
 	}
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreMetaAttrVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreMetaAttrVO.java
similarity index 97%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreMetaAttrVO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreMetaAttrVO.java
index 4225cd6..1557a52 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreMetaAttrVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreMetaAttrVO.java
@@ -1,4 +1,4 @@
-package com.vci.ubcs.code.vo.pagemodel;
+package com.vci.ubcs.code.webservice.vo;
 /**
  * 璁板綍闆嗘垚闆嗗洟鍒嗙被淇℃伅
  * @author xiejun
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreViewModelVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreViewModelVO.java
similarity index 68%
rename from Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreViewModelVO.java
rename to Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreViewModelVO.java
index 3421693..be07f0b 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingPreViewModelVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingPreViewModelVO.java
@@ -1,4 +1,7 @@
-package com.vci.ubcs.code.vo.pagemodel;
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.List;
+
 /**
  * 璁板綍闆嗘垚闆嗗洟鍒嗙被瑙嗗浘淇℃伅
  * @author xiejun
@@ -24,8 +27,10 @@
 	 * 鏁版嵁xinx
 	 */
 	private  String impactList;
-
-
+	/***
+	 * 妯″瀷瑙嗗浘鍖呭惈鐨勫睘鎬�
+	 */
+	private List<DockingPreMetaAttrVO> dockingPreMetaAttrVOList;
 	public String getViewName() {
 		return viewName;
 	}
@@ -50,12 +55,21 @@
 		this.impactList = impactList;
 	}
 
+	public List<DockingPreMetaAttrVO> getDockingPreMetaAttrVOList() {
+		return dockingPreMetaAttrVOList;
+	}
+
+	public void setDockingPreMetaAttrVOList(List<DockingPreMetaAttrVO> dockingPreMetaAttrVOList) {
+		this.dockingPreMetaAttrVOList = dockingPreMetaAttrVOList;
+	}
+
 	@Override
 	public String toString() {
 		return "DockingPreViewModelVO{" +
 			"viewName='" + viewName + '\'' +
 			", sourceClassifyId='" + sourceClassifyId + '\'' +
 			", impactList='" + impactList + '\'' +
+			", dockingPreMetaAttrVOList=" + dockingPreMetaAttrVOList +
 			'}';
 	}
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingQueryClassModelVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingQueryClassModelVO.java
new file mode 100644
index 0000000..adad878
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingQueryClassModelVO.java
@@ -0,0 +1,109 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.List;
+
+/***
+ * 闆嗗洟鍒嗙被淇℃伅
+ * @author xiejun
+ * @date 2023-05-26
+ */
+
+public class DockingQueryClassModelVO {
+	/***
+	 * 杩斿洖缂栫爜
+	 */
+	private int code=1;
+	/***
+	 * 杩斿洖淇℃伅
+	 */
+	private String msg="鎺ュ彛璋冪敤鎴愬姛";
+
+	/***
+	 * 绯荤粺鏍囪瘑
+	 */
+	private String sysName;
+	/***
+	 * 鏁版嵁闆�
+	 */
+	private DockingClassifyMainVO mainData;
+	/***
+	 * 鏁版嵁闆�
+	 */
+	private DockingClassifyMainVO data;
+
+	private String applyEntId;
+	/***
+	 * 鏁版嵁闆�
+	 */
+	private DockingClassifyMainVO dataStructure;
+
+	public String getSysName() {
+		return sysName;
+	}
+
+	public void setSysName(String sysName) {
+		this.sysName = sysName;
+	}
+
+
+	public String getApplyEntId() {
+		return applyEntId;
+	}
+
+	public void setApplyEntId(String applyEntId) {
+		this.applyEntId = applyEntId;
+	}
+
+	public void setMainData(DockingClassifyMainVO mainData) {
+		this.mainData = mainData;
+	}
+
+	public DockingClassifyMainVO getDataStructure() {
+		return dataStructure;
+	}
+
+	public DockingClassifyMainVO getMainData() {
+		return mainData;
+	}
+
+	public DockingClassifyMainVO getData() {
+		return data;
+	}
+
+	public void setData(DockingClassifyMainVO data) {
+		this.data = data;
+	}
+
+	public void setDataStructure(DockingClassifyMainVO dataStructure) {
+		this.dataStructure = dataStructure;
+	}
+
+	public int getCode() {
+		return code;
+	}
+
+	public void setCode(int code) {
+		this.code = code;
+	}
+
+	public String getMsg() {
+		return msg;
+	}
+
+	public void setMsg(String msg) {
+		this.msg = msg;
+	}
+
+	@Override
+	public String toString() {
+		return "DockingQueryClassModelVO{" +
+			"code=" + code +
+			", msg='" + msg + '\'' +
+			", sysName='" + sysName + '\'' +
+			", mainData=" + mainData +
+			", data=" + data +
+			", applyEntId='" + applyEntId + '\'' +
+			", dataStructure=" + dataStructure +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingQueryModelVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingQueryModelVO.java
new file mode 100644
index 0000000..a9c4622
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingQueryModelVO.java
@@ -0,0 +1,33 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.List;
+
+public class DockingQueryModelVO {
+
+	private int code;
+	private String msg;
+	private List<DockingClassifyVO> data;
+	public int getCode() {
+		return code;
+	}
+	public void setCode(int code) {
+		this.code = code;
+	}
+	public String getMsg() {
+		return msg;
+	}
+	public void setMsg(String msg) {
+		this.msg = msg;
+	}
+	public List<DockingClassifyVO> getData() {
+		return data;
+	}
+	public void setData(List<DockingClassifyVO> data) {
+		this.data = data;
+	}
+
+
+
+
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingResultDataVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingResultDataVO.java
new file mode 100644
index 0000000..faf9f6d
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingResultDataVO.java
@@ -0,0 +1,15 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import lombok.Data;
+
+@Data
+public class DockingResultDataVO<T> {
+	/***
+	 * 娑堟伅
+	 */
+	private String code;
+
+	private String msg;
+
+	private T data;
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingResultVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingResultVO.java
new file mode 100644
index 0000000..8199526
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingResultVO.java
@@ -0,0 +1,54 @@
+package com.vci.ubcs.code.webservice.vo;
+
+
+
+import java.util.List;
+
+/***
+ * 杩斿洖瀵硅薄淇℃伅
+ * @author xiejun
+ * @date 2023-05-26
+ */
+public class DockingResultVO {
+	/**
+	 * 鐘舵�佺爜	1锛氭垚鍔燂紱2锛氬け璐�
+	 */
+	private String code;
+	/**
+	 * 鎺ュ彛璋冪敤缁撴灉	鎴愬姛锛涘け璐ュ師鍥�
+	 */
+	private String msg;
+	/***
+	 * 鏁版嵁瀵硅薄
+	 */
+	private List<DockingDataVO> data;
+	public String getCode() {
+		return code;
+	}
+	public void setCode(String code) {
+		this.code = code;
+	}
+	public String getMsg() {
+		return msg;
+	}
+	public void setMsg(String msg) {
+		this.msg = msg;
+	}
+
+	public List<DockingDataVO> getData() {
+		return data;
+	}
+
+	public void setData(List<DockingDataVO> data) {
+		this.data = data;
+	}
+
+	@Override
+	public String toString() {
+		return "ResultDataObject{" +
+			"code='" + code + '\'' +
+			", msg='" + msg + '\'' +
+			", data=" + data +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingReturnStoreVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingReturnStoreVO.java
new file mode 100644
index 0000000..346fe52
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingReturnStoreVO.java
@@ -0,0 +1,50 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.List;
+
+/***
+ * 闆嗗洟鐮佺敵璇疯繑鍥為泦鍥㈢爜瀵硅薄
+ * @author xiejun
+ * @date 2023-5-26
+ */
+public class DockingReturnStoreVO {
+	/**
+	 * 鍒嗙被id
+	 */
+	private String classId;
+	/**
+	 * 婧愮郴缁熷悕绉�
+	 */
+	private String sysName;
+
+	/***
+	 * 鐢宠鍗曡祴鐮佺粨鏋�
+	 */
+	private List<MainData>mainData;
+
+	public String getClassId() {
+		return classId;
+	}
+
+	public void setClassId(String classId) {
+		this.classId = classId;
+	}
+
+	public String getSysName() {
+		return sysName;
+	}
+
+	public void setSysName(String sysName) {
+		this.sysName = sysName;
+	}
+
+	public List<MainData> getMainData() {
+		return mainData;
+	}
+
+	public void setMainData(List<MainData> mainData) {
+		this.mainData = mainData;
+	}
+
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingViewVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingViewVO.java
new file mode 100644
index 0000000..b40081a
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingViewVO.java
@@ -0,0 +1,29 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import lombok.Data;
+
+import java.util.List;
+import java.util.Map;
+
+/***
+ * 妯″瀷瑙嗗浘淇℃伅
+ */
+@Data
+public class DockingViewVO {
+	/**
+	 * 妯″瀷瑙嗗浘鍚嶇О
+	 */
+	private  String viewName;
+	/**
+	 * 灞炴�у璞′俊鎭�
+	 */
+	private List<Map<String,Object>> viewValue;
+
+	@Override
+	public String toString() {
+		return "DockingViewVO{" +
+			"viewName='" + viewName + '\'' +
+			", viewValue=" + viewValue +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DokingAttributeSerchVO.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DokingAttributeSerchVO.java
new file mode 100644
index 0000000..b9cb2a4
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DokingAttributeSerchVO.java
@@ -0,0 +1,26 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
+import lombok.Data;
+
+import java.util.List;
+@Data
+public class DokingAttributeSerchVO {
+
+	private String classifyId;
+	private String searchValue;
+	private boolean flag;
+	private List<CodeClassifyTemplateAttrVO> rightAttributes;
+	private  List<CodeClassifyTemplateAttrVO> leftAttributes;
+
+	@Override
+	public String toString() {
+		return "DokingAttributeSerchVO{" +
+			"classifyId='" + classifyId + '\'' +
+			", searchValue='" + searchValue + '\'' +
+			", flag=" + flag +
+			", rightAttributes=" + rightAttributes +
+			", leftAttributes=" + leftAttributes +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/MainData.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/MainData.java
new file mode 100644
index 0000000..b4b08cc
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/MainData.java
@@ -0,0 +1,57 @@
+package com.vci.ubcs.code.webservice.vo;
+
+import java.util.List;
+
+
+public class MainData {
+	/**
+	 * 鐢宠鍗曞彿
+	 */
+	private String applyId;
+	/**
+	 * 鐢宠鍗曠姸鎬侊紙1 闆嗗洟瀹℃牳涓�,2闆嗗洟瀹℃牳涓�, 3 闆嗗洟瀹℃牳涓�,4 瀹℃牳缁撴潫锛岃祴鐮佸け璐�,5瀹℃牳缁撴潫锛岃祴鐮佹垚鍔� 6锛氬緟301璧嬬爜 7:宸茶祴鐮� 8锛氬凡璧嬬爜锛堟部鐢級9锛氬鏍镐腑锛�
+	 */
+	private String formState;
+	/**
+	 * 涓绘暟鎹紪鐮�
+	 */
+	private String customCoding;
+	/**
+	 * 鐢宠鍗曚腑缂栫爜瑙嗗浘淇℃伅
+	 */
+	private List<DockingViewVO> viewInfos;
+	public String getApplyId() {
+		return applyId;
+	}
+	public void setApplyId(String applyId) {
+		this.applyId = applyId;
+	}
+	public String getFormState() {
+		return formState;
+	}
+	public void setFormState(String formState) {
+		this.formState = formState;
+	}
+	public String getCustomCoding() {
+		return customCoding;
+	}
+	public void setCustomCoding(String customCoding) {
+		this.customCoding = customCoding;
+	}
+	public List<DockingViewVO> getViewInfos() {
+		return viewInfos;
+	}
+	public void setViewInfos(List<DockingViewVO> viewInfos) {
+		this.viewInfos = viewInfos;
+	}
+
+	@Override
+	public String toString() {
+		return "MainData{" +
+			"applyId='" + applyId + '\'' +
+			", formState='" + formState + '\'' +
+			", customCoding='" + customCoding + '\'' +
+			", viewInfos=" + viewInfos +
+			'}';
+	}
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/data.json b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/data.json
new file mode 100644
index 0000000..ffb9747
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/data.json
@@ -0,0 +1,10 @@
+{
+  "parentOid":"XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+  "parentBtmName":"jclass",
+  "valueField":"oid",
+  "textField":"name",
+  "parentFieldName":"id",
+  "conditionMap":[{
+    "codeclsfid": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B"
+  }]
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/pl_code_jconfig.json b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/pl_code_jconfig.json
new file mode 100644
index 0000000..bdbc694
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/pl_code_jconfig.json
@@ -0,0 +1,1159 @@
+{
+  "code": 200,
+  "success": true,
+  "data": [
+    {
+      "oid": "2023022114229",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "C73079D0-3BEB-E887-5210-87D8A792D3ED",
+      "nameOid": "98669FD3-AE76-659B-1583-7F5C28519B89",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-B5416-4928-CFB8-84F5-1955AA890762",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "8EAB5416-4928-CFB8-84F5-1955AA890762",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890762",
+      "viewModeName": "",
+      "targetAttrKey": "lastmodifytime",
+      "targetAttrName": "鏈�鍚庝慨鏀规椂闂�",
+      "sourceAttrKey": "lastmodifytime",
+      "sourceAttrName": "鏈�鍚庝慨鏀规椂闂�",
+      "viewModelName": "鍩烘湰瑙嗗浘",
+      "viewName": "鍩烘湰瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114230",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "E46AA8DD-FFC7-BCA0-76F2-AA959AEE8D0A",
+      "nameOid": "FBE012CC-0CBE-5D86-9685-BDF01F086342",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-0FED7-90B6-BAF8-B558-2A4693CAAD83",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "2810FED7-90B6-BAF8-B558-2A4693CAAD83",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890762",
+      "viewModeName": "",
+      "targetAttrKey": "createcompany",
+      "targetAttrName": "鍒涘缓鍏徃",
+      "sourceAttrKey": "createcompany",
+      "sourceAttrName": "鍒涘缓鍏徃",
+      "viewModelName": "鍩烘湰瑙嗗浘",
+      "viewName": "鍩烘湰瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114231",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "8A71CDE9-11A7-1095-4603-A7E9D1FB66B6",
+      "nameOid": "9F59B1E2-2268-885B-07AC-F34C4972FE86",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-1469D-F1E9-6A31-21B9-E5FF7A03BBEA",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "0131469D-F1E9-6A31-21B9-E5FF7A03BBEA",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890762",
+      "viewModeName": "",
+      "targetAttrKey": "kucunwl",
+      "targetAttrName": "搴撳瓨鐗╂枡",
+      "sourceAttrKey": "kucunwl",
+      "sourceAttrName": "搴撳瓨鐗╂枡",
+      "viewModelName": "鍩烘湰瑙嗗浘",
+      "viewName": "鍩烘湰瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114204",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "5F17F832-DAE2-08D5-792D-0B6CBF0199F4",
+      "nameOid": "85F86261-18E4-4978-BFAE-BBFF0C75F7C1",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-07512-3fff-4ff0-bf25-f13fcd2a4acf",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "a2307512-3fff-4ff0-bf25-f13fcd2a4acf",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890762",
+      "viewModeName": "",
+      "targetAttrKey": "id",
+      "targetAttrName": "缂栫爜",
+      "sourceAttrKey": "id",
+      "sourceAttrName": "缂栫爜",
+      "viewModelName": "鍩烘湰瑙嗗浘",
+      "viewName": "鍩烘湰瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114206",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "D9D48ED4-4481-60B6-582E-6A9910F3D907",
+      "nameOid": "0BAF9BDA-A707-DC18-96A0-FEA0D68D9036",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-1fe09-da6f-4412-b92f-f411d341e92d",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "3b11fe09-da6f-4412-b92f-f411d341e92d",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890762",
+      "viewModeName": "",
+      "targetAttrKey": "lcstatus",
+      "targetAttrName": "鐘舵��",
+      "sourceAttrKey": "lcstatus",
+      "sourceAttrName": "鐘舵��",
+      "viewModelName": "鍩烘湰瑙嗗浘",
+      "viewName": "鍩烘湰瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114208",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "2A28E3E8-BB25-9652-804E-A1185F52E1D9",
+      "nameOid": "F385803E-8EA2-7F2B-B22D-63FF527FCB1C",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-F8C09-A123-391B-E119-748B70028952",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "264F8C09-A123-391B-E119-748B70028952",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890762",
+      "viewModeName": "",
+      "targetAttrKey": "oldcode",
+      "targetAttrName": "鍘嗗彶缂栧彿",
+      "sourceAttrKey": "oldcode",
+      "sourceAttrName": "鍘嗗彶缂栧彿",
+      "viewModelName": "鍩烘湰瑙嗗浘",
+      "viewName": "鍩烘湰瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114210",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "3C3ACABB-E692-FED2-ADD9-F04532A43D00",
+      "nameOid": "1AB942E6-E956-E44B-B140-AA75222FAF4F",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-9ab10-a3bf-4b51-b8c5-337132018f1d",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "5469ab10-a3bf-4b51-b8c5-337132018f1d",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890762",
+      "viewModeName": "",
+      "targetAttrKey": "name",
+      "targetAttrName": "鐗╂枡鍚嶇О",
+      "sourceAttrKey": "name",
+      "sourceAttrName": "鐗╂枡鍚嶇О",
+      "viewModelName": "鍩烘湰瑙嗗浘",
+      "viewName": "鍩烘湰瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114212",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "CAF4CC4C-D2BD-CE2C-7BB1-30799A124EBB",
+      "nameOid": "939A13F3-814A-1CD3-0896-429C1D2F803D",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-F0DDF-C5DB-8616-D752-20360970AFB6",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "0FAF0DDF-C5DB-8616-D752-20360970AFB6",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "materialclassify",
+      "targetAttrName": "鐗╂枡鍒嗙被",
+      "sourceAttrKey": "materialclassify",
+      "sourceAttrName": "鐗╂枡鍒嗙被",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114213",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "43AFA453-AD02-958C-413D-EDC58EFF27B3",
+      "nameOid": "E41F372D-60FD-2462-E6B1-DF33D5C787E2",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-329e5-b881-4128-aea4-f1b8f67eb5e7",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "3d7329e5-b881-4128-aea4-f1b8f67eb5e7",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "firstfl",
+      "targetAttrName": "涓�绾х鐞嗗垎绫�",
+      "sourceAttrKey": "firstfl",
+      "sourceAttrName": "涓�绾х鐞嗗垎绫�",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114214",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "BCBAE106-DD94-5B6C-C4AF-3AD50F513E93",
+      "nameOid": "B52551C4-E35F-9E18-AD63-AD42FC89A15A",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.338",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-43fc3-a604-4fd8-a2c9-482712301285",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "00a43fc3-a604-4fd8-a2c9-482712301285",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "secondfl",
+      "targetAttrName": "浜岀骇绠$悊鍒嗙被",
+      "sourceAttrKey": "secondfl",
+      "sourceAttrName": "浜岀骇绠$悊鍒嗙被",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114215",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "1E5B2974-DEAF-7489-0EEA-1E6EB5AEC7E8",
+      "nameOid": "CC456D46-7D32-1E39-05EE-2CF8F9D3754E",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-8e06b-b297-4738-ad6d-0b1b0064ae3e",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "53d8e06b-b297-4738-ad6d-0b1b0064ae3e",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "thrifl",
+      "targetAttrName": "涓夌骇绠$悊鍒嗙被",
+      "sourceAttrKey": "thrifl",
+      "sourceAttrName": "涓夌骇绠$悊鍒嗙被",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114216",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "14C8547F-B31A-E007-170F-9953B57AC003",
+      "nameOid": "C3C87FAB-5F9F-3E6E-F433-5DAA335A35DB",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-618cd-475b-4235-8783-20fd3e19e397",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "e7b618cd-475b-4235-8783-20fd3e19e397",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "xiaoshouwl",
+      "targetAttrName": "閿�鍞墿鏂�",
+      "sourceAttrKey": "xiaoshouwl",
+      "sourceAttrName": "閿�鍞墿鏂�",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114217",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "880DCB14-8FA6-26FE-796F-1896A8DEFD63",
+      "nameOid": "F40FB67E-ED46-F375-F302-EE991F98FAEC",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-3de12-01e3-4a96-9323-ee025f57fe75",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "4ad3de12-01e3-4a96-9323-ee025f57fe75",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "xinghaoguige",
+      "targetAttrName": "瑙勬牸鍨嬪彿",
+      "sourceAttrKey": "xinghaoguige",
+      "sourceAttrName": "瑙勬牸鍨嬪彿",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114218",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "1F491FBC-B16C-A715-231D-57825F3FDBBF",
+      "nameOid": "63DD90E9-716C-DB3C-E4B3-3CB59425228F",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-059FA-B513-114A-318C-9D7FB3E06736",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "894059FA-B513-114A-318C-9D7FB3E06736",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "jiliangdw",
+      "targetAttrName": "璁¢噺鍗曚綅",
+      "sourceAttrKey": "jiliangdw",
+      "sourceAttrName": "璁¢噺鍗曚綅",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114219",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "E1EAE8B0-2C14-3E39-87F2-D2139D116446",
+      "nameOid": "DA491C02-DB3E-1FCA-9896-D9BF8D60699F",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-4C611-FC2A-C4EB-D85E-74B008515EAB",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "1894C611-FC2A-C4EB-D85E-74B008515EAB",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "chukufangshi",
+      "targetAttrName": "鍑哄簱鏂瑰紡",
+      "sourceAttrKey": "chukufangshi",
+      "sourceAttrName": "鍑哄簱鏂瑰紡",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114220",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "6295A1BB-95B4-8D25-B508-663CDE89C6B8",
+      "nameOid": "0246385E-5435-3859-F5E1-BC1C6B4246F9",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-43953-2216-4171-b1a6-139244e63a95",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "e3d43953-2216-4171-b1a6-139244e63a95",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "description",
+      "targetAttrName": "澶囨敞璇存槑",
+      "sourceAttrKey": "description",
+      "sourceAttrName": "澶囨敞璇存槑",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114221",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "3E0811EF-B738-27DD-AA77-FBA44CE55A01",
+      "nameOid": "113BB469-ECED-8393-D6F2-7F9B85B4060F",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.342",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-D6882-1BA9-BBA6-2344-B433A6FDCA39",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "902D6882-1BA9-BBA6-2344-B433A6FDCA39",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890763",
+      "viewModeName": "",
+      "targetAttrKey": "hesuanfenlei",
+      "targetAttrName": "鏍哥畻鍒嗙被",
+      "sourceAttrKey": "hesuanfenlei",
+      "sourceAttrName": "鏍哥畻鍒嗙被",
+      "viewModelName": "閲囪喘瑙嗗浘",
+      "viewName": "閲囪喘瑙嗗浘",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114222",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "E2CF6A7E-AFEA-5474-A8E7-EAD9C6BEE06C",
+      "nameOid": "DE77BF7D-DC65-7E3F-C369-2E17217ADE96",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-E34DA-ABF6-9813-8AB0-7651E4B2D54B",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "01CE34DA-ABF6-9813-8AB0-7651E4B2D54B",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890764",
+      "viewModeName": "",
+      "targetAttrKey": "materialtype",
+      "targetAttrName": "鐗╂枡绫诲瀷",
+      "sourceAttrKey": "materialtype",
+      "sourceAttrName": "鐗╂枡绫诲瀷",
+      "viewModelName": "閿�鍞鍥�",
+      "viewName": "閿�鍞鍥�",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114223",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "84F730D2-EEA9-DFC4-FFED-10457C35FB0E",
+      "nameOid": "4285DCED-27F9-5CF9-3965-8D2EBF4F6328",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-38D7E-E51A-81B3-558D-FF1212DFC757",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "2FA38D7E-E51A-81B3-558D-FF1212DFC757",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890764",
+      "viewModeName": "",
+      "targetAttrKey": "tuhao",
+      "targetAttrName": "鍥惧彿",
+      "sourceAttrKey": "tuhao",
+      "sourceAttrName": "鍥惧彿",
+      "viewModelName": "閿�鍞鍥�",
+      "viewName": "閿�鍞鍥�",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114224",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "48381EB2-4674-6B49-79FF-191BFB17B855",
+      "nameOid": "613951FA-9935-4FEB-E729-4F3CCD884515",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-BF978-7354-CE66-415B-16ABD3ED036D",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "B23BF978-7354-CE66-415B-16ABD3ED036D",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890764",
+      "viewModeName": "",
+      "targetAttrKey": "zhibaoqi",
+      "targetAttrName": "璐ㄤ繚鏈�",
+      "sourceAttrKey": "zhibaoqi",
+      "sourceAttrName": "璐ㄤ繚鏈�",
+      "viewModelName": "閿�鍞鍥�",
+      "viewName": "閿�鍞鍥�",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114225",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "0A731F1F-B033-A068-CE37-4BB00BF222EE",
+      "nameOid": "4D08AE69-BFF1-71E9-0532-D76A2DD30BAF",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-46119-D74B-4818-9A89-6235E2234395",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "26D46119-D74B-4818-9A89-6235E2234395",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890764",
+      "viewModeName": "",
+      "targetAttrKey": "revisionvalue",
+      "targetAttrName": "鐗堟湰",
+      "sourceAttrKey": "revisionvalue",
+      "sourceAttrName": "鐗堟湰",
+      "viewModelName": "閿�鍞鍥�",
+      "viewName": "閿�鍞鍥�",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114226",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "1B4C043F-E464-5DDC-5BCD-2FCC9D3C1EBF",
+      "nameOid": "655623AA-9BAA-ECED-2366-C3AEDAC5CAE5",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-752FC-DC6E-361E-B960-607D7FF908E6",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "52A752FC-DC6E-361E-B960-607D7FF908E6",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890764",
+      "viewModeName": "",
+      "targetAttrKey": "creator",
+      "targetAttrName": "鍒涘缓浜�",
+      "sourceAttrKey": "creator",
+      "sourceAttrName": "鍒涘缓浜�",
+      "viewModelName": "閿�鍞鍥�",
+      "viewName": "閿�鍞鍥�",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114227",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "14672EF9-7686-8FF6-2ACB-C45ECC0B49E9",
+      "nameOid": "2D575115-E4E0-A68B-5463-E8D416AF1CF6",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-799D8-6721-3D79-8EE3-75DAF0680B7E",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "518799D8-6721-3D79-8EE3-75DAF0680B7E",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890764",
+      "viewModeName": "",
+      "targetAttrKey": "createtime",
+      "targetAttrName": "鍒涘缓鏃堕棿",
+      "sourceAttrKey": "createtime",
+      "sourceAttrName": "鍒涘缓鏃堕棿",
+      "viewModelName": "閿�鍞鍥�",
+      "viewName": "閿�鍞鍥�",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    },
+    {
+      "oid": "2023022114228",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "F5C2A81C-1105-7DB7-574F-EF46C8199F4A",
+      "nameOid": "390CEE14-E838-3496-7B7C-336A0912BF79",
+      "btmname": "jintegmapconifg",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-04-01 15:08:55",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-04-01 15:08:55.343",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "defaultValue": "",
+      "metaListId": "XJ-9368E-9BA8-38E8-73F3-7D0531A22009",
+      "sourceClassifyId": "XJ-FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "sourceClassifyName": "浜у搧",
+      "targetAttrId": "4049368E-9BA8-38E8-73F3-7D0531A22009",
+      "targetClassifyId": "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B",
+      "viewModeId": "XJ-B5416-4928-CFB8-84F5-1955AA890764",
+      "viewModeName": "",
+      "targetAttrKey": "lastmodifier",
+      "targetAttrName": "鏈�鍚庝慨鏀逛汉",
+      "sourceAttrKey": "lastmodifier",
+      "sourceAttrName": "鏈�鍚庝慨鏀逛汉",
+      "viewModelName": "閿�鍞鍥�",
+      "viewName": "閿�鍞鍥�",
+      "targetClassifyName": "浜у搧",
+      "dockingPreAttrRangeVoList": []
+    }
+  ],
+  "msg": "鎿嶄綔鎴愬姛"
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/pl_code_jrange.json b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/pl_code_jrange.json
new file mode 100644
index 0000000..ba6b866
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/data/pl_code_jrange.json
@@ -0,0 +1,192 @@
+{
+  "code": 200,
+  "success": true,
+  "data": [
+    {
+      "oid": "2023022114232",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "097DC30F-CC8F-595D-0530-7C86C176FC61",
+      "nameOid": "D3FB491C-0571-3BB2-604E-563CC579CCAC",
+      "btmname": "jrange",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-03-30 23:35:13",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-03-30 23:35:13.027",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "metaListId": "XJ-E34DA-ABF6-9813-8AB0-7651E4B2D54B",
+      "numText": "鏉愭枡",
+      "numTextValue": "1001",
+      "targetNumText": "鏉愭枡",
+      "targetNumTextValue": "7"
+    },
+    {
+      "oid": "2023022114233",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "ABFFA8CA-2BD0-D894-1B2C-2294CBADCBAD",
+      "nameOid": "667D8ACC-FA79-521D-9B37-9EFAB338E06A",
+      "btmname": "jrange",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-03-30 23:35:13",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-03-30 23:35:13.027",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "metaListId": "XJ-E34DA-ABF6-9813-8AB0-7651E4B2D54B",
+      "numText": "鎴愬搧",
+      "numTextValue": "1002",
+      "targetNumText": "鎴愬搧",
+      "targetNumTextValue": "5"
+    },
+    {
+      "oid": "2023022114234",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "471212E1-CF4D-1899-C692-FBC3183F2A84",
+      "nameOid": "A886A5B0-8617-7FB7-562C-AE3DBBF373EA",
+      "btmname": "jrange",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-03-30 23:35:13",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-03-30 23:35:13.027",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "metaListId": "XJ-E34DA-ABF6-9813-8AB0-7651E4B2D54B",
+      "numText": "鏈虹墿鏂�",
+      "numTextValue": "1003",
+      "targetNumText": "鏈虹墿鏂�",
+      "targetNumTextValue": "6"
+    },
+    {
+      "oid": "2023022114235",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "E08263A0-A7C8-8DBB-3CF0-63EE863A669A",
+      "nameOid": "B8CC570A-0448-3E54-9686-0A4EB0004638",
+      "btmname": "jrange",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-03-30 23:35:13",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-03-30 23:35:13.027",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "metaListId": "XJ-E34DA-ABF6-9813-8AB0-7651E4B2D54B",
+      "numText": "缁间繚",
+      "numTextValue": "1004",
+      "targetNumText": "缁间繚",
+      "targetNumTextValue": "2"
+    },
+    {
+      "oid": "2023022114236",
+      "id": "",
+      "name": "",
+      "description": "",
+      "revisionOid": "C641A4DE-9675-2172-A5AF-C313E6C2A36D",
+      "nameOid": "DBB71651-D31D-C8BC-15FB-23A9D28A1325",
+      "btmname": "jrange",
+      "lastR": "1",
+      "firstR": "1",
+      "lastV": "1",
+      "firstV": "1",
+      "creator": "1",
+      "createTime": "2023-03-30 23:35:13",
+      "lastModifier": "1",
+      "lastModifyTime": "2023-03-30 23:35:13",
+      "revisionRule": "",
+      "revisionSeq": 1,
+      "revisionValue": "",
+      "versionRule": "0",
+      "versionSeq": 1,
+      "versionValue": "1",
+      "lcStatus": "Exist",
+      "lcStatusText": "",
+      "ts": "2023-03-30 23:35:13.027",
+      "owner": "1",
+      "copyFromVersion": "",
+      "secretGrade": -1,
+      "secretGradeText": "",
+      "lctid": "defaultLC",
+      "data": {},
+      "metaListId": "XJ-E34DA-ABF6-9813-8AB0-7651E4B2D54B",
+      "numText": "璧勪骇",
+      "numTextValue": "1005",
+      "targetNumText": "璧勪骇",
+      "targetNumTextValue": "4"
+    }
+  ],
+  "msg": "鎿嶄綔鎴愬姛"
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/pom.xml b/Source/UBCS/ubcs-service/ubcs-code/pom.xml
index 43e9353..c885818 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/pom.xml
+++ b/Source/UBCS/ubcs-service/ubcs-code/pom.xml
@@ -51,11 +51,34 @@
             <version>${mybatisplus.join.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.cxf</groupId>
+            <artifactId>cxf-spring-boot-starter-jaxws</artifactId>
+            <version>3.3.1</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.springframework.boot</groupId>
+                    <artifactId>spring-boot-starter-logging</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.springframework.boot</groupId>
+                    <artifactId>spring-boot-starter</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>javax.validation</groupId>
+                    <artifactId>validation-api</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.springframework.boot</groupId>
+                    <artifactId>spring-boot-starter-web</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <!--<dependency>
             <groupId>com.vci.ubcs</groupId>
             <artifactId>ubcs-webservice</artifactId>
             <version>3.0.1.RELEASE</version>
             <scope>compile</scope>
-        </dependency>
+        </dependency>-->
     </dependencies>
     <build>
         <plugins>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/constant/MdmBtmTypeConstant.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/constant/MdmBtmTypeConstant.java
index fc4aee3..90aa270 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/constant/MdmBtmTypeConstant.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/constant/MdmBtmTypeConstant.java
@@ -5,6 +5,21 @@
  */
 public class MdmBtmTypeConstant {
 
+
+	/**
+	 * 鐘舵��
+	 */
+	public static final String CODE_STATUS_FILED = "lcstatus";
+
+	/**
+	 * 闆嗗洟鐮佺殑瀛楁
+	 */
+	public static final String CODE_GROUP_FIELD = "groupcode";
+
+	/**
+	 * 鍒嗙被鐨勪富閿瓧娈�
+	 */
+	public static final String CODE_CLASSIFY_OID_FIELD = "codeclsfid";
     /**
      * 涓婚搴撳垎绫�
      */
@@ -36,6 +51,11 @@
      * 鍏抽敭灞炴�у垽鏂噸澶�
      */
     public static final String CODE_KEY_ATTR_REPEAT_RULE = "codekeyattrrepeat";
+
+	/**
+	 * 鍙傜収閰嶇疆
+	 */
+	public static final String CODE_REFER_CONFIG = "codereferconfig";
 
     /**
      * 鐩镐技鏌ヨ瑙勫垯
@@ -151,23 +171,36 @@
     public static final String SYS_INT_HEADER = "sysintheader";
 
 
-    /**
-     * 闆嗘垚灞炴�ф槧灏勫叧绯讳笟鍔$被鍨�
-     */
-    public static final String DOCKING_PRE_JINTEGMAPCONFIG = "jintegmapconifg";
+	/**
+	 * 闆嗘垚灞炴�ф槧灏勫叧绯讳笟鍔$被鍨�
+	 */
+	public static final String DOCKING_PRE_JINTEGMAPCONFIG = "jintegmapconfig";
 
-    /**
-     * 闆嗘垚灞炴�ф槧灏勫叧绯讳笟鍔$被鍨�
-     */
-    public static final String DOCKING_PRE_JCLASS = "jclass";
-    /**
-     * 闆嗘垚灞炴�ф槧灏勫叧绯讳笟鍔$被鍨�
-     */
-    public static final String DOCKING_PRE_JMETAATRR = "jmetaattr";
+	/**
+	 * 闆嗘垚闆嗗洟鍒嗙被涓氬姟绫诲瀷
+	 */
+	public static final String DOCKING_PRE_JCLASSIFY = "jclassify";
+	/**
+	 * 闆嗘垚闆嗗洟妯″瀷灞炴�т笟鍔$被鍨�
+	 */
+	public static final String DOCKING_PRE_JMETAATRR = "jmetaattr";
 
-    /**
-     * 闆嗘垚灞炴�ф槧灏勫叧绯讳笟鍔$被鍨�
-     */
-    public static final String DOCKING_PRE_JRANGE = "jrange";
+	/**
+	 * 闆嗘垚灞炴�у彇鍊艰寖鍥村叧绯讳笟鍔$被鍨�
+	 */
+	public static final String DOCKING_PRE_JRANGE = "jrange";
+
+
+	/**
+	 * 闆嗘垚闆嗗洟鐢宠鍗曚笟鍔$被鍨�
+	 */
+	public static final String DOCKING_PRE_JAPPLYFORM = "japplyform";
+
+
+
+	/**
+	 * 闆嗘垚闆嗗洟妯″瀷灞炴�т笟鍔$被鍨�
+	 */
+	public static final String DOCKING_PRE_JVIEWMODEL = "jviewmodel";
 
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeReferConfigController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeReferConfigController.java
index fc02263..0af732b 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeReferConfigController.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeReferConfigController.java
@@ -1,20 +1,15 @@
 package com.vci.ubcs.code.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.vci.ubcs.code.entity.CodeReferConfig;
-import com.vci.ubcs.code.service.CodeReferConfigService;
+import com.vci.ubcs.code.dto.CodeReferConfigDTO;
+import com.vci.ubcs.code.service.ICodeReferConfigService;
 import com.vci.ubcs.code.vo.CodeReferConfigVO;
-import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
 import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject;
-import org.apache.ibatis.annotations.Param;
-import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageRequest;
-import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import java.util.List;
 
 /**
  * 鍙傜収閰嶇疆琛�(CodeReferConfig)琛ㄦ帶鍒跺眰
@@ -30,7 +25,7 @@
      * 鏈嶅姟瀵硅薄
      */
     @Resource
-    private CodeReferConfigService codeReferconfigService;
+    private ICodeReferConfigService codeReferconfigService;
 
     /**
      * 鍒嗛〉鏌ヨ
@@ -39,8 +34,18 @@
      */
     @GetMapping("getReferConfigPage")
     public R<IPage<CodeReferConfigVO>> queryByPage(BladeQueryObject bladeQueryObject) {
-        return R.data(this.codeReferconfigService.queryByPage(bladeQueryObject));
+        return R.data(this.codeReferconfigService.queryByJoinPage(bladeQueryObject));
     }
+
+	/**
+	 * 鏌ヨ鍒楄〃
+	 * @param codeReferConfigVO 绛涢�夋潯浠�
+	 * @return 鏌ヨ缁撴灉
+	 */
+	@GetMapping("getReferConfigList")
+	public R<List<CodeReferConfigVO>> queryByList(CodeReferConfigVO codeReferConfigVO) {
+		return R.data(this.codeReferconfigService.queryByList(codeReferConfigVO));
+	}
 
     /**
      * 閫氳繃涓婚敭鏌ヨ鍗曟潯鏁版嵁
@@ -49,41 +54,41 @@
      * @return 鍗曟潯鏁版嵁
      */
     @GetMapping("getByOid")
-    public R<CodeReferConfig> queryById(@RequestParam("oid") String oid) {
+    public R<CodeReferConfigVO> queryById(@RequestParam("oid") String oid) {
         return R.data(this.codeReferconfigService.queryById(oid));
     }
 
     /**
      * 鏂板鏁版嵁
      *
-     * @param codeReferConfig 瀹炰綋
+     * @param codeReferConfigVO 瀹炰綋
      * @return 鏂板缁撴灉
      */
-    @PostMapping("/save")
-    public R<CodeReferConfig> add(CodeReferConfig codeReferConfig) {
-        return R.data(this.codeReferconfigService.insert(codeReferConfig));
+    @PostMapping("/addSave")
+    public R<CodeReferConfigVO> add(CodeReferConfigVO codeReferConfigVO) {
+        return this.codeReferconfigService.insert(codeReferConfigVO);
     }
 
     /**
      * 缂栬緫鏁版嵁
      *
-     * @param codeReferConfig 瀹炰綋
+     * @param codeReferConfigVO 瀹炰綋
      * @return 缂栬緫缁撴灉
      */
     @PutMapping("/edit")
-    public R<CodeReferConfig> edit(CodeReferConfig codeReferConfig) {
-        return R.data(this.codeReferconfigService.update(codeReferConfig));
+    public R<CodeReferConfigVO> edit(CodeReferConfigVO codeReferConfigVO) {
+        return this.codeReferconfigService.update(codeReferConfigVO);
     }
 
     /**
      * 鍒犻櫎鏁版嵁
      *
-     * @param id 涓婚敭
+     * @param codeReferConfigDTO 涓婚敭
      * @return 鍒犻櫎鏄惁鎴愬姛
      */
     @DeleteMapping("/del")
-    public R<Boolean> deleteById(String id) {
-        return R.data(this.codeReferconfigService.deleteById(id));
+    public R<Boolean> deleteById(CodeReferConfigDTO codeReferConfigDTO) {
+        return this.codeReferconfigService.deleteById(codeReferConfigDTO);
     }
 
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeShowFieldConfigController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeShowFieldConfigController.java
deleted file mode 100644
index d20f0c8..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeShowFieldConfigController.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package com.vci.ubcs.code.controller;
-
-
-import com.vci.ubcs.code.entity.CodeShowFieldConfig;
-import com.vci.ubcs.code.service.CodeShowFieldConfigService;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageRequest;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.*;
-
-import javax.annotation.Resource;
-
-/**
- * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏄剧ず鐨勫睘鎬ч厤缃〃(CodeShowFieldConfig)琛ㄦ帶鍒跺眰
- *
- * @author ludc
- * @since 2023-05-19 17:58:55
- */
-@RestController
-@RequestMapping("codeShowFieldConfig")
-public class CodeShowFieldConfigController {
-
-    /**
-     * 鏈嶅姟瀵硅薄
-     */
-    @Resource
-    private CodeShowFieldConfigService codeShowFieldConfigService;
-
-    /**
-     * 鍒嗛〉鏌ヨ
-     *
-     * @param plCodeShowfieldconfig 绛涢�夋潯浠�
-     * @param pageRequest      鍒嗛〉瀵硅薄
-     * @return 鏌ヨ缁撴灉
-     */
-    @GetMapping
-    public ResponseEntity<Page<CodeShowFieldConfig>> queryByPage(CodeShowFieldConfig plCodeShowfieldconfig, PageRequest pageRequest) {
-        return ResponseEntity.ok(this.codeShowFieldConfigService.queryByPage(plCodeShowfieldconfig, pageRequest));
-    }
-
-    /**
-     * 閫氳繃涓婚敭鏌ヨ鍗曟潯鏁版嵁
-     *
-     * @param id 涓婚敭
-     * @return 鍗曟潯鏁版嵁
-     */
-    @GetMapping("{id}")
-    public ResponseEntity<CodeShowFieldConfig> queryById(@PathVariable("id") String id) {
-        return ResponseEntity.ok(this.codeShowFieldConfigService.queryById(id));
-    }
-
-    /**
-     * 鏂板鏁版嵁
-     *
-     * @param plCodeShowfieldconfig 瀹炰綋
-     * @return 鏂板缁撴灉
-     */
-    @PostMapping
-    public ResponseEntity<CodeShowFieldConfig> add(CodeShowFieldConfig plCodeShowfieldconfig) {
-        return ResponseEntity.ok(this.codeShowFieldConfigService.insert(plCodeShowfieldconfig));
-    }
-
-    /**
-     * 缂栬緫鏁版嵁
-     *
-     * @param plCodeShowfieldconfig 瀹炰綋
-     * @return 缂栬緫缁撴灉
-     */
-    @PutMapping
-    public ResponseEntity<CodeShowFieldConfig> edit(CodeShowFieldConfig plCodeShowfieldconfig) {
-        return ResponseEntity.ok(this.codeShowFieldConfigService.update(plCodeShowfieldconfig));
-    }
-
-    /**
-     * 鍒犻櫎鏁版嵁
-     *
-     * @param id 涓婚敭
-     * @return 鍒犻櫎鏄惁鎴愬姛
-     */
-    @DeleteMapping
-    public ResponseEntity<Boolean> deleteById(String id) {
-        return ResponseEntity.ok(this.codeShowFieldConfigService.deleteById(id));
-    }
-
-}
-
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSrchCondConfigController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSrchCondConfigController.java
deleted file mode 100644
index b902a7d..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSrchCondConfigController.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package com.vci.ubcs.code.controller;
-
-import com.vci.ubcs.code.entity.CodeSrchCondConfig;
-import com.vci.ubcs.code.service.CodeSrchCondConfigService;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageRequest;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.*;
-
-import javax.annotation.Resource;
-
-/**
- * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏌ヨ鏉′欢閰嶇疆琛�(CodeSrchCondConfig)琛ㄦ帶鍒跺眰
- *
- * @author ludc
- * @since 2023-05-19 17:58:56
- */
-@RestController
-@RequestMapping("codeSrchCondConfig")
-public class CodeSrchCondConfigController {
-    /**
-     * 鏈嶅姟瀵硅薄
-     */
-    @Resource
-    private CodeSrchCondConfigService codeSrchCondConfigService;
-
-    /**
-     * 鍒嗛〉鏌ヨ
-     *
-     * @param plCodeSrchcondconfig 绛涢�夋潯浠�
-     * @param pageRequest      鍒嗛〉瀵硅薄
-     * @return 鏌ヨ缁撴灉
-     */
-    @GetMapping
-    public ResponseEntity<Page<CodeSrchCondConfig>> queryByPage(CodeSrchCondConfig plCodeSrchcondconfig, PageRequest pageRequest) {
-        return ResponseEntity.ok(this.codeSrchCondConfigService.queryByPage(plCodeSrchcondconfig, pageRequest));
-    }
-
-    /**
-     * 閫氳繃涓婚敭鏌ヨ鍗曟潯鏁版嵁
-     *
-     * @param id 涓婚敭
-     * @return 鍗曟潯鏁版嵁
-     */
-    @GetMapping("{id}")
-    public ResponseEntity<CodeSrchCondConfig> queryById(@PathVariable("id") String id) {
-        return ResponseEntity.ok(this.codeSrchCondConfigService.queryById(id));
-    }
-
-    /**
-     * 鏂板鏁版嵁
-     *
-     * @param plCodeSrchcondconfig 瀹炰綋
-     * @return 鏂板缁撴灉
-     */
-    @PostMapping
-    public ResponseEntity<CodeSrchCondConfig> add(CodeSrchCondConfig plCodeSrchcondconfig) {
-        return ResponseEntity.ok(this.codeSrchCondConfigService.insert(plCodeSrchcondconfig));
-    }
-
-    /**
-     * 缂栬緫鏁版嵁
-     *
-     * @param plCodeSrchcondconfig 瀹炰綋
-     * @return 缂栬緫缁撴灉
-     */
-    @PutMapping
-    public ResponseEntity<CodeSrchCondConfig> edit(CodeSrchCondConfig plCodeSrchcondconfig) {
-        return ResponseEntity.ok(this.codeSrchCondConfigService.update(plCodeSrchcondconfig));
-    }
-
-    /**
-     * 鍒犻櫎鏁版嵁
-     *
-     * @param id 涓婚敭
-     * @return 鍒犻櫎鏄惁鎴愬姛
-     */
-    @DeleteMapping
-    public ResponseEntity<Boolean> deleteById(String id) {
-        return ResponseEntity.ok(this.codeSrchCondConfigService.deleteById(id));
-    }
-
-}
-
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingPreApplyCodeController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingPreApplyCodeController.java
deleted file mode 100644
index 6ddef1b..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingPreApplyCodeController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.vci.ubcs.code.controller;
-
-
-import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
-import com.vci.ubcs.code.service.IDockingPreAttrMappingService;
-import com.vci.ubcs.code.service.IDockingPreAttrRangeService;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.AllArgsConstructor;
-import org.springblade.core.tool.api.R;
-import org.springframework.web.bind.annotation.*;
-
-import javax.validation.Valid;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * 缂栫爜淇℃伅 鎺у埗鍣�
- *
- * @author xiejun
- * @since 2023-05-23
- */
-@RestController
-@AllArgsConstructor
-@RequestMapping("ubcs-code/DockingPreApplyCode")
-@Api(value = "闆嗗洟灞炴�ф槧灏勯厤缃�", tags = "闆嗗洟灞炴�ф槧灏勯厤缃帴鍙�")
-public class DockingPreApplyCodeController {
-	/**
-	 * 闆嗗洟灞炴�ф槧灏勯厤缃睘鎬�
-	 */
-	private final IDockingPreAttrMappingService dockingPreAttrMappingService;
-	/***
-	 * 灞炴�ф灇涓捐寖鍥存湇鍔�
-	 */
-
-	private final IDockingPreAttrRangeService dockingPreAttrRangeService;
-
-	/**
-	 * 鏍规嵁涓绘暟鎹紪鐮乷id鑾峰彇闆嗗洟灞炴�ф槧灏勪俊鎭�
-	 * @param codeClassifyId 涓婚敭
-	 * @return 涓绘暟鎹紪鐮佽鍒欐樉绀哄璞�
-	 */
-	@GetMapping("/gridAttrMapping")
-	@ApiOperationSupport(order = 8)
-	@ApiOperation(value = "鍒嗙被涓婚敭鑾峰彇涓庨泦鍥㈡ā鍨嬪睘鎬ф槧灏勫叧绯�", notes = "浼犲叆codeClassifyId")
-	public R getDockingAttrMappingsByCodeClassId(String codeClassifyId){
-		List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList=dockingPreAttrMappingService.getdockingAttrMappingsByCodeclassId(codeClassifyId);
-		return R.data(dockingPreAttrMappingVOList);
-	}
-
-	/**
-	 * 鏍规嵁闆嗗洟灞炴�d鑾峰彇灞炴�ф灇涓捐寖鍥�
-	 * @param meatId 涓婚敭
-	 * @return
-	 */
-	@GetMapping("/gridAttrRanges")
-	@ApiOperationSupport(order = 8)
-	@ApiOperation(value = "鏍规嵁灞炴�d鑾峰彇灞炴�ф灇涓捐寖鍥�", notes = "浼犲叆")
-	public R getDockingPreAttrRangesByMetaId(String meatId){
-		List<DockingPreAttrRangeVO> dockingPreAttrRangeVOList=dockingPreAttrRangeService.getDockingPreAttrRangesByMetaId(meatId);
-		return R.data(dockingPreAttrRangeVOList);
-	}
-
-	/**
-	 * 淇濆瓨灞炴�ф槧灏勯厤缃粍浠�
-	 * @param dockingPreAttrMappingVOList 灞炴�ф槧灏勯厤缃暟鎹紶杈撳璞�
-	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
-	 */
-	@PostMapping( "/batchAddSave")
-	public R batchSave(@Valid @RequestBody List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList){
-		List<DockingPreAttrMappingVO> dockingPreAttrRangeVOS=new ArrayList<>();
-		try {
-			 dockingPreAttrRangeVOS = dockingPreAttrMappingService.batchAddSave(dockingPreAttrMappingVOList);
-		}catch (Exception e){
-			return R.fail("闆嗗洟闆嗘垚灞炴�ф槧灏勯厤缃繚瀛樺け璐ワ細"+e.getMessage());
-		}
-		return R.data(dockingPreAttrRangeVOS);
-	}
-
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
index e99c9da..87aa4dd 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
@@ -11,6 +11,7 @@
 import com.vci.ubcs.code.service.MdmIOService;
 import com.vci.ubcs.code.vo.pagemodel.*;
 import com.vci.ubcs.starter.annotation.VciBusinessLog;
+import com.vci.ubcs.starter.revision.model.BaseModel;
 import com.vci.ubcs.starter.util.LocalFileUtil;
 import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
 import com.vci.ubcs.starter.web.pagemodel.DataGrid;
@@ -19,7 +20,6 @@
 import com.vci.ubcs.starter.web.util.LangBaseUtil;
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
 import io.swagger.annotations.Api;
-import lombok.AllArgsConstructor;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springblade.core.tool.api.R;
@@ -31,6 +31,7 @@
 import java.io.File;
 import java.io.IOException;
 import java.nio.charset.StandardCharsets;
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
@@ -148,7 +149,7 @@
 	 */
 	@PostMapping("/addSaveCode")
 	@VciBusinessLog(operateName = "鐢宠鍗曚釜缂栫爜")
-	public R addSaveCode(@RequestBody CodeOrderDTO orderDTO){
+	public R addSaveCode(@RequestBody CodeOrderDTO orderDTO) throws Exception {
 		return R.success(engineService.addSaveCode(orderDTO));
 	}
 
@@ -469,4 +470,12 @@
 	public MdmUIInfoVO getUIInfoByClassifyOid(String codeClassifyOid,String functionId){
 		return engineService.getUIInfoByClassifyOid(codeClassifyOid,functionId);
 	}
+
+
+	@GetMapping("/thisistest")
+	@ResponseBody
+	public List<BaseModel> thisistest(String codeClassifyOid, String functionId) throws Exception {
+		return engineService.selectByTypeAndOid("wupin", "b1511bb3-a773-43e2-ac85-a7fde7314a0f,3e08970024835e69f6c2b2ecd90c48c3,582ff205-0dfb-43e0-8223-e772ff1851ab,db0400fe-cc90-4d9d-8da7-1edf06b1481b");
+//		return engineService.getUIInfoByClassifyOid(codeClassifyOid,functionId);
+	}
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFieldTypeEnum.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFieldTypeEnum.java
new file mode 100644
index 0000000..2457db2
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFieldTypeEnum.java
@@ -0,0 +1,146 @@
+package com.vci.ubcs.code.enumpack;
+
+import com.vci.ubcs.starter.web.enumpck.BaseEnum;
+
+/**
+ * 鍙傜収閰嶇疆涓敤鍒扮殑鈥斺�斿瓧娈电被鍨�
+ * @author ludc
+ * @date 2023/5/24 14:09
+ */
+public enum CodeReferConfigFieldTypeEnum implements BaseEnum {
+
+	/**
+	 * 鏂囨湰妗�
+	 */
+	TEXT("text","鏂囨湰妗�"),
+
+	/**
+	 * 涓嬫媺鑿滃崟
+	 */
+	MODIFY("combox","涓嬫媺鑿滃崟"),
+
+	/**
+	 * 鍗曢��
+	 */
+	RADIO("radio","鍗曢��"),
+
+	/**
+	 * 寮�鍏�
+	 */
+	SWTICH("swtich","寮�鍏�"),
+
+	/**
+	 * 鏃堕棿
+	 */
+	DATE("date","鏃堕棿"),
+
+	/**
+	 * 鏂囨湰鍩�
+	 */
+	TEXTAREA("textarea","鏂囨湰鍩�");
+
+	/**
+	 * 鏋氫妇鐨勫��
+	 */
+	private String value;
+
+	/**
+	 * 鏋氫妇鏄剧ず鏂囨湰
+	 */
+	private String text;
+
+	/**
+	 * 鑾峰彇鏋氫妇鍊�
+	 *
+	 * @return 鏋氫妇鍊�
+	 */
+	@Override
+	public String getValue() {
+		return value;
+	}
+
+	/**
+	 * 璁剧疆鏋氫妇鍊�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 */
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+	/**
+	 * 鑾峰彇鏋氫妇鏄剧ず鏂囨湰
+	 *
+	 * @return 鏄剧ず鏂囨湰
+	 */
+	@Override
+	public String getText() {
+		return text;
+	}
+
+	/**
+	 * 璁剧疆鏄剧ず鏂囨湰
+	 *
+	 * @param text 鏄剧ず鏂囨湰
+	 */
+	public void setText(String text) {
+		this.text = text;
+	}
+
+	/**
+	 * 鏋勯�犲嚱鏁�
+	 *
+	 * @param value 鍊�
+	 * @param text  鏄剧ず鏂囨湰
+	 */
+	private CodeReferConfigFieldTypeEnum(String value, String text) {
+		this.value = value;
+		this.text = text;
+	}
+
+	/**
+	 * 鏍规嵁鍚嶇О鑾峰彇瀵瑰簲鐨勬灇涓惧��
+	 *
+	 * @param text 鍚嶇О
+	 * @return 鏋氫妇鍊�
+	 */
+	public static String getValueByText(String text) {
+		for (CodeReferConfigFieldTypeEnum wenum : CodeReferConfigFieldTypeEnum.values()) {
+			if (wenum.getText().equalsIgnoreCase(text)) {
+				return wenum.getValue();
+			}
+		}
+		return "";
+	}
+
+	/**
+	 * 鏍规嵁鏋氫妇鍊艰幏鍙栧悕绉�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 * @return 鍚嶇О
+	 */
+	public static String getTextByValue(String value) {
+		for (CodeReferConfigFieldTypeEnum wenum : CodeReferConfigFieldTypeEnum.values()) {
+			if (wenum.getValue().equalsIgnoreCase(value)) {
+				return wenum.getText();
+			}
+		}
+		return "";
+	}
+
+	/**
+	 * 鏍规嵁鏋氫妇鍊艰幏鍙栨灇涓惧璞�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 * @return 鏋氫妇瀵硅薄锛屼笉瀛樺湪鏃跺�欒繑鍥瀗ull
+	 */
+	public static CodeReferConfigFieldTypeEnum forValue(String value) {
+		for (CodeReferConfigFieldTypeEnum wenum : CodeReferConfigFieldTypeEnum.values()) {
+			if (wenum.getValue().equalsIgnoreCase(value)) {
+				return wenum;
+			}
+		}
+		return null;
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFilterTypeEnum.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFilterTypeEnum.java
new file mode 100644
index 0000000..1048461
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFilterTypeEnum.java
@@ -0,0 +1,151 @@
+package com.vci.ubcs.code.enumpack;
+
+import com.vci.ubcs.starter.web.enumpck.BaseEnum;
+
+/**
+ * 绛涢�夌被鍨�
+ * @author ludc
+ * @date 2023/5/24 15:01
+ */
+public enum CodeReferConfigFilterTypeEnum implements BaseEnum {
+
+	/**
+	 * 鍗囧簭
+	 */
+	LIKE("like","鍖呭惈"),
+
+	/**
+	 * 闄嶅簭
+	 */
+	EQUAL("=","绛変簬"),
+
+	/**
+	 * 闄嶅簭
+	 */
+	GREATER(">","澶т簬"),
+
+	/**
+	 * 闄嶅簭
+	 */
+	LESS("<","灏忎簬"),
+
+	/**
+	 * 闄嶅簭
+	 */
+	NOTEQUAL("!=","涓嶇瓑浜�"),
+
+	/**
+	 * 闄嶅簭
+	 */
+	GREATEREQUAL(">=","澶т簬绛変簬"),
+
+	/**
+	 * 闄嶅簭
+	 */
+	LESSEQUAL("<=","灏忎簬绛変簬");
+
+	/**
+	 * 鏋氫妇鐨勫��
+	 */
+	private String value;
+
+	/**
+	 * 鏋氫妇鏄剧ず鏂囨湰
+	 */
+	private String text;
+
+	/**
+	 * 鑾峰彇鏋氫妇鍊�
+	 *
+	 * @return 鏋氫妇鍊�
+	 */
+	@Override
+	public String getValue() {
+		return value;
+	}
+
+	/**
+	 * 璁剧疆鏋氫妇鍊�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 */
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+	/**
+	 * 鑾峰彇鏋氫妇鏄剧ず鏂囨湰
+	 *
+	 * @return 鏄剧ず鏂囨湰
+	 */
+	@Override
+	public String getText() {
+		return text;
+	}
+
+	/**
+	 * 璁剧疆鏄剧ず鏂囨湰
+	 *
+	 * @param text 鏄剧ず鏂囨湰
+	 */
+	public void setText(String text) {
+		this.text = text;
+	}
+
+	/**
+	 * 鏋勯�犲嚱鏁�
+	 *
+	 * @param value 鍊�
+	 * @param text  鏄剧ず鏂囨湰
+	 */
+	private CodeReferConfigFilterTypeEnum(String value, String text) {
+		this.value = value;
+		this.text = text;
+	}
+
+	/**
+	 * 鏍规嵁鍚嶇О鑾峰彇瀵瑰簲鐨勬灇涓惧��
+	 *
+	 * @param text 鍚嶇О
+	 * @return 鏋氫妇鍊�
+	 */
+	public static String getValueByText(String text) {
+		for (CodeReferConfigFilterTypeEnum wenum : CodeReferConfigFilterTypeEnum.values()) {
+			if (wenum.getText().equalsIgnoreCase(text)) {
+				return wenum.getValue();
+			}
+		}
+		return "";
+	}
+
+	/**
+	 * 鏍规嵁鏋氫妇鍊艰幏鍙栧悕绉�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 * @return 鍚嶇О
+	 */
+	public static String getTextByValue(String value) {
+		for (CodeReferConfigFilterTypeEnum wenum : CodeReferConfigFilterTypeEnum.values()) {
+			if (wenum.getValue().equalsIgnoreCase(value)) {
+				return wenum.getText();
+			}
+		}
+		return "";
+	}
+
+	/**
+	 * 鏍规嵁鏋氫妇鍊艰幏鍙栨灇涓惧璞�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 * @return 鏋氫妇瀵硅薄锛屼笉瀛樺湪鏃跺�欒繑鍥瀗ull
+	 */
+	public static CodeReferConfigFilterTypeEnum forValue(String value) {
+		for (CodeReferConfigFilterTypeEnum wenum : CodeReferConfigFilterTypeEnum.values()) {
+			if (wenum.getValue().equalsIgnoreCase(value)) {
+				return wenum;
+			}
+		}
+		return null;
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFixedEnum.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFixedEnum.java
new file mode 100644
index 0000000..584e49f
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigFixedEnum.java
@@ -0,0 +1,130 @@
+package com.vci.ubcs.code.enumpack;
+
+import com.vci.ubcs.starter.web.enumpck.BaseEnum;
+
+/**
+ * 鍙傜収閰嶇疆涓敤鍒扮殑鈥斺�斿垪鍥哄畾浣嶇疆
+ * @author ludc
+ * @date 2023/5/24 14:38
+ */
+public enum CodeReferConfigFixedEnum implements BaseEnum{
+
+	/**
+	 * 涓嶅浐瀹�
+	 */
+	NOFIXED("noFixed","涓嶅浐瀹�"),
+
+	/**
+	 * 涓嬫媺鑿滃崟
+	 */
+	LEFT("left","宸﹁竟"),
+
+	/**
+	 * 鍗曢��
+	 */
+	RIGHT("right","鍙宠竟");
+
+	/**
+	 * 鏋氫妇鐨勫��
+	 */
+	private String value;
+
+	/**
+	 * 鏋氫妇鏄剧ず鏂囨湰
+	 */
+	private String text;
+
+	/**
+	 * 鑾峰彇鏋氫妇鍊�
+	 *
+	 * @return 鏋氫妇鍊�
+	 */
+	@Override
+	public String getValue() {
+		return value;
+	}
+
+	/**
+	 * 璁剧疆鏋氫妇鍊�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 */
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+	/**
+	 * 鑾峰彇鏋氫妇鏄剧ず鏂囨湰
+	 *
+	 * @return 鏄剧ず鏂囨湰
+	 */
+	@Override
+	public String getText() {
+		return text;
+	}
+
+	/**
+	 * 璁剧疆鏄剧ず鏂囨湰
+	 *
+	 * @param text 鏄剧ず鏂囨湰
+	 */
+	public void setText(String text) {
+		this.text = text;
+	}
+
+	/**
+	 * 鏋勯�犲嚱鏁�
+	 *
+	 * @param value 鍊�
+	 * @param text  鏄剧ず鏂囨湰
+	 */
+	private CodeReferConfigFixedEnum(String value, String text) {
+		this.value = value;
+		this.text = text;
+	}
+
+	/**
+	 * 鏍规嵁鍚嶇О鑾峰彇瀵瑰簲鐨勬灇涓惧��
+	 *
+	 * @param text 鍚嶇О
+	 * @return 鏋氫妇鍊�
+	 */
+	public static String getValueByText(String text) {
+		for (CodeReferConfigFixedEnum wenum : CodeReferConfigFixedEnum.values()) {
+			if (wenum.getText().equalsIgnoreCase(text)) {
+				return wenum.getValue();
+			}
+		}
+		return "";
+	}
+
+	/**
+	 * 鏍规嵁鏋氫妇鍊艰幏鍙栧悕绉�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 * @return 鍚嶇О
+	 */
+	public static String getTextByValue(String value) {
+		for (CodeReferConfigFixedEnum wenum : CodeReferConfigFixedEnum.values()) {
+			if (wenum.getValue().equalsIgnoreCase(value)) {
+				return wenum.getText();
+			}
+		}
+		return "";
+	}
+
+	/**
+	 * 鏍规嵁鏋氫妇鍊艰幏鍙栨灇涓惧璞�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 * @return 鏋氫妇瀵硅薄锛屼笉瀛樺湪鏃跺�欒繑鍥瀗ull
+	 */
+	public static CodeReferConfigFixedEnum forValue(String value) {
+		for (CodeReferConfigFixedEnum wenum : CodeReferConfigFixedEnum.values()) {
+			if (wenum.getValue().equalsIgnoreCase(value)) {
+				return wenum;
+			}
+		}
+		return null;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigTypeEnum.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigTypeEnum.java
new file mode 100644
index 0000000..6bef2ae
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/CodeReferConfigTypeEnum.java
@@ -0,0 +1,176 @@
+package com.vci.ubcs.code.enumpack;
+
+import com.vci.ubcs.starter.web.enumpck.BaseEnum;
+
+/**
+ * 鍙傜収閰嶇疆涓敤鍒扮殑鈥斺�旂獥鍙g被鍨�
+ * @author ludc
+ * @date 2023/5/24 14:09
+ */
+public enum CodeReferConfigTypeEnum implements BaseEnum {
+
+	/**
+	 * 榛樿鏍峰紡
+	 */
+	DEFAULT("default","榛樿鏍峰紡"),
+
+	/**
+	 * 骞冲彴閰嶇疆
+	 */
+	STAND("stand","骞冲彴閰嶇疆"),
+
+	/**
+	 * 鏍戝舰
+	 */
+	TREE("tree","鏍戝舰"),
+
+	/**
+	 * 鏍戝舰
+	 */
+	GRID("grid","鍒楄〃"),
+
+	/**
+	 * 閮ㄩ棬鏍�
+	 */
+	ORGDEPARTMENTREFER("refer/OrgDepartmentRefer","閮ㄩ棬鏍�"),
+
+	/**
+	 * 閮ㄩ棬鍒楄〃
+	 */
+	ORGDEPARTMENTGRIDREFERS("refer/OrgDepartmentGridRefers","閮ㄩ棬鍒楄〃"),
+
+	/**
+	 * 鐢ㄦ埛
+	 */
+	SMUSERREFER("refer/SmUserRefer","鐢ㄦ埛"),
+
+	/**
+	 * 鐢ㄦ埛鍒楄〃
+	 */
+	SMUSERGRIDREFER("refer/SmUserGridRefer","鐢ㄦ埛鍒楄〃"),
+
+	/**
+	 * 瑙掕壊鍒楄〃
+	 */
+	SMROLEREFER("refer/SmRoleRefer","瑙掕壊鍒楄〃"),
+
+	/**
+	 * 鑱屽姟
+	 */
+	ORGDUTYREFER("refer/OrgDutyRefer","鑱屽姟"),
+
+	/**
+	 * 宸ョ
+	 */
+	SMWORKTYPEREFER("refer/SmWorkTypeRefer","宸ョ"),
+
+	/**
+	 * 娴佺▼妯℃澘
+	 */
+	WFPROCESSTEMPLATEREFER("refer/WfProcessTemplateRefer","娴佺▼妯℃澘");
+
+	/**
+	 * 鏋氫妇鐨勫��
+	 */
+	private String value;
+
+	/**
+	 * 鏋氫妇鏄剧ず鏂囨湰
+	 */
+	private String text;
+
+	/**
+	 * 鑾峰彇鏋氫妇鍊�
+	 *
+	 * @return 鏋氫妇鍊�
+	 */
+	@Override
+	public String getValue() {
+		return value;
+	}
+
+	/**
+	 * 璁剧疆鏋氫妇鍊�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 */
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+	/**
+	 * 鑾峰彇鏋氫妇鏄剧ず鏂囨湰
+	 *
+	 * @return 鏄剧ず鏂囨湰
+	 */
+	@Override
+	public String getText() {
+		return text;
+	}
+
+	/**
+	 * 璁剧疆鏄剧ず鏂囨湰
+	 *
+	 * @param text 鏄剧ず鏂囨湰
+	 */
+	public void setText(String text) {
+		this.text = text;
+	}
+
+	/**
+	 * 鏋勯�犲嚱鏁�
+	 *
+	 * @param value 鍊�
+	 * @param text  鏄剧ず鏂囨湰
+	 */
+	private CodeReferConfigTypeEnum(String value, String text) {
+		this.value = value;
+		this.text = text;
+	}
+
+	/**
+	 * 鏍规嵁鍚嶇О鑾峰彇瀵瑰簲鐨勬灇涓惧��
+	 *
+	 * @param text 鍚嶇О
+	 * @return 鏋氫妇鍊�
+	 */
+	public static String getValueByText(String text) {
+		for (CodeReferConfigTypeEnum wenum : CodeReferConfigTypeEnum.values()) {
+			if (wenum.getText().equalsIgnoreCase(text)) {
+				return wenum.getValue();
+			}
+		}
+		return "";
+	}
+
+	/**
+	 * 鏍规嵁鏋氫妇鍊艰幏鍙栧悕绉�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 * @return 鍚嶇О
+	 */
+	public static String getTextByValue(String value) {
+		for (CodeReferConfigTypeEnum wenum : CodeReferConfigTypeEnum.values()) {
+			if (wenum.getValue().equalsIgnoreCase(value)) {
+				return wenum.getText();
+			}
+		}
+		return "";
+	}
+
+	/**
+	 * 鏍规嵁鏋氫妇鍊艰幏鍙栨灇涓惧璞�
+	 *
+	 * @param value 鏋氫妇鍊�
+	 * @return 鏋氫妇瀵硅薄锛屼笉瀛樺湪鏃跺�欒繑鍥瀗ull
+	 */
+	public static CodeReferConfigTypeEnum forValue(String value) {
+		for (CodeReferConfigTypeEnum wenum : CodeReferConfigTypeEnum.values()) {
+			if (wenum.getValue().equalsIgnoreCase(value)) {
+				return wenum;
+			}
+		}
+		return null;
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java
index a2f104a..da5f0d1 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java
@@ -19,15 +19,26 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.vci.ubcs.code.entity.CodeClassify;
+import com.vci.ubcs.code.entity.CodeClassifyTemplateAttr;
 import com.vci.ubcs.code.mapper.CodeClassifyMapper;
+import com.vci.ubcs.code.service.ICodeClassifyTemplateAttrService;
+import com.vci.ubcs.code.service.MdmEngineService;
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO;
+import com.vci.ubcs.starter.revision.model.TreeQueryObject;
+import com.vci.ubcs.starter.web.pagemodel.Tree;
 import lombok.AllArgsConstructor;
 import org.springblade.core.mp.support.BladePage;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import com.vci.ubcs.code.service.ICodeClassifyService;
 import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
 import springfox.documentation.annotations.ApiIgnore;
+
+import java.util.List;
 
 /**
  * 涓婚搴撳畾涔夎〃 Feign瀹炵幇绫�
@@ -41,7 +52,9 @@
 public class CodeClassifyClient implements ICodeClassifyClient {
 
     private final ICodeClassifyService plCodeClassifyService;
+	private final ICodeClassifyTemplateAttrService codeClassifyTemplateAttrService;
 
+	private final  MdmEngineService engineService;
 	CodeClassifyMapper codeClassifyMapper;
 
     @Override
@@ -54,4 +67,23 @@
         return BladePage.of(page);
     }
 
+	/***
+	 * 鑾峰彇涓婚搴撳垎绫诲眰绾ф爲
+	 * @param treeQueryObject
+	 * @return 涓婚搴撳垎绫�
+	 */
+	@Override
+	@PostMapping(CODE_CLASSIFY_TREE)
+	public List<Tree> referCodeClassifyTree(TreeQueryObject treeQueryObject) {
+		return plCodeClassifyService.referTree(treeQueryObject);
+	}
+
+	@Override
+	@GetMapping(CODE_ATTRIBUTE_LIST)
+	public List<CodeClassifyTemplateAttrVO> listCodeAttributeByClassId(String codeClassifyId) {
+		CodeClassifyTemplateVO codeClassifyTemplateVO=engineService.getUsedTemplateByClassifyOid(codeClassifyId,true);
+		return codeClassifyTemplateVO.getAttributes();
+	}
+
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java
new file mode 100644
index 0000000..e4b173e
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java
@@ -0,0 +1,82 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 搴勯獮 (smallchill@163.com)
+ */
+package com.vci.ubcs.code.feign;
+
+
+import com.vci.ubcs.code.service.MdmEngineService;
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import lombok.AllArgsConstructor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springblade.core.tool.api.R;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import springfox.documentation.annotations.ApiIgnore;
+
+import java.beans.IntrospectionException;
+import java.lang.reflect.InvocationTargetException;
+import java.sql.SQLException;
+import java.util.List;
+
+/**
+ * 缂栫爜淇℃伅 Feign瀹炵幇绫�
+ *
+ * @author yuxc
+ * @since 2023-05-05
+ */
+@ApiIgnore()
+@RestController
+@AllArgsConstructor
+public class MdmEngineClient implements IMdmEngineClient {
+	private final MdmEngineService mdmEngineService;
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩竜id闆嗗悎鏌ヨ鏁版嵁杩涜杩斿洖
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param oids      闇�瑕佹煡璇㈢殑oid闆嗗悎 閫楀彿鍒嗗紑
+	 * @return 鏌ヨ鍑虹殑鏁版嵁
+	 */
+	@Override
+	@GetMapping(SELECT_BY_TYPE_OID)
+	public R<List<BaseModel>> selectByTypeAndOid(String btmType, String oids) {
+		try {
+			return R.data(mdmEngineService.selectByTypeAndOid(btmType, oids));
+		} catch (Exception e) {
+			throw new RuntimeException(e);
+		}
+	}
+
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鎻掑叆鎿嶄綔
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param baseModels      澶勭悊鏁版嵁
+	 * @return 澶勭悊鎴愬姛鏁版嵁鏉℃暟
+	 */
+	@Override
+	@PostMapping(INSERT_BATCH_BY_TYPE)
+	public R<Integer> insertBatchByType(String btmType, List<BaseModel> baseModels) {
+		try {
+			return R.data(mdmEngineService.insertBatchByType(btmType,baseModels));
+		} catch (Exception e) {
+			throw new RuntimeException(e);
+		}
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeBasicSecMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeBasicSecMapper.java
index 3b04b04..2c2ba9e 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeBasicSecMapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeBasicSecMapper.java
@@ -27,10 +27,10 @@
 
 	/**
 	 * 鎵归噺鎻掑叆
-	 * @param codeBasicSecList
+	 //* @param codeBasicSecList
 	 * @return
 	 */
-	Long insertBatch(@Param("entities") List<CodeBasicSec> codeBasicSecList);
+	//	Long insertBatch(@Param("entities") List<CodeBasicSec> codeBasicSecList);
 
 	List<String> getOidByCodeclassifysecOid(@Param("codeClassifySecOid") String codeClassifySecOid);
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeReferConfigMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeReferConfigMapper.java
index 73ddf34..e82ef9f 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeReferConfigMapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeReferConfigMapper.java
@@ -1,6 +1,10 @@
 package com.vci.ubcs.code.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.base.MPJBaseMapper;
+import com.vci.ubcs.code.dto.CodeReferConfigDTO;
 import com.vci.ubcs.code.entity.CodeReferConfig;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.data.domain.Pageable;
@@ -9,10 +13,10 @@
 /**
  * 鍙傜収閰嶇疆琛�(CodeReferConfig)琛ㄦ暟鎹簱璁块棶灞�
  *
- * @author makejava
+ * @author ludc
  * @since 2023-05-19 17:47:51
  */
-public interface CodeReferConfigMapper extends BaseMapper<CodeReferConfig> {
+public interface CodeReferConfigMapper extends MPJBaseMapper<CodeReferConfig> {
 
     /**
      * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
@@ -26,10 +30,10 @@
      * 鏌ヨ鎸囧畾琛屾暟鎹�
      *
      * @param codeReferConfig 鏌ヨ鏉′欢
-     * @param pageable         鍒嗛〉瀵硅薄
+     * @param page         鍒嗛〉瀵硅薄
      * @return 瀵硅薄鍒楄〃
      */
-    List<CodeReferConfig> queryAllByPage(CodeReferConfig codeReferConfig, @Param("pageable") Pageable pageable);
+    IPage<CodeReferConfig> selectJoinPage(@Param("codeReferConfig") CodeReferConfig codeReferConfig, IPage page);
 
 }
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeShowFieldConfigMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeShowFieldConfigMapper.java
index 2ebf621..91cd2d7 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeShowFieldConfigMapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeShowFieldConfigMapper.java
@@ -10,76 +10,11 @@
 /**
  * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏄剧ず鐨勫睘鎬ч厤缃〃(CodeShowFieldConfig)琛ㄦ暟鎹簱璁块棶灞�
  *
- * @author makejava
+ * @author ludc
  * @since 2023-05-19 17:58:55
  */
 public interface CodeShowFieldConfigMapper extends BaseMapper<CodeShowFieldConfig> {
 
-    /**
-     * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 瀹炰緥瀵硅薄
-     */
-	CodeShowFieldConfig queryById(String oid);
-
-    /**
-     * 鏌ヨ鎸囧畾琛屾暟鎹�
-     *
-     * @param plCodeShowfieldconfig 鏌ヨ鏉′欢
-     * @param pageable         鍒嗛〉瀵硅薄
-     * @return 瀵硅薄鍒楄〃
-     */
-    List<CodeShowFieldConfig> queryAllByLimit(CodeShowFieldConfig plCodeShowfieldconfig, @Param("pageable") Pageable pageable);
-
-    /**
-     * 缁熻鎬昏鏁�
-     *
-     * @param plCodeShowfieldconfig 鏌ヨ鏉′欢
-     * @return 鎬昏鏁�
-     */
-    long count(CodeShowFieldConfig plCodeShowfieldconfig);
-
-    /**
-     * 鏂板鏁版嵁
-     *
-     * @param plCodeShowfieldconfig 瀹炰緥瀵硅薄
-     * @return 褰卞搷琛屾暟
-     */
-    int insert(CodeShowFieldConfig plCodeShowfieldconfig);
-
-    /**
-     * 鎵归噺鏂板鏁版嵁锛圡yBatis鍘熺敓foreach鏂规硶锛�
-     *
-     * @param entities List<CodeShowFieldConfig> 瀹炰緥瀵硅薄鍒楄〃
-     * @return 褰卞搷琛屾暟
-     */
-    int insertBatch(@Param("entities") List<CodeShowFieldConfig> entities);
-
-    /**
-     * 鎵归噺鏂板鎴栨寜涓婚敭鏇存柊鏁版嵁锛圡yBatis鍘熺敓foreach鏂规硶锛�
-     *
-     * @param entities List<CodeShowFieldConfig> 瀹炰緥瀵硅薄鍒楄〃
-     * @return 褰卞搷琛屾暟
-     * @throws org.springframework.jdbc.BadSqlGrammarException 鍏ュ弬鏄┖List鐨勬椂鍊欎細鎶汼QL璇彞閿欒鐨勫紓甯革紝璇疯嚜琛屾牎楠屽叆鍙�
-     */
-    int insertOrUpdateBatch(@Param("entities") List<CodeShowFieldConfig> entities);
-
-    /**
-     * 淇敼鏁版嵁
-     *
-     * @param plCodeShowfieldconfig 瀹炰緥瀵硅薄
-     * @return 褰卞搷琛屾暟
-     */
-    int update(CodeShowFieldConfig plCodeShowfieldconfig);
-
-    /**
-     * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 褰卞搷琛屾暟
-     */
-    int deleteById(String oid);
 
 }
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeSrchCondConfigMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeSrchCondConfigMapper.java
index 59955ae..e7e1299 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeSrchCondConfigMapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeSrchCondConfigMapper.java
@@ -9,76 +9,10 @@
 /**
  * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏌ヨ鏉′欢閰嶇疆琛�(CodeSrchCondConfig)琛ㄦ暟鎹簱璁块棶灞�
  *
- * @author makejava
+ * @author ludc
  * @since 2023-05-19 17:58:56
  */
 public interface CodeSrchCondConfigMapper extends BaseMapper<CodeSrchCondConfig> {
-
-    /**
-     * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 瀹炰緥瀵硅薄
-     */
-    CodeSrchCondConfig queryById(String oid);
-
-    /**
-     * 鏌ヨ鎸囧畾琛屾暟鎹�
-     *
-     * @param plCodeSrchcondconfig 鏌ヨ鏉′欢
-     * @param pageable         鍒嗛〉瀵硅薄
-     * @return 瀵硅薄鍒楄〃
-     */
-    List<CodeSrchCondConfig> queryAllByLimit(CodeSrchCondConfig plCodeSrchcondconfig, @Param("pageable") Pageable pageable);
-
-    /**
-     * 缁熻鎬昏鏁�
-     *
-     * @param plCodeSrchcondconfig 鏌ヨ鏉′欢
-     * @return 鎬昏鏁�
-     */
-    long count(CodeSrchCondConfig plCodeSrchcondconfig);
-
-    /**
-     * 鏂板鏁版嵁
-     *
-     * @param plCodeSrchcondconfig 瀹炰緥瀵硅薄
-     * @return 褰卞搷琛屾暟
-     */
-    int insert(CodeSrchCondConfig plCodeSrchcondconfig);
-
-    /**
-     * 鎵归噺鏂板鏁版嵁锛圡yBatis鍘熺敓foreach鏂规硶锛�
-     *
-     * @param entities List<CodeSrchCondConfig> 瀹炰緥瀵硅薄鍒楄〃
-     * @return 褰卞搷琛屾暟
-     */
-    int insertBatch(@Param("entities") List<CodeSrchCondConfig> entities);
-
-    /**
-     * 鎵归噺鏂板鎴栨寜涓婚敭鏇存柊鏁版嵁锛圡yBatis鍘熺敓foreach鏂规硶锛�
-     *
-     * @param entities List<CodeSrchCondConfig> 瀹炰緥瀵硅薄鍒楄〃
-     * @return 褰卞搷琛屾暟
-     * @throws org.springframework.jdbc.BadSqlGrammarException 鍏ュ弬鏄┖List鐨勬椂鍊欎細鎶汼QL璇彞閿欒鐨勫紓甯革紝璇疯嚜琛屾牎楠屽叆鍙�
-     */
-    int insertOrUpdateBatch(@Param("entities") List<CodeSrchCondConfig> entities);
-
-    /**
-     * 淇敼鏁版嵁
-     *
-     * @param plCodeSrchcondconfig 瀹炰緥瀵硅薄
-     * @return 褰卞搷琛屾暟
-     */
-    int update(CodeSrchCondConfig plCodeSrchcondconfig);
-
-    /**
-     * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 褰卞搷琛屾暟
-     */
-    int deleteById(String oid);
 
 }
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java
index e0354b9..039a162 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java
@@ -21,4 +21,13 @@
 
 	List<Map> selectBySql(@Param("inSql") String inSql);
 
+	/**
+	 * 浼犲叆琛ㄦ槑锛宮ap锛宭ist<map>瀹屾垚鎵归噺鏇存柊鎿嶄綔
+	 * @param tableName 琛ㄥ悕
+	 * @param columnMap 鍗曟潯map鐢ㄤ簬鑾峰彇key浣滀负瀛楁
+	 * @param mapList 闇�瑕佹彃鍏ョ殑鎵�鏈夎褰�
+	 * @return 鎻掑叆鎴愬姛鐨勬潯鏁�
+	 */
+	Integer insertByBaseModel(String tableName,Map<String,String> columnMap,List<Map<String,String>> mapList);
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreApplyFormMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreApplyFormMapper.java
deleted file mode 100644
index 290485b..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreApplyFormMapper.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.vci.ubcs.code.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.vci.ubcs.code.entity.DockingPreApplyForm;
-
-public interface DockingPreApplyFormMapper extends BaseMapper<DockingPreApplyForm> {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreAttrMappingMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreAttrMappingMapper.java
deleted file mode 100644
index 40b81a6..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreAttrMappingMapper.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.vci.ubcs.code.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.vci.ubcs.code.entity.DockingPreAttrMapping;
-
-public interface DockingPreAttrMappingMapper extends BaseMapper<DockingPreAttrMapping> {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreAttrRangeMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreAttrRangeMapper.java
deleted file mode 100644
index 7dc54e5..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreAttrRangeMapper.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.vci.ubcs.code.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.vci.ubcs.code.entity.DockingPreAttrRange;
-
-public interface DockingPreAttrRangeMapper  extends BaseMapper<DockingPreAttrRange> {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreClassifyMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreClassifyMapper.java
deleted file mode 100644
index 859ef22..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreClassifyMapper.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.vci.ubcs.code.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.vci.ubcs.code.entity.DockingPreClassify;
-
-public interface DockingPreClassifyMapper extends BaseMapper<DockingPreClassify> {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreMetaAttrMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreMetaAttrMapper.java
deleted file mode 100644
index 3b4b2c3..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreMetaAttrMapper.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.vci.ubcs.code.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.vci.ubcs.code.entity.DockingPreMetaAttr;
-
-public interface DockingPreMetaAttrMapper  extends BaseMapper<DockingPreMetaAttr> {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreViewModelMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreViewModelMapper.java
deleted file mode 100644
index 3c6f82e..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingPreViewModelMapper.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.vci.ubcs.code.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.vci.ubcs.code.entity.DockingPreViewModel;
-
-public interface DockingPreViewModelMapper extends BaseMapper<DockingPreViewModel> {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeReferConfigService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeReferConfigService.java
deleted file mode 100644
index 365747c..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeReferConfigService.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package com.vci.ubcs.code.service;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.vci.ubcs.code.entity.CodeReferConfig;
-import com.vci.ubcs.code.vo.CodeReferConfigVO;
-import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
-import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject;
-import org.springblade.core.mp.support.Query;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageRequest;
-
-/**
- * 鍙傜収閰嶇疆琛�(CodeReferConfig)琛ㄦ湇鍔℃帴鍙�
- *
- * @author ludc
- * @since 2023-05-19 17:47:59
- */
-public interface CodeReferConfigService extends IService<CodeReferConfig> {
-
-    /**
-     * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 瀹炰緥瀵硅薄
-     */
-    CodeReferConfig queryById(String oid);
-
-    /**
-     * 鍒嗛〉鏌ヨ
-     *
-     * @param bladeQueryObject 绛涢�夋潯浠�
-     * @return 鏌ヨ缁撴灉
-     */
-	IPage<CodeReferConfigVO> queryByPage(BladeQueryObject bladeQueryObject);
-
-    /**
-     * 鏂板鏁版嵁
-     *
-     * @param codeReferconfig 瀹炰緥瀵硅薄
-     * @return 瀹炰緥瀵硅薄
-     */
-    CodeReferConfig insert(CodeReferConfig codeReferconfig);
-
-    /**
-     * 淇敼鏁版嵁
-     *
-     * @param codeReferconfig 瀹炰緥瀵硅薄
-     * @return 瀹炰緥瀵硅薄
-     */
-    CodeReferConfig update(CodeReferConfig codeReferconfig);
-
-    /**
-     * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 鏄惁鎴愬姛
-     */
-    boolean deleteById(String oid);
-
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeShowFieldConfigService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeShowFieldConfigService.java
deleted file mode 100644
index ef73cab..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeShowFieldConfigService.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.vci.ubcs.code.service;
-
-import com.vci.ubcs.code.entity.CodeShowFieldConfig;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageRequest;
-
-/**
- * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏄剧ず鐨勫睘鎬ч厤缃〃(CodeShowFieldConfig)琛ㄦ湇鍔℃帴鍙�
- *
- * @author ludc
- * @since 2023-05-19 17:58:56
- */
-public interface CodeShowFieldConfigService {
-
-    /**
-     * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 瀹炰緥瀵硅薄
-     */
-    CodeShowFieldConfig queryById(String oid);
-
-    /**
-     * 鍒嗛〉鏌ヨ
-     *
-     * @param codeShowFieldConfig 绛涢�夋潯浠�
-     * @param pageRequest      鍒嗛〉瀵硅薄
-     * @return 鏌ヨ缁撴灉
-     */
-    Page<CodeShowFieldConfig> queryByPage(CodeShowFieldConfig codeShowFieldConfig, PageRequest pageRequest);
-
-    /**
-     * 鏂板鏁版嵁
-     *
-     * @param codeShowFieldConfig 瀹炰緥瀵硅薄
-     * @return 瀹炰緥瀵硅薄
-     */
-    CodeShowFieldConfig insert(CodeShowFieldConfig codeShowFieldConfig);
-
-    /**
-     * 淇敼鏁版嵁
-     *
-     * @param codeShowFieldConfig 瀹炰緥瀵硅薄
-     * @return 瀹炰緥瀵硅薄
-     */
-    CodeShowFieldConfig update(CodeShowFieldConfig codeShowFieldConfig);
-
-    /**
-     * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 鏄惁鎴愬姛
-     */
-    boolean deleteById(String oid);
-
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeSrchCondConfigService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeSrchCondConfigService.java
deleted file mode 100644
index 2a1cd63..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/CodeSrchCondConfigService.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package com.vci.ubcs.code.service;
-
-import com.vci.ubcs.code.entity.CodeSrchCondConfig;
-import com.vci.ubcs.code.entity.CodeSrchCondConfig;
-import com.vci.ubcs.code.service.impl.CodeSrchCondConfigServiceImpl;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageRequest;
-
-/**
- * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏌ヨ鏉′欢閰嶇疆琛�(CodeSrchCondConfig)琛ㄦ湇鍔℃帴鍙�
- *
- * @author ludc
- * @since 2023-05-19 17:58:56
- */
-public interface CodeSrchCondConfigService {
-
-    /**
-     * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 瀹炰緥瀵硅薄
-     */
-	CodeSrchCondConfig queryById(String oid);
-
-    /**
-     * 鍒嗛〉鏌ヨ
-     *
-     * @param codeSrchCondConfig 绛涢�夋潯浠�
-     * @param pageRequest      鍒嗛〉瀵硅薄
-     * @return 鏌ヨ缁撴灉
-     */
-    Page<CodeSrchCondConfig> queryByPage(CodeSrchCondConfig codeSrchCondConfig, PageRequest pageRequest);
-
-    /**
-     * 鏂板鏁版嵁
-     *
-     * @param codeSrchCondConfig 瀹炰緥瀵硅薄
-     * @return 瀹炰緥瀵硅薄
-     */
-    CodeSrchCondConfig insert(CodeSrchCondConfig codeSrchCondConfig);
-
-    /**
-     * 淇敼鏁版嵁
-     *
-     * @param codeSrchCondConfig 瀹炰緥瀵硅薄
-     * @return 瀹炰緥瀵硅薄
-     */
-    CodeSrchCondConfig update(CodeSrchCondConfig codeSrchCondConfig);
-
-    /**
-     * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 鏄惁鎴愬姛
-     */
-    boolean deleteById(String oid);
-
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java
index 6ad2c7f..32b507a 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeBasicSecService.java
@@ -161,6 +161,14 @@
 	List<CodeBasicSecVO> codeBasicSecDO2VOs(Collection<CodeBasicSec> codeBasicSecDOs, boolean hasFixedValue) throws VciBaseException;
 
 	/**
+	 * 鎵归噺鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
+	 * @param codeBasicSecDOs 鏁版嵁瀵硅薄鍒楄〃
+	 * @return 鏄剧ず瀵硅薄
+	 * @throws VciBaseException 鍙傛暟涓虹┖鎴栬�呬笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父
+	 */
+	List<CodeBasicSecVO> codeBasicSecDO2VOs(Collection<CodeBasicSec>  codeBasicSecDOs) throws VciBaseException;
+
+	/**
 	 * 鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
 	 * @param  codeBasicSecDO 鏁版嵁瀵硅薄
 	 * @return 鏄剧ず瀵硅薄
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeOsattributeService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeOsattributeService.java
index dbf55a4..9d694ee 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeOsattributeService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeOsattributeService.java
@@ -41,7 +41,6 @@
 	 */
 	IPage<CodeOsattributeVO> selectCodeOsattributePage(IPage<CodeOsattributeVO> page, CodeOsattributeVO CodeOsattribute);
 
-
 	boolean isDefaultAttr(String selectKey);
 
 	Map<String, CodeOsattributeVO> getDefaultAttributeVOMap();
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeReferConfigService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeReferConfigService.java
new file mode 100644
index 0000000..9a189c7
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeReferConfigService.java
@@ -0,0 +1,69 @@
+package com.vci.ubcs.code.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.yulichang.base.MPJBaseService;
+import com.vci.ubcs.code.dto.CodeReferConfigDTO;
+import com.vci.ubcs.code.entity.CodeReferConfig;
+import com.vci.ubcs.code.vo.CodeReferConfigVO;
+import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject;
+import org.springblade.core.tool.api.R;
+
+import java.util.List;
+
+/**
+ * 鍙傜収閰嶇疆琛�(CodeReferConfig)琛ㄦ湇鍔℃帴鍙�
+ *
+ * @author ludc
+ * @since 2023-05-19 17:47:59
+ */
+public interface ICodeReferConfigService extends MPJBaseService<CodeReferConfig> {
+
+    /**
+     * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
+     *
+     * @param oid 涓婚敭
+     * @return 瀹炰緥瀵硅薄
+     */
+    CodeReferConfigVO queryById(String oid);
+
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param bladeQueryObject 绛涢�夋潯浠�
+     * @return 鏌ヨ缁撴灉
+     */
+	IPage<CodeReferConfigVO> queryByJoinPage(BladeQueryObject bladeQueryObject);
+
+	/**
+	 * 鍒嗛〉鏌ヨ
+	 *
+	 * @param codeReferConfigVO 绛涢�夋潯浠�
+	 * @return 鏌ヨ缁撴灉
+	 */
+	List<CodeReferConfigVO> queryByList(CodeReferConfigVO codeReferConfigVO);
+
+    /**
+     * 鏂板鏁版嵁
+     *
+     * @param codeReferConfigVO 瀹炰緥瀵硅薄
+     * @return 瀹炰緥瀵硅薄
+     */
+	R insert(CodeReferConfigVO codeReferConfigVO);
+
+    /**
+     * 淇敼鏁版嵁
+     *
+     * @param codeReferConfigVO 瀹炰緥瀵硅薄
+     * @return 瀹炰緥瀵硅薄
+     */
+	R update(CodeReferConfigVO codeReferConfigVO);
+
+    /**
+     * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
+     *
+     * @param codeReferConfigDTO
+     * @return 鏄惁鎴愬姛
+     */
+    R deleteById(CodeReferConfigDTO codeReferConfigDTO);
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeShowFieldConfigService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeShowFieldConfigService.java
new file mode 100644
index 0000000..8de2d10
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeShowFieldConfigService.java
@@ -0,0 +1,57 @@
+package com.vci.ubcs.code.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.entity.CodeShowFieldConfig;
+import com.vci.ubcs.code.vo.CodeShowFieldConfigVO;
+
+import java.util.List;
+
+/**
+ * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏄剧ず鐨勫睘鎬ч厤缃〃(CodeShowFieldConfig)琛ㄦ湇鍔℃帴鍙�
+ *
+ * @author ludc
+ * @since 2023-05-19 17:58:56
+ */
+public interface ICodeShowFieldConfigService extends IService<CodeShowFieldConfig> {
+
+    /**
+     * 鏂板鏁版嵁
+     *
+     * @param codeShowFieldConfig 瀹炰緥瀵硅薄
+     * @return 瀹炰緥瀵硅薄
+     */
+	boolean insert(CodeShowFieldConfig codeShowFieldConfig);
+
+	/**
+	 * 鎵归噺鏂板鏁版嵁
+	 *
+	 * @param codeShowFieldConfigVOS 瀹炰緥瀵硅薄
+	 * @return 瀹炰緥瀵硅薄
+	 */
+	boolean insertBatch(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS, String oid);
+
+	/**
+	 * 鎵归噺淇敼鏁版嵁
+	 *
+	 * @param codeShowFieldConfigVOS 瀹炰緥瀵硅薄
+	 * @return 瀹炰緥瀵硅薄
+	 */
+	boolean updateBatch(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS);
+
+	/**
+	 * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
+	 *
+	 * @param oid 涓婚敭
+	 * @return 鏄惁鎴愬姛
+	 */
+	boolean deleteById(String oid);
+
+    /**
+     * 閫氳繃鍏宠仈鐨勫弬鐓ч厤缃富閿垹闄ゆ暟鎹�
+     *
+     * @param oid
+     * @return 鏄惁鎴愬姛
+     */
+    boolean deleteByReferConfigOid(String oid);
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeSrchCondConfigService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeSrchCondConfigService.java
new file mode 100644
index 0000000..ead0f39
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeSrchCondConfigService.java
@@ -0,0 +1,59 @@
+package com.vci.ubcs.code.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.entity.CodeSrchCondConfig;
+import com.vci.ubcs.code.vo.CodeSrchCondConfigVO;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageRequest;
+
+import java.util.List;
+
+/**
+ * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏌ヨ鏉′欢閰嶇疆琛�(CodeSrchCondConfig)琛ㄦ湇鍔℃帴鍙�
+ *
+ * @author ludc
+ * @since 2023-05-19 17:58:56
+ */
+public interface ICodeSrchCondConfigService extends IService<CodeSrchCondConfig> {
+
+    /**
+     * 鏂板鏁版嵁
+     *
+     * @param codeSrchCondConfig 瀹炰緥瀵硅薄
+     * @return 瀹炰緥瀵硅薄
+     */
+    boolean insert(CodeSrchCondConfig codeSrchCondConfig);
+
+	/**
+	 * 鎵归噺鏂板鏁版嵁
+	 *
+	 * @param codeSrchCondConfigVOS 瀹炰緥瀵硅薄
+	 * @return 瀹炰緥瀵硅薄
+	 */
+	boolean insertBatch(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS, String oid);
+
+	/**
+	 * 鎵归噺鈥斺�斾慨鏀规暟鎹�
+	 *
+	 * @param codeSrchCondConfigVOS 瀹炰緥瀵硅薄
+	 * @return 瀹炰緥瀵硅薄
+	 */
+	boolean updateBatch(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS);
+
+    /**
+     * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
+     *
+     * @param oid 涓婚敭
+     * @return 鏄惁鎴愬姛
+     */
+    boolean deleteById(String oid);
+
+	/**
+	 * 閫氳繃鍏宠仈鐨勫弬鐓ч厤缃甶d鍒犻櫎鏁版嵁
+	 *
+	 * @param oid 鍙傜収閰嶇疆涓婚敭
+	 * @return 鏄惁鎴愬姛
+	 */
+	boolean deleteByReferConfigOid(String oid);
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrMappingService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrMappingService.java
deleted file mode 100644
index fd7d7f4..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrMappingService.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.vci.ubcs.code.service;
-
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.vci.ubcs.code.entity.DockingPreAttrMapping;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
-import java.util.List;
-
-/**
- * 闆嗗洟闆嗘垚閰嶇疆鏈嶅姟
- * @author xiej
- * @date 2023-05-17
- */
-public interface IDockingPreAttrMappingService extends IService<DockingPreAttrMapping> {
-
-	/***
-	 * 鏍规嵁涓绘暟鎹垎绫讳富閿幏鍙栧垎绫讳俊鎭厤缃�
-	 * @param codeClassifyId
-	 * @return
-	 */
-	List<DockingPreAttrMappingVO> getdockingAttrMappingsByCodeclassId(String codeClassifyId);
-
-	/**
-	 * 浣跨敤鏌ヨ灏佽鍣ㄦ潵鏌ヨ
-	 * @param wrapper 鏌ヨ灏佽鍣�
-	 * @return 鏁版嵁瀵硅薄
-	 */
-	List<DockingPreAttrMapping> selectByWrapper(Wrapper wrapper);
-
-	/**
-	 * 淇濆瓨灞炴�ф槧灏勯厤缃粍浠�
-	 * @param dockingPreAttrMappingDTOS 灞炴�ф槧灏勯厤缃暟鎹紶杈撳璞�
-	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
-	 */
-	public  List<DockingPreAttrMappingVO> batchAddSave(List<DockingPreAttrMappingVO> dockingPreAttrMappingDTOS)throws Exception;
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreClassifyService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreClassifyService.java
deleted file mode 100644
index 271aab7..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreClassifyService.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.vci.ubcs.code.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.vci.ubcs.code.entity.DockingPreClassify;
-
-/***
- * 闆嗗洟鍒嗙被鏈嶅姟
- * @author xiejun
- * @date 2022-05-23
- */
-public interface IDockingPreClassifyService extends IService<DockingPreClassify> {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreMetaAttrService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreMetaAttrService.java
deleted file mode 100644
index dd623d1..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreMetaAttrService.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.vci.ubcs.code.service;
-
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.vci.ubcs.code.entity.DockingPreMetaAttr;
-
-import java.util.List;
-
-/***
- * 闆嗗洟灞炴�ф湇鍔�
- * @author xiejun
- * @date 2023-05-23
- */
-public interface IDockingPreMetaAttrService extends IService<DockingPreMetaAttr> {
-
-
-
-	/***
-	 * 鏋勯�犲櫒鏌ヨ鏂瑰紡
-	 * @param wrapper 鏌ヨ灏佽鍣�
-	 * @return
-	 */
-
-	public List<DockingPreMetaAttr> selectByWrapper(Wrapper wrapper);
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreViewModelService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreViewModelService.java
deleted file mode 100644
index ca94816..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreViewModelService.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.vci.ubcs.code.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.vci.ubcs.code.entity.DockingPreViewModel;
-
-/***
- * 闆嗗洟鍒嗙被妯″瀷鏈嶅姟
- * @author xiejun
- * @date 2023-05-23
- */
-public interface IDockingPreViewModelService extends IService<DockingPreViewModel> {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
index 36a3acf..78843da 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
@@ -9,12 +9,18 @@
 import com.vci.ubcs.code.dto.datapush.BaseModelDTO;
 import com.vci.ubcs.code.entity.CodeWupin;
 import com.vci.ubcs.code.vo.CodeKeyAttrRepeatVO;
-import com.vci.ubcs.code.vo.pagemodel.*;
 import com.vci.ubcs.code.vo.pagemodel.UITableFieldVO;
+import com.vci.ubcs.code.vo.pagemodel.*;
+import com.vci.ubcs.starter.revision.model.BaseModel;
 import com.vci.ubcs.starter.web.pagemodel.*;
 import org.springblade.core.tool.api.R;
 
-import java.util.*;
+import java.beans.IntrospectionException;
+import java.lang.reflect.InvocationTargetException;
+import java.sql.SQLException;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
 
 /**
  * 涓绘暟鎹紩鎿庢湇鍔�
@@ -55,7 +61,7 @@
 	 * @param orderDTO 鐢宠鐨勪俊鎭紝闇�瑕佸寘鍚睘鎬х殑鍐呭鍜岀爜娈电浉鍏崇殑鍐呭
 	 * @return 杩斿洖缂栫爜鐨勫唴瀹�
 	 */
-	String addSaveCode(CodeOrderDTO orderDTO);
+	String addSaveCode(CodeOrderDTO orderDTO) throws Exception;
 
 	/**
 	 * 鍒ゆ柇缂栫爜鐨勭爜娈垫槸鍚﹁緭鍏ユ垨鑰呴�夋嫨浜嗙爜鍊�
@@ -84,9 +90,9 @@
 	 * 鍒濆鍖栦笟鍔$被鍨�
 	 * --鍒涘缓浜洪粯璁や负褰撳墠鐢ㄦ埛锛屽鏋滈渶瑕佷慨鏀癸紝鍙互鍦ㄨ幏鍙栧悗鑷澶勭悊
 	 * @param btmName 涓氬姟绫诲瀷鐨勫悕绉帮紝浼氳嚜鍔ㄥ彉鎴愬皬鍐�
-	 * @return CodeWupinEntity
+	 * @return BaseModel
 	 */
-	CodeWupin createCBOByBtmName(String btmName);
+	BaseModel createCBOByBtmName(String btmName);
 
 	/**
 	 * 淇濆瓨鍙緭鍙�夌殑淇℃伅
@@ -363,4 +369,21 @@
 	 * @return UI鐩稿叧鐨勫唴瀹�
 	 */
 	MdmUIInfoVO getUIInfoByClassifyOid(String codeClassifyOid, String functionId);
+
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鎻掑叆鎿嶄綔
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param baseModels      澶勭悊鏁版嵁
+	 * @return 澶勭悊鎴愬姛鏁版嵁鏉℃暟
+	 */
+	Integer insertBatchByType(String btmType, List<BaseModel> baseModels) throws Exception;
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩竜id闆嗗悎鏌ヨ鏁版嵁杩涜杩斿洖
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param oids      闇�瑕佹煡璇㈢殑oid闆嗗悎 閫楀彿鍒嗗紑
+	 * @return 鏌ヨ鍑虹殑鏁版嵁
+	 */
+	List<BaseModel> selectByTypeAndOid(String btmType, String oids) throws IllegalAccessException, NoSuchFieldException, InstantiationException, InvocationTargetException, IntrospectionException, SQLException;
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmProductCodeService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmProductCodeService.java
index d912ffb..a3c91a0 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmProductCodeService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmProductCodeService.java
@@ -2,9 +2,9 @@
 
 import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
 import com.vci.ubcs.code.dto.CodeOrderSecDTO;
-import com.vci.ubcs.code.entity.CodeWupin;
 import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
+import com.vci.ubcs.starter.revision.model.BaseModel;
 
 import java.util.Collection;
 import java.util.List;
@@ -19,7 +19,7 @@
 	 * @param dataCBOList 涓氬姟鏁版嵁
 	 */
 	List<String> productCodeAndSaveData(CodeClassifyFullInfoBO classifyFullInfoBO, CodeClassifyTemplateVO templateVO,
-										CodeRuleVO ruleVO, List<CodeOrderSecDTO> secDTOList, List<CodeWupin> dataCBOList);
+										CodeRuleVO ruleVO, List<CodeOrderSecDTO> secDTOList, List<BaseModel> dataCBOList) throws Exception;
 
 	/**
 		* 鍥炴敹鐮佸��
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
index 9bfc72b..fd0dfdc 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
@@ -16,10 +16,8 @@
 import com.vci.ubcs.code.mapper.CodeBasicSecMapper;
 import com.vci.ubcs.code.mapper.CodeClassifyValueMapper;
 import com.vci.ubcs.code.mapper.CodeFixedValueMapper;
-import com.vci.ubcs.code.service.ICodeBasicSecService;
-import com.vci.ubcs.code.service.ICodeClassifyValueService;
-import com.vci.ubcs.code.service.ICodeFixedValueService;
-import com.vci.ubcs.code.service.ICodeRuleService;
+import com.vci.ubcs.code.service.*;
+import com.vci.ubcs.code.vo.CodeReferConfigVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeBasicSecVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeFixedValueVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
@@ -83,6 +81,9 @@
 
 	@Resource
 	private ICodeClassifyValueService codeClassifyValueService;
+
+	@Resource
+	private ICodeReferConfigService codeReferConfigService;
 
 	@Resource
 	private IDictBizClient iDictBizClient;
@@ -237,15 +238,22 @@
 			&& StringUtils.isBlank(codeBasicSecDO.getCodeFillSeparator())){
 			throw new VciBaseException("褰撹ˉ浣嶆柟寮忎负宸﹁ˉ浣嶆垨鑰呭彸琛ヤ綅鐨勬椂鍊欙紝琛ヤ綅瀛楃涓嶈兘涓虹┖");
 		}
+		CodeReferConfigVO codeReferConfigVO = null;
 		//寮曠敤鐮佹鐨勬椂鍊欙紝闇�瑕佸垽鏂弬鐓х殑淇℃伅鏄惁姝g‘
 		if(CodeSecTypeEnum.CODE_REFER_SEC.getValue().equalsIgnoreCase(codeBasicSecDO.getSecType())){
 			if(StringUtils.isBlank(codeBasicSecDO.getReferConfig())){
 				throw new VciBaseException("寮曠敤鐮佹鐨勬椂鍊欙紝闇�瑕佸~鍐� 鍙傜収閰嶇疆 鐨勫唴瀹�");
 			}
 			try{
-				JSONObject.parseObject(codeBasicSecDO.getReferConfig(), UIFormReferVO.class);
+				//JSONObject.parseObject(codeBasicSecDO.getReferConfig(), UIFormReferVO.class);
+				codeReferConfigVO = JSONObject.parseObject(codeBasicSecDO.getReferConfig(), CodeReferConfigVO.class);
+				// 灏嗗弬鐓ч厤缃繘琛屾寔涔呭寲锛岀粰鐢ㄦ埛鎻愪緵鍙彲閫夋嫨鍙傜収閰嶇疆鐨勬柟寮�
+
 			}catch (Throwable e){
 				throw new VciBaseException("寮曠敤鐮佹鐨勬椂鍊欙紝鍙傜収閰嶇疆鐨勫唴瀹圭殑鏍煎紡涓嶆纭�,",new String[0],e);
+			}
+			if(codeReferConfigVO.getIsPersistence()=="true"){
+				codeReferConfigService.insert(codeReferConfigVO);
 			}
 		}
 		boolean resBoolean = codeBasicSecMapper.insert(codeBasicSecDO) > 0;
@@ -731,6 +739,27 @@
 	}
 
 	/**
+	 * 鎵归噺鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
+	 *
+	 * @param codeBasicSecDOs 鏁版嵁瀵硅薄鍒楄〃
+	 * @return 鏄剧ず瀵硅薄
+	 * @throws VciBaseException 鍙傛暟涓虹┖鎴栬�呬笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父
+	 */
+	@Override
+	public List<CodeBasicSecVO> codeBasicSecDO2VOs(Collection<CodeBasicSec> codeBasicSecDOs) throws VciBaseException {
+		List<CodeBasicSecVO> voList = new ArrayList<CodeBasicSecVO>();
+		if (!CollectionUtils.isEmpty(codeBasicSecDOs)) {
+			for (CodeBasicSec s : codeBasicSecDOs) {
+				CodeBasicSecVO vo = codeBasicSecDO2VO(s);
+				if (vo != null) {
+					voList.add(vo);
+				}
+			}
+		}
+		return voList;
+	}
+
+	/**
 	 * 鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
 	 *
 	 * @param codeBasicSecDO 鏁版嵁瀵硅薄
@@ -739,14 +768,26 @@
 	 */
 	@Override
 	public CodeBasicSecVO codeBasicSecDO2VO(CodeBasicSec codeBasicSecDO) throws VciBaseException {
-		CodeBasicSecVO vo = new CodeBasicSecVO();
+		CodeBasicSecVO codeBasicSecVO = new CodeBasicSecVO();
 		if (codeBasicSecDO != null) {
-			BeanUtilForVCI.copyPropertiesIgnoreCase(codeBasicSecDO, vo);
+			BeanUtilForVCI.copyPropertiesIgnoreCase(codeBasicSecVO, codeBasicSecVO);
+			codeBasicSecVO.setSecTypeText(CodeSecTypeEnum.getTextByValue(codeBasicSecVO.getSecType()));
+			codeBasicSecVO.setCodeLevelTypeText(CodeLevelTypeEnum.getTextByValue(codeBasicSecVO.getCodeLevelType()));
+			codeBasicSecVO.setCodeSecLengthTypeText(CodeSecLengthTypeEnum.getTextByValue(codeBasicSecVO.getCodeSecLengthType()));
+			codeBasicSecVO.setValueCutTypeText(CodeCutTypeEnum.getValueByText(codeBasicSecVO.getValueCutType()));
+			codeBasicSecVO.setCodeGetValueTypeText(CodeGetValueTypeEnum.getValueByText(codeBasicSecVO.getCodeGetValueType()));
+			// 濡傛灉鏄垎绫荤爜娈甸渶瑕佹煡璇㈡墍灞炲垎绫荤殑涓枃鍚嶇О
+			if(codeBasicSecDO.getSecType().equals("codeclassifysec") && Func.isNotEmpty(codeBasicSecDO.getParentClassifySecOid())){
+				CodeBasicSec codeBasicSec = codeBasicSecMapper.selectOne(Wrappers.<CodeBasicSec>query().lambda()
+					.eq(CodeBasicSec::getOid, codeBasicSecDO.getParentClassifySecOid())
+					.eq(CodeBasicSec::getSecType, codeBasicSecDO.getSecType()));
+				codeBasicSecVO.setParentClassifySecText(codeBasicSec.getName());
+			}
 			//濡傛灉鏈塴cstatus鐨勭被鐨勮瘽
 			if (true) {
 				//vo.setLcStatusText({lcStatusFullClassName}.getTextByValue(vo.getLcStatus()));
 			}
 		}
-		return vo;
+		return codeBasicSecVO;
 	}
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyProcessTempServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyProcessTempServiceImpl.java
index 26b1d8d..03ce899 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyProcessTempServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyProcessTempServiceImpl.java
@@ -6,6 +6,7 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import com.vci.ubcs.code.constant.MdmBtmTypeConstant;
 import com.vci.ubcs.code.dto.CodeClassifyProcessTempDTO;
 import com.vci.ubcs.code.entity.CodeClassifyProcessTemp;
@@ -34,6 +35,7 @@
 import java.util.stream.Collectors;
 
 import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.*;
+import static jodd.util.StringUtil.isBlank;
 
 /**
  * 鍒嗙被浣跨敤鐨勬祦绋嬫ā鏉挎湇鍔℃帴鍙�
@@ -324,6 +326,7 @@
 		return false;
 	}
 
+
 	/**
 	 * 涓婚敭鏌ヨ鏁版嵁瀵硅薄
 	 * @param oid 涓婚敭
@@ -366,7 +369,7 @@
 	@Override
 	public int codeTemplateDeleteTrigger(String classifyTemplateOid) {
 		int updateCount = 0;
-		if(com.alibaba.nacos.api.utils.StringUtils.isBlank(classifyTemplateOid)){
+		if(isBlank(classifyTemplateOid)){
 			Map<String,Object> conditionMap = new HashMap<>();
 			conditionMap.put("classifyTemplateOid",classifyTemplateOid);
 			List<CodeClassifyProcessTemp> codeClsflowtempEntities = baseMapper.selectByMap(conditionMap);
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
index 03ef145..1ed0304 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
@@ -19,13 +19,15 @@
 import com.vci.ubcs.code.po.CodeClassifyPO;
 import com.vci.ubcs.code.service.ICodeClassifyService;
 import com.vci.ubcs.code.service.ICodeKeyAttrRepeatService;
+import com.vci.ubcs.code.service.ICodeOsattributeService;
 import com.vci.ubcs.code.service.ICodeRuleService;
 import com.vci.ubcs.code.vo.CodeOsattributeVO;
 import com.vci.ubcs.code.vo.CodeOsbtmtypeVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeKeyAttrRepeatRuleVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
-import com.vci.ubcs.core.log.exception.ServiceException;
+import com.vci.ubcs.omd.feign.IBtmTypeClient;
+import com.vci.ubcs.omd.vo.BtmTypeVO;
 import com.vci.ubcs.starter.bo.WriteExcelData;
 import com.vci.ubcs.starter.exception.VciBaseException;
 import com.vci.ubcs.starter.poi.bo.ReadExcelOption;
@@ -35,6 +37,7 @@
 import com.vci.ubcs.starter.revision.model.TreeQueryObject;
 import com.vci.ubcs.starter.revision.model.TreeWrapperOptions;
 import com.vci.ubcs.starter.revision.service.RevisionModelUtil;
+import com.vci.ubcs.starter.util.BladeTreeQueryObject;
 import com.vci.ubcs.starter.util.LocalFileUtil;
 import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
 import com.vci.ubcs.starter.web.pagemodel.DataGrid;
@@ -46,10 +49,14 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springblade.core.cache.utils.CacheUtil;
+import org.springblade.core.launch.constant.AppConstant;
+import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
 import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
@@ -74,10 +81,18 @@
 
 	@Resource
 	private CodeOsbtmtypeMapper codeOsbtmtypeMapper;
+
 	@Resource
-	CodeOsbtmtypeattributeMapper codeOsbtmtypeattributeMapper;
+	private CodeOsbtmtypeattributeMapper codeOsbtmtypeattributeMapper;
+
 	@Resource
-	ICodeRuleService ICodeRuleService;
+	private IBtmTypeClient btmTypeClient;
+
+	/**
+	 * 灞炴�ф湇鍔�
+	 */
+//	@Autowired
+//	private OsAttributeServiceI attributeService;
 
 	/**
 	 * 鏃ュ織
@@ -258,7 +273,6 @@
 		return codeClassifyMapper.checkHasChild(oid.trim());
 	}
 
-
 	/**
 	 * 鍒犻櫎涓婚搴撳垎绫�
 	 * @param codeClassify 涓婚搴撳垎绫绘暟鎹紶杈撳璞★紝oid鍜宼s闇�瑕佷紶杈�
@@ -363,7 +377,6 @@
 		return codeClassifyDO2VOs(codeClassifyDOList);
 	}
 
-
 	/**
 	 * 浣跨敤涓婚敭闆嗗悎鏌ヨ鏁版嵁瀵硅薄
 	 * @param oidCollections 涓婚敭鐨勯泦鍚�
@@ -382,7 +395,6 @@
 		}
 		return  codeClassifyList;
 	}
-
 
 	/**
 	 * 鎵归噺鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
@@ -508,8 +520,7 @@
 		return null;
 	}
 
-
-//	/**
+	//	/**
 //	 * 鏍规嵁鏍戝舰鏌ヨ瀵硅薄鏉ユ煡璇㈡暟鎹璞�
 //	 *
 //	 * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄
@@ -899,7 +910,7 @@
 		condition.put("pkbtmtype",topClassifyVO.getBtmtypeid());
 
 		List<CodeOsbtmtypeattributeEntity> unDefaultAttributes = codeOsbtmtypeattributeMapper.selectByMap(condition);
-//		List<OsBtmTypeAttributeVO> unDefaultAttributes = btmService. (topClassifyVO.getBtmtypeid());
+		// List<OsBtmTypeAttributeVO> unDefaultAttributes = btmService. (topClassifyVO.getBtmtypeid());
 		List<CodeOsattributeVO> attributeVOS = new ArrayList<>();
 		if(!CollectionUtils.isEmpty(unDefaultAttributes)){
 			unDefaultAttributes.stream().forEach(attr->{
@@ -909,6 +920,7 @@
 				attributeVO.setAttrlength(Short.valueOf(attr.getAttributelength()));
 				attributeVO.setBtmtypeid(attr.getReferbtmtypeid());
 				attributeVO.setBtmtypename(attr.getReferbtmtypename());
+				attributeVO.setAttributedatatypetext(attr.getReferbtmtypename());
 				boolean add = true;
 				if(StringUtils.isNotBlank(id) && !attributeVO.getId().contains(id.replace("*",""))){
 					add = false;
@@ -921,8 +933,8 @@
 				}
 			});
 		}
-//		if(!CollectionUtils.isEmpty(attributeService.getDefaultAttributeVOs())){
-//			attributeService.getDefaultAttributeVOs().stream().forEach(attr->{
+//		if(!CollectionUtils.isEmpty(codeOsattributeService.getDefaultAttributeVOs())){
+//			codeOsattributeService.getDefaultAttributeVOs().stream().forEach(attr->{
 //				boolean add = true;
 //				if(StringUtils.isNotBlank(id) && !attr.getId().contains(id.replace("*",""))){
 //					add = false;
@@ -1000,7 +1012,7 @@
 	 * @throws VciBaseException 鍙傛暟涓虹┖锛屾暟鎹笉瀛樺湪鏃朵細鎶涘嚭寮傚父
 	 */
 	@Override
-	public  CodeClassifyVO getObjectByOid(String oid) throws VciBaseException{
+	public CodeClassifyVO getObjectByOid(String oid) throws VciBaseException{
 		return codeClassifyDO2VO(selectByOid(oid));
 	}
 
@@ -1021,7 +1033,7 @@
 	}
 
 	/**
-	 * 涓婚搴撶殑鏍�
+	 * 涓婚搴撶殑鏍�,宸茬粡鑱旇皟涓氬姟绫诲瀷鏌ヨ
 	 *
 	 * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄
 	 * @return 涓婚搴撴樉绀烘爲
@@ -1032,10 +1044,20 @@
 			treeQueryObject = new TreeQueryObject();
 		}
 		if(treeQueryObject.getConditionMap() == null){
-			treeQueryObject.setConditionMap(new HashMap<>());
+			treeQueryObject.setConditionMap(new HashMap<String,String>());
 		}
 		treeQueryObject.getConditionMap().put(PARENT_FIELD_NAME, "=null");
-		return treeCodeClassify(treeQueryObject);
+		List<Tree> trees = treeCodeClassify(treeQueryObject);
+		treeQueryObject.getConditionMap().put("domain", AppConstant.APPLICATION_NAME_CODE);
+		BaseQueryObject baseQueryObject = new BaseQueryObject();
+		baseQueryObject.setConditionMap(treeQueryObject.getConditionMap());
+		List<BtmTypeVO> btmTypeVOS = btmTypeClient.getRef(baseQueryObject).getData();
+		if(Func.isEmpty(btmTypeVOS) || Func.isEmpty(trees)){
+			return null;
+		}
+		List<Tree> treeList = trees.stream().filter(tree -> btmTypeVOS.stream().
+			anyMatch(btmType -> Objects.equals(tree.getAttributes().get("id"), btmType.getId()))).collect(Collectors.toList());
+		return treeList;
 	}
 
 	/**
@@ -1106,7 +1128,6 @@
 		return fullInfo;
 	}
 
-
 	/**
 	 * 缁熻瀛愯妭鐐圭殑涓暟
 	 *
@@ -1121,4 +1142,5 @@
 		wrapper.eq("parentCodeClassifyOid",codeClassifyOid);
 		return codeClassifyMapper.selectCount(wrapper).intValue();
 	}
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeReferConfigServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeReferConfigServiceImpl.java
index be55775..2b538e9 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeReferConfigServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeReferConfigServiceImpl.java
@@ -1,28 +1,41 @@
 package com.vci.ubcs.code.service.impl;
 
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.alibaba.cloud.commons.lang.StringUtils;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.yulichang.base.MPJBaseServiceImpl;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
-import com.vci.ubcs.code.entity.CodeReferConfig;
-import com.vci.ubcs.code.entity.CodeShowFieldConfig;
-import com.vci.ubcs.code.entity.CodeSrchCondConfig;
+import com.vci.ubcs.code.constant.MdmBtmTypeConstant;
+import com.vci.ubcs.code.dto.CodeReferConfigDTO;
+import com.vci.ubcs.code.entity.*;
 import com.vci.ubcs.code.mapper.CodeReferConfigMapper;
-import com.vci.ubcs.code.service.CodeReferConfigService;
+import com.vci.ubcs.code.service.ICodeReferConfigService;
+import com.vci.ubcs.code.service.ICodeShowFieldConfigService;
+import com.vci.ubcs.code.service.ICodeSrchCondConfigService;
 import com.vci.ubcs.code.vo.CodeReferConfigVO;
 import com.vci.ubcs.code.wrapper.CodeReferConfigWraper;
-import com.vci.ubcs.starter.util.Map2MPJLambdaUtil;
-import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
 import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.cglib.beans.BeanMap;
 import org.springframework.stereotype.Service;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageImpl;
-import org.springframework.data.domain.PageRequest;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.TS_NOT_PROCESS;
 
 /**
  * 鍙傜収閰嶇疆琛�(CodeReferconfig)琛ㄦ湇鍔″疄鐜扮被
@@ -31,9 +44,16 @@
  * @since 2023-05-19 17:48:02
  */
 @Service("CodeReferconfigService")
-public class CodeReferConfigServiceImpl extends ServiceImpl<CodeReferConfigMapper,CodeReferConfig> implements CodeReferConfigService {
+public class CodeReferConfigServiceImpl extends MPJBaseServiceImpl<CodeReferConfigMapper,CodeReferConfig> implements ICodeReferConfigService {
+
     @Resource
     private CodeReferConfigMapper codeReferconfigMapper;
+
+	@Resource
+	private ICodeShowFieldConfigService ICodeShowFieldConfigService;
+
+	@Resource
+	private ICodeSrchCondConfigService ICodeSrchCondConfigService;
 
     /**
      * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
@@ -42,61 +62,184 @@
      * @return 瀹炰緥瀵硅薄
      */
     @Override
-    public CodeReferConfig queryById(String oid) {
-        return this.codeReferconfigMapper.queryById(oid);
+    public CodeReferConfigVO queryById(String oid) {
+		CodeReferConfig codeReferConfig = this.codeReferconfigMapper.selectJoinOne(CodeReferConfig.class, this.getMPJLambdaWrapper().eq(CodeReferConfig::getOid, oid));
+		return CodeReferConfigWraper.build().entityVO(codeReferConfig);
     }
 
-    /**
-     * 鍒嗛〉鏌ヨ
-     *
-     * @param bladeQueryObject 绛涢�夋潯浠�
-     * @return 鏌ヨ缁撴灉
-     */
+	/**
+	 * 鍒嗛〉鏌ヨ
+	 *
+	 * @param bladeQueryObject 绛涢�夋潯浠�
+	 * @return 鏌ヨ缁撴灉
+	 */
+	@Override
+	public IPage<CodeReferConfigVO> queryByJoinPage(BladeQueryObject bladeQueryObject) {
+		CodeReferConfig codeReferConfig = new CodeReferConfig();
+		// 鏍规嵁绉熸埛杩涜鍖哄垎瀵瑰簲鐨勫弬鐓ч厤缃�
+		Map<String, Object> conditionMap = bladeQueryObject.getConditionMap();
+		// 鏌ヨ鎵�灞炵鎴蜂笅鐨勫拰寮�鍚叏灞�鐨勫弬鐓ч厤缃俊鎭�
+		conditionMap.put("tenantId",AuthUtil.getTenantId());
+		conditionMap.put("isOpenGlobal","true");
+		BeanMap beanMap = BeanMap.create(codeReferConfig);
+		beanMap.putAll(conditionMap);
+		// 娣诲姞榛樿鎺掑簭瀛楁,鏍规嵁鏃堕棿杩涜鎺掑簭
+		Query query = bladeQueryObject.getQuery();
+		query.setAscs("CREATETIME");
+		IPage<CodeReferConfig> codeReferConfigs = codeReferconfigMapper.selectJoinPage(codeReferConfig, Condition.getPage(query));
+		return CodeReferConfigWraper.build().pageVO(codeReferConfigs);
+	}
+
     @Override
-    public IPage<CodeReferConfigVO> queryByPage(BladeQueryObject bladeQueryObject) {
-		MPJLambdaWrapper<CodeReferConfig> mpjLambdaWrapper = Map2MPJLambdaUtil.getMPJLambdaWrapper(bladeQueryObject.getConditionMap(), CodeReferConfig.class)
-			.selectAll(CodeReferConfig.class)
-			.selectCollection("PCS",CodeShowFieldConfig.class, CodeReferConfig::getCodeShowFieldConfigs)
-			.selectCollection("PCSR",CodeSrchCondConfig.class, CodeReferConfig::getCodeSrchCondConfigs)
-			.leftJoin(CodeShowFieldConfig.class, CodeShowFieldConfig::getReferConfigOid,CodeReferConfig::getOid)
-			.leftJoin(CodeSrchCondConfig.class, CodeSrchCondConfig::getReferConfigOid, CodeReferConfig::getOid)
+    public List<CodeReferConfigVO> queryByList(CodeReferConfigVO codeReferConfigVO) {
+		codeReferConfigVO.setTenantId(AuthUtil.getTenantId());
+		//MPJLambdaWrapper<CodeReferConfig> mpjLambdaWrapper = Map2MPJLambdaUtil.getMPJLambdaWrapper(bladeQueryObject.getConditionMap(), CodeReferConfig.class)
+		MPJLambdaWrapper<CodeReferConfig> mpjLambdaWrapper = getMPJLambdaWrapper()
+			.setEntity(codeReferConfigVO)
 			.orderBy(true, true, CodeReferConfig::getCreateTime);
-		IPage<CodeReferConfig> codeReferConfigIPage = this.codeReferconfigMapper.selectPage(Condition.getPage(bladeQueryObject.getQuery()), mpjLambdaWrapper);
-		return CodeReferConfigWraper.build().pageVO(codeReferConfigIPage);
+		List<CodeReferConfig> codeReferConfigList = codeReferconfigMapper.selectJoinList(CodeReferConfig.class, mpjLambdaWrapper);
+		return CodeReferConfigWraper.build().listVO(codeReferConfigList);
 	}
 
     /**
      * 鏂板鏁版嵁
      *
-     * @param codeReferConfig 瀹炰緥瀵硅薄
+     * @param codeReferConfigVO 瀹炰緥瀵硅薄
      * @return 瀹炰緥瀵硅薄
      */
     @Override
-    public CodeReferConfig insert(CodeReferConfig codeReferConfig) {
-        this.codeReferconfigMapper.insert(codeReferConfig);
-        return codeReferConfig;
+	@Transactional(rollbackFor = Exception.class)
+    public R insert(CodeReferConfigVO codeReferConfigVO) {
+		VciBaseUtil.alertNotNull(codeReferConfigVO,"闇�瑕佹坊鍔犵殑鏁版嵁瀵硅薄");
+		if (StringUtils.isBlank(codeReferConfigVO.getReferType())){
+			throw new VciBaseException("鍙傜収閰嶇疆涓嶈兘涓虹┖");
+		}
+		// Long count = countCodeReferConfig(codeReferConfigVO);
+		// if(count > 0){
+		//    throw new VciBaseException("宸插瓨鍦ㄧ浉鍚岀殑鍙傜収閰嶇疆");
+		// }
+		CodeReferConfig codeReferConfig = CodeReferConfigWraper.build().entityDO(codeReferConfigVO);
+		codeReferConfig.setOid(VciBaseUtil.getPk().toUpperCase());
+		DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeReferConfig, MdmBtmTypeConstant.CODE_REFER_CONFIG);
+		codeReferConfig.setTenantId(AuthUtil.getTenantId());
+		boolean resInsertReferConfig = this.codeReferconfigMapper.insert(codeReferConfig) > 0;
+		if (!resInsertReferConfig) {
+			return R.fail("鏂板鍙傜収閰嶇疆澶辫触锛�");
+		}
+		// 涓婚敭鍥炲~
+		if(Func.isNotEmpty(codeReferConfig.getCodeShowFieldConfigs())){
+			ICodeShowFieldConfigService.insertBatch(codeReferConfigVO.getCodeShowFieldConfigVOS(),codeReferConfig.getOid());
+		}
+		if(Func.isNotEmpty(codeReferConfig.getCodeSrchCondConfigs())){
+			ICodeSrchCondConfigService.insertBatch(codeReferConfigVO.getCodeSrchCondConfigVOS(),codeReferConfig.getOid());
+		}
+		return R.data(codeReferConfigVO);
     }
+
+	/**
+	 * 鑾峰彇宸插瓨鍦ㄧ殑鍙傜収閰嶇疆
+	 * @param codeReferConfigVO
+	 * @return 涓暟
+	 */
+	private Long countCodeReferConfig(CodeReferConfigVO codeReferConfigVO) {
+		String templateName = codeReferConfigVO.getName();
+		String templateId = codeReferConfigVO.getId();
+		if (StringUtils.isBlank(templateName) && StringUtils.isBlank(templateId)){
+			throw new VciBaseException("鍙傜収閰嶇疆缂栧彿鍜屽悕绉颁笉鑳戒负绌�");
+		}
+		LambdaQueryWrapper<CodeReferConfig> wrapper = Wrappers.<CodeReferConfig>query()
+			.lambda().eq(CodeReferConfig::getId, codeReferConfigVO.getId())
+			.eq(CodeReferConfig::getTenantId, codeReferConfigVO.getTenantId())
+			.or(true)
+			.eq(CodeReferConfig::getIsOpenGlobal,"true") // 鏌ヨ寮�鍚叏灞�鐨勫弬鐓ч厤缃�
+			.eq(CodeReferConfig::getId,templateId)
+			.eq(CodeReferConfig::getName,templateName);
+		Long count = codeReferconfigMapper.selectCount(wrapper);
+		return count;
+	}
+
+	/**
+	 * 杩炶〃鏌ヨWrapper瀵硅薄鑾峰彇
+	 * @return
+	 */
+	private MPJLambdaWrapper<CodeReferConfig> getMPJLambdaWrapper(){
+		MPJLambdaWrapper<CodeReferConfig> mpjLambdaWrapper = new MPJLambdaWrapper<>(CodeReferConfig.class)
+			.selectAll(CodeReferConfig.class)
+			// .select(CodeShowFieldConfig::getField
+			// ,CodeShowFieldConfig::getTitle
+			// ,CodeShowFieldConfig::getFieldType
+			// ,CodeShowFieldConfig::getSort
+			// ,CodeShowFieldConfig::getAttrSortField
+			// ,CodeShowFieldConfig::getWidth
+			// ,CodeShowFieldConfig::getFixedPosition
+			// ,CodeShowFieldConfig::getTemplet)
+			// .select(
+			// CodeSrchCondConfig::getFilterType,
+			// CodeSrchCondConfig::getFilterField,
+			// CodeSrchCondConfig::getFilterValue)
+			.selectCollection(CodeShowFieldConfig.class, CodeReferConfig::getCodeShowFieldConfigs)
+			.selectCollection(CodeSrchCondConfig.class, CodeReferConfig::getCodeSrchCondConfigs)
+			.leftJoin(CodeShowFieldConfig.class, CodeShowFieldConfig::getReferConfigOid,CodeReferConfig::getOid)
+			.leftJoin(CodeSrchCondConfig.class, CodeSrchCondConfig::getReferConfigOid, CodeReferConfig::getOid);
+		return mpjLambdaWrapper;
+	}
 
     /**
      * 淇敼鏁版嵁
      *
-     * @param codeReferConfig 瀹炰緥瀵硅薄
+     * @param codeReferConfigVO 瀹炰緥瀵硅薄
      * @return 瀹炰緥瀵硅薄
      */
     @Override
-    public CodeReferConfig update(CodeReferConfig codeReferConfig) {
-        this.codeReferconfigMapper.updateById(codeReferConfig);
-        return this.queryById(codeReferConfig.getOid());
+	@Transactional(rollbackFor = Exception.class)
+    public R update(CodeReferConfigVO codeReferConfigVO) {
+		boolean resUpdateReferConfig = this.codeReferconfigMapper.updateById(codeReferConfigVO) > 0;
+		if (!resUpdateReferConfig) {
+			return R.fail("鍙傜収閰嶇疆淇敼澶辫触锛�");
+		}
+		this.ICodeShowFieldConfigService.updateBatch(codeReferConfigVO.getCodeShowFieldConfigVOS());
+		this.ICodeSrchCondConfigService.updateBatch(codeReferConfigVO.getCodeSrchCondConfigVOS());
+        return R.data(codeReferConfigVO);
     }
 
     /**
      * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
      *
-     * @param oid 涓婚敭
+     * @param codeReferConfigDTO
      * @return 鏄惁鎴愬姛
      */
     @Override
-    public boolean deleteById(String oid) {
-        return this.codeReferconfigMapper.deleteById(oid) > 0;
+	@Transactional(rollbackFor = Exception.class)
+    public R deleteById(CodeReferConfigDTO codeReferConfigDTO) {
+		CodeReferConfig tsDO = new CodeReferConfig();
+		BeanUtil.copyProperties(tsDO,codeReferConfigDTO);
+		CodeReferConfig codeReferConfig = codeReferconfigMapper.queryById(codeReferConfigDTO.getOid());
+		// 妫�鏌s瀛楁鏄惁涓�鑷�
+		if (!checkTs(tsDO,codeReferConfig)) {
+			return R.fail(TS_NOT_PROCESS);
+		}
+		boolean resDeleteReferConfig = this.codeReferconfigMapper.deleteById(codeReferConfigDTO.getOid()) > 0;
+		if (!resDeleteReferConfig) {
+			return R.fail("鍙傜収閰嶇疆鍒犻櫎澶辫触锛�");
+		}
+		this.ICodeShowFieldConfigService.deleteByReferConfigOid(codeReferConfigDTO.getOid());
+		this.ICodeSrchCondConfigService.deleteByReferConfigOid(codeReferConfigDTO.getOid());
+        return  R.status(resDeleteReferConfig);
     }
+
+	/**
+	 * 妫�鏌s
+	 * @param tempDO
+	 * @param codeReferConfig
+	 * @return
+	 */
+	private boolean checkTs(CodeReferConfig tempDO, CodeReferConfig codeReferConfig){
+		Date dbTs = codeReferConfig.getTs();
+		Date currentTs = tempDO.getTs();
+		if(currentTs == null ?  dbTs == null:currentTs.compareTo(dbTs)==0){
+			return true;
+		}
+		return false;
+	}
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeShowFieldConfigServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeShowFieldConfigServiceImpl.java
index 72330a1..577f289 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeShowFieldConfigServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeShowFieldConfigServiceImpl.java
@@ -1,14 +1,18 @@
 package com.vci.ubcs.code.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.vci.ubcs.code.entity.CodeShowFieldConfig;
 import com.vci.ubcs.code.mapper.CodeShowFieldConfigMapper;
-import com.vci.ubcs.code.service.CodeShowFieldConfigService;
+import com.vci.ubcs.code.service.ICodeShowFieldConfigService;
+import com.vci.ubcs.code.vo.CodeShowFieldConfigVO;
+import com.vci.ubcs.code.wrapper.CodeShowFieldConfigWraper;
 import org.springframework.stereotype.Service;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageImpl;
-import org.springframework.data.domain.PageRequest;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.util.List;
 
 /**
  * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏄剧ず鐨勫睘鎬ч厤缃〃(CodeShowFieldConfigService)琛ㄦ湇鍔″疄鐜扮被
@@ -17,34 +21,10 @@
  * @since 2023-05-19 17:58:56
  */
 @Service("CodeShowFieldConfigService")
-public class CodeShowFieldConfigServiceImpl implements CodeShowFieldConfigService {
+public class CodeShowFieldConfigServiceImpl extends ServiceImpl<CodeShowFieldConfigMapper,CodeShowFieldConfig> implements ICodeShowFieldConfigService {
 
     @Resource
     private CodeShowFieldConfigMapper codeShowFieldConfigMapper;
-
-    /**
-     * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
-     *
-     * @param oid 涓婚敭
-     * @return 瀹炰緥瀵硅薄
-     */
-    @Override
-    public CodeShowFieldConfig queryById(String oid) {
-        return this.codeShowFieldConfigMapper.queryById(oid);
-    }
-
-    /**
-     * 鍒嗛〉鏌ヨ
-     *
-     * @param codeShowFieldConfig 绛涢�夋潯浠�
-     * @param pageRequest      鍒嗛〉瀵硅薄
-     * @return 鏌ヨ缁撴灉
-     */
-    @Override
-    public Page<CodeShowFieldConfig> queryByPage(CodeShowFieldConfig codeShowFieldConfig, PageRequest pageRequest) {
-        long total = this.codeShowFieldConfigMapper.count(codeShowFieldConfig);
-        return new PageImpl<>(this.codeShowFieldConfigMapper.queryAllByLimit(codeShowFieldConfig, pageRequest), pageRequest, total);
-    }
 
     /**
      * 鏂板鏁版嵁
@@ -53,24 +33,25 @@
      * @return 瀹炰緥瀵硅薄
      */
     @Override
-    public CodeShowFieldConfig insert(CodeShowFieldConfig codeShowFieldConfig) {
-        this.codeShowFieldConfigMapper.insert(codeShowFieldConfig);
-        return codeShowFieldConfig;
+    public boolean insert(CodeShowFieldConfig codeShowFieldConfig) {
+        return this.codeShowFieldConfigMapper.insert(codeShowFieldConfig)>0;
     }
 
-    /**
-     * 淇敼鏁版嵁
-     *
-     * @param codeShowFieldConfig 瀹炰緥瀵硅薄
-     * @return 瀹炰緥瀵硅薄
-     */
-    @Override
-    public CodeShowFieldConfig update(CodeShowFieldConfig codeShowFieldConfig) {
-        this.codeShowFieldConfigMapper.update(codeShowFieldConfig);
-        return this.queryById(codeShowFieldConfig.getOid());
-    }
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public boolean insertBatch(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS, String oid) {
+		List<CodeShowFieldConfig> codeShowFieldConfigs = CodeShowFieldConfigWraper.build().listDO(codeShowFieldConfigVOS,oid);
+		boolean b = this.saveOrUpdateBatch(codeShowFieldConfigs);
+		return b;
+	}
 
-    /**
+	@Override
+	public boolean updateBatch(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS) {
+		List<CodeShowFieldConfig> codeShowFieldConfigs = CodeShowFieldConfigWraper.build().listDO(codeShowFieldConfigVOS);
+		return this.saveOrUpdateBatch(codeShowFieldConfigs);
+	}
+
+	/**
      * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
      *
      * @param oid 涓婚敭
@@ -80,4 +61,13 @@
     public boolean deleteById(String oid) {
         return this.codeShowFieldConfigMapper.deleteById(oid) > 0;
     }
+
+	@Override
+	public boolean deleteByReferConfigOid(String oid) {
+		LambdaQueryWrapper<CodeShowFieldConfig> lambdaQueryWrapper = Wrappers.<CodeShowFieldConfig>query()
+			.lambda()
+			.eq(CodeShowFieldConfig::getReferConfigOid, oid);
+		return this.codeShowFieldConfigMapper.delete(lambdaQueryWrapper) > 0;
+	}
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeSrchCondConfigServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeSrchCondConfigServiceImpl.java
index 320bb99..31082d8 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeSrchCondConfigServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeSrchCondConfigServiceImpl.java
@@ -1,14 +1,18 @@
 package com.vci.ubcs.code.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.vci.ubcs.code.entity.CodeSrchCondConfig;
 import com.vci.ubcs.code.mapper.CodeSrchCondConfigMapper;
-import com.vci.ubcs.code.service.CodeSrchCondConfigService;
+import com.vci.ubcs.code.service.ICodeSrchCondConfigService;
+import com.vci.ubcs.code.vo.CodeSrchCondConfigVO;
+import com.vci.ubcs.code.wrapper.CodeSrchCondConfigWraper;
 import org.springframework.stereotype.Service;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageImpl;
-import org.springframework.data.domain.PageRequest;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.util.List;
 
 /**
  * 寮曠敤鐮佹锛屽弬鐓ч厤缃晫闈紝鏌ヨ鏉′欢閰嶇疆琛�(CodeSrchCondConfigService)琛ㄦ湇鍔″疄鐜扮被
@@ -17,34 +21,10 @@
  * @since 2023-05-19 17:58:56
  */
 @Service("CodeSrchCondConfigService")
-public class CodeSrchCondConfigServiceImpl implements CodeSrchCondConfigService {
+public class CodeSrchCondConfigServiceImpl extends ServiceImpl<CodeSrchCondConfigMapper, CodeSrchCondConfig> implements ICodeSrchCondConfigService {
 
     @Resource
     private CodeSrchCondConfigMapper codeSrchcondconfigMapper;
-
-    /**
-     * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁
-     *	codeSrchcondconfig
-     * @param oid 涓婚敭
-     * @return 瀹炰緥瀵硅薄
-     */
-    @Override
-    public CodeSrchCondConfig queryById(String oid) {
-        return this.codeSrchcondconfigMapper.queryById(oid);
-    }
-
-    /**
-     * 鍒嗛〉鏌ヨ
-     *
-     * @param codeSrchcondconfig 绛涢�夋潯浠�
-     * @param pageRequest      鍒嗛〉瀵硅薄
-     * @return 鏌ヨ缁撴灉
-     */
-    @Override
-    public Page<CodeSrchCondConfig> queryByPage(CodeSrchCondConfig codeSrchcondconfig, PageRequest pageRequest) {
-        long total = this.codeSrchcondconfigMapper.count(codeSrchcondconfig);
-        return new PageImpl<>(this.codeSrchcondconfigMapper.queryAllByLimit(codeSrchcondconfig, pageRequest), pageRequest, total);
-    }
 
     /**
      * 鏂板鏁版嵁
@@ -53,24 +33,24 @@
      * @return 瀹炰緥瀵硅薄
      */
     @Override
-    public CodeSrchCondConfig insert(CodeSrchCondConfig codeSrchcondconfig) {
-        this.codeSrchcondconfigMapper.insert(codeSrchcondconfig);
-        return codeSrchcondconfig;
+    public boolean insert(CodeSrchCondConfig codeSrchcondconfig) {
+        return this.codeSrchcondconfigMapper.insert(codeSrchcondconfig)>0;
     }
 
-    /**
-     * 淇敼鏁版嵁
-     *
-     * @param codeSrchcondconfig 瀹炰緥瀵硅薄
-     * @return 瀹炰緥瀵硅薄
-     */
-    @Override
-    public CodeSrchCondConfig update(CodeSrchCondConfig codeSrchcondconfig) {
-        this.codeSrchcondconfigMapper.update(codeSrchcondconfig);
-        return this.queryById(codeSrchcondconfig.getOid());
-    }
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public boolean insertBatch(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS, String oid) {
+		List<CodeSrchCondConfig> codeSrchCondConfigs = CodeSrchCondConfigWraper.build().listDO(codeSrchCondConfigVOS,oid);
+		return this.saveOrUpdateBatch(codeSrchCondConfigs);
+	}
 
-    /**
+	@Override
+	public boolean updateBatch(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS) {
+		List<CodeSrchCondConfig> codeSrchCondConfigs = CodeSrchCondConfigWraper.build().listDO(codeSrchCondConfigVOS);
+		return this.saveOrUpdateBatch(codeSrchCondConfigs);
+	}
+
+	/**
      * 閫氳繃涓婚敭鍒犻櫎鏁版嵁
      *
      * @param oid 涓婚敭
@@ -80,4 +60,13 @@
     public boolean deleteById(String oid) {
         return this.codeSrchcondconfigMapper.deleteById(oid) > 0;
     }
+
+	@Override
+	public boolean deleteByReferConfigOid(String oid) {
+		LambdaQueryWrapper<CodeSrchCondConfig> lambdaQueryWrapper = Wrappers.<CodeSrchCondConfig>query()
+			.lambda()
+			.eq(CodeSrchCondConfig::getReferConfigOid, oid);
+		return this.codeSrchcondconfigMapper.delete(lambdaQueryWrapper) > 0;
+	}
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreApplyFormServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreApplyFormServiceImpl.java
deleted file mode 100644
index 11910a7..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreApplyFormServiceImpl.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.vci.ubcs.code.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.vci.ubcs.code.entity.DockingPreApplyForm;
-import com.vci.ubcs.code.mapper.DockingPreApplyFormMapper;
-import com.vci.ubcs.code.service.IDockingPreApplyFormService;
-import org.springframework.stereotype.Service;
-
-/***
- *闆嗗洟灞炴�ф槧灏勬湇鍔�
- * @author xiejun
- * @date 2023-05-22
- */
-@Service
-public class DockingPreApplyFormServiceImpl extends ServiceImpl<DockingPreApplyFormMapper, DockingPreApplyForm> implements IDockingPreApplyFormService {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrRangeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrRangeServiceImpl.java
deleted file mode 100644
index 6f67a30..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrRangeServiceImpl.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.vci.ubcs.code.service.impl;
-
-
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.vci.ubcs.code.entity.DockingPreAttrRange;
-import com.vci.ubcs.code.mapper.DockingPreAttrRangeMapper;
-import com.vci.ubcs.code.service.IDockingPreAttrRangeService;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
-import com.vci.ubcs.code.wrapper.DockingPreAttrRangeWrapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import java.util.List;
-
-/***
- *闆嗗洟灞炴�у彇鍊艰寖鍥存湇鍔�
- * @author xiejun
- * @date 2023-05-22
- */
-@Service
-public class DockingPreAttrRangeServiceImpl extends ServiceImpl<DockingPreAttrRangeMapper, DockingPreAttrRange> implements IDockingPreAttrRangeService {
-	@Autowired(required = false)
-	DockingPreAttrRangeMapper dockingPreAttrRangeMapper;
-	@Override
-	public List<DockingPreAttrRangeVO> getDockingPreAttrRangesByMetaId(String meatId) {
-		List<DockingPreAttrRange> dockingPreAttrMappings=this.selectByWrapper(Wrappers.<DockingPreAttrRange>query().lambda().eq(DockingPreAttrRange::getMetaListId, meatId));
-		return DockingPreAttrRangeWrapper.build().entityVOs(dockingPreAttrMappings);
-	}
-
-	@Override
-	public List<DockingPreAttrRange> selectByWrapper(Wrapper wrapper) {
-		return dockingPreAttrRangeMapper.selectList(wrapper);
-	}
-
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreClassifyServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreClassifyServiceImpl.java
deleted file mode 100644
index 849557e..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreClassifyServiceImpl.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.vci.ubcs.code.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.vci.ubcs.code.entity.DockingPreAttrRange;
-import com.vci.ubcs.code.entity.DockingPreClassify;
-import com.vci.ubcs.code.mapper.DockingPreClassifyMapper;
-import com.vci.ubcs.code.service.IDockingPreClassifyService;
-import org.springframework.stereotype.Service;
-
-import java.util.Collection;
-import java.util.Map;
-import java.util.function.Function;
-
-/**
- * 闆嗗洟鍒嗙被涓氬姟鏈嶅姟
- * @author xiejun
- * @date 2023-05-23
- */
-@Service
-public class DockingPreClassifyServiceImpl extends ServiceImpl<DockingPreClassifyMapper, DockingPreClassify> implements IDockingPreClassifyService {
-
-
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreMetaAttrServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreMetaAttrServiceImpl.java
deleted file mode 100644
index 167036f..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreMetaAttrServiceImpl.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.vci.ubcs.code.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.vci.ubcs.code.entity.DockingPreAttrMapping;
-import com.vci.ubcs.code.entity.DockingPreMetaAttr;
-import com.vci.ubcs.code.mapper.DockingPreMetaAttrMapper;
-import com.vci.ubcs.code.service.IDockingPreMetaAttrService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-
-/***
- * 闆嗗洟灞炴�ф湇鍔�
- * @author xiejun
- * @date 2023-05-23
- */
-@Service
-public class DockingPreMetaAttrServiceImpl extends ServiceImpl<DockingPreMetaAttrMapper, DockingPreMetaAttr> implements IDockingPreMetaAttrService {
-
-	@Autowired(required = false)
-	DockingPreMetaAttrMapper dockingPreMetaAttrMapper;
-
-	@Override
-	public List<DockingPreMetaAttr> selectByWrapper(Wrapper wrapper) {
-		return dockingPreMetaAttrMapper.selectList(wrapper);
-	}
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreViewModelServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreViewModelServiceImpl.java
deleted file mode 100644
index 9b8b5de..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreViewModelServiceImpl.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.vci.ubcs.code.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.vci.ubcs.code.entity.DockingPreViewModel;
-import com.vci.ubcs.code.mapper.DockingPreViewModelMapper;
-import com.vci.ubcs.code.service.IDockingPreViewModelService;
-import org.springframework.stereotype.Service;
-
-/***
- * 闆嗗洟妯″瀷鏈嶅姟
- * @author xiejun
- * @date 2023-05-23
- */
-@Service
-public class DockingPreViewModelServiceImpl extends ServiceImpl<DockingPreViewModelMapper,DockingPreViewModel> implements IDockingPreViewModelService {
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
index f96f6f5..5f36b78 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -4,10 +4,10 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
 import com.vci.ubcs.code.bo.CodeTemplateAttrSqlBO;
 import com.vci.ubcs.code.constant.FrameWorkDefaultValueConstant;
-import com.vci.ubcs.code.constant.MdmBtmTypeConstant;
 import com.vci.ubcs.code.dto.CodeDeleteBatchDTO;
 import com.vci.ubcs.code.dto.CodeOrderDTO;
 import com.vci.ubcs.code.dto.datapush.BaseModelDTO;
@@ -18,13 +18,17 @@
 import com.vci.ubcs.code.mapper.CommonsMapper;
 import com.vci.ubcs.code.service.*;
 import com.vci.ubcs.code.vo.CodeKeyAttrRepeatVO;
-import com.vci.ubcs.code.vo.pagemodel.*;
 import com.vci.ubcs.code.vo.pagemodel.UITableFieldVO;
 import com.vci.ubcs.code.vo.pagemodel.UITablePageVO;
+import com.vci.ubcs.code.vo.pagemodel.*;
+import com.vci.ubcs.omd.feign.IBtmTypeClient;
 import com.vci.ubcs.omd.feign.IEnumClient;
-import com.vci.ubcs.omd.feign.IEnumItemClient;
+import com.vci.ubcs.omd.feign.IRevisionRuleClient;
+import com.vci.ubcs.omd.vo.BtmTypeVO;
 import com.vci.ubcs.omd.vo.EnumVO;
+import com.vci.ubcs.omd.vo.RevisionRuleVO;
 import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.revision.model.BaseModel;
 import com.vci.ubcs.starter.revision.model.TreeWrapperOptions;
 import com.vci.ubcs.starter.revision.service.RevisionModelUtil;
 import com.vci.ubcs.starter.web.constant.QueryOptionConstant;
@@ -37,21 +41,32 @@
 import com.vci.ubcs.starter.web.util.*;
 import com.vci.ubcs.system.entity.DictBiz;
 import com.vci.ubcs.system.feign.IDictBizClient;
-import net.logstash.logback.encoder.org.apache.commons.lang3.ObjectUtils;
 import net.logstash.logback.encoder.org.apache.commons.lang3.StringUtils;
+import oracle.sql.TIMESTAMP;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springblade.core.cache.utils.CacheUtil;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
-import org.springframework.beans.BeanUtils;
+import org.springblade.core.tool.utils.StringPool;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cglib.beans.BeanMap;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
 import javax.annotation.Resource;
+import java.beans.BeanInfo;
 import java.beans.IntrospectionException;
+import java.beans.Introspector;
+import java.beans.PropertyDescriptor;
+import java.lang.reflect.Field;
 import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.math.BigDecimal;
+import java.sql.SQLException;
+import java.sql.Timestamp;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.time.ZonedDateTime;
 import java.util.*;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.stream.Collectors;
@@ -120,6 +135,16 @@
 	 */
 	@Autowired
 	private ICodePhaseAttrService phaseAttrService;
+	/**
+	 * 涓氬姟绫诲瀷鐨勬湇鍔�
+	 */
+	@Autowired
+	private IBtmTypeClient btmTypeClient;
+	/**
+	 * 鐗堟湰瑙勫垯鐨勬湇鍔�
+	 */
+	@Resource
+	private IRevisionRuleClient revisionRuleClient;
 //
 	/**
 	 * 閫氱敤鏌ヨ
@@ -180,6 +205,14 @@
 	 * 绌烘牸
 	 */
 	public static final String SPACE = " ";
+	/**
+	 * 缂撳瓨锝嬶絽锝�
+	 */
+	public static final String BTM_INIT_CACHE = "ubcs-code:btm";
+	/**
+	 *
+	 */
+	public static final String BTM_NAME = "btm:name";
 
 	/**
 	 * 瀵嗙骇鐨勫瓧娈�
@@ -316,7 +349,7 @@
 	 * @return 杩斿洖缂栫爜鐨勫唴瀹�
 	 */
 	@Override
-	public String addSaveCode(CodeOrderDTO orderDTO) {
+	public String addSaveCode(CodeOrderDTO orderDTO) throws Exception {
 		VciBaseUtil.alertNotNull(orderDTO, "缂栫爜鐢宠鐩稿叧鐨勫睘鎬у拰鐮佹鐨勫唴瀹归兘涓虹┖", orderDTO.getCodeClassifyOid(), "涓婚搴撳垎绫荤殑涓婚敭",
 			orderDTO.getTemplateOid(), "妯℃澘鐨勪富閿�", orderDTO.getCodeRuleOid(), "缂栫爜瑙勫垯鐨勪富閿�");
 		CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(orderDTO.getCodeClassifyOid());
@@ -340,14 +373,14 @@
 		switchDateAttrOnOrder(templateVO, orderDTO);
 		//9.鐢熸垚缂栫爜鐨勪俊鎭�
 //		ClientBusinessObject cbo = boService.createCBOByBtmName(classifyFullInfo.getTopClassifyVO().getBtmtypeid());
-		CodeWupin cbo = createCBOByBtmName(classifyFullInfo.getTopClassifyVO().getBtmtypeid());
+		BaseModel cbo = createCBOByBtmName(classifyFullInfo.getTopClassifyVO().getBtmtypeid());
 //		//榛樿鐨勫睘鎬ч兘涓嶇敤浠庡墠绔嫹璐�
 //		//璁剧疆缂栫爜闇�瑕佺殑榛樿灞炴�х殑鍐呭
 		copyValueToCBO(classifyFullInfo, cbo, orderDTO, templateVO, false);
 //		//TODO:鍥犱负榛樿鐨勫睘鎬ч兘涓嶆嫹璐濓紝鐩墠闆嗗洟鐮佸彨name锛屽苟娌℃湁浠嶥TO鎷疯礉鍒癱bo閲屻�傚鍔犱竴涓崟鐙鐞嗭紝浠ュ悗鍐嶇湅瑕佷笉瑕佽皟鏁�
 		cbo.setName(orderDTO.getName() == null ? "" : orderDTO.getName());
 //		//end -- modify by lihang @20220407
-		List<CodeWupin> cboList = new ArrayList<>();
+		List<BaseModel> cboList = new ArrayList<>();
 
 		//澶囨敞
 		cbo.setDescription(orderDTO.getDescription());
@@ -358,8 +391,8 @@
 
 
 		List<String> charList = new ArrayList<>();
-		for (CodeWupin wupinEntity : cboList) {
-			charList.add(wupinEntity.getId());
+		for (BaseModel baseModel : cboList) {
+			charList.add(baseModel.getId());
 		}
 		batchSaveSelectChar(templateVO, charList);
 		return codeList.size() > 0 ? codeList.get(0) : "";
@@ -709,7 +742,7 @@
 	 * @param templateVO       妯℃澘鐨勬樉绀哄璞�
 	 * @param edit             鏄惁涓轰慨鏀�
 	 */
-	private void copyValueToCBO(CodeClassifyFullInfoBO classifyFullInfo, CodeWupin cbo,
+	private void copyValueToCBO(CodeClassifyFullInfoBO classifyFullInfo, BaseModel cbo,
 								CodeOrderDTO orderDTO, CodeClassifyTemplateVO templateVO,
 								boolean edit)  {
 		String fullPath = "";
@@ -738,14 +771,18 @@
 
 		try {
 
-			BeanUtilForVCI.copyPropertiesIgnoreNull(BeanUtilForVCI.convertMap(CodeWupin.class,orderDTO.getData()),cbo);
-
-			cbo.setCodeclsfid(classifyFullInfo.getCurrentClassifyVO().getOid());
-			cbo.setCodetemplateoid(templateVO.getOid());
-			cbo.setCodeclsfpath(fullPath);
+			BeanUtilForVCI.copyPropertiesIgnoreNull(BeanUtilForVCI.convertMap(BaseModel.class,orderDTO.getData()),cbo);
+			Map<String,String> data = new HashMap<>();
+			data.put(CODE_CLASSIFY_OID_FIELD,classifyFullInfo.getCurrentClassifyVO().getOid());
+			data.put(CODE_TEMPLATE_OID_FIELD,templateVO.getOid());
+			data.put(CODE_FULL_PATH_FILED,fullPath);
+			cbo.setData(data);
+//			cbo.setCodeclsfid(classifyFullInfo.getCurrentClassifyVO().getOid());
+//			cbo.setTemplateOid(templateVO.getOid());
+//			cbo.setCodeclsfpath(fullPath);
 			cbo.setTs(new Date());
 			if (!edit && StringUtils.isBlank(orderDTO.getLcStatus())) {
-				//鎵剧敓鍛藉懆鏈熺殑璧峰鐘舵�侊紝鎻掍釜鐐癸紝鐢熷懡鍛ㄦ湡鏄惁闇�瑕佸垱寤�
+				//鍏堝啓鍥哄畾锛屽悗闈㈢敓鍛藉懆鏈熷ソ浜嗗湪缂栧啓
 				if (StringUtils.isNotBlank(cbo.getLctid())) {
 //					OsLifeCycleVO lifeCycleVO = lifeCycleService.getLifeCycleById(cbo.getLctid());
 //					if (lifeCycleVO != null) {
@@ -782,72 +819,65 @@
 	 * @throws VciBaseException 鍒濆鍖栧嚭閿欑殑鏄細鎶涘嚭寮傚父
 	 */
 	@Override
-	public CodeWupin createCBOByBtmName(String btmName)
+	public BaseModel createCBOByBtmName(String btmName)
 		throws VciBaseException {
 		if(btmName!=null){
 			btmName = btmName.trim().toLowerCase();
 		}
-		String userid = AuthUtil.getUser().getUserName();
-//		if(!hasCreatedCbos.containsKey(btmName)){
-//			if(StringUtils.isEmpty(userid)){
-//				throw new VciBaseException(msgCodePrefix +"noHasUserid");
-//			}
-//			try {
-//				hasCreatedCbos.put(btmName, createBusinessObject(btmName));
-//			} catch (Exception e) {
-//				logger.error("鍒涘缓涓氬姟绫诲瀷瀵硅薄",e);
-//				throw new VciBaseException(msgCodePrefix + "initBoError",new String[]{btmName});
-//			}
-//		}
-//		ClientBusinessObject cbo = cloneClientBusinessObject(hasCreatedCbos.get(btmName));
-
-//		QueryWrapper<CodeOsbtmtypeEntity> btmWrapper = new QueryWrapper<>();
-//		btmWrapper.eq("ID",btmName);
-//		CodeOsbtmtypeEntity btmTypeVO = codeOsbtmtypeMapper.selectOne(btmWrapper);
-//		OsBtmTypeVO btmTypeVO = btmService.getBtmById(boName);
-		String userName = AuthUtil.getUser().getUserName();
-		CodeWupin wupinEntity = new CodeWupin();
-		wupinEntity.setOid(VciBaseUtil.getPk());
-//		bo.setRevisionid((new ObjectUtility()).getNewObjectID36());
-//		bo.setNameoid((new ObjectUtility()).getNewObjectID36());
-		wupinEntity.setBtmname(btmName);
-		wupinEntity.setLastR(String.valueOf(1));
-		wupinEntity.setFirstR(String.valueOf(1));
-		wupinEntity.setFirstV(String.valueOf(1));
-		wupinEntity.setLastV(String.valueOf(1));
-		wupinEntity.setCreator(userName);
-		wupinEntity.setCreateTime(new Date());
-		wupinEntity.setLastModifier(userName);
-		wupinEntity.setLastModifyTime(new Date());
-		wupinEntity.setRevisionRule("numberversionrule");
-		wupinEntity.setVersionRule("0");
-//		if(StringUtils.isNotBlank(btmTypeVO.getRevisionruleid())){
-			//
-//			OsRevisionRuleVO revisionRuleVO = revisionRuleService.getRevisionRuleById(btmTypeVO.getRevisionruleid());
-		wupinEntity.setRevisionValue("1");
-//		}
-
-		wupinEntity.setRevisionSeq(1);
-		wupinEntity.setVersionSeq(1);
-		//鎻掍釜鐐癸紝闇�瑕侀棶鍕囧摜鐗堟湰闂锛屽睍绀洪粯璁や负1
-		wupinEntity.setVersionValue("1");
-		wupinEntity.setLctid("wupinLC");
-		wupinEntity.setLcStatus("Editing");
-		wupinEntity.setId("");
-		wupinEntity.setName("");
-		wupinEntity.setDescription("");
-		wupinEntity.setOwner(userName);
-		wupinEntity.setCheckinby(userName);
-		wupinEntity.setCopyFromVersion("");
-		wupinEntity.setMaterialtype(1001);
-		wupinEntity.setCaigouwl("true");
-		wupinEntity.setShifoupihaoguanli("true");
-		wupinEntity.setKucunwl("true");
-		wupinEntity.setXiaoshouwl("false");
-		wupinEntity.setPassing("true");
+		try {
+			String keyPrefix = BTM_NAME.concat(StringPool.DASH).concat(AuthUtil.getTenantId()).concat(StringPool.COLON);
+			String finalBtmName = btmName;
+			return CacheUtil.get(BTM_INIT_CACHE, keyPrefix, btmName, () -> {
+				BaseModel baseModel = createBaseModel(finalBtmName);
+				return baseModel;
+			});
+		} catch (Exception e) {
+			logger.error("鍒涘缓涓氬姟绫诲瀷瀵硅薄",e);
+			throw new VciBaseException("initBtmError",new String[]{btmName});
+		}
+//		String userName = AuthUtil.getUser().getUserName();
+//		CodeWupin wupinEntity = new CodeWupin();
+//		wupinEntity.setOid(VciBaseUtil.getPk());
+////		bo.setRevisionid((new ObjectUtility()).getNewObjectID36());
+////		bo.setNameoid((new ObjectUtility()).getNewObjectID36());
+//		wupinEntity.setBtmname(btmName);
+//		wupinEntity.setLastR(String.valueOf(1));
+//		wupinEntity.setFirstR(String.valueOf(1));
+//		wupinEntity.setFirstV(String.valueOf(1));
+//		wupinEntity.setLastV(String.valueOf(1));
+//		wupinEntity.setCreator(userName);
+//		wupinEntity.setCreateTime(new Date());
+//		wupinEntity.setLastModifier(userName);
+//		wupinEntity.setLastModifyTime(new Date());
+//		wupinEntity.setRevisionRule("numberversionrule");
+//		wupinEntity.setVersionRule("0");
+////		if(StringUtils.isNotBlank(btmTypeVO.getRevisionruleid())){
+//			//
+////			OsRevisionRuleVO revisionRuleVO = revisionRuleService.getRevisionRuleById(btmTypeVO.getRevisionruleid());
+//		wupinEntity.setRevisionValue("1");
+////		}
+//
+//		wupinEntity.setRevisionSeq(1);
+//		wupinEntity.setVersionSeq(1);
+//		//鎻掍釜鐐癸紝闇�瑕侀棶鍕囧摜鐗堟湰闂锛屽睍绀洪粯璁や负1
+//		wupinEntity.setVersionValue("1");
+//		wupinEntity.setLctid("wupinLC");
+//		wupinEntity.setLcStatus("Editing");
+//		wupinEntity.setId("");
+//		wupinEntity.setName("");
+//		wupinEntity.setDescription("");
+//		wupinEntity.setOwner(userName);
+//		wupinEntity.setCheckinby(userName);
+//		wupinEntity.setCopyFromVersion("");
+//		wupinEntity.setMaterialtype(1001);
+//		wupinEntity.setCaigouwl("true");
+//		wupinEntity.setShifoupihaoguanli("true");
+//		wupinEntity.setKucunwl("true");
+//		wupinEntity.setXiaoshouwl("false");
+//		wupinEntity.setPassing("true");
 
 //		this.initTypeAttributeValue(wupinEntity,btmTypeVO);
-		return wupinEntity;
+//		return wupinEntity;
 
 
 //		return cbo;
@@ -1236,8 +1266,8 @@
 		//娌℃湁闄愬埗鍒嗙被锛屼絾鏄竴涓ā鏉垮彧鍙兘鍦ㄤ竴涓笟鍔$被鍨嬮噷闈紝鎵�浠ョ洿鎺ユ煡璇㈣繖涓笟鍔$被鍨嬪嵆鍙�
 		if (!CollectionUtils.isEmpty(conditionMap)) {
 			Map<String, String> andConditionMap = new HashMap<>();
-			andConditionMap.put("islastr", "1");
-			andConditionMap.put("islastv", "1");
+			andConditionMap.put("lastr", "1");
+			andConditionMap.put("lastv", "1");
 			if (StringUtils.isNotBlank(orderDTO.getOid())) {
 				andConditionMap.put("oid", QueryOptionConstant.NOTEQUAL + orderDTO.getOid());
 			}
@@ -2066,7 +2096,7 @@
 		} else {
 			//琛ㄩ渶瑕佹敼
 //			conditionMap.put(CODE_CLASSIFY_OID_FIELD, QueryOptionConstant.IN + "(select oid from " + VciBaseUtil.getTableName(MdmBtmTypeConstant.CODE_CLASSIFY)
-			conditionMap.put(CODE_CLASSIFY_OID_FIELD, QueryOptionConstant.IN + "(select oid from pl_code_wupin where lcstatus='" + FrameWorkDefaultValueConstant.FRAMEWORK_DATA_ENABLED +
+			conditionMap.put(CODE_CLASSIFY_OID_FIELD, QueryOptionConstant.IN + "(select oid from pl_code_classify where lcstatus='" + FrameWorkDefaultValueConstant.FRAMEWORK_DATA_ENABLED +
 				"' start with parentCodeClassifyOid = '" + codeClassifyOid + "' CONNECT BY PRIOR OID = parentCodeClassifyOid )");
 		}
 		conditionMap.put("lastr", "1");
@@ -2883,4 +2913,150 @@
 		}
 		return buttonVOList;
 	}
+
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鎻掑叆鎿嶄綔
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param baseModels      澶勭悊鏁版嵁
+	 * @return 澶勭悊鎴愬姛鏁版嵁鏉℃暟
+	 */
+	@Override
+	public Integer insertBatchByType(String btmType, List<BaseModel> baseModels) throws Exception {
+		//浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
+		R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType));
+		if(listR.getData().size() == 0){
+			throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+		}
+		//灏哹ean杞负map,mybatis缁熶竴澶勭悊
+		List<Map<String,String>> maps = new ArrayList<>();
+		baseModels.stream().forEach(model-> {
+			try {
+				maps.add(VciBaseUtil.convertBean2Map(model));
+			} catch (Exception e) {
+				throw new VciBaseException("绫诲瀷杞崲閿欒锛�" + e.toString());
+			}
+		});
+		return commonsMapper.insertByBaseModel(listR.getData().get(0).getTableName(), maps.get(0), maps);
+	}
+
+	/**
+	 * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩竜id闆嗗悎鏌ヨ鏁版嵁杩涜杩斿洖
+	 *
+	 * @param btmType 涓氬姟绫诲瀷
+	 * @param oids      闇�瑕佹煡璇㈢殑oid闆嗗悎 閫楀彿鍒嗗紑
+	 * @return 鏌ヨ鍑虹殑鏁版嵁
+	 */
+	@Override
+	public List<BaseModel> selectByTypeAndOid(String btmType, String oids) throws IllegalAccessException, NoSuchFieldException, InstantiationException, InvocationTargetException, IntrospectionException, SQLException {
+
+		//浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
+		R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType));
+		if(listR.getData().size() == 0){
+			throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+		}
+		//鏌ヨ鏁版嵁
+		List<Map> maps = commonsMapper.selectBySql("select * from " + listR.getData().get(0).getTableName() + " where oid in ("
+			+ VciBaseUtil.toInSql(oids.toString()) + ")");
+
+		List<BaseModel> baseModels = new ArrayList<>();
+		//灏嗘煡璇㈠埌鐨勬暟鎹浆鎹负basemodel锛屼娇鐢ㄧ殑鍙嶅皠鏂瑰紡鏉ヨ繘琛屽垱寤虹殑
+		for (Map map : maps) {
+			Object obj = BaseModel.class.newInstance();
+			BeanInfo beanInfo = Introspector.getBeanInfo(obj.getClass());
+			PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors();
+			for (PropertyDescriptor property : propertyDescriptors) {
+				Method setter = property.getWriteMethod();
+				if (setter != null) {
+					//oracle鐨勬椂闂翠负TIMESTAMP鐨勶紝闇�瑕佽繘琛岃浆鎹㈡垚data锛屽惁鍒欏皢鎶ラ敊
+					if(map.get(property.getName().toUpperCase()) instanceof TIMESTAMP){
+						LocalDateTime localDateTime = ((TIMESTAMP) map.get(property.getName().toUpperCase())).toLocalDateTime();
+						ZoneId zoneId = ZoneId.systemDefault();
+						ZonedDateTime zdt = localDateTime.atZone(zoneId);
+						Date date = Date.from(zdt.toInstant());
+						setter.invoke(obj,date);
+						map.remove(property.getName().toUpperCase());
+					} //oracle鐨勬暟瀛椾负BigDecimal鐨勶紝闇�瑕佽繘琛岃浆鎹㈡垚Integer锛屽惁鍒欏皢鎶ラ敊
+					else if (map.get(property.getName().toUpperCase()) instanceof BigDecimal
+						&& ("Integer").equals(setter.getParameterTypes()[0].getSimpleName())){
+						setter.invoke(obj, ((BigDecimal)map.get(property.getName().toUpperCase())).intValue());
+						map.remove(property.getName().toUpperCase());
+					}else if(map.get(property.getName().toUpperCase()) != null){
+						setter.invoke(obj, map.get(property.getName().toUpperCase()));
+						map.remove(property.getName().toUpperCase());
+					}
+				}
+			}
+			for (Object key : map.keySet()) {
+				map.put(key,String.valueOf(map.get(key)));
+			}
+
+			((BaseModel) obj).setData(map);
+			baseModels.add((BaseModel) obj);
+		}
+		return baseModels;
+	}
+
+
+	/**
+	 * 鏍规嵁涓氬姟绫诲瀷鍚嶇О鍒涘缓涓氬姟鏁版嵁婧愬璞�
+	 * @param boName 涓氬姟绫诲瀷鍚嶇О
+	 * @return 涓氬姟鏁版嵁瀵硅薄
+	 */
+	public BaseModel createBaseModel(String boName)  {
+		R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(boName));
+		String userName = AuthUtil.getUser().getUserName();
+		BaseModel bo = new BaseModel();
+		bo.setOid(VciBaseUtil.getPk());
+//		bo.setRevisionid(VciBaseUtil.getPk());
+//		bo.setNameoid(VciBaseUtil.getPk());
+		bo.setBtmname(boName);
+		bo.setLastR("1");
+		bo.setFirstR("1");
+		bo.setFirstV("1");
+		bo.setLastV("1");
+		bo.setCreator(userName);
+		bo.setCreateTime(new Date());
+		bo.setLastModifier(userName);
+		bo.setLastModifyTime(new Date());
+		bo.setRevisionRule(listR.getData().get(0).getRevisionRuleId());
+		bo.setVersionRule(String.valueOf(listR.getData().get(0).getVersionRule()));
+		if(StringUtils.isNotBlank(listR.getData().get(0).getRevisionRuleId())){
+			R<List<RevisionRuleVO>> revisionRuleVO = revisionRuleClient
+				.selectByIdCollection(Collections.singletonList(listR.getData().get(0).getRevisionRuleId()));
+			bo.setRevisionValue(revisionRuleVO.getData().get(0).getStartCode());
+		}
+		bo.setRevisionSeq(1);
+		bo.setVersionSeq(1);
+		bo.setVersionValue(getVersionValue(WebUtil.getInt(listR.getData().get(0).getVersionRule())));
+		bo.setLctid(listR.getData().get(0).getLifeCycleId());
+//		if(StringUtils.isNotBlank(listR.getData().get(0).getLifeCycleId())){
+//			OsLifeCycleVO lifeCycleVO = lifeService.getLifeCycleById(listR.getData().get(0).getLifeCycleId());
+			bo.setLcStatus("Editing");
+//		}
+		bo.setId("");
+		bo.setName("");
+		bo.setDescription("");
+		bo.setOwner(userName);
+//		bo.setCheckinby(userName);
+		bo.setCopyFromVersion("");
+//		this.initTypeAttributeValue(bo,btmTypeVO);
+		return bo;
+	}
+
+	/**
+	 * 鑾峰彇鐗堟鐨勫��
+	 * @param verRuleName 鐗堟鐨勮鍒�
+	 * @return 鐗堟鐨勫�硷紝娌℃湁瑙勫垯鍒欎负绌�
+	 */
+	private String getVersionValue(int verRuleName) {
+		if (verRuleName == 0) {
+			return "1";
+		} else if (verRuleName == 1) {
+			return "a";
+		} else if (verRuleName == 2) {
+			return "0";
+		}
+		return "";
+	}
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
index 6a785bc..f199450 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
@@ -2,11 +2,11 @@
 
 import com.alibaba.nacos.common.utils.StringUtils;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.BeanUtils;
 import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
 import com.vci.ubcs.code.dto.CodeOrderSecDTO;
 import com.vci.ubcs.code.entity.CodeAllCode;
 import com.vci.ubcs.code.entity.CodeSerialValue;
-import com.vci.ubcs.code.entity.CodeWupin;
 import com.vci.ubcs.code.enumpack.CodeCutTypeEnum;
 import com.vci.ubcs.code.enumpack.CodeGetValueTypeEnum;
 import com.vci.ubcs.code.enumpack.CodeLevelTypeEnum;
@@ -14,18 +14,22 @@
 import com.vci.ubcs.code.lifecycle.CodeAllCodeLC;
 import com.vci.ubcs.code.mapper.CodeSerialValueMapper;
 import com.vci.ubcs.code.service.ICodeWupinService;
+import com.vci.ubcs.code.service.MdmEngineService;
 import com.vci.ubcs.code.service.MdmProductCodeService;
 import com.vci.ubcs.code.vo.pagemodel.CodeBasicSecVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
 import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.revision.model.BaseModel;
 import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
 import com.vci.ubcs.starter.web.constant.QueryOptionConstant;
 import com.vci.ubcs.starter.web.constant.RegExpConstant;
 import com.vci.ubcs.starter.web.enumpck.OsCodeFillTypeEnum;
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
 import com.vci.ubcs.starter.web.util.VciDateUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
@@ -55,12 +59,24 @@
 	 */
 	@Resource
 	private ICodeWupinService iCodeWupinService;
+	/**
+	 * 鎵�鏈夌殑缂栫爜鐨勫唴瀹�
+	 */
+	@Resource
+	@Lazy
+	private MdmEngineService mdmEngineService;
+
+	/**
+	 * 鍏紡鐨勬湇鍔�
+	 */
+	@Autowired
+	private FormulaServiceImpl formulaService;
 
 	@Override
-	public List<String> productCodeAndSaveData(CodeClassifyFullInfoBO classifyFullInfoBO, CodeClassifyTemplateVO templateVO, CodeRuleVO ruleVO, List<CodeOrderSecDTO> secDTOList, List<CodeWupin> dataCBOList) {
+	public List<String> productCodeAndSaveData(CodeClassifyFullInfoBO classifyFullInfoBO, CodeClassifyTemplateVO templateVO, CodeRuleVO ruleVO, List<CodeOrderSecDTO> secDTOList, List<BaseModel> dataCBOList) throws Exception {
 //		BatchCBO batchCBO = new BatchCBO();
 //		WebUtil.setPersistence(false);
-//		dataCBOList = dataCBOList.stream().sorted(((o1, o2) -> o1.getCreateTime().compareTo(o2.getCreateTime()))).collect(Collectors.toList());
+		dataCBOList = dataCBOList.stream().sorted(((o1, o2) -> o1.getCreateTime().compareTo(o2.getCreateTime()))).collect(Collectors.toList());
 //		batchCBO.getCreateCbos().addAll(dataCBOList);
 		List<String> codeList = new ArrayList<>();
 
@@ -82,7 +98,7 @@
 //				VciBaseUtil.setCurrentUserSessionInfo(sessionInfo);
 				String code = cbo.getId();
 				List<String> serialUnitList = new ArrayList<>();
-				String[] secLengths = cbo.getCodeSecLengthField().split("#");
+				String[] secLengths = cbo.getData().get(CODE_SEC_LENGTH_FIELD).split("#");
 				List<CodeBasicSecVO> secVOList = ruleVO.getSecVOList().stream().sorted(((o1, o2) -> o1.getOrderNum().compareTo(o2.getOrderNum()))).collect(Collectors.toList());
 				Map<String/**鐮佹鐨勪富閿�**/,String/**鐮佹鐨勫��**/> serialValueMap = new HashMap<>();
 				Map<String, CodeBasicSecVO> secVOMap = secVOList.stream().collect(Collectors.toMap(s -> s.getOid(), t -> t));
@@ -266,7 +282,7 @@
 			Map<String/**鐮佹鐨勪富閿�**/, Map<String, CodeSerialValue>> maxSerialValueMap = new HashMap<>();
 
 			for (int i = 0; i < dataCBOList.size(); i++) {
-				CodeWupin cbo = dataCBOList.get(i);
+				BaseModel cbo = dataCBOList.get(i);
 				List<String> thisSecValueList = new LinkedList<>();
 				for (int j = 0; j < secValueList.size(); j++) {
 					thisSecValueList.add(secValueList.get(j));
@@ -303,13 +319,17 @@
 			Map<String, String> statusMap = allCodeDOList.stream().collect(Collectors.toMap(s -> s.getOid(), s -> s.getLcStatus()));
 			allCodeDOList.stream().filter(s -> StringUtils.equalsIgnoreCase("codeallcode",s.getBtmname())).forEach(s -> {
 				s.setLcStatus(statusMap.get(s.getOid()));
-
 			});
+
+
 			allCodeDOList.stream().forEach(
 				allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode");allCode.setLctid("codeAllCodeLC");}
 			);
+
 			codeAllCodeService.saveBatch(allCodeDOList);
-			iCodeWupinService.saveBatch(dataCBOList);
+//			iCodeWupinService.saveBatch(dataCBOList);
+			mdmEngineService.insertBatchByType(dataCBOList.get(0).getBtmname(),dataCBOList);
+
 //			batchCBO.getCreateCbos().stream().filter(s -> StringUtils.equalsIgnoreCase("codeallcode",s.getBtmName())).forEach(s -> {
 //				s.setLcStatus(statusMap.get(s.getOid()));
 //				try {
@@ -332,7 +352,7 @@
 	 * @param serialUnitList 娴佹按渚濇嵁鐨勫唴瀹�
 	 *                       杩橀渶瑕佸悗缁殑涓�涓Щ妞嶅皢浼氭秹鍙婂埌鍏朵粬鐨勬湇鍔�
 	 */
-	private void switchAttrSecValue(List<CodeBasicSecVO> attrSecVOList, CodeWupin cbo,
+	private void switchAttrSecValue(List<CodeBasicSecVO> attrSecVOList, BaseModel cbo,
                                     List<String> thisSecValueList, boolean attrSevIsSerialDepend,
                                     List<String> serialUnitList){
 		if (!CollectionUtils.isEmpty(attrSecVOList)) {
@@ -340,9 +360,9 @@
 				String value = "";
 				if (StringUtils.isNotBlank(attrSevVO.getGetValueClass())) {
 					//浣跨敤缁勫悎瑙勫垯鏉ュ鐞嗙殑
-//					value = getValueByFormulaForCBO(cbo, attrSevVO.getGetValueClass());
+					value = getValueByFormulaForCBO(cbo, attrSevVO.getGetValueClass());
 				} else {
-//					value = cbo.getAttributeValue(attrSevVO.getReferAttributeId());
+					value = cbo.getData().get(attrSevVO.getReferAttributeId());
 				}
 				if (value == null) {
 					value = "";
@@ -591,7 +611,7 @@
 	 * @param allCodeDOList 鎵�鏈夌殑鐮佸�肩殑瀵硅薄鍒楄〃
 	 */
 	private void wrapperAllCode(CodeClassifyFullInfoBO classifyFullInfoBO, CodeRuleVO ruleVO,
-                                CodeWupin cbo, CodeClassifyTemplateVO templateVO,
+                                BaseModel cbo, CodeClassifyTemplateVO templateVO,
                                 List<CodeAllCode> allCodeDOList, String serialUnitString, String serialValueString){
 		CodeAllCode allCodeDO = new CodeAllCode();
 		allCodeDO.setCodeClassifyOid(classifyFullInfoBO.getCurrentClassifyVO().getOid());
@@ -746,4 +766,20 @@
 //		WebUtil.setPersistence(oldPersistence);
 		return updateFlag.get();
 	}
+
+	/**
+	 * 浣跨敤CBO澶勭悊缁勫悎瑙勫垯鐨勫唴瀹�
+	 * @param cbo 鏁版嵁鐨勫唴瀹�
+	 * @param rule 瑙勫垯鐨勫唴瀹�
+	 * @return 杞崲鍚庣殑
+	 */
+	private String getValueByFormulaForCBO(BaseModel cbo,String rule){
+		Map<String, Object> dataMap = BeanUtils.beanToMap(cbo);
+		Map<String, String> map = new HashMap<String, String>();
+		for (String i : dataMap.keySet()) {
+			map.put(i, String.valueOf(dataMap.get(i)));
+		}
+//		WebUtil.copyValueToMapFromCbos(cbo,dataMap);
+		return formulaService.getValueByFormula(map,rule);
+	}
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
index 0ea0711..f43debb 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -20,12 +20,12 @@
 import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultClassfyVO;
 import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultDataObjectDetailDO;
 import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultSystemVO;
+import com.vci.ubcs.code.webService.annotation.VciWebservice;
+import com.vci.ubcs.code.webService.config.AttributeMapConfig;
 import com.vci.ubcs.starter.revision.model.TreeQueryObject;
 import com.vci.ubcs.starter.web.pagemodel.SessionInfo;
 import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
-import com.vci.ubcs.webservice.annotation.VciWebservice;
-import com.vci.ubcs.webservice.config.AttributeMapConfig;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java
index 695bc04..8dc780f 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java
@@ -4,8 +4,8 @@
 import com.thoughtworks.xstream.XStream;
 import com.thoughtworks.xstream.io.xml.DomDriver;
 import com.vci.ubcs.code.vo.webserviceModel.attrmap.LibraryDO;
+import com.vci.ubcs.code.webService.config.AttributeMapConfig;
 import com.vci.ubcs.starter.util.LocalFileUtil;
-import com.vci.ubcs.webservice.config.AttributeMapConfig;
 import org.springframework.beans.factory.annotation.Autowired;
 
 import java.util.Map;
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/WsClientUtil.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/WsClientUtil.java
similarity index 97%
rename from Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/WsClientUtil.java
rename to Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/WsClientUtil.java
index 19965ff..4d7fcf2 100644
--- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/WsClientUtil.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/WsClientUtil.java
@@ -1,4 +1,4 @@
-/*
+package com.vci.ubcs.code.webService;/*
 package com.vci.ubcs.webservice;
 
 import org.apache.axiom.om.OMAbstractFactory;
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/annotation/VciWebservice.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/annotation/VciWebservice.java
similarity index 92%
rename from Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/annotation/VciWebservice.java
rename to Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/annotation/VciWebservice.java
index af6a79f..a007076 100644
--- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/annotation/VciWebservice.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/annotation/VciWebservice.java
@@ -1,4 +1,4 @@
-package com.vci.ubcs.webservice.annotation;
+package com.vci.ubcs.code.webService.annotation;
 
 import org.springframework.core.annotation.AliasFor;
 import org.springframework.stereotype.Component;
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/config/AttributeMapConfig.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/AttributeMapConfig.java
similarity index 95%
rename from Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/config/AttributeMapConfig.java
rename to Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/AttributeMapConfig.java
index 89d1203..126250c 100644
--- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/config/AttributeMapConfig.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/AttributeMapConfig.java
@@ -1,4 +1,4 @@
-package com.vci.ubcs.webservice.config;
+package com.vci.ubcs.code.webService.config;
 
 import org.springframework.boot.context.properties.ConfigurationProperties;
 import org.springframework.stereotype.Component;
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/config/VciCxfPublishConfig.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/VciCxfPublishConfig.java
similarity index 96%
rename from Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/config/VciCxfPublishConfig.java
rename to Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/VciCxfPublishConfig.java
index 9fa68ec..30ab765 100644
--- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/webservice/config/VciCxfPublishConfig.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/VciCxfPublishConfig.java
@@ -1,9 +1,9 @@
-package com.vci.ubcs.webservice.config;
+package com.vci.ubcs.code.webService.config;
 
 import com.alibaba.cloud.commons.lang.StringUtils;
+import com.vci.ubcs.code.webService.annotation.VciWebservice;
 import com.vci.ubcs.starter.web.util.ApplicationContextProvider;
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
-import com.vci.ubcs.webservice.annotation.VciWebservice;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.cxf.Bus;
 import org.apache.cxf.jaxws.EndpointImpl;
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeBasicSecWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeBasicSecWrapper.java
index 9864da5..c58fd2e 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeBasicSecWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeBasicSecWrapper.java
@@ -17,12 +17,15 @@
  *  Author: Chill 搴勯獮 (smallchill@163.com)
  */
 
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.vci.ubcs.code.entity.CodeBasicSec;
-import com.vci.ubcs.code.enumpack.*;
 import com.vci.ubcs.code.vo.pagemodel.CodeBasicSecVO;
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.enums.EnumEnum;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
 
+import javax.annotation.Resource;
 import java.util.List;
 import java.util.Objects;
 import java.util.stream.Collectors;
@@ -40,15 +43,23 @@
 	}
 
 	@Override
-	public CodeBasicSecVO entityVO(CodeBasicSec codeBasicSec) {
-		CodeBasicSecVO codeBasicSecVO = Objects.requireNonNull(BeanUtil.copy(codeBasicSec, CodeBasicSecVO.class));
-
-		//codeBasicSecVO.setLcStatusText(CodeRuleLC.getTextByValue(codeBasicSec.getLcStatus()));
-		codeBasicSecVO.setSecTypeText(CodeSecTypeEnum.getTextByValue(codeBasicSec.getSecType()));
-		codeBasicSecVO.setCodeLevelTypeText(CodeLevelTypeEnum.getTextByValue(codeBasicSec.getCodeLevelType()));
-		codeBasicSecVO.setCodeSecLengthTypeText(CodeSecLengthTypeEnum.getTextByValue(codeBasicSec.getCodeSecLengthType()));
-		codeBasicSecVO.setValueCutTypeText(CodeCutTypeEnum.getValueByText(codeBasicSec.getValueCutType()));
-		codeBasicSecVO.setCodeGetValueTypeText(CodeGetValueTypeEnum.getValueByText(codeBasicSec.getCodeGetValueType()));
+	public CodeBasicSecVO entityVO(CodeBasicSec codeBasicSecDO) {
+		CodeBasicSecVO codeBasicSecVO = Objects.requireNonNull(BeanUtil.copy(codeBasicSecDO, CodeBasicSecVO.class));
+		if(StringUtils.isNotBlank(codeBasicSecDO.getSecType())){
+			codeBasicSecVO.setSecTypeText(EnumCache.getValue(EnumEnum.CODE_SEC_TYPE,codeBasicSecDO.getSecType()));
+		}
+		if(StringUtils.isNotBlank(codeBasicSecDO.getCodeLevelType())){
+			codeBasicSecVO.setCodeLevelTypeText(EnumCache.getValue(EnumEnum.CODE_LEVEL_TYPE,codeBasicSecDO.getCodeLevelType()));
+		}
+		if(StringUtils.isNotBlank(codeBasicSecDO.getCodeSecLengthType())){
+			codeBasicSecVO.setCodeSecLengthTypeText(EnumCache.getValue(EnumEnum.CODE_SEC_LENGTH,codeBasicSecDO.getCodeSecLengthType()));
+		}
+		if(StringUtils.isNotBlank(codeBasicSecDO.getValueCutType())){
+			codeBasicSecVO.setValueCutTypeText(EnumCache.getValue(EnumEnum.CODE_CUT_TYPE,codeBasicSecDO.getValueCutType()));
+		}
+		if(StringUtils.isNotBlank(codeBasicSecDO.getCodeGetValueType())){
+			codeBasicSecVO.setCodeGetValueTypeText(EnumCache.getValue(EnumEnum.CODE_GET_VALUE_TYPE,codeBasicSecDO.getCodeGetValueType()));
+		}
 		//codeBasicSecVO.setParentClassifySecText();
 		//codeBasicSecVO.setSecretGradeText();
 		return codeBasicSecVO;
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyProcessTempWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyProcessTempWrapper.java
index c35d782..97f43f2 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyProcessTempWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyProcessTempWrapper.java
@@ -1,8 +1,11 @@
 package com.vci.ubcs.code.wrapper;
 
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.vci.ubcs.code.entity.CodeClassifyProcessTemp;
 import com.vci.ubcs.code.enumpack.CodeClassifyProcessUseEnum;
 import com.vci.ubcs.code.vo.pagemodel.CodeClassifyProcessTempVO;
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.enums.EnumEnum;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
 
@@ -17,12 +20,10 @@
 	@Override
 	public CodeClassifyProcessTempVO entityVO(CodeClassifyProcessTemp codeClassifyProcessTemp) {
 		CodeClassifyProcessTempVO codeClassifyProcessTempVO = Objects.requireNonNull(BeanUtil.copy(codeClassifyProcessTemp, CodeClassifyProcessTempVO.class));
-		codeClassifyProcessTempVO.setCodeProcessUseText(CodeClassifyProcessUseEnum.getTextByValue(codeClassifyProcessTemp.getCodeProcessUse()));
-
-
+		if(StringUtils.isNotBlank(codeClassifyProcessTemp.getCodeProcessUse())){
+			codeClassifyProcessTempVO.setCodeProcessUseText(EnumCache.getValue(EnumEnum.CODE_CLASSIFY_PROCESS_USE,codeClassifyProcessTemp.getCodeProcessUse()));
+		}
 		return codeClassifyProcessTempVO;
 	}
-
-
 
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateAttrWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateAttrWrapper.java
index e6f4d47..293997b 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateAttrWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateAttrWrapper.java
@@ -16,8 +16,11 @@
  */
 package com.vci.ubcs.code.wrapper;
 
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.vci.ubcs.code.entity.CodeClassifyTemplateAttr;
 import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.enums.EnumEnum;
 import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
@@ -38,9 +41,9 @@
 	@Override
 	public CodeClassifyTemplateAttrVO entityVO(CodeClassifyTemplateAttr CodeClstempattr) {
 		CodeClassifyTemplateAttrVO codeClassifyTemplateAttrVO = Objects.requireNonNull(BeanUtil.copy(CodeClstempattr, CodeClassifyTemplateAttrVO.class));
-
-		codeClassifyTemplateAttrVO.setAttributeDataTypeText(VciFieldTypeEnum.getTextByValue(CodeClstempattr.getAttributeDataType()));
-
+		if(StringUtils.isNotBlank(CodeClstempattr.getAttributeDataType())){
+			codeClassifyTemplateAttrVO.setAttributeDataTypeText( EnumCache.getValue(EnumEnum.VCO_FIELD_TYPE,CodeClstempattr.getAttributeDataType()));
+		}
 		return codeClassifyTemplateAttrVO;
 	}
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateWrapper.java
index 3688d3a..0b31fca 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeClassifyTemplateWrapper.java
@@ -38,12 +38,10 @@
 	@Override
 	public CodeClassifyTemplateVO entityVO(CodeClassifyTemplate plCodeClstemplate) {
 		CodeClassifyTemplateVO plCodeClstemplateVO = Objects.requireNonNull(BeanUtil.copy(plCodeClstemplate, CodeClassifyTemplateVO.class));
-
 		//User createUser = UserCache.getUser(plCodeClstemplate.getCreateUser());
 		//User updateUser = UserCache.getUser(plCodeClstemplate.getUpdateUser());
 		//plCodeClstemplateVO.setCreateUserName(createUser.getName());
 		//plCodeClstemplateVO.setUpdateUserName(updateUser.getName());
-
 		return plCodeClstemplateVO;
 	}
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeReferConfigWraper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeReferConfigWraper.java
index 6d26fdb..71efccf 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeReferConfigWraper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeReferConfigWraper.java
@@ -1,13 +1,18 @@
 package com.vci.ubcs.code.wrapper;
 
-import com.vci.ubcs.code.entity.CodePhaseAttr;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.vci.ubcs.code.entity.CodeReferConfig;
+import com.vci.ubcs.code.enumpack.CodeReferConfigTypeEnum;
 import com.vci.ubcs.code.vo.CodeReferConfigVO;
-import com.vci.ubcs.code.vo.pagemodel.CodePhaseAttrVO;
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.enums.EnumEnum;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.core.tool.utils.Func;
 
+import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * 鍙傜収閰嶇疆-鍖呰绫�,杩斿洖瑙嗗浘灞傛墍闇�鐨勫瓧娈�
@@ -17,7 +22,6 @@
  */
 public class CodeReferConfigWraper extends BaseEntityWrapper<CodeReferConfig, CodeReferConfigVO> {
 
-
 	public static CodeReferConfigWraper build() {
 		return new CodeReferConfigWraper();
 	}
@@ -25,11 +29,32 @@
 	@Override
 	public CodeReferConfigVO entityVO(CodeReferConfig codeReferConfig) {
 		CodeReferConfigVO codeReferConfigVO = Objects.requireNonNull(BeanUtil.copy(codeReferConfig, CodeReferConfigVO.class));
-
-
+		if(StringUtils.isNotBlank(codeReferConfig.getType())){
+			codeReferConfigVO.setTypeText(EnumCache.getValue(EnumEnum.CODE_REFER_CONFIG_TYPE,codeReferConfig.getType()));
+		}
+		if(Func.isNotEmpty(codeReferConfig.getCodeSrchCondConfigs())){
+			codeReferConfigVO.setCodeSrchCondConfigVOS(CodeSrchCondConfigWraper.build().listVO(codeReferConfig.getCodeSrchCondConfigs()));
+		}
+		if(Func.isNotEmpty(codeReferConfig.getCodeShowFieldConfigs())){
+			codeReferConfigVO.setCodeShowFieldConfigVOS(CodeShowFieldConfigWraper.build().listVO(codeReferConfig.getCodeShowFieldConfigs()));
+		}
+		codeReferConfigVO.setCodeShowFieldConfigs(null);
+		codeReferConfigVO.setCodeSrchCondConfigs(null);
 		return codeReferConfigVO;
 	}
 
-
+	public CodeReferConfig entityDO(CodeReferConfigVO codeReferConfigVO) {
+		CodeReferConfig codeReferConfig = Objects.requireNonNull(BeanUtil.copy(codeReferConfigVO, CodeReferConfig.class));
+		//codeReferConfig.setType(CodeReferConfigTypeEnum.getValueByText(codeReferConfigVO.getTypeText()));
+		if(Func.isNotEmpty(codeReferConfigVO.getCodeSrchCondConfigVOS())){
+			codeReferConfig.setCodeSrchCondConfigs(CodeSrchCondConfigWraper.build().listDO(codeReferConfigVO.getCodeSrchCondConfigVOS()));
+		}
+		if(Func.isNotEmpty(codeReferConfigVO.getCodeShowFieldConfigVOS())){
+			codeReferConfig.setCodeShowFieldConfigs(CodeShowFieldConfigWraper.build().listDO(codeReferConfigVO.getCodeShowFieldConfigVOS()));
+		}
+		//	codeReferConfigVO.setCodeSrchCondConfigVOS(null);
+		//	codeReferConfigVO.setCodeShowFieldConfigVOS(null);
+		return codeReferConfig;
+	}
 
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeRuleWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeRuleWrapper.java
index 8aed258..ac76c7c 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeRuleWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeRuleWrapper.java
@@ -16,9 +16,12 @@
  */
 package com.vci.ubcs.code.wrapper;
 
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.vci.ubcs.code.entity.CodeRule;
 import com.vci.ubcs.code.lifecycle.CodeRuleLC;
 import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.enums.EnumEnum;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
 
@@ -41,7 +44,9 @@
 	@Override
 	public CodeRuleVO entityVO(CodeRule codeRule) {
 		CodeRuleVO codeRuleVO = Objects.requireNonNull(BeanUtil.copy(codeRule, CodeRuleVO.class));
-		codeRuleVO.setLcStatusText(CodeRuleLC.getTextByValue(codeRuleVO.getLcStatus()));
+		if(StringUtils.isNotBlank(codeRuleVO.getLcStatus())){
+			codeRuleVO.setLcStatusText(EnumCache.getValue(EnumEnum.CODE_RULE_LC,codeRuleVO.getLcStatus()));
+		}
 		return codeRuleVO;
 	}
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeShowFieldConfigWraper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeShowFieldConfigWraper.java
new file mode 100644
index 0000000..5ecbcf5
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeShowFieldConfigWraper.java
@@ -0,0 +1,71 @@
+package com.vci.ubcs.code.wrapper;
+
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.vci.ubcs.code.entity.CodeShowFieldConfig;
+import com.vci.ubcs.code.entity.CodeSrchCondConfig;
+import com.vci.ubcs.code.enumpack.CodeReferConfigFieldTypeEnum;
+import com.vci.ubcs.code.enumpack.CodeReferConfigFixedEnum;
+import com.vci.ubcs.code.vo.CodeReferConfigVO;
+import com.vci.ubcs.code.vo.CodeShowFieldConfigVO;
+import com.vci.ubcs.code.vo.CodeSrchCondConfigVO;
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.enums.EnumEnum;
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+/**
+ * @author ludc
+ * @date 2023/5/24 13:13
+ */
+public class CodeShowFieldConfigWraper extends BaseEntityWrapper<CodeShowFieldConfig, CodeShowFieldConfigVO>{
+
+	public static CodeShowFieldConfigWraper build() {
+		return new CodeShowFieldConfigWraper();
+	}
+
+	@Override
+	public CodeShowFieldConfigVO entityVO(CodeShowFieldConfig codeShowFieldConfig) {
+		CodeShowFieldConfigVO codeShowFieldConfigVO = Objects.requireNonNull(BeanUtil.copy(codeShowFieldConfig, CodeShowFieldConfigVO.class));
+		if(StringUtils.isNotBlank(codeShowFieldConfig.getFixedPosition())){
+			codeShowFieldConfigVO.setFixedPositionText(EnumCache.getValue(EnumEnum.CODE_REFER_CONFIG_FIXED,codeShowFieldConfig.getFixedPosition()));
+		}
+		if(StringUtils.isNotBlank(codeShowFieldConfig.getFieldType())){
+			codeShowFieldConfigVO.setFieldTypeText(EnumCache.getValue(EnumEnum.CODE_REFER_CONFIG_FIELD_TYPE,codeShowFieldConfig.getFieldType()));
+		}
+		return codeShowFieldConfigVO;
+	}
+
+	public CodeShowFieldConfig entityDOsetReferConfigOid(CodeShowFieldConfigVO codeShowFieldConfigVO,String oid) {
+		CodeShowFieldConfig codeShowFieldConfig = entityDO(codeShowFieldConfigVO);
+		codeShowFieldConfig.setReferConfigOid(oid);
+		return codeShowFieldConfig;
+	}
+
+	public CodeShowFieldConfig entityDO(CodeShowFieldConfigVO codeShowFieldConfigVO) {
+		CodeShowFieldConfig codeShowFieldConfig = Objects.requireNonNull(BeanUtil.copy(codeShowFieldConfigVO, CodeShowFieldConfig.class));
+		if(StringUtils.isNotBlank(codeShowFieldConfigVO.getFieldTypeText())){
+			codeShowFieldConfig.setFieldType(CodeReferConfigFieldTypeEnum.getTextByValue(codeShowFieldConfigVO.getFieldTypeText()));
+		}
+		if(StringUtils.isNotBlank(codeShowFieldConfigVO.getFixedPositionText())){
+			codeShowFieldConfig.setFixedPosition(CodeReferConfigFieldTypeEnum.getTextByValue(codeShowFieldConfigVO.getFixedPositionText()));
+		}
+		if(StringUtils.isNotBlank(codeShowFieldConfigVO.getFieldTypeText())){
+			codeShowFieldConfig.setFieldType(CodeReferConfigFieldTypeEnum.getValueByText(codeShowFieldConfigVO.getFieldTypeText()));
+		}
+		return codeShowFieldConfig;
+	}
+
+	public List<CodeShowFieldConfig> listDO(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS,String oid) {
+		return (List)codeShowFieldConfigVOS.stream().map(item->entityDOsetReferConfigOid(item,oid)).collect(Collectors.toList());
+	}
+
+	public List<CodeShowFieldConfig> listDO(List<CodeShowFieldConfigVO> codeShowFieldConfigVOS) {
+		return (List)codeShowFieldConfigVOS.stream().map(this::entityDO).collect(Collectors.toList());
+	}
+
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeSrchCondConfigWraper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeSrchCondConfigWraper.java
new file mode 100644
index 0000000..1ab477f
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeSrchCondConfigWraper.java
@@ -0,0 +1,63 @@
+package com.vci.ubcs.code.wrapper;
+
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.vci.ubcs.code.entity.CodeReferConfig;
+import com.vci.ubcs.code.entity.CodeShowFieldConfig;
+import com.vci.ubcs.code.entity.CodeSrchCondConfig;
+import com.vci.ubcs.code.enumpack.CodeReferConfigFieldTypeEnum;
+import com.vci.ubcs.code.enumpack.CodeReferConfigFilterTypeEnum;
+import com.vci.ubcs.code.vo.CodeReferConfigVO;
+import com.vci.ubcs.code.vo.CodeShowFieldConfigVO;
+import com.vci.ubcs.code.vo.CodeSrchCondConfigVO;
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.enums.EnumEnum;
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+/**
+ * @author ludc
+ * @date 2023/5/24 13:13
+ */
+public class CodeSrchCondConfigWraper extends BaseEntityWrapper<CodeSrchCondConfig, CodeSrchCondConfigVO> {
+
+	public static CodeSrchCondConfigWraper build() {
+		return new CodeSrchCondConfigWraper();
+	}
+
+	@Override
+	public CodeSrchCondConfigVO entityVO(CodeSrchCondConfig codeSrchCondConfig) {
+		CodeSrchCondConfigVO codeSrchCondConfigVO = Objects.requireNonNull(BeanUtil.copy(codeSrchCondConfig, CodeSrchCondConfigVO.class));
+		if(StringUtils.isNotBlank(codeSrchCondConfigVO.getFilterType())){
+			codeSrchCondConfigVO.setFilterTypeText(EnumCache.getValue(EnumEnum.CODE_REFER_CONFIG_FILTER_TYPE,codeSrchCondConfig.getFilterType()));
+		}
+		return codeSrchCondConfigVO;
+	}
+
+	public CodeSrchCondConfig entityDOsetReferConfigOid(CodeSrchCondConfigVO codeSrchCondConfigVO,String oid) {
+		CodeSrchCondConfig codeSrchCondConfig = entityDO(codeSrchCondConfigVO);
+		codeSrchCondConfig.setReferConfigOid(oid);
+		return codeSrchCondConfig;
+	}
+
+	public CodeSrchCondConfig entityDO(CodeSrchCondConfigVO codeSrchCondConfigVO) {
+		CodeSrchCondConfig codeSrchCondConfig = Objects.requireNonNull(BeanUtil.copy(codeSrchCondConfigVO, CodeSrchCondConfig.class));
+		if(StringUtils.isNotBlank(codeSrchCondConfigVO.getFilterTypeText())){
+			codeSrchCondConfig.setFilterType(CodeReferConfigFieldTypeEnum.getTextByValue(codeSrchCondConfigVO.getFilterTypeText()));
+		}
+		codeSrchCondConfig.setReferConfigOid(codeSrchCondConfigVO.getOid());
+		return codeSrchCondConfig;
+	}
+
+	public List<CodeSrchCondConfig> listDO(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS) {
+		return (List)codeSrchCondConfigVOS.stream().map(this::entityDO).collect(Collectors.toList());
+	}
+
+	public List<CodeSrchCondConfig> listDO(List<CodeSrchCondConfigVO> codeSrchCondConfigVOS,String oid) {
+		return (List)codeSrchCondConfigVOS.stream().map(item->entityDOsetReferConfigOid(item,oid)).collect(Collectors.toList());
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeTempbuttonWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeTempbuttonWrapper.java
index 1a2d263..db4c4ef 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeTempbuttonWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/CodeTempbuttonWrapper.java
@@ -16,9 +16,12 @@
  */
 package com.vci.ubcs.code.wrapper;
 
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.vci.ubcs.code.entity.CodeClassifyTemplateButton;
 import com.vci.ubcs.code.enumpack.CodeButtonUseEnum;
 import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateButtonVO;
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.enums.EnumEnum;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
 import java.util.Objects;
@@ -39,7 +42,9 @@
 	public CodeClassifyTemplateButtonVO entityVO(CodeClassifyTemplateButton CodeTempbuttonDO) {
 		CodeClassifyTemplateButtonVO codeClassifyTemplateButtonVO = Objects.requireNonNull(BeanUtil.copy(CodeTempbuttonDO, CodeClassifyTemplateButtonVO.class));
 
-		codeClassifyTemplateButtonVO.setButtonUseText(CodeButtonUseEnum.getTextByValue(CodeTempbuttonDO.getButtonUse()));
+		if(StringUtils.isNotBlank(CodeTempbuttonDO.getButtonUse())){
+			codeClassifyTemplateButtonVO.setButtonUseText(EnumCache.getValue(EnumEnum.CODE_TEMPLATE_BUTTON_USE,CodeTempbuttonDO.getButtonUse()));
+		}
 
 		return codeClassifyTemplateButtonVO;
 	}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingLogeWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingLogeWrapper.java
index 208b9c4..93c2774 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingLogeWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingLogeWrapper.java
@@ -1,16 +1,67 @@
 package com.vci.ubcs.code.wrapper;
 
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.vci.ubcs.code.entity.DockingLog;
 import com.vci.ubcs.code.vo.pagemodel.DockingLogeVO;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
 
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
 import java.util.Objects;
 
 public class DockingLogeWrapper extends BaseEntityWrapper<DockingLog, DockingLogeVO> {
+	public static DockingLogeWrapper build() {
+		return new DockingLogeWrapper();
+	}
+
 	@Override
 	public DockingLogeVO entityVO(DockingLog entity) {
 		DockingLogeVO dockingLogeVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingLogeVO.class));
 		return dockingLogeVO;
 	}
+
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param entitys
+	 * @return
+	 */
+	public List<DockingLogeVO> entityVOs(Collection<DockingLog> entitys) {
+		if(CollectionUtils.isEmpty(entitys)) {return new ArrayList<>();}
+		List<DockingLogeVO> vos=new ArrayList<>();
+		if(!CollectionUtils.isEmpty(entitys)) {
+			entitys.stream().forEach(vo -> {
+				vos.add(entityVO(vo));
+			});
+		}
+		return vos;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vos
+	 * @return
+	 */
+	public List<DockingLog> voentitys(Collection<DockingLogeVO> vos) {
+		if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
+		List<DockingLog>entitys =new ArrayList<>();
+		if(!CollectionUtils.isEmpty(vos)) {
+			vos.stream().forEach(entity -> {
+				entitys.add(voentity(entity));
+			});
+		}
+		return entitys;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vo
+	 * @return
+	 */
+	public DockingLog voentity( DockingLogeVO vo) {
+		DockingLog entity = Objects.requireNonNull(BeanUtil.copy(vo, DockingLog.class));
+		return entity;
+	}
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreApplyFormWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreApplyFormWrapper.java
deleted file mode 100644
index 1266111..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreApplyFormWrapper.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.vci.ubcs.code.wrapper;
-
-import com.vci.ubcs.code.entity.DockingPreApplyForm;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreApplyFormVO;
-import org.springblade.core.mp.support.BaseEntityWrapper;
-import org.springblade.core.tool.utils.BeanUtil;
-
-import java.util.Objects;
-
-/***
- * 鐢宠鍗曞寘瑁呯被
- * @author xiejun
- * @date 2023-05-23
- */
-public class DockingPreApplyFormWrapper extends BaseEntityWrapper<DockingPreApplyForm, DockingPreApplyFormVO> {
-
-	@Override
-	public DockingPreApplyFormVO entityVO(DockingPreApplyForm entity) {
-		DockingPreApplyFormVO dockingPreApplyFormVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreApplyFormVO.class));
-		return dockingPreApplyFormVO;
-	}
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreClassifyWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreClassifyWrapper.java
deleted file mode 100644
index 527c7b3..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreClassifyWrapper.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.vci.ubcs.code.wrapper;
-
-import com.vci.ubcs.code.entity.DockingPreClassify;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreClassifyVO;
-import org.springblade.core.mp.support.BaseEntityWrapper;
-import org.springblade.core.tool.utils.BeanUtil;
-
-import java.util.Objects;
-/**
- *闆嗗洟缂栫爜鍒嗙被鍖呰绫�
- *
- * @author xiejun
- * @since 2023-05-23
- */
-public class DockingPreClassifyWrapper extends BaseEntityWrapper<DockingPreClassify, DockingPreClassifyVO> {
-	@Override
-	public DockingPreClassifyVO entityVO(DockingPreClassify entity) {
-		DockingPreClassifyVO dockingPreClassifyVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreClassifyVO.class));
-		return dockingPreClassifyVO;
-	}
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreMetaAttrWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreMetaAttrWrapper.java
deleted file mode 100644
index b0f0021..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreMetaAttrWrapper.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package com.vci.ubcs.code.wrapper;
-
-import com.vci.ubcs.code.entity.DockingPreMetaAttr;
-import com.vci.ubcs.code.entity.DockingPreViewModel;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreMetaAttrVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreViewModelVO;
-import org.springblade.core.mp.support.BaseEntityWrapper;
-import org.springblade.core.tool.utils.BeanUtil;
-
-import java.util.Objects;
-/**
- *闆嗗洟缂栫爜鐢宠妯″瀷灞炴�у寘瑁呯被
- *
- * @author xiejun
- * @since 2023-05-23
- */
-public class DockingPreMetaAttrWrapper extends BaseEntityWrapper<DockingPreMetaAttr, DockingPreMetaAttrVO> {
-	@Override
-	public DockingPreMetaAttrVO entityVO(DockingPreMetaAttr entity) {
-		DockingPreMetaAttrVO dockingPreMetaAttrVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreMetaAttrVO.class));
-		return dockingPreMetaAttrVO;
-	}
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreViewWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreViewWrapper.java
deleted file mode 100644
index 4823305..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreViewWrapper.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.vci.ubcs.code.wrapper;
-
-import com.vci.ubcs.code.entity.DockingPreViewModel;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreClassifyVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreViewModelVO;
-import org.springblade.core.mp.support.BaseEntityWrapper;
-import org.springblade.core.tool.utils.BeanUtil;
-
-import java.util.Objects;
-/**
- *闆嗗洟缂栫爜鐢宠瑙嗗浘鍖呰绫�
- *
- * @author xiejun
- * @since 2023-05-23
- */
-public class DockingPreViewWrapper  extends BaseEntityWrapper<DockingPreViewModel, DockingPreViewModelVO> {
-	@Override
-	public DockingPreViewModelVO entityVO(DockingPreViewModel entity) {
-		DockingPreViewModelVO dockingPreViewModelVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreViewModelVO.class));
-		return dockingPreViewModelVO;
-	}
-}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeBasicSecMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeBasicSecMapper.xml
index c11871c..1c52c2b 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeBasicSecMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeBasicSecMapper.xml
@@ -57,6 +57,7 @@
         <result property="customCodeSerialClass" column="CUSTOMCODESERIALCLASS" jdbcType="VARCHAR"/>
         <result property="matchClassifyValueFlag" column="MATCHCLASSIFYVALUEFLAG" jdbcType="VARCHAR"/>
         <result property="parentClassifySecOid" column="PARENTCLASSIFYSECOID" jdbcType="VARCHAR"/>
+        <result property="parentClassifySecText" column="b__name" jdbcType="VARCHAR"/>
         <result property="nullableFlag" column="NULLABLEFLAG" jdbcType="VARCHAR"/>
         <result property="componentCodeFlag" column="COMPONENTCODEFLAG" jdbcType="VARCHAR"/>
         <result property="serialDependFlag" column="SERIALDEPENDFLAG" jdbcType="VARCHAR"/>
@@ -70,71 +71,71 @@
     </resultMap>
 
     <select id="selectCodeBasicSecPage" resultMap="CodeBasicsecMap">
-        select PL_CODE_BASICSEC.oid,
-        PL_CODE_BASICSEC.revisionoid,
-        PL_CODE_BASICSEC.nameoid,
-        PL_CODE_BASICSEC.btmname,
-        PL_CODE_BASICSEC.lastr,
-        PL_CODE_BASICSEC.firstr,
-        PL_CODE_BASICSEC.lastv,
-        PL_CODE_BASICSEC.firstv,
-        PL_CODE_BASICSEC.creator,
-        PL_CODE_BASICSEC.createtime,
-        PL_CODE_BASICSEC.lastmodifier,
-        PL_CODE_BASICSEC.lastmodifytime,
-        PL_CODE_BASICSEC.revisionrule,
-        PL_CODE_BASICSEC.versionrule,
-        PL_CODE_BASICSEC.revisionseq,
-        PL_CODE_BASICSEC.revisionvalue,
-        PL_CODE_BASICSEC.versionseq,
-        PL_CODE_BASICSEC.versionvalue,
-        PL_CODE_BASICSEC.lctid,
-        PL_CODE_BASICSEC.lcstatus,
-        PL_CODE_BASICSEC.ts,
-        PL_CODE_BASICSEC.id,
-        PL_CODE_BASICSEC.name,
-        PL_CODE_BASICSEC.description,
-        PL_CODE_BASICSEC.owner,
-        PL_CODE_BASICSEC.copyfromversion,
-        PL_CODE_BASICSEC.codefillseparator,
-        PL_CODE_BASICSEC.codeseclength,
-        PL_CODE_BASICSEC.valuecuttype,
-        PL_CODE_BASICSEC.codefilltype,
-        PL_CODE_BASICSEC.refervalueinfo,
-        PL_CODE_BASICSEC.referattributeid,
-        PL_CODE_BASICSEC.getvalueclass,
-        PL_CODE_BASICSEC.displayflag,
-        PL_CODE_BASICSEC.parentclassifysecoid,
-        PL_CODE_BASICSEC.serialstep,
-        PL_CODE_BASICSEC.serialdependflag,
-        PL_CODE_BASICSEC.filtersql,
-        PL_CODE_BASICSEC.codedateformatstr,
-        PL_CODE_BASICSEC.refercodeclassifyoid,
-        PL_CODE_BASICSEC.codeleveltype,
-        PL_CODE_BASICSEC.codeseclengthtype,
-        PL_CODE_BASICSEC.referattributename,
-        PL_CODE_BASICSEC.referbtmname,
-        PL_CODE_BASICSEC.codefillflag,
-        PL_CODE_BASICSEC.valuecutlength,
-        PL_CODE_BASICSEC.codegetvaluetype,
-        PL_CODE_BASICSEC.referbtmid,
-        PL_CODE_BASICSEC.codefilltypetext,
-        PL_CODE_BASICSEC.codelevelvalue,
-        PL_CODE_BASICSEC.codefilllength,
-        PL_CODE_BASICSEC.customcodeserialclass,
-        PL_CODE_BASICSEC.matchclassifyvalueflag,
-        PL_CODE_BASICSEC.sectype,
-        PL_CODE_BASICSEC.pkcoderule,
-        PL_CODE_BASICSEC.ordernum,
-        PL_CODE_BASICSEC.referconfig,
-        PL_CODE_BASICSEC.serialstart,
-        PL_CODE_BASICSEC.componentcodeflag,
-        PL_CODE_BASICSEC.serialdependorder,
-        PL_CODE_BASICSEC.nullableflag,
-        PL_CODE_BASICSEC.codefilllimit,
-        btm_codebasicsec_1.name as b__name,
-        platformbtm_codeclassify.name as c__name,
-        COUNT(*) OVER () "##VCI_COUNT_VCI##"
+        SELECT PL_CODE_BASICSEC.oid,
+            PL_CODE_BASICSEC.revisionoid,
+            PL_CODE_BASICSEC.nameoid,
+            PL_CODE_BASICSEC.btmname,
+            PL_CODE_BASICSEC.lastr,
+            PL_CODE_BASICSEC.firstr,
+            PL_CODE_BASICSEC.lastv,
+            PL_CODE_BASICSEC.firstv,
+            PL_CODE_BASICSEC.creator,
+            PL_CODE_BASICSEC.createtime,
+            PL_CODE_BASICSEC.lastmodifier,
+            PL_CODE_BASICSEC.lastmodifytime,
+            PL_CODE_BASICSEC.revisionrule,
+            PL_CODE_BASICSEC.versionrule,
+            PL_CODE_BASICSEC.revisionseq,
+            PL_CODE_BASICSEC.revisionvalue,
+            PL_CODE_BASICSEC.versionseq,
+            PL_CODE_BASICSEC.versionvalue,
+            PL_CODE_BASICSEC.lctid,
+            PL_CODE_BASICSEC.lcstatus,
+            PL_CODE_BASICSEC.ts,
+            PL_CODE_BASICSEC.id,
+            PL_CODE_BASICSEC.name,
+            PL_CODE_BASICSEC.description,
+            PL_CODE_BASICSEC.owner,
+            PL_CODE_BASICSEC.copyfromversion,
+            PL_CODE_BASICSEC.codefillseparator,
+            PL_CODE_BASICSEC.codeseclength,
+            PL_CODE_BASICSEC.valuecuttype,
+            PL_CODE_BASICSEC.codefilltype,
+            PL_CODE_BASICSEC.refervalueinfo,
+            PL_CODE_BASICSEC.referattributeid,
+            PL_CODE_BASICSEC.getvalueclass,
+            PL_CODE_BASICSEC.displayflag,
+            PL_CODE_BASICSEC.parentclassifysecoid,
+            PL_CODE_BASICSEC.serialstep,
+            PL_CODE_BASICSEC.serialdependflag,
+            PL_CODE_BASICSEC.filtersql,
+            PL_CODE_BASICSEC.codedateformatstr,
+            PL_CODE_BASICSEC.refercodeclassifyoid,
+            PL_CODE_BASICSEC.codeleveltype,
+            PL_CODE_BASICSEC.codeseclengthtype,
+            PL_CODE_BASICSEC.referattributename,
+            PL_CODE_BASICSEC.referbtmname,
+            PL_CODE_BASICSEC.codefillflag,
+            PL_CODE_BASICSEC.valuecutlength,
+            PL_CODE_BASICSEC.codegetvaluetype,
+            PL_CODE_BASICSEC.referbtmid,
+            PL_CODE_BASICSEC.codefilltypetext,
+            PL_CODE_BASICSEC.codelevelvalue,
+            PL_CODE_BASICSEC.codefilllength,
+            PL_CODE_BASICSEC.customcodeserialclass,
+            PL_CODE_BASICSEC.matchclassifyvalueflag,
+            PL_CODE_BASICSEC.sectype,
+            PL_CODE_BASICSEC.pkcoderule,
+            PL_CODE_BASICSEC.ordernum,
+            PL_CODE_BASICSEC.referconfig,
+            PL_CODE_BASICSEC.serialstart,
+            PL_CODE_BASICSEC.componentcodeflag,
+            PL_CODE_BASICSEC.serialdependorder,
+            PL_CODE_BASICSEC.nullableflag,
+            PL_CODE_BASICSEC.codefilllimit,
+            btm_codebasicsec_1.name as b__name,
+            platformbtm_codeclassify.name as c__name,
+            COUNT(*) OVER () "##VCI_COUNT_VCI##"
         from PL_CODE_BASICSEC
             left join pl_code_basicsec btm_codebasicsec_1
                 on btm_codebasicsec_1.oid = PL_CODE_BASICSEC.parentclassifysecoid
@@ -166,7 +167,7 @@
 
     </select>
 
-    <insert id="insertBatch" keyProperty="oid" useGeneratedKeys="true">
+    <!--    <insert id="insertBatch" keyProperty="oid" useGeneratedKeys="true">
         insert into PL_CODE_BASICSEC(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME,
         LASTMODIFIER, LASTMODIFYTIME, REVISIONRULE, VERSIONRULE, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE,
         LCTID, LCSTATUS, TS, ID, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, SECTYPE, PKCODERULE, ORDERNUM,
@@ -194,12 +195,7 @@
             #{entity.referattributename}, #{entity.referattributeid}, #{entity.referbtmname}, #{entity.referbtmid}
             from dual
         </foreach>
-    </insert>
-
-    <select id="countByCondition" resultType="java.lang.Long">
-
-
-    </select>
+    </insert>-->
 
     <select id="getOidByCodeclassifysecOid" resultType="java.lang.String">
         SELECT OID
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeReferConfigMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeReferConfigMapper.xml
index f836418..3238bb9 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeReferConfigMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeReferConfigMapper.xml
@@ -46,153 +46,122 @@
         <result property="parentValue" column="PARENTVALUE" jdbcType="VARCHAR"/>
         <result property="loadType" column="LOADTYPE" jdbcType="VARCHAR"/>
         <result property="onlyLeaf" column="ONLYLEAF" jdbcType="VARCHAR"/>
+        <collection property="codeShowFieldConfigs" select="selectShowFieldByReferConfigOid" column="OID" javaType="java.util.ArrayList" ofType="com.vci.ubcs.code.entity.CodeShowFieldConfig">
+            <result property="field" column="FIELD"/>
+            <result property="title" column="TITLE"/>
+            <result property="fieldType" column="FIELDTYPE"/>
+            <result property="sort" column="SORT"/>
+            <result property="attrSortField" column="ATTRSORTFIELD"/>
+            <result property="width" column="WIDTH"/>
+            <result property="fixedPosition" column="FIXEDPOSITION"/>
+            <result property="templet" column="TEMPLET"/>
+        </collection>
+        <collection property="codeSrchCondConfigs" select="selectSrchCondByReferConfigOid" column="OID" javaType="java.util.ArrayList" ofType="com.vci.ubcs.code.entity.CodeSrchCondConfig">
+            <result property="filterField" column="FILTERFIELD"/>
+            <result property="filterType" column="FILTERTYPE"/>
+            <result property="filterValue" column="FILTERVALUE"/>
+        </collection>
     </resultMap>
 
     <!--鏌ヨ鍗曚釜-->
     <select id="queryById" resultMap="CodeReferconfigMap">
-        select
-          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, REFERTYPE, TEXTFIELD, VALUEFIELD, TYPE, URL, BACKPATH, METHOD, HEIGHT, PARAMFORFORMKEY, ISMUTI, MAPFIELDS, REFERCONTENT, DISPLAYTABLE, LIMIT, SORTFIELD, SORTTYPE, PARENTFIELDNAME, PARENTUSEDFIELD, PARENTVALUE, LOADTYPE, ONLYLEAF
+        select OID,
+               REVISIONOID,
+               NAMEOID,
+               BTMNAME,
+               LASTR,
+               FIRSTR,
+               LASTV,
+               FIRSTV,
+               CREATOR,
+               CREATETIME,
+               REVISIONSEQ,
+               REVISIONVALUE,
+               VERSIONSEQ,
+               VERSIONVALUE,
+               LCTID,
+               LCSTATUS,
+               TS,
+               NAME,
+               DESCRIPTION,
+               OWNER,
+               COPYFROMVERSION,
+               ORDERNUM,
+               REFERTYPE,
+               TEXTFIELD,
+               VALUEFIELD,
+               TYPE,
+               URL,
+               BACKPATH,
+               METHOD,
+               HEIGHT,
+               PARAMFORFORMKEY,
+               ISMUTI,
+               MAPFIELDS,
+               REFERCONTENT,
+               DISPLAYTABLE,
+               LIMIT,
+               SORTFIELD,
+               SORTTYPE,
+               PARENTFIELDNAME,
+               PARENTUSEDFIELD,
+               PARENTVALUE,
+               LOADTYPE,
+               ONLYLEAF
         from PL_CODE_REFERCONFIG
         where OID = #{oid}
     </select>
 
     <!--鏌ヨ鎸囧畾琛屾暟鎹�-->
-    <select id="queryAllByPage" resultMap="CodeReferconfigMap">
-        select
-          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, REFERTYPE, TEXTFIELD, VALUEFIELD, TYPE, URL, BACKPATH, METHOD, HEIGHT, PARAMFORFORMKEY, ISMUTI, MAPFIELDS, REFERCONTENT, DISPLAYTABLE, LIMIT, SORTFIELD, SORTTYPE, PARENTFIELDNAME, PARENTUSEDFIELD, PARENTVALUE, LOADTYPE, ONLYLEAF
-        from PL_CODE_REFERCONFIG
+    <select id="selectJoinPage" resultMap="CodeReferconfigMap">
+        SELECT
+            PCR.*
+        FROM PL_CODE_REFERCONFIG PCR
         <where>
-            <if test="oid != null and oid != ''">
-                and OID = #{oid}
+            <if test="codeReferConfig.tenantId != null and codeReferConfig.tenantId != ''">
+                PCR.TENANTID = #{codeReferConfig.tenantId}
             </if>
-            <if test="revisionoid != null and revisionoid != ''">
-                and REVISIONOID = #{revisionoid}
+            <if test="codeReferConfig.isOpenGlobal != null and codeReferConfig.isOpenGlobal != ''">
+                OR PCR.ISOPENGLOBAL = #{codeReferConfig.isOpenGlobal}
             </if>
-            <if test="nameoid != null and nameoid != ''">
-                and NAMEOID = #{nameoid}
+            <if test="codeReferConfig.name != null and codeReferConfig.name != ''">
+                and NAME like CONCAT(CONCAT('%', #{codeReferConfig.name}), '%')
             </if>
-            <if test="btmname != null and btmname != ''">
-                and BTMNAME = #{btmname}
-            </if>
-            <if test="lastr != null and lastr != ''">
-                and LASTR = #{lastr}
-            </if>
-            <if test="firstr != null and firstr != ''">
-                and FIRSTR = #{firstr}
-            </if>
-            <if test="lastv != null and lastv != ''">
-                and LASTV = #{lastv}
-            </if>
-            <if test="firstv != null and firstv != ''">
-                and FIRSTV = #{firstv}
-            </if>
-            <if test="creator != null and creator != ''">
-                and CREATOR = #{creator}
-            </if>
-            <if test="createtime != null and createtime != ''">
-                and CREATETIME = #{createtime}
-            </if>
-            <if test="revisionseq != null">
-                and REVISIONSEQ = #{revisionseq}
-            </if>
-            <if test="revisionvalue != null and revisionvalue != ''">
-                and REVISIONVALUE = #{revisionvalue}
-            </if>
-            <if test="versionseq != null">
-                and VERSIONSEQ = #{versionseq}
-            </if>
-            <if test="versionvalue != null and versionvalue != ''">
-                and VERSIONVALUE = #{versionvalue}
-            </if>
-            <if test="lctid != null and lctid != ''">
-                and LCTID = #{lctid}
-            </if>
-            <if test="lcstatus != null and lcstatus != ''">
-                and LCSTATUS = #{lcstatus}
-            </if>
-            <if test="ts != null and ts != ''">
-                and TS = #{ts}
-            </if>
-            <if test="name != null and name != ''">
-                and NAME = #{name}
-            </if>
-            <if test="description != null and description != ''">
-                and DESCRIPTION = #{description}
-            </if>
-            <if test="owner != null and owner != ''">
-                and OWNER = #{owner}
-            </if>
-            <if test="copyfromversion != null and copyfromversion != ''">
-                and COPYFROMVERSION = #{copyfromversion}
-            </if>
-            <if test="ordernum != null">
-                and ORDERNUM = #{ordernum}
-            </if>
-            <if test="refertype != null and refertype != ''">
-                and REFERTYPE = #{refertype}
-            </if>
-            <if test="textfield != null and textfield != ''">
-                and TEXTFIELD = #{textfield}
-            </if>
-            <if test="valuefield != null and valuefield != ''">
-                and VALUEFIELD = #{valuefield}
-            </if>
-            <if test="type != null and type != ''">
-                and TYPE = #{type}
-            </if>
-            <if test="url != null and url != ''">
-                and URL = #{url}
-            </if>
-            <if test="backpath != null and backpath != ''">
-                and BACKPATH = #{backpath}
-            </if>
-            <if test="method != null and method != ''">
-                and METHOD = #{method}
-            </if>
-            <if test="height != null">
-                and HEIGHT = #{height}
-            </if>
-            <if test="paramforformkey != null and paramforformkey != ''">
-                and PARAMFORFORMKEY = #{paramforformkey}
-            </if>
-            <if test="ismuti != null and ismuti != ''">
-                and ISMUTI = #{ismuti}
-            </if>
-            <if test="mapfields != null and mapfields != ''">
-                and MAPFIELDS = #{mapfields}
-            </if>
-            <if test="refercontent != null and refercontent != ''">
-                and REFERCONTENT = #{refercontent}
-            </if>
-            <if test="displaytable != null and displaytable != ''">
-                and DISPLAYTABLE = #{displaytable}
-            </if>
-            <if test="limit != null and limit != ''">
-                and LIMIT = #{limit}
-            </if>
-            <if test="sortfield != null and sortfield != ''">
-                and SORTFIELD = #{sortfield}
-            </if>
-            <if test="sorttype != null and sorttype != ''">
-                and SORTTYPE = #{sorttype}
-            </if>
-            <if test="parentfieldname != null and parentfieldname != ''">
-                and PARENTFIELDNAME = #{parentfieldname}
-            </if>
-            <if test="parentusedfield != null and parentusedfield != ''">
-                and PARENTUSEDFIELD = #{parentusedfield}
-            </if>
-            <if test="parentvalue != null and parentvalue != ''">
-                and PARENTVALUE = #{parentvalue}
-            </if>
-            <if test="loadtype != null and loadtype != ''">
-                and LOADTYPE = #{loadtype}
-            </if>
-            <if test="onlyleaf != null and onlyleaf != ''">
-                and ONLYLEAF = #{onlyleaf}
+            <if test="codeReferConfig.id != null and codeReferConfig.id != ''">
+                and ID like CONCAT(CONCAT('%', #{codeReferConfig.id}), '%')
             </if>
         </where>
-        limit #{pageable.offset}, #{pageable.pageSize}
+    </select>
+
+    <select id="selectShowFieldByReferConfigOid" resultType="com.vci.ubcs.code.entity.CodeShowFieldConfig">
+        SELECT temp.* FROM (
+            SELECT
+                PCS.REFERCONFIGOID,
+                PCS.FIELD,
+                PCS.TITLE,
+                PCS.FIELDTYPE,
+                PCS.SORT,
+                PCS.ATTRSORTFIELD,
+                PCS.WIDTH,
+                PCS.FIXEDPOSITION,
+                PCS.TEMPLET,
+                PCS.ISQUERY
+            FROM PL_CODE_REFERCONFIG PCR
+                LEFT JOIN PL_CODE_SHOWFIELDCONFIG PCS ON PCS.REFERCONFIGOID = PCR.OID)
+            temp WHERE temp.REFERCONFIGOID = #{oid}
+    </select>
+
+    <select id="selectSrchCondByReferConfigOid" resultType="com.vci.ubcs.code.entity.CodeSrchCondConfig">
+        SELECT temp.*
+            FROM
+            (SELECT
+                PCSR.FILTERFIELD,
+                PCSR.FILTERTYPE,
+                PCSR.FILTERVALUE,
+                PCSR.REFERCONFIGOID
+            FROM PL_CODE_REFERCONFIG PCR
+                     LEFT JOIN PL_CODE_SRCHCONDCONFIG PCSR ON PCSR.REFERCONFIGOID = PCR.OID)
+            temp WHERE temp.REFERCONFIGOID = #{oid}
     </select>
 
 </mapper>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeShowFieldConfigMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeShowFieldConfigMapper.xml
index 6afa54d..cbb3e04 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeShowFieldConfigMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeShowFieldConfigMapper.xml
@@ -3,395 +3,19 @@
 <mapper namespace="com.vci.ubcs.code.mapper.CodeShowFieldConfigMapper">
 
     <resultMap type="com.vci.ubcs.code.entity.CodeShowFieldConfig" id="PlCodeShowfieldconfigMap">
-        <result property="oid" column="OID" jdbcType="VARCHAR"/>
-        <result property="revisionOid" column="REVISIONOID" jdbcType="VARCHAR"/>
-        <result property="nameOid" column="NAMEOID" jdbcType="VARCHAR"/>
-        <result property="btmname" column="BTMNAME" jdbcType="VARCHAR"/>
-        <result property="lastR" column="LASTR" jdbcType="VARCHAR"/>
-        <result property="firstR" column="FIRSTR" jdbcType="VARCHAR"/>
-        <result property="lastV" column="LASTV" jdbcType="VARCHAR"/>
-        <result property="firstV" column="FIRSTV" jdbcType="VARCHAR"/>
-        <result property="creator" column="CREATOR" jdbcType="VARCHAR"/>
-        <result property="createTime" column="CREATETIME" jdbcType="VARCHAR"/>
-        <result property="revisionSeq" column="REVISIONSEQ" jdbcType="INTEGER"/>
-        <result property="revisionValue" column="REVISIONVALUE" jdbcType="VARCHAR"/>
-        <result property="versionSeq" column="VERSIONSEQ" jdbcType="INTEGER"/>
-        <result property="versionValue" column="VERSIONVALUE" jdbcType="VARCHAR"/>
-        <result property="lctid" column="LCTID" jdbcType="VARCHAR"/>
-        <result property="lcStatus" column="LCSTATUS" jdbcType="VARCHAR"/>
-        <result property="ts" column="TS" jdbcType="VARCHAR"/>
-        <result property="name" column="NAME" jdbcType="VARCHAR"/>
-        <result property="description" column="DESCRIPTION" jdbcType="VARCHAR"/>
-        <result property="owner" column="OWNER" jdbcType="VARCHAR"/>
-        <result property="copyFromVersion" column="COPYFROMVERSION" jdbcType="VARCHAR"/>
+        <id column="OID" property="oid"/>
         <result property="orderNum" column="ORDERNUM" jdbcType="INTEGER"/>
         <result property="field" column="FIELD" jdbcType="VARCHAR"/>
         <result property="title" column="TITLE" jdbcType="VARCHAR"/>
         <result property="fieldType" column="FIELDTYPE" jdbcType="VARCHAR"/>
         <result property="sort" column="SORT" jdbcType="VARCHAR"/>
-        <result property="sortField" column="SORTFIELD" jdbcType="VARCHAR"/>
+        <result property="attrSortField" column="ATTRSORTFIELD" jdbcType="VARCHAR"/>
         <result property="width" column="WIDTH" jdbcType="INTEGER"/>
-        <result property="fixedText" column="FIXEDTEXT" jdbcType="VARCHAR"/>
+        <result property="fixedPosition" column="FIXEDPOSITION" jdbcType="VARCHAR"/>
         <result property="templet" column="TEMPLET" jdbcType="VARCHAR"/>
+        <result property="isQuery" column="ISQUERY" jdbcType="VARCHAR"/>
     </resultMap>
 
-    <!--鏌ヨ鍗曚釜-->
-    <select id="queryById" resultMap="PlCodeShowfieldconfigMap">
-        select
-          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET
-        from PL_CODE_SHOWFIELDCONFIG
-        where OID = #{oid}
-    </select>
-
-    <!--鏌ヨ鎸囧畾琛屾暟鎹�-->
-    <select id="queryAllByLimit" resultMap="PlCodeShowfieldconfigMap">
-        select
-          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET
-        from PL_CODE_SHOWFIELDCONFIG
-        <where>
-            <if test="oid != null and oid != ''">
-                and OID = #{oid}
-            </if>
-            <if test="revisionoid != null and revisionoid != ''">
-                and REVISIONOID = #{revisionoid}
-            </if>
-            <if test="nameoid != null and nameoid != ''">
-                and NAMEOID = #{nameoid}
-            </if>
-            <if test="btmname != null and btmname != ''">
-                and BTMNAME = #{btmname}
-            </if>
-            <if test="lastr != null and lastr != ''">
-                and LASTR = #{lastr}
-            </if>
-            <if test="firstr != null and firstr != ''">
-                and FIRSTR = #{firstr}
-            </if>
-            <if test="lastv != null and lastv != ''">
-                and LASTV = #{lastv}
-            </if>
-            <if test="firstv != null and firstv != ''">
-                and FIRSTV = #{firstv}
-            </if>
-            <if test="creator != null and creator != ''">
-                and CREATOR = #{creator}
-            </if>
-            <if test="createtime != null and createtime != ''">
-                and CREATETIME = #{createtime}
-            </if>
-            <if test="revisionseq != null">
-                and REVISIONSEQ = #{revisionseq}
-            </if>
-            <if test="revisionvalue != null and revisionvalue != ''">
-                and REVISIONVALUE = #{revisionvalue}
-            </if>
-            <if test="versionseq != null">
-                and VERSIONSEQ = #{versionseq}
-            </if>
-            <if test="versionvalue != null and versionvalue != ''">
-                and VERSIONVALUE = #{versionvalue}
-            </if>
-            <if test="lctid != null and lctid != ''">
-                and LCTID = #{lctid}
-            </if>
-            <if test="lcstatus != null and lcstatus != ''">
-                and LCSTATUS = #{lcstatus}
-            </if>
-            <if test="ts != null and ts != ''">
-                and TS = #{ts}
-            </if>
-            <if test="name != null and name != ''">
-                and NAME = #{name}
-            </if>
-            <if test="description != null and description != ''">
-                and DESCRIPTION = #{description}
-            </if>
-            <if test="owner != null and owner != ''">
-                and OWNER = #{owner}
-            </if>
-            <if test="copyfromversion != null and copyfromversion != ''">
-                and COPYFROMVERSION = #{copyfromversion}
-            </if>
-            <if test="ordernum != null">
-                and ORDERNUM = #{ordernum}
-            </if>
-            <if test="field != null and field != ''">
-                and FIELD = #{field}
-            </if>
-            <if test="title != null and title != ''">
-                and TITLE = #{title}
-            </if>
-            <if test="fieldtype != null and fieldtype != ''">
-                and FIELDTYPE = #{fieldtype}
-            </if>
-            <if test="sort != null and sort != ''">
-                and SORT = #{sort}
-            </if>
-            <if test="sortfield != null and sortfield != ''">
-                and SORTFIELD = #{sortfield}
-            </if>
-            <if test="width != null">
-                and WIDTH = #{width}
-            </if>
-            <if test="fixedtext != null and fixedtext != ''">
-                and FIXEDTEXT = #{fixedtext}
-            </if>
-            <if test="templet != null and templet != ''">
-                and TEMPLET = #{templet}
-            </if>
-        </where>
-        limit #{pageable.offset}, #{pageable.pageSize}
-    </select>
-
-    <!--缁熻鎬昏鏁�-->
-    <select id="count" resultType="java.lang.Long">
-        select count(1)
-        from PL_CODE_SHOWFIELDCONFIG
-        <where>
-            <if test="oid != null and oid != ''">
-                and OID = #{oid}
-            </if>
-            <if test="revisionoid != null and revisionoid != ''">
-                and REVISIONOID = #{revisionoid}
-            </if>
-            <if test="nameoid != null and nameoid != ''">
-                and NAMEOID = #{nameoid}
-            </if>
-            <if test="btmname != null and btmname != ''">
-                and BTMNAME = #{btmname}
-            </if>
-            <if test="lastr != null and lastr != ''">
-                and LASTR = #{lastr}
-            </if>
-            <if test="firstr != null and firstr != ''">
-                and FIRSTR = #{firstr}
-            </if>
-            <if test="lastv != null and lastv != ''">
-                and LASTV = #{lastv}
-            </if>
-            <if test="firstv != null and firstv != ''">
-                and FIRSTV = #{firstv}
-            </if>
-            <if test="creator != null and creator != ''">
-                and CREATOR = #{creator}
-            </if>
-            <if test="createtime != null and createtime != ''">
-                and CREATETIME = #{createtime}
-            </if>
-            <if test="revisionseq != null">
-                and REVISIONSEQ = #{revisionseq}
-            </if>
-            <if test="revisionvalue != null and revisionvalue != ''">
-                and REVISIONVALUE = #{revisionvalue}
-            </if>
-            <if test="versionseq != null">
-                and VERSIONSEQ = #{versionseq}
-            </if>
-            <if test="versionvalue != null and versionvalue != ''">
-                and VERSIONVALUE = #{versionvalue}
-            </if>
-            <if test="lctid != null and lctid != ''">
-                and LCTID = #{lctid}
-            </if>
-            <if test="lcstatus != null and lcstatus != ''">
-                and LCSTATUS = #{lcstatus}
-            </if>
-            <if test="ts != null and ts != ''">
-                and TS = #{ts}
-            </if>
-            <if test="name != null and name != ''">
-                and NAME = #{name}
-            </if>
-            <if test="description != null and description != ''">
-                and DESCRIPTION = #{description}
-            </if>
-            <if test="owner != null and owner != ''">
-                and OWNER = #{owner}
-            </if>
-            <if test="copyfromversion != null and copyfromversion != ''">
-                and COPYFROMVERSION = #{copyfromversion}
-            </if>
-            <if test="ordernum != null">
-                and ORDERNUM = #{ordernum}
-            </if>
-            <if test="field != null and field != ''">
-                and FIELD = #{field}
-            </if>
-            <if test="title != null and title != ''">
-                and TITLE = #{title}
-            </if>
-            <if test="fieldtype != null and fieldtype != ''">
-                and FIELDTYPE = #{fieldtype}
-            </if>
-            <if test="sort != null and sort != ''">
-                and SORT = #{sort}
-            </if>
-            <if test="sortfield != null and sortfield != ''">
-                and SORTFIELD = #{sortfield}
-            </if>
-            <if test="width != null">
-                and WIDTH = #{width}
-            </if>
-            <if test="fixedtext != null and fixedtext != ''">
-                and FIXEDTEXT = #{fixedtext}
-            </if>
-            <if test="templet != null and templet != ''">
-                and TEMPLET = #{templet}
-            </if>
-        </where>
-    </select>
-
-    <!--鏂板鎵�鏈夊垪-->
-    <insert id="insert" keyProperty="oid" useGeneratedKeys="true">
-        insert into PL_CODE_SHOWFIELDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET)
-        values (#{revisionoid}, #{nameoid}, #{btmname}, #{lastr}, #{firstr}, #{lastv}, #{firstv}, #{creator}, #{createtime}, #{revisionseq}, #{revisionvalue}, #{versionseq}, #{versionvalue}, #{lctid}, #{lcstatus}, #{ts}, #{name}, #{description}, #{owner}, #{copyfromversion}, #{ordernum}, #{field}, #{title}, #{fieldtype}, #{sort}, #{sortfield}, #{width}, #{fixedtext}, #{templet})
-    </insert>
-
-    <insert id="insertBatch" keyProperty="oid" useGeneratedKeys="true">
-        insert into PL_CODE_SHOWFIELDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET)
-        values
-        <foreach collection="entities" item="entity" separator=",">
-        (#{entity.revisionoid}, #{entity.nameoid}, #{entity.btmname}, #{entity.lastr}, #{entity.firstr}, #{entity.lastv}, #{entity.firstv}, #{entity.creator}, #{entity.createtime}, #{entity.revisionseq}, #{entity.revisionvalue}, #{entity.versionseq}, #{entity.versionvalue}, #{entity.lctid}, #{entity.lcstatus}, #{entity.ts}, #{entity.name}, #{entity.description}, #{entity.owner}, #{entity.copyfromversion}, #{entity.ordernum}, #{entity.field}, #{entity.title}, #{entity.fieldtype}, #{entity.sort}, #{entity.sortfield}, #{entity.width}, #{entity.fixedtext}, #{entity.templet})
-        </foreach>
-    </insert>
-
-    <insert id="insertOrUpdateBatch" keyProperty="oid" useGeneratedKeys="true">
-        insert into PL_CODE_SHOWFIELDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FIELD, TITLE, FIELDTYPE, SORT, SORTFIELD, WIDTH, FIXEDTEXT, TEMPLET)
-        values
-        <foreach collection="entities" item="entity" separator=",">
-            (#{entity.revisionoid}, #{entity.nameoid}, #{entity.btmname}, #{entity.lastr}, #{entity.firstr}, #{entity.lastv}, #{entity.firstv}, #{entity.creator}, #{entity.createtime}, #{entity.revisionseq}, #{entity.revisionvalue}, #{entity.versionseq}, #{entity.versionvalue}, #{entity.lctid}, #{entity.lcstatus}, #{entity.ts}, #{entity.name}, #{entity.description}, #{entity.owner}, #{entity.copyfromversion}, #{entity.ordernum}, #{entity.field}, #{entity.title}, #{entity.fieldtype}, #{entity.sort}, #{entity.sortfield}, #{entity.width}, #{entity.fixedtext}, #{entity.templet})
-        </foreach>
-        on duplicate key update
-        REVISIONOID = values(REVISIONOID),
-        NAMEOID = values(NAMEOID),
-        BTMNAME = values(BTMNAME),
-        LASTR = values(LASTR),
-        FIRSTR = values(FIRSTR),
-        LASTV = values(LASTV),
-        FIRSTV = values(FIRSTV),
-        CREATOR = values(CREATOR),
-        CREATETIME = values(CREATETIME),
-        REVISIONSEQ = values(REVISIONSEQ),
-        REVISIONVALUE = values(REVISIONVALUE),
-        VERSIONSEQ = values(VERSIONSEQ),
-        VERSIONVALUE = values(VERSIONVALUE),
-        LCTID = values(LCTID),
-        LCSTATUS = values(LCSTATUS),
-        TS = values(TS),
-        NAME = values(NAME),
-        DESCRIPTION = values(DESCRIPTION),
-        OWNER = values(OWNER),
-        COPYFROMVERSION = values(COPYFROMVERSION),
-        ORDERNUM = values(ORDERNUM),
-        FIELD = values(FIELD),
-        TITLE = values(TITLE),
-        FIELDTYPE = values(FIELDTYPE),
-        SORT = values(SORT),
-        SORTFIELD = values(SORTFIELD),
-        WIDTH = values(WIDTH),
-        FIXEDTEXT = values(FIXEDTEXT),
-        TEMPLET = values(TEMPLET)
-    </insert>
-
-    <!--閫氳繃涓婚敭淇敼鏁版嵁-->
-    <update id="update">
-        update PL_CODE_SHOWFIELDCONFIG
-        <set>
-            <if test="revisionoid != null and revisionoid != ''">
-                REVISIONOID = #{revisionoid},
-            </if>
-            <if test="nameoid != null and nameoid != ''">
-                NAMEOID = #{nameoid},
-            </if>
-            <if test="btmname != null and btmname != ''">
-                BTMNAME = #{btmname},
-            </if>
-            <if test="lastr != null and lastr != ''">
-                LASTR = #{lastr},
-            </if>
-            <if test="firstr != null and firstr != ''">
-                FIRSTR = #{firstr},
-            </if>
-            <if test="lastv != null and lastv != ''">
-                LASTV = #{lastv},
-            </if>
-            <if test="firstv != null and firstv != ''">
-                FIRSTV = #{firstv},
-            </if>
-            <if test="creator != null and creator != ''">
-                CREATOR = #{creator},
-            </if>
-            <if test="createtime != null and createtime != ''">
-                CREATETIME = #{createtime},
-            </if>
-            <if test="revisionseq != null">
-                REVISIONSEQ = #{revisionseq},
-            </if>
-            <if test="revisionvalue != null and revisionvalue != ''">
-                REVISIONVALUE = #{revisionvalue},
-            </if>
-            <if test="versionseq != null">
-                VERSIONSEQ = #{versionseq},
-            </if>
-            <if test="versionvalue != null and versionvalue != ''">
-                VERSIONVALUE = #{versionvalue},
-            </if>
-            <if test="lctid != null and lctid != ''">
-                LCTID = #{lctid},
-            </if>
-            <if test="lcstatus != null and lcstatus != ''">
-                LCSTATUS = #{lcstatus},
-            </if>
-            <if test="ts != null and ts != ''">
-                TS = #{ts},
-            </if>
-            <if test="name != null and name != ''">
-                NAME = #{name},
-            </if>
-            <if test="description != null and description != ''">
-                DESCRIPTION = #{description},
-            </if>
-            <if test="owner != null and owner != ''">
-                OWNER = #{owner},
-            </if>
-            <if test="copyfromversion != null and copyfromversion != ''">
-                COPYFROMVERSION = #{copyfromversion},
-            </if>
-            <if test="ordernum != null">
-                ORDERNUM = #{ordernum},
-            </if>
-            <if test="field != null and field != ''">
-                FIELD = #{field},
-            </if>
-            <if test="title != null and title != ''">
-                TITLE = #{title},
-            </if>
-            <if test="fieldtype != null and fieldtype != ''">
-                FIELDTYPE = #{fieldtype},
-            </if>
-            <if test="sort != null and sort != ''">
-                SORT = #{sort},
-            </if>
-            <if test="sortfield != null and sortfield != ''">
-                SORTFIELD = #{sortfield},
-            </if>
-            <if test="width != null">
-                WIDTH = #{width},
-            </if>
-            <if test="fixedtext != null and fixedtext != ''">
-                FIXEDTEXT = #{fixedtext},
-            </if>
-            <if test="templet != null and templet != ''">
-                TEMPLET = #{templet},
-            </if>
-        </set>
-        where OID = #{oid}
-    </update>
-
-    <!--閫氳繃涓婚敭鍒犻櫎-->
-    <delete id="deleteById">
-        delete from PL_CODE_SHOWFIELDCONFIG where OID = #{oid}
-    </delete>
 
 </mapper>
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeSrchCondConfigMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeSrchCondConfigMapper.xml
index 4557d3a..95368ed 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeSrchCondConfigMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeSrchCondConfigMapper.xml
@@ -3,340 +3,12 @@
 <mapper namespace="com.vci.ubcs.code.mapper.CodeSrchCondConfigMapper">
 
     <resultMap type="com.vci.ubcs.code.entity.CodeSrchCondConfig" id="PlCodeSrchcondconfigMap">
-        <result property="oid" column="OID" jdbcType="VARCHAR"/>
-        <result property="revisionOid" column="REVISIONOID" jdbcType="VARCHAR"/>
-        <result property="nameOid" column="NAMEOID" jdbcType="VARCHAR"/>
-        <result property="btmname" column="BTMNAME" jdbcType="VARCHAR"/>
-        <result property="lastR" column="LASTR" jdbcType="VARCHAR"/>
-        <result property="firstR" column="FIRSTR" jdbcType="VARCHAR"/>
-        <result property="lastV" column="LASTV" jdbcType="VARCHAR"/>
-        <result property="firstV" column="FIRSTV" jdbcType="VARCHAR"/>
-        <result property="creator" column="CREATOR" jdbcType="VARCHAR"/>
-        <result property="createTime" column="CREATETIME" jdbcType="VARCHAR"/>
-        <result property="revisionSeq" column="REVISIONSEQ" jdbcType="INTEGER"/>
-        <result property="revisionValue" column="REVISIONVALUE" jdbcType="VARCHAR"/>
-        <result property="versionSeq" column="VERSIONSEQ" jdbcType="INTEGER"/>
-        <result property="versionValue" column="VERSIONVALUE" jdbcType="VARCHAR"/>
-        <result property="lctid" column="LCTID" jdbcType="VARCHAR"/>
-        <result property="lcStatus" column="LCSTATUS" jdbcType="VARCHAR"/>
-        <result property="ts" column="TS" jdbcType="VARCHAR"/>
-        <result property="name" column="NAME" jdbcType="VARCHAR"/>
-        <result property="description" column="DESCRIPTION" jdbcType="VARCHAR"/>
-        <result property="owner" column="OWNER" jdbcType="VARCHAR"/>
-        <result property="copyFromVersion" column="COPYFROMVERSION" jdbcType="VARCHAR"/>
+        <id column="OID" property="oid"/>
         <result property="orderNum" column="ORDERNUM" jdbcType="INTEGER"/>
         <result property="filterField" column="FILTERFIELD" jdbcType="VARCHAR"/>
         <result property="filterType" column="FILTERTYPE" jdbcType="VARCHAR"/>
         <result property="filterValue" column="FILTERVALUE" jdbcType="VARCHAR"/>
     </resultMap>
-
-    <!--鏌ヨ鍗曚釜-->
-    <select id="queryById" resultMap="PlCodeSrchcondconfigMap">
-        select
-          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE
-        from PL_CODE_SRCHCONDCONFIG
-        where OID = #{oid}
-    </select>
-
-    <!--鏌ヨ鎸囧畾琛屾暟鎹�-->
-    <select id="queryAllByLimit" resultMap="PlCodeSrchcondconfigMap">
-        select
-          OID, REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE
-        from PL_CODE_SRCHCONDCONFIG
-        <where>
-            <if test="oid != null and oid != ''">
-                and OID = #{oid}
-            </if>
-            <if test="revisionoid != null and revisionoid != ''">
-                and REVISIONOID = #{revisionoid}
-            </if>
-            <if test="nameoid != null and nameoid != ''">
-                and NAMEOID = #{nameoid}
-            </if>
-            <if test="btmname != null and btmname != ''">
-                and BTMNAME = #{btmname}
-            </if>
-            <if test="lastr != null and lastr != ''">
-                and LASTR = #{lastr}
-            </if>
-            <if test="firstr != null and firstr != ''">
-                and FIRSTR = #{firstr}
-            </if>
-            <if test="lastv != null and lastv != ''">
-                and LASTV = #{lastv}
-            </if>
-            <if test="firstv != null and firstv != ''">
-                and FIRSTV = #{firstv}
-            </if>
-            <if test="creator != null and creator != ''">
-                and CREATOR = #{creator}
-            </if>
-            <if test="createtime != null and createtime != ''">
-                and CREATETIME = #{createtime}
-            </if>
-            <if test="revisionseq != null">
-                and REVISIONSEQ = #{revisionseq}
-            </if>
-            <if test="revisionvalue != null and revisionvalue != ''">
-                and REVISIONVALUE = #{revisionvalue}
-            </if>
-            <if test="versionseq != null">
-                and VERSIONSEQ = #{versionseq}
-            </if>
-            <if test="versionvalue != null and versionvalue != ''">
-                and VERSIONVALUE = #{versionvalue}
-            </if>
-            <if test="lctid != null and lctid != ''">
-                and LCTID = #{lctid}
-            </if>
-            <if test="lcstatus != null and lcstatus != ''">
-                and LCSTATUS = #{lcstatus}
-            </if>
-            <if test="ts != null and ts != ''">
-                and TS = #{ts}
-            </if>
-            <if test="name != null and name != ''">
-                and NAME = #{name}
-            </if>
-            <if test="description != null and description != ''">
-                and DESCRIPTION = #{description}
-            </if>
-            <if test="owner != null and owner != ''">
-                and OWNER = #{owner}
-            </if>
-            <if test="copyfromversion != null and copyfromversion != ''">
-                and COPYFROMVERSION = #{copyfromversion}
-            </if>
-            <if test="ordernum != null">
-                and ORDERNUM = #{ordernum}
-            </if>
-            <if test="filterfield != null and filterfield != ''">
-                and FILTERFIELD = #{filterfield}
-            </if>
-            <if test="filtertype != null and filtertype != ''">
-                and FILTERTYPE = #{filtertype}
-            </if>
-            <if test="filtervalue != null and filtervalue != ''">
-                and FILTERVALUE = #{filtervalue}
-            </if>
-        </where>
-        limit #{pageable.offset}, #{pageable.pageSize}
-    </select>
-
-    <!--缁熻鎬昏鏁�-->
-    <select id="count" resultType="java.lang.Long">
-        select count(1)
-        from PL_CODE_SRCHCONDCONFIG
-        <where>
-            <if test="oid != null and oid != ''">
-                and OID = #{oid}
-            </if>
-            <if test="revisionoid != null and revisionoid != ''">
-                and REVISIONOID = #{revisionoid}
-            </if>
-            <if test="nameoid != null and nameoid != ''">
-                and NAMEOID = #{nameoid}
-            </if>
-            <if test="btmname != null and btmname != ''">
-                and BTMNAME = #{btmname}
-            </if>
-            <if test="lastr != null and lastr != ''">
-                and LASTR = #{lastr}
-            </if>
-            <if test="firstr != null and firstr != ''">
-                and FIRSTR = #{firstr}
-            </if>
-            <if test="lastv != null and lastv != ''">
-                and LASTV = #{lastv}
-            </if>
-            <if test="firstv != null and firstv != ''">
-                and FIRSTV = #{firstv}
-            </if>
-            <if test="creator != null and creator != ''">
-                and CREATOR = #{creator}
-            </if>
-            <if test="createtime != null and createtime != ''">
-                and CREATETIME = #{createtime}
-            </if>
-            <if test="revisionseq != null">
-                and REVISIONSEQ = #{revisionseq}
-            </if>
-            <if test="revisionvalue != null and revisionvalue != ''">
-                and REVISIONVALUE = #{revisionvalue}
-            </if>
-            <if test="versionseq != null">
-                and VERSIONSEQ = #{versionseq}
-            </if>
-            <if test="versionvalue != null and versionvalue != ''">
-                and VERSIONVALUE = #{versionvalue}
-            </if>
-            <if test="lctid != null and lctid != ''">
-                and LCTID = #{lctid}
-            </if>
-            <if test="lcstatus != null and lcstatus != ''">
-                and LCSTATUS = #{lcstatus}
-            </if>
-            <if test="ts != null and ts != ''">
-                and TS = #{ts}
-            </if>
-            <if test="name != null and name != ''">
-                and NAME = #{name}
-            </if>
-            <if test="description != null and description != ''">
-                and DESCRIPTION = #{description}
-            </if>
-            <if test="owner != null and owner != ''">
-                and OWNER = #{owner}
-            </if>
-            <if test="copyfromversion != null and copyfromversion != ''">
-                and COPYFROMVERSION = #{copyfromversion}
-            </if>
-            <if test="ordernum != null">
-                and ORDERNUM = #{ordernum}
-            </if>
-            <if test="filterfield != null and filterfield != ''">
-                and FILTERFIELD = #{filterfield}
-            </if>
-            <if test="filtertype != null and filtertype != ''">
-                and FILTERTYPE = #{filtertype}
-            </if>
-            <if test="filtervalue != null and filtervalue != ''">
-                and FILTERVALUE = #{filtervalue}
-            </if>
-        </where>
-    </select>
-
-    <!--鏂板鎵�鏈夊垪-->
-    <insert id="insert" keyProperty="oid" useGeneratedKeys="true">
-        insert into PL_CODE_SRCHCONDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE)
-        values (#{revisionoid}, #{nameoid}, #{btmname}, #{lastr}, #{firstr}, #{lastv}, #{firstv}, #{creator}, #{createtime}, #{revisionseq}, #{revisionvalue}, #{versionseq}, #{versionvalue}, #{lctid}, #{lcstatus}, #{ts}, #{name}, #{description}, #{owner}, #{copyfromversion}, #{ordernum}, #{filterfield}, #{filtertype}, #{filtervalue})
-    </insert>
-
-    <insert id="insertBatch" keyProperty="oid" useGeneratedKeys="true">
-        insert into PL_CODE_SRCHCONDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE)
-        values
-        <foreach collection="entities" item="entity" separator=",">
-        (#{entity.revisionoid}, #{entity.nameoid}, #{entity.btmname}, #{entity.lastr}, #{entity.firstr}, #{entity.lastv}, #{entity.firstv}, #{entity.creator}, #{entity.createtime}, #{entity.revisionseq}, #{entity.revisionvalue}, #{entity.versionseq}, #{entity.versionvalue}, #{entity.lctid}, #{entity.lcstatus}, #{entity.ts}, #{entity.name}, #{entity.description}, #{entity.owner}, #{entity.copyfromversion}, #{entity.ordernum}, #{entity.filterfield}, #{entity.filtertype}, #{entity.filtervalue})
-        </foreach>
-    </insert>
-
-    <insert id="insertOrUpdateBatch" keyProperty="oid" useGeneratedKeys="true">
-        insert into PL_CODE_SRCHCONDCONFIG(REVISIONOID, NAMEOID, BTMNAME, LASTR, FIRSTR, LASTV, FIRSTV, CREATOR, CREATETIME, REVISIONSEQ, REVISIONVALUE, VERSIONSEQ, VERSIONVALUE, LCTID, LCSTATUS, TS, NAME, DESCRIPTION, OWNER, COPYFROMVERSION, ORDERNUM, FILTERFIELD, FILTERTYPE, FILTERVALUE)
-        values
-        <foreach collection="entities" item="entity" separator=",">
-            (#{entity.revisionoid}, #{entity.nameoid}, #{entity.btmname}, #{entity.lastr}, #{entity.firstr}, #{entity.lastv}, #{entity.firstv}, #{entity.creator}, #{entity.createtime}, #{entity.revisionseq}, #{entity.revisionvalue}, #{entity.versionseq}, #{entity.versionvalue}, #{entity.lctid}, #{entity.lcstatus}, #{entity.ts}, #{entity.name}, #{entity.description}, #{entity.owner}, #{entity.copyfromversion}, #{entity.ordernum}, #{entity.filterfield}, #{entity.filtertype}, #{entity.filtervalue})
-        </foreach>
-        on duplicate key update
-        REVISIONOID = values(REVISIONOID),
-        NAMEOID = values(NAMEOID),
-        BTMNAME = values(BTMNAME),
-        LASTR = values(LASTR),
-        FIRSTR = values(FIRSTR),
-        LASTV = values(LASTV),
-        FIRSTV = values(FIRSTV),
-        CREATOR = values(CREATOR),
-        CREATETIME = values(CREATETIME),
-        REVISIONSEQ = values(REVISIONSEQ),
-        REVISIONVALUE = values(REVISIONVALUE),
-        VERSIONSEQ = values(VERSIONSEQ),
-        VERSIONVALUE = values(VERSIONVALUE),
-        LCTID = values(LCTID),
-        LCSTATUS = values(LCSTATUS),
-        TS = values(TS),
-        NAME = values(NAME),
-        DESCRIPTION = values(DESCRIPTION),
-        OWNER = values(OWNER),
-        COPYFROMVERSION = values(COPYFROMVERSION),
-        ORDERNUM = values(ORDERNUM),
-        FILTERFIELD = values(FILTERFIELD),
-        FILTERTYPE = values(FILTERTYPE),
-        FILTERVALUE = values(FILTERVALUE)
-    </insert>
-
-    <!--閫氳繃涓婚敭淇敼鏁版嵁-->
-    <update id="update">
-        update PL_CODE_SRCHCONDCONFIG
-        <set>
-            <if test="revisionoid != null and revisionoid != ''">
-                REVISIONOID = #{revisionoid},
-            </if>
-            <if test="nameoid != null and nameoid != ''">
-                NAMEOID = #{nameoid},
-            </if>
-            <if test="btmname != null and btmname != ''">
-                BTMNAME = #{btmname},
-            </if>
-            <if test="lastr != null and lastr != ''">
-                LASTR = #{lastr},
-            </if>
-            <if test="firstr != null and firstr != ''">
-                FIRSTR = #{firstr},
-            </if>
-            <if test="lastv != null and lastv != ''">
-                LASTV = #{lastv},
-            </if>
-            <if test="firstv != null and firstv != ''">
-                FIRSTV = #{firstv},
-            </if>
-            <if test="creator != null and creator != ''">
-                CREATOR = #{creator},
-            </if>
-            <if test="createtime != null and createtime != ''">
-                CREATETIME = #{createtime},
-            </if>
-            <if test="revisionseq != null">
-                REVISIONSEQ = #{revisionseq},
-            </if>
-            <if test="revisionvalue != null and revisionvalue != ''">
-                REVISIONVALUE = #{revisionvalue},
-            </if>
-            <if test="versionseq != null">
-                VERSIONSEQ = #{versionseq},
-            </if>
-            <if test="versionvalue != null and versionvalue != ''">
-                VERSIONVALUE = #{versionvalue},
-            </if>
-            <if test="lctid != null and lctid != ''">
-                LCTID = #{lctid},
-            </if>
-            <if test="lcstatus != null and lcstatus != ''">
-                LCSTATUS = #{lcstatus},
-            </if>
-            <if test="ts != null and ts != ''">
-                TS = #{ts},
-            </if>
-            <if test="name != null and name != ''">
-                NAME = #{name},
-            </if>
-            <if test="description != null and description != ''">
-                DESCRIPTION = #{description},
-            </if>
-            <if test="owner != null and owner != ''">
-                OWNER = #{owner},
-            </if>
-            <if test="copyfromversion != null and copyfromversion != ''">
-                COPYFROMVERSION = #{copyfromversion},
-            </if>
-            <if test="ordernum != null">
-                ORDERNUM = #{ordernum},
-            </if>
-            <if test="filterfield != null and filterfield != ''">
-                FILTERFIELD = #{filterfield},
-            </if>
-            <if test="filtertype != null and filtertype != ''">
-                FILTERTYPE = #{filtertype},
-            </if>
-            <if test="filtervalue != null and filtervalue != ''">
-                FILTERVALUE = #{filtervalue},
-            </if>
-        </set>
-        where OID = #{oid}
-    </update>
-
-    <!--閫氳繃涓婚敭鍒犻櫎-->
-    <delete id="deleteById">
-        delete from PL_CODE_SRCHCONDCONFIG where OID = #{oid}
-    </delete>
 
 </mapper>
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml
index 4cbd321..7aee99d 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml
@@ -22,5 +22,19 @@
         ${inSql}
     </select>
 
+    <insert id="insertByBaseModel" parameterType="java.util.Map">
+        insert into ${tableName}
+        (
+        <foreach collection="columnMap" item="value" index="key" separator=",">
+            ${key}
+        </foreach>
+        )
+        <foreach collection="mapList" item="columnMap" separator=" union all ">
+            select  <foreach collection="columnMap" item="value" index="key" separator=",">
+                       #{value}
+                    </foreach>
+            from dual
+        </foreach>
+    </insert>
 
 </mapper>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingLogeMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingLogeMapper.xml
index af4f902..ce43015 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingLogeMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingLogeMapper.xml
@@ -2,7 +2,7 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.vci.ubcs.code.mapper.DockingLogeMapper">
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
-    <resultMap id="DockingPreAttrMappingResultMap" type="com.vci.ubcs.code.entity.DockingLog">
+    <resultMap id="plDockingLogResultMap" type="com.vci.ubcs.code.entity.DockingLog">
         <result column="OID" property="oid"/>
         <result column="REVISIONOID" property="revisionOid"/>
         <result column="NAMEOID" property="nameOid"/>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreClassifyMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreClassifyMapper.xml
deleted file mode 100644
index 89fc815..0000000
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreClassifyMapper.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vci.ubcs.code.mapper.DockingPreClassifyMapper">
-    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
-    <resultMap id="DockingPreAttrMappingResultMap" type="com.vci.ubcs.code.entity.DockingPreClassify">
-        <result column="OID" property="oid"/>
-        <result column="REVISIONOID" property="revisionOid"/>
-        <result column="NAMEOID" property="nameOid"/>
-        <result column="BTMNAME" property="btmname"/>
-        <result column="LASTR" property="lastR"/>
-        <result column="FIRSTR" property="firstR"/>
-        <result column="LASTV" property="lastV"/>
-        <result column="FIRSTV" property="firstV"/>
-        <result column="CREATOR" property="creator"/>
-        <result column="CREATETIME" property="createTime"/>
-        <result column="LASTMODIFIER" property="lastModifier"/>
-        <result column="LASTMODIFYTIME" property="lastModifyTime"/>
-        <result column="REVISIONRULE" property="revisionRule"/>
-        <result column="VERSIONRULE" property="versionRule"/>
-        <result column="REVISIONSEQ" property="revisionSeq"/>
-        <result column="REVISIONVALUE" property="revisionValue"/>
-        <result column="VERSIONSEQ" property="versionSeq"/>
-        <result column="VERSIONVALUE" property="versionValue"/>
-        <result column="LCTID" property="lctid"/>
-        <result column="LCSTATUS" property="lcStatus"/>
-        <result column="TS" property="ts"/>
-        <result column="ID" property="id"/>
-        <result column="NAME" property="name"/>
-        <result column="DESCRIPTION" property="description"/>
-        <result column="OWNER" property="owner"/>
-        <result column="COPYFROMVERSION" property="copyFromVersion"/>
-        <result column="CLASSNAME" property="className"/>
-        <result column="NODELINK" property="nodeLink"/>
-        <result column="NODELINKNAME" property="getNodeLinkName"/>
-        <result column="PID" property="pid"/>
-    </resultMap>
-
-</mapper>
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/AttributeController.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/AttributeController.java
index c03805d..d9eae5f 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/AttributeController.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/AttributeController.java
@@ -127,7 +127,7 @@
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "鏂板鎴栦慨鏀�", notes = "浼犲叆鍏冩暟鎹璞�")
-	public R submit(@Valid @RequestBody AttributeDTO dto) {
+	public R submit(@RequestBody AttributeDTO dto) {
 		CacheUtil.clear(OmdCacheConstant.ATTR_CACHE);
 		return R.status(attributeService.submit(dto));
 	}
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java
index 03f8eaf..4b7a621 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java
@@ -53,9 +53,6 @@
 
 	private final String REGEXP = "^[A-Za-z]+$";
 
-	@Resource
-	private BtmTypeMapper btmTypeMapper;
-
 	@Override
 	public boolean deleteLogic(@NotEmpty List<Long> ids) {
 		return false;
@@ -86,17 +83,17 @@
 	 */
 	@Override
 	public boolean submit(AttributeDTO dto) {
-		if (Pattern.compile(REGEXP).matcher(dto.getId()).matches()){
+		if (!Pattern.compile(REGEXP).matcher(dto.getId()).matches()){
 			throw new VciBaseException("灞炴�у悕绉皗0}鍙兘鏄嫳鏂�",new Object[]{dto.getId()});
 		}
 		LambdaQueryWrapper<Attribute> wrapper = Wrappers.<Attribute>query().lambda().eq(Attribute::getId, dto.getId());
-		Long count = baseMapper.selectCount((Func.isEmpty(dto.getId())) ? wrapper : wrapper.notIn(Attribute::getId, dto.getId()));
+		Long count = baseMapper.selectCount((Func.isEmpty(dto.getOid())) ? wrapper : wrapper.notIn(Attribute::getOid, dto.getOid()));
 		if (count > 0L) {
 			throw new ServiceException("灞炴�у悕宸插瓨鍦�!");
 		}
-		Attribute omdAttribute = BeanUtil.copy(dto, Attribute.class);
+		Attribute attribute = AttributeWrapper.build().copyBeforeSave(dto);
 		CacheUtil.clear(OmdCacheConstant.ATTR_CACHE);
-		return saveOrUpdate(omdAttribute);
+		return saveOrUpdate(attribute);
 	}
 
 	/**
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/AttributeWrapper.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/AttributeWrapper.java
index d279695..c5ad867 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/AttributeWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/AttributeWrapper.java
@@ -1,12 +1,18 @@
 package com.vci.ubcs.omd.wrapper;
 
+import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.constant.BtmTypeConstant;
+import com.vci.ubcs.omd.dto.AttributeDTO;
 import com.vci.ubcs.omd.entity.Attribute;
 import com.vci.ubcs.omd.vo.*;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
 import com.vci.ubcs.system.cache.DictBizCache;
 import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.StringUtil;
 
+import java.util.Date;
 import java.util.List;
 import java.util.Objects;
 import java.util.stream.Collectors;
@@ -32,12 +38,13 @@
 	@Override
 	public AttributeVO entityVO(Attribute entity) {
 		AttributeVO vo = Objects.requireNonNull(BeanUtil.copy(entity, AttributeVO.class));
-		vo.setTypeValue(DictBizCache.getValue(vo.getTypeCode(),vo.getTypeKey()));
+		vo.setTypeValue(EnumCache.getValue(vo.getTypeCode(),vo.getTypeKey()));
 		if (StringUtil.isNotBlank(vo.getReferTypeCode())){
-			vo.setReferTypeValue(DictBizCache.getValue(vo.getReferTypeCode(),vo.getReferTypeKey()));
+			vo.setReferTypeValue(EnumCache.getValue(vo.getReferTypeCode(),vo.getReferTypeKey()));
 		}
-		vo.setDictValue(vo.getDictKey());
-		vo.setTypeValue(vo.getTypeKey());
+		if (StringUtil.isNotBlank(vo.getDictCode())) {
+			vo.setDictValue(EnumCache.getValue(vo.getDictCode(),vo.getDictKey()));
+		}
 		return vo;
 	}
 
@@ -49,4 +56,28 @@
 	public List<AttributeVO> listEntityVO(List<Attribute> list) {
 		return list.stream().map(this::entityVO).collect(Collectors.toList());
 	}
+
+	/**
+	 * 鍦ㄤ繚瀛樹箣鍓嶈璁剧疆榛樿灞炴��
+	 * @param dto
+	 * @return
+	 */
+    public Attribute copyBeforeSave(AttributeDTO dto) {
+		Attribute attribute = BeanUtil.copy(dto, Attribute.class);
+		Objects.requireNonNull(attribute);
+		String currentUser = AuthUtil.getUserAccount();
+		Date now = new Date();
+		if (StringUtil.isBlank(dto.getOid())) {
+			attribute.setBtmName(BtmTypeConstant.ATTRIBUTE);
+			attribute.setCreator(currentUser);
+			attribute.setCreateTime(now);
+			attribute.setOwner(currentUser);
+			attribute.setOid(VciBaseUtil.getPk());
+		}
+		attribute.setLastModifier(currentUser);
+		attribute.setLastModifyTime(now);
+		attribute.setTs(now);
+		return attribute;
+	}
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/EnumitemWrapper.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/EnumitemWrapper.java
index 885903d..60b79d2 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/EnumitemWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/EnumitemWrapper.java
@@ -54,6 +54,7 @@
 		}
 		return enumItemVO;
 	}
+
 	public List<EnumVO> listNodeVO(List<EnumItem> list) {
 		List<EnumItem> collect = list.stream().map(omdEnumItem -> BeanUtil.copy(omdEnumItem, EnumItem.class)).collect(Collectors.toList());
 		return ForestNodeMerger.merge((List)collect);
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/pom.xml b/Source/UBCS/ubcs-service/ubcs-webservice/pom.xml
index 9a66984..3d17a56 100644
--- a/Source/UBCS/ubcs-service/ubcs-webservice/pom.xml
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/pom.xml
@@ -15,31 +15,33 @@
     <modelVersion>4.0.0</modelVersion>
     <dependencies>
         <dependency>
-            <groupId>org.apache.cxf</groupId>
-            <artifactId>cxf-spring-boot-starter-jaxws</artifactId>
-            <version>3.3.1</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.springframework.boot</groupId>
-                    <artifactId>spring-boot-starter-logging</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>org.springframework.boot</groupId>
-                    <artifactId>spring-boot-starter</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>javax.validation</groupId>
-                    <artifactId>validation-api</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>org.springframework.boot</groupId>
-                    <artifactId>spring-boot-starter-web</artifactId>
-                </exclusion>
-            </exclusions>
+            <groupId>com.vci.ubcs</groupId>
+            <artifactId>ubcs-util-api</artifactId>
+            <version>3.0.1.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>cn.easyproject</groupId>
+            <artifactId>orai18n</artifactId>
+            <version>${orai18n.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.oracle.database.jdbc</groupId>
+            <artifactId>ojdbc8</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-core-boot</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.github.xiaoymin</groupId>
+            <artifactId>knife4j-annotations</artifactId>
+            <version>2.0.9</version>
+            <scope>compile</scope>
         </dependency>
         <dependency>
             <groupId>com.vci.ubcs</groupId>
-            <artifactId>ubcs-util-api</artifactId>
+            <artifactId>ubcs-webservice-api</artifactId>
             <version>3.0.1.RELEASE</version>
             <scope>compile</scope>
         </dependency>
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/GroupCodeApplyApplication.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/GroupCodeApplyApplication.java
new file mode 100644
index 0000000..0fafad4
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/GroupCodeApplyApplication.java
@@ -0,0 +1,17 @@
+import org.springblade.core.cloud.client.UbcsCloudApplication;
+import org.springblade.core.launch.UbcsApplication;
+import org.springblade.core.launch.constant.AppConstant;
+import org.springframework.context.annotation.ComponentScan;
+
+/**
+ * 闆嗗洟鐮佺敵璇锋帴鍙e惎鍔ㄥ櫒
+ *
+ * @author
+ * ludc
+ */
+@UbcsCloudApplication
+public class GroupCodeApplyApplication {
+	public static void main(String[] args) {
+		UbcsApplication.run(AppConstant.APPLICATION_NAME_PREFIX+"applyjtcodeservice", GroupCodeApplyApplication.class, args);
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java
new file mode 100644
index 0000000..50c59af
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java
@@ -0,0 +1,190 @@
+package com.vci.ubcs.code.webservice.controller;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import com.vci.ubcs.code.feign.ICodeClassifyClient;
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
+import com.vci.ubcs.code.webservice.service.*;
+import com.vci.ubcs.code.webservice.vo.*;
+import com.vci.ubcs.code.webservice.wrapper.DockingPreApplyFormWrapper;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.revision.model.TreeQueryObject;
+import com.vci.ubcs.starter.web.pagemodel.Tree;
+import com.vci.ubcs.code.webservice.entity.DockingPreApplyForm;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springframework.web.bind.annotation.*;
+import javax.validation.Valid;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 缂栫爜淇℃伅 鎺у埗鍣�
+ *
+ * @author xiejun
+ * @since 2023-05-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/DockingPreApplyCode")
+@Api(value = "闆嗗洟灞炴�ф槧灏勯厤缃�", tags = "闆嗗洟灞炴�ф槧灏勯厤缃帴鍙�")
+public class DockingPreApplyCodeController {
+	/**
+	 * 闆嗗洟灞炴�ф槧灏勯厤缃睘鎬�
+	 */
+	private final IDockingPreAttrMappingService dockingPreAttrMappingService;
+
+/**
+ * 闆嗗洟灞炴�ф槧灏勯厤缃睘鎬�
+ */
+	private final IGroupMdmInterService groupMdmInterService;
+
+	/***
+	 * 灞炴�ф灇涓捐寖鍥存湇鍔�
+	 */
+
+	private final IDockingPreAttrRangeService dockingPreAttrRangeService;
+
+	/***
+	 * 鍒嗙被灞炴�ф灇涓捐寖鍥存湇鍔�
+	 */
+
+	private final IDockingPreClassifyService dockingPreClassifyService;
+
+	/***
+	 * 灞炴�ф灇涓捐寖鍥存湇鍔�
+	 */
+
+	private final IDockingPreApplyFormService dockingPreApplyFormService;
+
+
+	/***
+	 * 灞炴�ф灇涓捐寖鍥存湇鍔�
+	 */
+
+	private final ICodeClassifyClient codeClassifyClient;
+
+	/**
+	 * 鏍规嵁涓绘暟鎹紪鐮乷id鑾峰彇闆嗗洟灞炴�ф槧灏勪俊鎭�
+	 * @param codeClassifyId 涓婚敭
+	 * @return 涓绘暟鎹紪鐮佽鍒欐樉绀哄璞�
+	 */
+	@GetMapping("/gridAttrMapping")
+	@ApiOperationSupport(order = 8)
+	@ApiOperation(value = "鍒嗙被涓婚敭鑾峰彇涓庨泦鍥㈡ā鍨嬪睘鎬ф槧灏勫叧绯�", notes = "浼犲叆涓绘暟鎹�:codeClassifyId,闆嗗洟鍒嗙被:sourceClassifyId")
+	public R getDockingAttrMappingsByCodeClassId(String codeClassifyId,String sourceClassifyId){
+		List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList=dockingPreAttrMappingService.getDockingAttrMappingsByCodeClassifyId(codeClassifyId,sourceClassifyId);
+		return R.data(dockingPreAttrMappingVOList);
+	}
+
+	/**
+	 * 鏍规嵁闆嗗洟灞炴�d鑾峰彇灞炴�ф灇涓捐寖鍥�
+	 * @param meatId 涓婚敭
+	 * @return
+	 */
+	@GetMapping("/gridAttrRanges")
+	@ApiOperationSupport(order = 8)
+	@ApiOperation(value = "鏍规嵁灞炴�d鑾峰彇灞炴�ф灇涓捐寖鍥�", notes = "浼犲叆")
+	public R getDockingPreAttrRangesByMetaId(String meatId){
+		List<DockingPreAttrRangeVO> dockingPreAttrRangeVOList=dockingPreAttrRangeService.getDockingPreAttrRangesByMetaId(meatId);
+		return R.data(dockingPreAttrRangeVOList);
+	}
+
+	/**
+	 * 鐢宠鍗曟煡璇� 鑷畾涔夊垎椤�
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "鍒嗛〉", notes = "浼犲叆dockingPreApplyForm")
+	public R<IPage<DockingPreApplyFormVO>> page(DockingPreApplyForm dockingPreApplyForm, Query query) {
+		IPage<DockingPreApplyForm> pages = dockingPreApplyFormService.page(Condition.getPage(query), Condition.getQueryWrapper(dockingPreApplyForm));
+		return R.data(DockingPreApplyFormWrapper.build().pageVO(pages));
+	}
+	/**
+	 * 淇濆瓨灞炴�ф槧灏勯厤缃粍浠�
+	 * @param dockingPreAttrMappingVOList 灞炴�ф槧灏勯厤缃暟鎹紶杈撳璞�
+	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+	 */
+	@PostMapping( "/batchAddSave")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "淇濆瓨灞炴�ф槧灏勯厤缃�", notes = "dockingPreAttrMappingVOList")
+	public R batchSave(@Valid @RequestBody List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList){
+		List<DockingPreAttrMappingVO> dockingPreAttrRangeVOS=new ArrayList<>();
+		try {
+			 dockingPreAttrRangeVOS = dockingPreAttrMappingService.batchAddSave(dockingPreAttrMappingVOList);
+		}catch (Exception e){
+			return R.fail("闆嗗洟闆嗘垚灞炴�ф槧灏勯厤缃繚瀛樺け璐ワ細"+e.getMessage());
+		}
+		return R.data(dockingPreAttrRangeVOS);
+	}
+
+
+	/**
+	 * 鍙傜収鏍� 闆嗗洟鍒嗙被锛堟槸鍚﹀寘鍚睘鎬э級
+	 * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄 conditionMap 瀛樹笂 codeclsfid=涓绘暟鎹殑鍒嗙被oid
+	 * @return 闆嗗洟鍒嗙被鏄剧ず鏍�
+	 */
+	@GetMapping("/referTree")
+	public List<Tree> referTree(@RequestBody TreeQueryObject treeQueryObject)  {
+		return dockingPreClassifyService.treeCompanyGroupClassify(treeQueryObject);
+	}
+
+	/**
+	 * 鍙傜収鏍� 涓绘暟鎹垎绫�
+	 * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄 conditionMap 瀛樹笂 codeclsfid=涓绘暟鎹殑鍒嗙被oid
+	 * @return 涓婚搴撳垎绫绘樉绀烘爲
+	 */
+	@GetMapping("/referCodeClassifyTree")
+	public List<Tree> referCodeClassifyTree(@RequestBody TreeQueryObject treeQueryObject)  {
+		return codeClassifyClient.referCodeClassifyTree(treeQueryObject);
+	}
+
+	/**
+	 * 鍙傜収鏍� 涓绘暟鎹ā鏉垮睘鎬т俊鎭�
+	 * @param codeClassifyId 涓绘暟鎹垎绫讳富閿�
+	 * @return 涓婚搴撳垎绫绘ā鏉垮睘鎬�
+	 */
+	@GetMapping("/referCodeClassifyTree")
+	public List<CodeClassifyTemplateAttrVO>  listCodeAttributeByClassId(String codeClassifyId)  {
+		return codeClassifyClient.listCodeAttributeByClassId(codeClassifyId);
+	}
+
+
+	/***
+	 * 鐢宠闆嗗洟缂栫爜
+	 * @return
+	 */
+	@PostMapping( "/applyGroupCode")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "闆嗗洟鐮佺敵璇�", notes = "dockingPreAttrMappingVOList")
+	public R applyGroupCode(String oids,String btmName){
+		List<BaseModelVO> BaseModelVOs=new ArrayList<>();
+		try {
+			return groupMdmInterService.applyGroupCode(oids,btmName);
+		}catch (Throwable e){
+			return R.fail("闆嗗洟鐮佺敵璇峰け璐ワ細"+e.getMessage());
+		}
+	}
+
+	/***
+	 * 鍚屾闆嗗洟妯″瀷瑙嗗浘
+	 * @return 杩斿洖鎵ц缁撴灉淇℃伅
+	 */
+	@PostMapping( "/syncClassifyModel")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "鍚屾闆嗗洟妯″瀷瑙嗗浘", notes = "鍚屾闆嗗洟妯″瀷瑙嗗浘->all:鍚屾闆嗗洟涓绘ā鍨�,one:鍚屾闆嗗洟妯″瀷璇︾粏淇℃伅")
+	public R syncClassifyModel(String classifyId,String operationType){
+		try {
+			return groupMdmInterService.syncClassifyModel(classifyId,operationType);
+		}catch (VciBaseException e){
+			return R.fail("鍚屾闆嗗洟妯″瀷瑙嗗浘澶辫触锛�"+e.getMessage());
+		}
+
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/feigh/MdmInterJtClient.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/feigh/MdmInterJtClient.java
new file mode 100644
index 0000000..099beaf
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/feigh/MdmInterJtClient.java
@@ -0,0 +1,397 @@
+package com.vci.ubcs.code.webservice.feigh;
+
+import com.alibaba.cloud.commons.lang.StringUtils;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.vci.ubcs.code.webservice.entity.*;
+import com.vci.ubcs.code.webservice.feign.IMdmInterJtClient;
+import com.vci.ubcs.code.webservice.service.*;
+import com.vci.ubcs.code.webservice.vo.*;
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
+import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
+import com.vci.ubcs.starter.web.constant.MdmEnumIdConstant;
+import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springblade.core.tenant.annotation.NonDS;
+import org.springblade.core.tool.api.R;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.RestController;
+import springfox.documentation.annotations.ApiIgnore;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+/***
+ * 鎻愪緵涓庨泦鍥㈢敵璇穎eigh
+ */
+@NonDS
+@ApiIgnore
+@RestController
+@AllArgsConstructor
+@Slf4j
+public class MdmInterJtClient implements IMdmInterJtClient {
+	/**
+	 * 闆嗗洟鐢宠鍗曟湇鍔�
+	 */
+	private final IDockingPreApplyFormService dockingPreApplyFormService;
+
+	/**
+	 * 闆嗗洟鍒嗙被妯″瀷瑙嗗浘鏈嶅姟
+	 */
+	private final IDockingPreViewModelService dockingPreViewModelService;
+
+	/**
+	 * 闆嗗洟鍒嗙被灞炴�ф湇鍔�
+	 */
+	private final IDockingPreMetaAttrService dockingPreMetaAttrService;
+
+	/**
+	 * 闆嗗洟鐢宠鍗曟湇鍔�
+	 */
+	private final IDockingPreClassifyService dockingPreClassifyService;
+
+
+	/**
+	 * 闆嗗洟鐢宠鍗曟湇鍔�
+	 */
+	private final IDockingPreAttrRangeService dockingPreAttrRangeService;
+
+
+	/*
+	 * 涓绘暟鎹笟鍔℃湇鍔�
+	 */
+
+	/**
+	 * 鑾峰彇闆嗗洟闆嗗洟鐮侊紝璧嬪�煎埌涓绘暟鎹�
+	 * @param dockingReturnStoreVO
+	 * @return 杩斿洖闆嗘垚缁撴灉淇℃伅
+	 */
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public R getApplyGroupCode(DockingReturnStoreVO dockingReturnStoreVO) {
+		log.info("鑾峰彇闆嗗洟闆嗗洟鐮侊紝璧嬪�煎埌涓绘暟鎹� start");
+		try {
+			List<BaseModel> editObjectList = new ArrayList();
+
+			List<DockingPreApplyForm> dockingPreApplyFormList = new ArrayList();
+			//String classId = javaObject.getClassId();
+			//String sysName = javaObject.getSysName();
+			List<MainData> mainDataList = dockingReturnStoreVO.getMainData();
+			for (MainData mainData : mainDataList) {
+				JSONObject jcontent = new JSONObject();
+				//缂栫爜鐘舵��
+				String formState = mainData.getFormState();
+				//鐢宠鍗�
+				String applyId = mainData.getApplyId();
+				String customCoding = StringUtils.isBlank(mainData.getCustomCoding()) ? "" : mainData.getCustomCoding();//闆嗗洟鐮�
+				String msg = "";
+				log.info("鐢宠鍗�:"+applyId+",闆嗗洟鐮侊細"+customCoding);
+				boolean res = false;
+				if ("1".equals(formState)) {
+					msg = "闆嗗洟瀹℃牳涓�";
+				} else if ("2".equals(formState)) {
+					msg = "椹冲洖";
+				} else if ("3".equals(formState)) {
+					msg = "闆嗗洟瀹℃牳涓�";
+				} else if ("4".equals(formState)) {
+					msg = "瀹℃牳缁撴潫锛岃祴鐮佸け璐�";
+				} else if ("5".equals(formState)) {
+					res = true;
+					msg = "瀹℃牳缁撴潫锛岃祴鐮佹垚鍔�";
+				} else if ("6".equals(formState)) {
+					msg = "寰�301璧嬬爜";
+				} else if ("7".equals(formState)) {
+					res = true;
+					msg = "宸茶祴鐮�";
+				} else if ("8".equals(formState)) {
+					res = true;
+					msg = "宸茶祴鐮侊紙娌跨敤锛�";
+				} else if ("9".equals(formState)) {
+					msg = "瀹℃牳涓�";
+				}
+				jcontent.put("applyId", applyId);
+				jcontent.put("formState", formState);
+				jcontent.put("customCoding", customCoding);
+				jcontent.put("msg", msg);
+				List<DockingPreApplyForm> oldDockingPreApplyFormList = dockingPreApplyFormService.list(Wrappers.<DockingPreApplyForm>query().lambda()
+					.eq(DockingPreApplyForm::getId, applyId));
+				if (CollectionUtils.isEmpty(oldDockingPreApplyFormList)) {
+					continue; //// return false;
+				}
+				DockingPreApplyForm dockingPreApplyForm = oldDockingPreApplyFormList.get(0);
+				dockingPreApplyForm.setMsg(msg);
+				dockingPreApplyForm.setCode("1");
+				if (res) {
+					dockingPreApplyForm.setGroupCode(customCoding);
+				}
+				//杩斿洖缁撴灉淇℃伅
+				dockingPreApplyForm.setContent(jcontent.toJSONString());
+				dockingPreApplyFormList.add(dockingPreApplyForm);
+				if (res) {
+					String jdataid = dockingPreApplyForm.getDataOid();
+					String jdatabtmname = dockingPreApplyForm.getDataBtmName();
+					//姝ゅ闇�瑕佹煡璇笟鍔℃暟鎹紝鍘绘洿鏀�
+					BaseModel baseModel = new BaseModel();
+					baseModel.setId(customCoding);
+					log.info("鐢宠鍗�:"+applyId+",闆嗗洟鐮侊細"+customCoding+"缂栫爜锛�"+baseModel.getId());
+					editObjectList.add(baseModel);
+				}
+			}
+			dockingPreApplyFormService.saveOrUpdateBatch(dockingPreApplyFormList);
+			//璋冪敤涓绘暟鎹湇鍔℃壒閲忎繚瀛樻帴鍙�
+		}catch (Throwable e){
+			e.printStackTrace();
+			return R.fail("闆嗗洟鐮侀泦鎴愯祴鍊煎け璐�"+e);
+		}
+		log.info("鑾峰彇闆嗗洟闆嗗洟鐮侊紝璧嬪�煎埌涓绘暟鎹� end");
+		return R.success("闆嗗洟鐮佽祴鍊兼垚鍔�");
+	}
+
+	/***
+	 * 鎺ュ彈闆嗗洟鍒嗙被涓绘ā鍨嬫暟鎹�
+	 * @param dockingClassifyModelAttrVO
+	 * @return
+	 */
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public R pubMdmModel(DockingClassifyModelAttrVO dockingClassifyModelAttrVO) {
+		log.info("");
+		try {
+			this.saveDatas(dockingClassifyModelAttrVO);
+		}catch (Throwable e){
+			e.printStackTrace();
+			return R.fail("鎺ュ彈闆嗗洟鍒嗙被涓绘ā鍨嬫暟鎹け璐�"+e);
+		}
+		log.info("鎺ュ彈闆嗗洟鍒嗙被涓绘ā鍨嬫暟鎹� end");
+		return R.success("鎺ュ彈闆嗗洟鍒嗙被涓绘ā鍨嬫暟鎹垚鍔�");
+	}
+
+	/***
+	 * 缁勭粐 淇濆瓨鏁版嵁鏂规硶
+	 * @param dockingClassifyModelAttrVO
+	 * @throws Throwable
+	 */
+	private boolean saveDatas(DockingClassifyModelAttrVO dockingClassifyModelAttrVO) throws Throwable {
+		List<DockingPreClassify> dockingPreClassifyArrayList=new ArrayList<>();
+		try {
+			DockingClassifyMainVO mainData = dockingClassifyModelAttrVO.getDataStructure();
+			List<DockingClassifyVO> classList = mainData.getClassList();
+			Map<String, List<DockingClassifyViewVO>> classInfoMap = mainData.getClassInfos();
+			for (DockingClassifyVO jclassObject : classList) {
+				String id =StringUtils.isBlank(jclassObject.getId())?"":jclassObject.getId();
+				String className = StringUtils.isBlank(jclassObject.getClassName())?"":jclassObject.getClassName();
+				String pid = StringUtils.isBlank(jclassObject.getPid())?"":jclassObject.getPid();
+				String nodeLink = StringUtils.isBlank(jclassObject.getNodeLink())?"":jclassObject.getNodeLink();
+				String nodeLinkName = StringUtils.isBlank(jclassObject.getNodeLinkName())?"":jclassObject.getNodeLinkName();
+				String classNumber = StringUtils.isBlank(jclassObject.getClassNumber())?"":jclassObject.getClassNumber();
+				//ClientBusinessObject classObject = objectOperation.readBusinessObjectById(id, "jclass");// 鑾峰彇鍒嗙被淇℃伅
+			 	DockingPreClassify dockingPreClassify=dockingPreClassifyService.getById(id);
+				log.info("classify:-------------->闆嗗洟鍒嗙被涓绘満:"+id);
+				log.info("classify:-------------->闆嗗洟鍒嗙被鍚嶇О:"+className);
+				log.info("classify:--------------> 闆嗗洟鍒嗙被鐖惰妭鐐�:"+pid);
+				log.info("classify:-------------->閾炬帴:"+nodeLink);
+				log.info("classify:-------------->閾炬帴鍚嶇О:"+nodeLinkName);
+
+				if (dockingPreClassify == null|| StringUtils.isBlank(dockingPreClassify.getOid())) {
+					dockingPreClassify = new DockingPreClassify();
+					DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify, MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY);
+				} else {
+					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify);
+				}
+				dockingPreClassify.setOid(id);
+				dockingPreClassify.setName(className);
+				dockingPreClassify.setPid(pid);
+				dockingPreClassify.setId(classNumber);
+				dockingPreClassify.setNodeLink(nodeLink);
+				dockingPreClassify.setGetNodeLinkName(nodeLinkName);
+				dockingPreClassify.setClassName(className);
+				dockingPreClassifyArrayList.add(dockingPreClassify);
+				// 鑾峰彇瀵瑰簲鐨勫垎绫昏鍥炬ā鍨�
+				if (classInfoMap.containsKey(id)) {
+					List<DockingClassifyViewVO> list = classInfoMap.get(id);
+					getVilewMode(jclassObject, list);
+				}
+			}
+			boolean res= dockingPreClassifyService.saveOrUpdateBatch(dockingPreClassifyArrayList);
+			return res;
+		} catch (Throwable e) {
+			e.printStackTrace();
+			throw new Throwable("瀛樺偍瑙嗗浘妯″瀷鍑虹幇闂");
+		}
+	}
+	/***
+	 * 鑾峰彇鍒嗙被瑙嗗浘
+	 *
+	 * @param jclassObject
+	 * @throws Throwable
+	 */
+	private void getVilewMode(DockingClassifyVO jclassObject, List<DockingClassifyViewVO> list)
+		throws Throwable {
+		String nodeLinkName = jclassObject.getNodeLinkName();
+		try {
+			String jclassId =StringUtils.isBlank(jclassObject.getId())?"":jclassObject.getId();
+			Map<String, DockingPreViewModel> jviewmodelMap = new HashMap<String, DockingPreViewModel>();
+			//Map<String, String> condtionMa = new HashMap<String, String>();
+		//	condtionMa.put("jsourceclsfid", jclassId);
+			List<DockingPreViewModel> dockingPreViewModelList= dockingPreViewModelService.list(Wrappers.<DockingPreViewModel>query().lambda().eq(DockingPreViewModel::getSourceClassifyId,false));// 鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄
+			for (DockingPreViewModel dockingPreViewModel : dockingPreViewModelList) {
+				jviewmodelMap.put(dockingPreViewModel.getViewName(),dockingPreViewModel);
+			}
+
+			for (DockingClassifyViewVO viewInfo : list) {
+				String viewName =StringUtils.isBlank(viewInfo.getViewName())?"":viewInfo.getViewName();
+				String impactList = StringUtils.isBlank(viewInfo.getImpactList())?"":viewInfo.getImpactList();
+				log.info("VilewMode:-------------->瑙嗗浘鍚嶇О:"+viewName);
+				log.info("VilewMode:-------------->褰卞搷缂栫爜椤�:"+impactList);
+				log.info("VilewMode:--------------> 闆嗗洟鍒嗙被涓婚敭:"+jclassId);
+				List<DockingClassifyMetaAttrVO> metaList = viewInfo.getMetaList();
+				DockingPreViewModel jviewModelObject = null;
+				if (jviewmodelMap.containsKey(viewName)) {
+					jviewModelObject = jviewmodelMap.get(viewName);
+					//褰卞搷缂栫爜椤圭殑鏁版嵁
+					jviewModelObject.setImpactList(impactList);
+					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(jviewModelObject);
+				} else {
+					jviewModelObject =new DockingPreViewModel();
+					DefaultAttrAssimtUtil.addDefaultAttrAssimt(jviewModelObject,MdmBtmTypeConstant.DOCKING_PRE_JVIEWMODEL);
+					jviewModelObject.setSourceClassifyId(jclassId);// 闆嗗洟鍒嗙被id
+					jviewModelObject.setViewName(viewName);// 闆嗗洟瑙嗗浘鍚嶇О
+					//褰卞搷缂栫爜椤圭殑鏁版嵁
+					jviewModelObject.setImpactList(impactList);
+					dockingPreViewModelList.add(jviewModelObject);
+				}
+				// 鑾峰彇妯″瀷瑙嗗浘涓嬬殑灞炴�ч泦
+				// String oid = jviewModelObject.getOid();
+				List<DockingPreMetaAttr>allDockingPreMetaAttrList=new ArrayList<>();
+				getMetaAttrObject(metaList, jclassId, jviewModelObject, "root",allDockingPreMetaAttrList);
+				//淇濆瓨妯″瀷瑙嗗浘灞炴��
+				dockingPreMetaAttrService.saveOrUpdateBatch(allDockingPreMetaAttrList);
+				//淇濆瓨妯″瀷瑙嗗浘
+				dockingPreViewModelService.saveOrUpdateBatch(dockingPreViewModelList);
+			}
+		} catch (Throwable e) {
+			e.printStackTrace();
+			throw new Throwable("缁勭粐鍒嗙被" + nodeLinkName + "妯″瀷瑙嗗浘瀛樺偍鍑虹幇闂");
+		}
+	}
+
+
+	/***
+	 * 鑾峰彇妯″瀷瑙嗗浘灞炴��
+	 * @throws Throwable
+	 */
+	private void getMetaAttrObject(List<DockingClassifyMetaAttrVO> metaList,
+								   String jclassId, DockingPreViewModel jviewModelObject, String pid,List<DockingPreMetaAttr>allDockingPreMetaAttrList)throws Throwable {
+		try {
+			//// 鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄
+			List<DockingPreMetaAttr> dockingPreMetaAttrList = dockingPreMetaAttrService.selectByWrapper(Wrappers.<DockingPreMetaAttr>query().lambda()
+				.eq(DockingPreMetaAttr::getSourceClassifyId,jclassId).eq(DockingPreMetaAttr::getViewModelId,jviewModelObject.getOid())
+				.eq(DockingPreMetaAttr:: getPid,pid));
+				Map<String,DockingPreMetaAttr> jmetaattrMap = dockingPreMetaAttrList.stream().filter(
+				s -> StringUtils.isNotBlank(s.getEnglishName())).collect(Collectors.toMap(s -> s.getEnglishName().toLowerCase(Locale.ROOT), t -> t));
+
+			for (DockingClassifyMetaAttrVO dockingClassifyMetaAttrVO : metaList) {
+				String chineseName =StringUtils.isBlank(dockingClassifyMetaAttrVO.getChineseName())?"":dockingClassifyMetaAttrVO.getChineseName();// 灞炴�у悕绉�
+				String englishName = StringUtils.isBlank(dockingClassifyMetaAttrVO.getEnglishName())?"":dockingClassifyMetaAttrVO.getEnglishName();// 鑻辨枃鍚嶇О
+				String defaultValue = StringUtils.isBlank(dockingClassifyMetaAttrVO.getDefaultValue())?"":dockingClassifyMetaAttrVO.getDefaultValue();
+				Integer metadataType =dockingClassifyMetaAttrVO.getMetadataType();// 绫诲瀷
+				Integer necessaryConf = dockingClassifyMetaAttrVO.getNecessaryConf();// 鏄惁蹇呭~
+				Map<String, String> range = dockingClassifyMetaAttrVO.getRange()==null?new HashMap<String, String>():dockingClassifyMetaAttrVO.getRange();// 鍙栧�艰寖鍥�
+
+				log.info("metaAttr:-------------->灞炴�у悕绉�:"+chineseName);
+				log.info("metaAttr:-------------->鑻辨枃鍚嶇О:"+englishName);
+				log.info("metaAttr:-------------->榛樿鍊�:"+defaultValue);
+				log.info("metaAttr:--------------> 绫诲瀷:"+metadataType);
+				log.info("metaAttr:-------------->  鏄惁蹇呭~:"+necessaryConf);
+				DockingPreMetaAttr dockingPreMetaAttr = new DockingPreMetaAttr();
+				if (jmetaattrMap.containsKey(englishName)) {
+					dockingPreMetaAttr = jmetaattrMap.get(englishName);
+					dockingPreMetaAttr.setChineseName(chineseName);
+					dockingPreMetaAttr.setDefaultValue(defaultValue);
+					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreMetaAttr);
+				} else {
+					DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreMetaAttr,MdmBtmTypeConstant.DOCKING_PRE_JMETAATRR);
+					dockingPreMetaAttr.setSourceClassifyId(jclassId);// 闆嗗洟鍒嗙被id
+					dockingPreMetaAttr.setViewModelId(jviewModelObject.getOid());// 闆嗗洟瑙嗗浘妯″瀷id
+					dockingPreMetaAttr.setChineseName(chineseName);// 灞炴�у悕绉�
+					dockingPreMetaAttr.setEnglishName(englishName);// 灞炴�у瓧娈�
+					dockingPreMetaAttr.setDefaultValue(defaultValue);// 灞炴�у悕绉�
+					dockingPreMetaAttr.setMetaDataType(metadataType);// 灞炴�х被鍨�
+					dockingPreMetaAttr.setNecesSaryConf(necessaryConf);// 灞炴�у繀濉」
+					dockingPreMetaAttr.setPid(pid);// 鐖惰妭鐐筰d
+				}
+				if(range!=null&&range.size()>0){
+					// 鑾峰彇灞炴�у�煎煙
+					getRange(dockingPreMetaAttr, range);
+				}
+				/***
+				 * 鑾峰彇瀛愯妭鐐�
+				 */
+				DockingClassifyMetaAttrVO compositeMeta = dockingClassifyMetaAttrVO.getCompositeMeta();
+				if (compositeMeta != null) {
+					pid = StringUtils.isBlank(dockingPreMetaAttr.getOid())?"":dockingPreMetaAttr.getOid();// 褰撳墠oid
+					List<DockingClassifyMetaAttrVO> childMetaList = new ArrayList<>();
+					childMetaList.add(compositeMeta);
+					getMetaAttrObject(childMetaList, jclassId,jviewModelObject, pid,allDockingPreMetaAttrList);
+				}
+
+			}
+
+		} catch (Throwable e) {
+			e.printStackTrace();
+			log.error("缁勭粐妯″瀷瑙嗗浘"+ jviewModelObject.getViewName()
+				+ "灞炴�у瓨鍌ㄥ嚭鐜伴棶棰�" + e);
+			throw new Throwable("缁勭粐妯″瀷瑙嗗浘"+ jviewModelObject.getViewName()
+				+ "灞炴�у瓨鍌ㄥ嚭鐜伴棶棰�" + e);
+		}
+	}
+
+	/**
+	 * @throws Throwable
+	 *             * 鑾峰彇鍊煎煙
+	 * @param metaAttrObject
+	 * @param range
+	 * @throws
+	 */
+	private void getRange(DockingPreMetaAttr metaAttrObject,Map<String, String> range) throws Throwable {
+		String metaAttrOid =StringUtils.isBlank(metaAttrObject.getOid())?"":metaAttrObject.getOid();// 灞炴�х殑oid
+		String jchinesename = StringUtils.isBlank(metaAttrObject.getChineseName())?"":metaAttrObject.getChineseName();
+		Map<String, DockingPreAttrRange> rangeMap = new HashMap<>();
+		try {
+			Map<String, String> condtionMa = new HashMap<String, String>();
+			condtionMa.put("jmetalistid", metaAttrOid);
+			List<DockingPreAttrRange> jmetaattrList = dockingPreAttrRangeService.selectByWrapper(Wrappers.<DockingPreAttrRange>query().lambda()
+				.eq(DockingPreAttrRange::getMetaListId,metaAttrOid));// 鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄
+			rangeMap= jmetaattrList.stream().collect(Collectors.toMap(s -> StringUtils.isNotBlank(s.getNumText().toLowerCase(Locale.ROOT))?"":s.getNumText().toLowerCase(Locale.ROOT), t -> t));
+
+			for (String rangeKey : range.keySet()) {
+				DockingPreAttrRange rangeObject = new DockingPreAttrRange();
+				String keyValue = StringUtils.isBlank(range.get(rangeKey))?"":range.get(rangeKey);
+				log.info("range:-------------->鏄剧ず鍊�"+rangeKey+",鍐呴儴鍊�"+keyValue);
+				if (rangeMap.containsKey(rangeKey)) {
+					rangeObject = rangeMap.get(rangeKey);
+					rangeObject.setNumTextValue(keyValue);
+					rangeObject.setNumText(rangeKey);
+					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(rangeObject);
+				} else {
+					DefaultAttrAssimtUtil.addDefaultAttrAssimt(rangeObject,MdmBtmTypeConstant.DOCKING_PRE_JRANGE);
+					rangeObject.setNumTextValue(keyValue);
+					rangeObject.setNumText(rangeKey);
+					rangeObject.setTs(rangeObject.getLastModifyTime());
+					rangeObject.setMetaListId(metaAttrOid);
+					log.info("range:-------------->灞炴�у唴閮ㄥ��:"+metaAttrOid);
+					log.info("range:-------------->鏃堕棿:"+rangeObject.getLastModifyTime());
+					jmetaattrList.add(rangeObject);
+				}
+			}
+			dockingPreAttrRangeService.saveOrUpdateBatch(jmetaattrList);
+		} catch (Throwable e) {
+			e.printStackTrace();
+			log.info("缁勭粐灞炴�э細銆�" + jchinesename + "銆戝�煎煙鍑虹幇闂"+ e);
+			throw new Throwable("缁勭粐灞炴�э細銆�" + jchinesename + "銆戝�煎煙鍑虹幇闂"+ e);
+		}
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreApplyFormMapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreApplyFormMapper.java
new file mode 100644
index 0000000..2a3dbd0
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreApplyFormMapper.java
@@ -0,0 +1,7 @@
+package com.vci.ubcs.code.webservice.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.vci.ubcs.code.webservice.entity.DockingPreApplyForm;
+
+public interface DockingPreApplyFormMapper extends BaseMapper<DockingPreApplyForm> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreAttrMappingMapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreAttrMappingMapper.java
new file mode 100644
index 0000000..fdda598
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreAttrMappingMapper.java
@@ -0,0 +1,7 @@
+package com.vci.ubcs.code.webservice.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.vci.ubcs.code.webservice.entity.DockingPreAttrMapping;
+
+public interface DockingPreAttrMappingMapper extends BaseMapper<DockingPreAttrMapping> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreAttrRangeMapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreAttrRangeMapper.java
new file mode 100644
index 0000000..dd767d0
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreAttrRangeMapper.java
@@ -0,0 +1,7 @@
+package com.vci.ubcs.code.webservice.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.vci.ubcs.code.webservice.entity.DockingPreAttrRange;
+
+public interface DockingPreAttrRangeMapper  extends BaseMapper<DockingPreAttrRange> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreClassifyMapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreClassifyMapper.java
new file mode 100644
index 0000000..c82a2fb
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreClassifyMapper.java
@@ -0,0 +1,28 @@
+package com.vci.ubcs.code.webservice.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.vci.ubcs.code.webservice.entity.DockingPreClassify;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface DockingPreClassifyMapper extends BaseMapper<DockingPreClassify> {
+
+
+	/**
+	 * 鏌ユ壘鏍戝舰缁撴瀯
+	 *
+	 * @param oid 鍒嗙被鐨勪富閿�
+	 * @return 鏁版嵁闆嗗悎
+	 */
+	List<DockingPreClassify> selectCompanyGroupClassifyVOByTree(@Param("oid") String oid);
+
+
+	/**
+	 * 鏍¢獙鏄惁鍖呭惈瀛愯妭鐐�
+	 *
+	 * @param oid 鍒嗙被鐨勪富閿�
+	 * @return true 琛ㄧず鍖呭惈
+	 */
+	Boolean checkHasChild(@Param("oid") String oid);
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreMetaAttrMapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreMetaAttrMapper.java
new file mode 100644
index 0000000..3f40a7a
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreMetaAttrMapper.java
@@ -0,0 +1,7 @@
+package com.vci.ubcs.code.webservice.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.vci.ubcs.code.webservice.entity.DockingPreMetaAttr;
+
+public interface DockingPreMetaAttrMapper  extends BaseMapper<DockingPreMetaAttr> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreViewModelMapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreViewModelMapper.java
new file mode 100644
index 0000000..fe709ee
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/mapper/DockingPreViewModelMapper.java
@@ -0,0 +1,7 @@
+package com.vci.ubcs.code.webservice.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.vci.ubcs.code.webservice.entity.DockingPreViewModel;
+
+public interface DockingPreViewModelMapper extends BaseMapper<DockingPreViewModel> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreApplyFormService.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreApplyFormService.java
similarity index 67%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreApplyFormService.java
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreApplyFormService.java
index 8ca312e..25b537e 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreApplyFormService.java
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreApplyFormService.java
@@ -1,7 +1,7 @@
-package com.vci.ubcs.code.service;
+package com.vci.ubcs.code.webservice.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.vci.ubcs.code.entity.DockingPreApplyForm;
+import com.vci.ubcs.code.webservice.entity.DockingPreApplyForm;
 
 /***
  * 闆嗗洟鐢宠鍗曟湇鍔�
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrMappingService.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrMappingService.java
new file mode 100644
index 0000000..e62eacf
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrMappingService.java
@@ -0,0 +1,54 @@
+package com.vci.ubcs.code.webservice.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.webservice.entity.DockingPreAttrMapping;
+import com.vci.ubcs.code.webservice.vo.DockingPreAttrMappingVO;
+import com.vci.ubcs.code.webservice.vo.DokingAttributeSerchVO;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import org.springblade.core.tool.api.R;
+
+import java.util.List;
+
+/**
+ * 闆嗗洟闆嗘垚閰嶇疆鏈嶅姟
+ * @author xiej
+ * @date 2023-05-17
+ */
+public interface IDockingPreAttrMappingService extends IService<DockingPreAttrMapping> {
+
+	/***
+	 * 鏍规嵁涓绘暟鎹垎绫讳富閿幏鍙栧垎绫讳俊鎭厤缃�
+	 * @param codeClassifyId
+	 * @return
+	 */
+	List<DockingPreAttrMappingVO> getDockingAttrMappingsByCodeClassifyId(String codeClassifyId, String sourceClassifyId);
+
+	/**
+	 * 浣跨敤鏌ヨ灏佽鍣ㄦ潵鏌ヨ
+	 * @param wrapper 鏌ヨ灏佽鍣�
+	 * @return 鏁版嵁瀵硅薄
+	 */
+	List<DockingPreAttrMapping> selectByWrapper(Wrapper wrapper);
+
+	/**
+	 * 淇濆瓨灞炴�ф槧灏勯厤缃粍浠�
+	 * @param dockingPreAttrMappingDTOS 灞炴�ф槧灏勯厤缃暟鎹紶杈撳璞�
+	 * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+	 */
+	public  List<DockingPreAttrMappingVO> batchAddSave(List<DockingPreAttrMappingVO> dockingPreAttrMappingDTOS)throws Exception;
+
+	/***
+	 *鏍¢獙灞炴�ф槧灏勬槸鍚﹂厤缃繃
+	 * @param targetClassifyId
+	 *  @param sourceClassifyId
+	 * @return
+	 */
+	boolean checkHasConfigByTragetCodeclassifyId(String targetClassifyId,String sourceClassifyId);
+
+	/***
+	 * 灞炴�ф煡璇�
+	 * @return
+	 */
+	public R search(DokingAttributeSerchVO dokingAttributeSerchVO);
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrRangeService.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrRangeService.java
similarity index 75%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrRangeService.java
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrRangeService.java
index 38bc9e8..e72c760 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrRangeService.java
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrRangeService.java
@@ -1,9 +1,9 @@
-package com.vci.ubcs.code.service;
+package com.vci.ubcs.code.webservice.service;
 
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.vci.ubcs.code.entity.DockingPreAttrRange;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
+import com.vci.ubcs.code.webservice.entity.DockingPreAttrRange;
+import com.vci.ubcs.code.webservice.vo.DockingPreAttrRangeVO;
 
 import java.util.List;
 
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreClassifyService.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreClassifyService.java
new file mode 100644
index 0000000..f552c41
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreClassifyService.java
@@ -0,0 +1,25 @@
+package com.vci.ubcs.code.webservice.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.starter.revision.model.TreeQueryObject;
+import com.vci.ubcs.starter.web.pagemodel.Tree;
+import com.vci.ubcs.code.webservice.entity.DockingPreClassify;
+
+import java.util.List;
+
+/***
+ * 闆嗗洟鍒嗙被鏈嶅姟
+ * @author xiejun
+ * @date 2022-05-23
+ */
+public interface IDockingPreClassifyService extends IService<DockingPreClassify> {
+
+
+
+	/**
+	 * 鏌ヨ涓婚搴撳垎绫� 鏍�
+	 * @param treeQueryObject 鏍戞煡璇㈠璞�
+	 * @return 涓婚搴撳垎绫� 鏄剧ず鏍�
+	 */
+	List<Tree> treeCompanyGroupClassify(TreeQueryObject treeQueryObject);
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreMetaAttrService.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreMetaAttrService.java
new file mode 100644
index 0000000..031a4d8
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreMetaAttrService.java
@@ -0,0 +1,30 @@
+package com.vci.ubcs.code.webservice.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.webservice.entity.DockingPreMetaAttr;
+import com.vci.ubcs.code.webservice.vo.DockingPreMetaAttrVO;
+
+import java.util.List;
+
+/***
+ * 闆嗗洟灞炴�ф湇鍔�
+ * @author xiejun
+ * @date 2023-05-23
+ */
+public interface IDockingPreMetaAttrService extends IService<DockingPreMetaAttr> {
+
+
+
+	/***
+	 * 鏋勯�犲櫒鏌ヨ鏂瑰紡
+	 * @param wrapper 鏌ヨ灏佽鍣�
+	 * @return
+	 */
+
+	public List<DockingPreMetaAttr> selectByWrapper(Wrapper wrapper);
+	/***
+	 * 鏍规嵁viewModel鏌ヨ妯″瀷瑙嗗浘灞炴��
+	 */
+	List<DockingPreMetaAttrVO> selectDockingPreMetaAttrByViewModelId(String viewModelId);
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreViewModelService.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreViewModelService.java
new file mode 100644
index 0000000..35961f5
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreViewModelService.java
@@ -0,0 +1,22 @@
+package com.vci.ubcs.code.webservice.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.webservice.entity.DockingPreViewModel;
+import com.vci.ubcs.code.webservice.vo.DockingPreViewModelVO;
+
+import java.util.List;
+
+/***
+ * 闆嗗洟鍒嗙被妯″瀷鏈嶅姟
+ * @author xiejun
+ * @date 2023-05-23
+ */
+public interface IDockingPreViewModelService extends IService<DockingPreViewModel> {
+	/**
+	 * 鏍规嵁鍒嗙被id鏌ヨ鍒嗙被瑙嗗浘
+	 * @param classifyId 闆嗗洟鍒嗙被id
+	 * @param isContainAttr 鏄惁鏌ヨ灞炴�э紝true锛� 鏄紝false锛屽惁
+	 * @return 杩斿洖鍒嗙被妯″瀷瑙嗗浘闆嗗悎瀵硅薄
+	 */
+	List<DockingPreViewModelVO> selectDockingPreViewModelByClassId(String classifyId, boolean isContainAttr);
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IGroupMdmInterService.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IGroupMdmInterService.java
new file mode 100644
index 0000000..257c2c6
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IGroupMdmInterService.java
@@ -0,0 +1,53 @@
+package com.vci.ubcs.code.webservice.service;
+
+
+import com.vci.ubcs.starter.exception.VciBaseException;
+import org.springblade.core.tool.api.R;
+
+/***
+ * 涓庨泦鍥㈤泦鎴愭湇鍔�
+ * @author xiejun
+ */
+public interface IGroupMdmInterService {
+	/***
+	 * 涓绘暟鎹儚闆嗗洟鐢宠缂栫爜
+	 * @param oids
+	 * @param btmName
+	 * @return 杩斿洖缁撴灉淇℃伅
+	 * @throws Throwable
+	 */
+	public R applyGroupCode(String oids, String btmName)throws Throwable;
+
+	/***
+	 * 涓绘暟鎹儚闆嗗洟鏇存敼缂栫爜
+	 * @param oids 闇�瑕佷慨鏀圭殑鏁版嵁涓婚敭鏁扮粍
+	 * @param btmName 涓氬姟绫诲瀷
+	 * @return 杩斿洖缁撴灉淇℃伅
+	 * @throws Throwable
+	 */
+
+	public R receiveEditApply(String oids, String btmName)throws Throwable;
+
+	/***
+	 * 鏌ヨ鍒嗙被璇︾粏妯″瀷瑙嗗浘
+	 * @param jtclsfId锛氶泦鍥㈠垎绫籵id
+	 * @return 杩斿洖缁撴灉淇℃伅
+	 * @throws Throwable
+	 */
+	public R queryClassModel(String jtclsfId)throws Throwable;
+
+
+	/***
+	 * 鏌ヨ鍒嗙被璇︾粏妯″瀷瑙嗗浘
+	 * @return 杩斿洖缁撴灉淇℃伅
+	 * @throws Throwable
+	 */
+	public R queryMdmModel()throws Throwable;
+	/***
+	 *鍚屾闆嗗洟妯″瀷瑙嗗浘
+	 * @param classifyId
+	 * @param operationType
+	 * @return
+	 */
+	R syncClassifyModel(String classifyId, String operationType)throws VciBaseException;
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreApplyFormServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreApplyFormServiceImpl.java
new file mode 100644
index 0000000..993e26a
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreApplyFormServiceImpl.java
@@ -0,0 +1,17 @@
+package com.vci.ubcs.code.webservice.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.webservice.mapper.DockingPreApplyFormMapper;
+import com.vci.ubcs.code.webservice.entity.DockingPreApplyForm;
+import com.vci.ubcs.code.webservice.service.IDockingPreApplyFormService;
+import org.springframework.stereotype.Service;
+
+/***
+ *闆嗗洟灞炴�ф槧灏勬湇鍔�
+ * @author xiejun
+ * @date 2023-05-22
+ */
+@Service
+public class DockingPreApplyFormServiceImpl extends ServiceImpl<DockingPreApplyFormMapper, DockingPreApplyForm> implements IDockingPreApplyFormService {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrMappingServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java
similarity index 72%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrMappingServiceImpl.java
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java
index 2bff19f..d0cc795 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrMappingServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java
@@ -1,21 +1,28 @@
-package com.vci.ubcs.code.service.impl;
+package com.vci.ubcs.code.webservice.service.impl;
+
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.vci.ubcs.code.entity.DockingPreAttrMapping;
-import com.vci.ubcs.code.entity.DockingPreAttrRange;
-import com.vci.ubcs.code.entity.DockingPreMetaAttr;
-import com.vci.ubcs.code.mapper.DockingPreAttrMappingMapper;
-import com.vci.ubcs.code.service.IDockingPreAttrMappingService;
-import com.vci.ubcs.code.service.IDockingPreAttrRangeService;
-import com.vci.ubcs.code.service.IDockingPreMetaAttrService;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
-import com.vci.ubcs.code.wrapper.DockingPreAttrMappingWrapper;
-import com.vci.ubcs.code.wrapper.DockingPreAttrRangeWrapper;
+import com.vci.ubcs.code.webservice.mapper.DockingPreAttrMappingMapper;
+import com.vci.ubcs.code.webservice.service.IDockingPreAttrMappingService;
+import com.vci.ubcs.code.webservice.service.IDockingPreAttrRangeService;
+import com.vci.ubcs.code.webservice.service.IDockingPreMetaAttrService;
+import com.vci.ubcs.code.webservice.vo.DokingAttributeSerchVO;
+import com.vci.ubcs.code.webservice.wrapper.DockingPreAttrMappingWrapper;
+import com.vci.ubcs.code.webservice.wrapper.DockingPreAttrRangeWrapper;
 import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
+import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import com.vci.ubcs.code.webservice.entity.DockingPreAttrMapping;
+import com.vci.ubcs.code.webservice.entity.DockingPreAttrRange;
+import com.vci.ubcs.code.webservice.entity.DockingPreMetaAttr;
+import com.vci.ubcs.code.webservice.vo.DockingPreAttrMappingVO;
+import com.vci.ubcs.code.webservice.vo.DockingPreAttrRangeVO;
+import org.springblade.core.tool.api.R;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -32,31 +39,46 @@
  */
 @Service
 public class DockingPreAttrMappingServiceImpl extends ServiceImpl<DockingPreAttrMappingMapper, DockingPreAttrMapping> implements IDockingPreAttrMappingService {
+
 	/***
 	 * 闆嗗洟鍒嗙被灞炴�у睘鎬ф槧灏勯厤缃湇鍔�
 	 */
 	@Autowired(required = false)
-	DockingPreAttrMappingMapper dockingPreAttrMappingMapper;
+	private DockingPreAttrMappingMapper dockingPreAttrMappingMapper;
+
+	/***
+	 * 涓氬姟鏁版嵁灞炴�ф湇鍔�
+	 */
+	//@Autowired(required = false)
+	//private  MdmEngineService mdmEngineService;
+
 	/***
 	 * 闆嗗洟灞炴�ф湇鍔�
 	 */
 	@Autowired(required = false)
-	IDockingPreMetaAttrService dockingPreMetaAttrService;
+	private IDockingPreMetaAttrService dockingPreMetaAttrService;
 	/***
 	 * 灞炴�у彇鍊艰寖鍥存湇鍔�
 	 */
 	@Autowired(required = false)
-	IDockingPreAttrRangeService dockingPreAttrRangeService;
+	private IDockingPreAttrRangeService dockingPreAttrRangeService;
+
+
+
+
+
 	/***
 	 * 鏍规嵁涓绘暟鎹垎绫讳富閿幏鍙栧垎绫讳俊鎭厤缃�
 	 * @param codeClassifyId
 	 * @return
 	 */
 	@Override
-	public List<DockingPreAttrMappingVO> getdockingAttrMappingsByCodeclassId(String codeClassifyId) {
+	public List<DockingPreAttrMappingVO> getDockingAttrMappingsByCodeClassifyId(String codeClassifyId,String sourceClassifyId) {
+		VciBaseUtil.alertNotNull(codeClassifyId,"涓绘暟鎹垎绫讳富閿�");
+		VciBaseUtil.alertNotNull(sourceClassifyId,"闆嗗洟鍒嗙被涓婚敭");
 		//棣栧厛鑾峰彇鍒嗙被妯℃澘灞炴�э紝鐒跺悗涓庡睘鎬ч厤缃潗姣旇緝锛屼互闃茶鏈夊鍒犲睘鎬х殑鍙兘
-		List<DockingPreMetaAttr> dockingPreMetaAttrList=	dockingPreMetaAttrService.selectByWrapper(Wrappers.<DockingPreMetaAttr>query().lambda().eq(DockingPreMetaAttr::getSourceClassifyId,codeClassifyId));
-		List<DockingPreAttrMapping> dockingPreAttrMappings=this.selectByWrapper(Wrappers.<DockingPreAttrMapping>query().lambda().eq(DockingPreAttrMapping::getSourceClassifyId, codeClassifyId));
+		List<DockingPreMetaAttr> dockingPreMetaAttrList=	dockingPreMetaAttrService.selectByWrapper(Wrappers.<DockingPreMetaAttr>query().lambda().eq(DockingPreMetaAttr::getSourceClassifyId,sourceClassifyId));
+		List<DockingPreAttrMapping> dockingPreAttrMappings=this.selectByWrapper(Wrappers.<DockingPreAttrMapping>query().lambda().eq(DockingPreAttrMapping::getSourceClassifyId, sourceClassifyId).eq(DockingPreAttrMapping::getTargetClassifyId, codeClassifyId));
 		Map<String/**灞炴�т富閿�**/, DockingPreAttrMapping> dockingPreAttrMappingMap = dockingPreAttrMappings.stream().filter(cbo -> cbo != null).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getMetaListId(), t -> t));
 
 		List<DockingPreAttrMapping> newDockingPreAttrMappingList=new ArrayList<>();
@@ -66,6 +88,7 @@
 			if(dockingPreAttrMappingMap.containsKey(attrOid)){
 				dockingPreAttrMapping=	dockingPreAttrMappingMap.get(attrOid);
 			}else{
+				DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreAttrMapping, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
 				dockingPreAttrMapping.setMetaListId(dockingPreMetaAttr.getOid());//灞炴�т富閿�
 				dockingPreAttrMapping.setSourceAttrKey(dockingPreMetaAttr.getEnglishName());//鑻辨枃鍚嶇О
 				dockingPreAttrMapping.setSourceAttrName(dockingPreMetaAttr.getChineseName());//涓枃鍚嶇О
@@ -122,9 +145,9 @@
 			}
 		});
 		//灏嗗睘鎬у彇鍊艰寖鍥磋浆鎴愭暟鎹寔涔呭眰瀵硅薄
-		newDockingPreAttrRangeList=DockingPreAttrRangeWrapper.build().voentitys(newDockingPreAttrRangeVOList);
+		newDockingPreAttrRangeList= DockingPreAttrRangeWrapper.build().voentitys(newDockingPreAttrRangeVOList);
 		//灏嗗睘鎬ф槧灏勯厤缃俊鎭浆鎹负闇�瑕佹暟鎹寔涔呭眰淇濆瓨鐨勫璞�
-		newDockingPreAttrMapping=DockingPreAttrMappingWrapper.build().voentitys(dockingPreAttrMappingVOList);
+		newDockingPreAttrMapping= DockingPreAttrMappingWrapper.build().voentitys(dockingPreAttrMappingVOList);
 
 		List<DockingPreAttrRange> oldDockingPreAttrRangeList=new ArrayList<>();
 		if(!org.springframework.util.CollectionUtils.isEmpty(attrIdList)) {
@@ -167,6 +190,31 @@
 	}
 
 	/***
+	 * 鏍规嵁涓绘暟鎹畂id妫�娴嬫槸鍚﹀睘鎬ф槧灏勯厤缃�
+	 * @param targetClassifyId
+	 * @param sourceClassifyId
+	 * @return
+	 * @throws Exception
+	 */
+	@Override
+	public boolean checkHasConfigByTragetCodeclassifyId(String targetClassifyId,String sourceClassifyId){
+		Long count =0L;
+		try {
+			count = dockingPreAttrMappingMapper.selectCount(Wrappers.<DockingPreAttrMapping>query().lambda().eq(DockingPreAttrMapping::getTargetClassifyId, targetClassifyId).eq(DockingPreAttrMapping::getSourceClassifyId,sourceClassifyId));
+		}catch (Throwable e){
+			e.printStackTrace();;
+		} finally {
+			return  count>0?true:false;
+		}
+	}
+
+	@Override
+	public R search(DokingAttributeSerchVO dokingAttributeSerchVO) {
+		return null;
+	}
+
+
+	/***
 	 * 瀵硅薄杞崲
 	 * @param dockingPreAttrMappings
 	 * @return
@@ -184,4 +232,5 @@
 			}
 			return dockingPreAttrMappingVOList;
 		}
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrRangeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrRangeServiceImpl.java
new file mode 100644
index 0000000..69425b5
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrRangeServiceImpl.java
@@ -0,0 +1,55 @@
+package com.vci.ubcs.code.webservice.service.impl;
+
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.webservice.mapper.DockingPreAttrRangeMapper;
+import com.vci.ubcs.code.webservice.service.IDockingPreAttrRangeService;
+import com.vci.ubcs.code.webservice.wrapper.DockingPreAttrRangeWrapper;
+import com.vci.ubcs.code.webservice.entity.DockingPreAttrRange;
+import com.vci.ubcs.code.webservice.vo.DockingPreAttrRangeVO;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/***
+ *闆嗗洟灞炴�у彇鍊艰寖鍥存湇鍔�
+ * @author xiejun
+ * @date 2023-05-22
+ */
+@Service
+@Slf4j
+public class DockingPreAttrRangeServiceImpl extends ServiceImpl<DockingPreAttrRangeMapper, DockingPreAttrRange> implements IDockingPreAttrRangeService {
+	@Autowired(required = false)
+	DockingPreAttrRangeMapper dockingPreAttrRangeMapper;
+
+	/***
+	 * 鏍规嵁闆嗗洟灞炴�т富閿煡璇㈠叾鍙栧�艰寖鍥�
+	 * @param meatId
+	 * @return
+	 */
+	@Override
+	public List<DockingPreAttrRangeVO> getDockingPreAttrRangesByMetaId(String meatId) {
+		log.info("鏌ヨ闆嗗洟灞炴��->"+meatId+"鍙栧�艰寖鍥磗tart");
+		VciBaseUtil.alertNotNull(meatId,"灞炴�т富閿�");
+		List<DockingPreAttrRange> dockingPreAttrMappings=this.selectByWrapper(Wrappers.<DockingPreAttrRange>query().lambda().eq(DockingPreAttrRange::getMetaListId, meatId));
+		log.info("鏌ヨ闆嗗洟灞炴��->"+meatId+"鍙栧�艰寖鍥磂nd");
+		return DockingPreAttrRangeWrapper.build().entityVOs(dockingPreAttrMappings);
+
+	}
+
+	/****
+	 * 鏋勯�犲櫒鏌ヨ鏂瑰紡
+	 * @param wrapper 鏌ヨ灏佽鍣�
+	 * @return
+	 */
+	@Override
+	public List<DockingPreAttrRange> selectByWrapper(Wrapper wrapper) {
+		return dockingPreAttrRangeMapper.selectList(wrapper);
+	}
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java
new file mode 100644
index 0000000..3ff08a5
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java
@@ -0,0 +1,135 @@
+package com.vci.ubcs.code.webservice.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.webservice.mapper.DockingPreClassifyMapper;
+import com.vci.ubcs.code.webservice.service.IDockingPreApplyFormService;
+import com.vci.ubcs.code.webservice.service.IDockingPreAttrMappingService;
+import com.vci.ubcs.code.webservice.service.IDockingPreClassifyService;
+import com.vci.ubcs.code.webservice.service.IDockingPreViewModelService;
+import com.vci.ubcs.code.webservice.wrapper.DockingPreClassifyWrapper;
+import com.vci.ubcs.starter.revision.model.TreeQueryObject;
+import com.vci.ubcs.starter.revision.model.TreeWrapperOptions;
+import com.vci.ubcs.starter.revision.service.RevisionModelUtil;
+import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
+import com.vci.ubcs.starter.web.pagemodel.Tree;
+import com.vci.ubcs.code.webservice.entity.DockingPreClassify;
+import com.vci.ubcs.code.webservice.vo.DockingPreClassifyVO;
+import com.vci.ubcs.code.webservice.vo.DockingPreViewModelVO;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.*;
+
+
+/**
+ * 闆嗗洟鍒嗙被涓氬姟鏈嶅姟
+ * @author xiejun
+ * @date 2023-05-23
+ */
+@Service
+@Slf4j
+public class DockingPreClassifyServiceImpl extends ServiceImpl<DockingPreClassifyMapper, DockingPreClassify> implements IDockingPreClassifyService {
+	/**
+	 * 涓婄骇鑺傜偣鐨勫睘鎬у悕绉�
+	 */
+	public static  final String PARENT_FIELD_NAME = "pid";
+	/***
+	 * 闆嗗洟鍒嗙被灞炴��
+	 */
+	@Resource
+	private DockingPreClassifyMapper dockingPreClassifyMapper;
+
+	/***
+	 * 闆嗗洟鍒嗙被灞炴��
+	 */
+	@Resource
+	private IDockingPreViewModelService dockingPreViewModelService;
+
+
+	/***
+	 *闆嗗洟闆嗘垚閰嶇疆鏈嶅姟
+	 */
+	@Resource
+	private IDockingPreAttrMappingService dockingPreAttrMappingService;
+
+
+	/**
+	 * 瀵硅薄鐨勬搷浣�
+	 */
+	@Resource
+	private RevisionModelUtil revisionModelUtil;
+	/***
+	 * 闆嗗洟鍒嗙被鏍戝璞℃煡
+	 *@param treeQueryObject 闆嗗洟鍒嗙被鏌ヨ瀵硅薄
+	 *@return 杩斿洖鍒嗙被鏍戝璞�
+	 */
+	@Override
+	public List<Tree> treeCompanyGroupClassify(TreeQueryObject treeQueryObject) {
+		log.info("鑾峰彇闆嗗洟鍒嗙被鏍憇tart...");
+
+		Map<String,String> conditionMap= treeQueryObject.getConditionMap();
+		if(conditionMap==null){
+			conditionMap=new HashMap<>();
+		}
+		TreeWrapperOptions treeWrapperOptions = new TreeWrapperOptions(PARENT_FIELD_NAME.toLowerCase(Locale.ROOT));
+		treeWrapperOptions.copyFromTreeQuery(treeQueryObject);
+		List<DockingPreClassifyVO> dockingPreClassifyVOS= getCompanyGourpClassByParentId(treeQueryObject.getParentOid(),true);
+		List<Tree> tree= revisionModelUtil.doList2Trees(dockingPreClassifyVOS,treeWrapperOptions,(DockingPreClassifyVO s) ->{
+			//鍙互鍦ㄨ繖閲屽鐞嗘爲鑺傜偣鐨勬樉绀�
+			return s.getId() + " " + s.getName();//(FrameworkDataLCStatus.DISABLED.getValue().equalsIgnoreCase(s.getLcStatus()) ? (" 銆愬仠鐢ㄣ�� ") : "");
+		});
+
+		setTreeConig(tree,conditionMap);
+		log.info("鑾峰彇闆嗗洟鍒嗙被鏍慹nd...");
+		return tree;
+	}
+	private void setTreeConig(List<Tree> tree,Map<String,String >conditionMap){
+		boolean checkHasChild=false;
+		Iterator var6 =  tree.listIterator();
+		while(var6.hasNext()){
+			Tree trees = (Tree) var6.next();
+			List<Tree> childrenList=trees.getChildren();
+			if(childrenList.size()>0){
+				checkHasChild=true;
+			}
+			boolean checkHas=false;
+			//濡傛灉涓庢潯浠朵紶杩囨潵鐨勫�煎尮閰嶇殑涓婂垯璁剧疆涓洪�変腑
+			if(conditionMap.containsKey(MdmBtmTypeConstant.CODE_CLASSIFY_OID_FIELD)){
+				String codeClassifyId=conditionMap.get(MdmBtmTypeConstant.CODE_CLASSIFY_OID_FIELD);
+				checkHas = dockingPreAttrMappingService.checkHasConfigByTragetCodeclassifyId(codeClassifyId, trees.getOid());
+			}
+			if (checkHas) {
+				trees.setChecked(true);
+			}
+			if(checkHasChild){
+				trees.setLeaf(false);
+			}else{
+				trees.setLeaf(true);
+			}
+			if(checkHasChild) {
+				setTreeConig(childrenList,conditionMap);
+			}
+		}
+
+	}
+
+	/***
+	 * 鏍规嵁鐖跺垎绫籭d鏌ヨ灞傜骇鏍戞暟鎹璞¢泦鍚�
+	 * @param pid 闆嗗洟鍒嗙被鐨刼id
+	 * @return 杩斿洖灞傜骇鏍戞暟鎹璞¢泦鍚�
+	 */
+	private List<DockingPreClassifyVO> getCompanyGourpClassByParentId(String pid,boolean isContainView){
+		log.info("鏍规嵁鐖跺垎绫籶id->"+pid+"鏌ヨ灞傜骇鏍戞暟鎹璞¢泦鍚坰tart...");
+		List<DockingPreClassify> doList =dockingPreClassifyMapper.selectCompanyGroupClassifyVOByTree(pid);
+		List<DockingPreClassifyVO>dockingPreClassifyVOS= DockingPreClassifyWrapper.build().entityVOs(doList);
+		if(isContainView){
+			dockingPreClassifyVOS.stream().forEach(dockingPreClassifyVO -> {
+			List<DockingPreViewModelVO> dockingViewVOS=	dockingPreViewModelService.selectDockingPreViewModelByClassId(dockingPreClassifyVO.getOid(),isContainView);
+				dockingPreClassifyVO.setDockingPreViewModelVOList(dockingViewVOS);
+			});
+		}
+		log.info("鏍规嵁鐖跺垎绫籶id->"+pid+"鏌ヨ灞傜骇鏍戞暟鎹璞¢泦鍚坋nd...");
+		return dockingPreClassifyVOS;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreMetaAttrServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreMetaAttrServiceImpl.java
new file mode 100644
index 0000000..f2ae771
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreMetaAttrServiceImpl.java
@@ -0,0 +1,47 @@
+package com.vci.ubcs.code.webservice.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.webservice.mapper.DockingPreMetaAttrMapper;
+import com.vci.ubcs.code.webservice.service.IDockingPreMetaAttrService;
+import com.vci.ubcs.code.webservice.wrapper.DockingPreMetaAttrWrapper;
+import com.vci.ubcs.code.webservice.entity.DockingPreMetaAttr;
+import com.vci.ubcs.code.webservice.vo.DockingPreMetaAttrVO;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/***
+ * 闆嗗洟灞炴�ф湇鍔�
+ * @author xiejun
+ * @date 2023-05-23
+ */
+@Service
+@Slf4j
+public class DockingPreMetaAttrServiceImpl extends ServiceImpl<DockingPreMetaAttrMapper, DockingPreMetaAttr> implements IDockingPreMetaAttrService {
+
+	@Autowired(required = false)
+	DockingPreMetaAttrMapper dockingPreMetaAttrMapper;
+
+	@Override
+	public List<DockingPreMetaAttr> selectByWrapper(Wrapper wrapper) {
+		return dockingPreMetaAttrMapper.selectList(wrapper);
+	}
+
+	/***
+	 * 鏍规嵁妯″瀷瑙嗗浘oid鏌ヨ鏁版嵁
+	 * @param viewModelId
+	 * @return 杩斿洖灞炴�у璞�
+	 */
+	@Override
+	public List<DockingPreMetaAttrVO> selectDockingPreMetaAttrByViewModelId(String viewModelId) {
+		log.info("鏍规嵁妯″瀷瑙嗗浘oid"+viewModelId+"鏌ヨ鏁版嵁 star");
+		List<DockingPreMetaAttr> dockingPreMetaAttrList= selectByWrapper(Wrappers.<DockingPreMetaAttr>query().lambda().eq(DockingPreMetaAttr::getViewModelId,viewModelId));
+		List<DockingPreMetaAttrVO> dockingPreMetaAttrVOList= DockingPreMetaAttrWrapper.build().entityVOs(dockingPreMetaAttrList);
+		log.info("鏍规嵁妯″瀷瑙嗗浘oid"+viewModelId+"鏌ヨ鏁版嵁 end");
+		return dockingPreMetaAttrVOList;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreViewModelServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreViewModelServiceImpl.java
new file mode 100644
index 0000000..1d6a08b
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreViewModelServiceImpl.java
@@ -0,0 +1,70 @@
+package com.vci.ubcs.code.webservice.service.impl;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.webservice.mapper.DockingPreViewModelMapper;
+import com.vci.ubcs.code.webservice.service.IDockingPreMetaAttrService;
+import com.vci.ubcs.code.webservice.service.IDockingPreViewModelService;
+import com.vci.ubcs.code.webservice.wrapper.DockingPreMetaAttrWrapper;
+import com.vci.ubcs.code.webservice.wrapper.DockingPreViewWrapper;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import com.vci.ubcs.code.webservice.entity.DockingPreMetaAttr;
+import com.vci.ubcs.code.webservice.entity.DockingPreViewModel;
+import com.vci.ubcs.code.webservice.vo.DockingPreMetaAttrVO;
+import com.vci.ubcs.code.webservice.vo.DockingPreViewModelVO;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/***
+ * 闆嗗洟妯″瀷鏈嶅姟
+ * @author xiejun
+ * @date 2023-05-23
+ */
+@Service
+@Slf4j
+public class DockingPreViewModelServiceImpl extends ServiceImpl<DockingPreViewModelMapper,DockingPreViewModel> implements IDockingPreViewModelService {
+
+	/***
+	 * 闆嗗洟鍒嗙被灞炴��
+	 */
+	@Resource
+	private DockingPreViewModelMapper dockingPreViewModelMapper;
+
+
+	/***
+	 * 闆嗗洟鍒嗙被灞炴�ф煡璇㈡湇鍔�
+	 */
+	@Resource
+	private IDockingPreMetaAttrService dockingPreMetaAttrService;
+
+	/**
+	 * 鏍规嵁鍒嗙被id鏌ヨ鍒嗙被瑙嗗浘
+	 * @param classifyId 闆嗗洟鍒嗙被id
+	 * @param isContainAttr 鏄惁鏌ヨ灞炴�э紝true锛� 鏄紝false锛屽惁
+	 * @return 杩斿洖鍒嗙被妯″瀷瑙嗗浘闆嗗悎瀵硅薄
+	 */
+	@Override
+	public List<DockingPreViewModelVO> selectDockingPreViewModelByClassId(String classifyId, boolean isContainAttr) {
+		log.info("鏍规嵁鍒嗙被id->"+classifyId+",鏌ヨ鍒嗙被瑙嗗浘statr");
+		VciBaseUtil.alertNotNull(classifyId,"闆嗗洟鍒嗙被涓婚敭");
+		List<DockingPreViewModel> dockingPreViewModels= dockingPreViewModelMapper.selectList(Wrappers.<DockingPreViewModel>query().lambda().eq(DockingPreViewModel::getSourceClassifyId,classifyId));
+		List<DockingPreViewModelVO> dockingPreViewModelVOS= DockingPreViewWrapper.build().entityVOs(dockingPreViewModels);
+		if(isContainAttr) {
+			dockingPreViewModelVOS.stream().forEach(dockingPreViewModelVO -> {
+				String viewModelVOOid=dockingPreViewModelVO.getOid();
+				String sourceClassifyId=dockingPreViewModelVO.getSourceClassifyId();
+				List<DockingPreMetaAttr> dockingPreMetaAttrList=dockingPreMetaAttrService.selectByWrapper(Wrappers.<DockingPreMetaAttr>query().lambda().eq(DockingPreMetaAttr::getSourceClassifyId,sourceClassifyId).eq(DockingPreMetaAttr::getViewModelId,viewModelVOOid));
+				List<DockingPreMetaAttrVO> dockingPreMetaAttrVOList= DockingPreMetaAttrWrapper.build().entityVOs(dockingPreMetaAttrList);
+				if(!CollectionUtils.isEmpty(dockingPreMetaAttrVOList)) {
+					dockingPreViewModelVO.setDockingPreMetaAttrVOList(dockingPreMetaAttrVOList);
+				}
+			});
+		}
+		log.info("鏍规嵁鍒嗙被id->"+classifyId+",鏌ヨ鍒嗙被瑙嗗浘end");
+		return dockingPreViewModelVOS;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java
new file mode 100644
index 0000000..b0b17d6
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java
@@ -0,0 +1,1011 @@
+package com.vci.ubcs.code.webservice.service.impl;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.vci.ubcs.code.webservice.entity.*;
+import com.vci.ubcs.code.webservice.vo.*;
+import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
+import com.vci.ubcs.code.webservice.feign.MdmApplyGroupCodeProvider;
+import com.vci.ubcs.code.webservice.mapper.DockingPreAttrMappingMapper;
+import com.vci.ubcs.code.webservice.service.*;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
+import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.stream.Collectors;
+
+/***
+ * 涓庨泦鍥㈤泦鎴愭湇鍔�
+ * @author xiejun
+ * @date 2023-05-26
+ */
+@Service
+@Slf4j
+public class GroupMdmInterServiceImpl implements IGroupMdmInterService {
+
+	private String code="";
+
+	private String msg="";
+
+
+	@Value("${docking.apply.unitCode:41000}")
+	public String dockingApplyUnitCode;
+
+	@Value("${docking.apply.sysName:410-MDM}")
+	public String dockingApplySysName;
+
+	@Autowired(required = false)
+	private MdmApplyGroupCodeProvider mdmApplyGroupCodeProvider;
+	/***
+	 * 闆嗗洟鍒嗙被鏈嶅姟
+	 */
+	@Autowired(required = false)
+	private IDockingPreClassifyService dockingPreClassifyService;
+
+	/***
+	 * 鐢宠鍗曟湇鍔�
+	 */
+	@Autowired(required = false)
+	private IDockingPreApplyFormService dockingPreApplyFormService;
+
+
+	/***
+	 * 妯″瀷瑙嗗浘鍗曟湇鍔�
+	 */
+	@Autowired(required = false)
+	private IDockingPreViewModelService dockingPreViewModelService;
+
+
+	/***
+	 * 闆嗗洟鍒嗙被灞炴�у睘鎬ф槧灏勯厤缃湇鍔�
+	 */
+	@Autowired(required = false)
+	private DockingPreAttrMappingMapper dockingPreAttrMappingMapper;
+	/***
+	 * 灞炴�у彇鍊艰寖鍥存湇鍔�
+	 */
+	@Autowired(required = false)
+	private IDockingPreAttrRangeService dockingPreAttrRangeService;
+
+
+	/***
+	 * 闆嗗洟灞炴�ф湇鍔�
+	 */
+	@Autowired(required = false)
+	private IDockingPreMetaAttrService dockingPreMetaAttrService;
+	/***
+	 * 涓绘暟鎹儚闆嗗洟鐢宠缂栫爜
+	 * @param oids 闇�瑕佺敵璇风殑鏁版嵁涓婚敭鏁扮粍
+	 * @param btmName 涓氬姟绫诲瀷
+	 * @return 杩斿洖缁撴灉淇℃伅
+	 * @throws Exception
+	 */
+	@Transactional(rollbackFor = VciBaseException.class)
+	@Override
+	public R applyGroupCode(String oids, String btmName) throws VciBaseException {
+		try {
+			List<BaseModel> updateCbos = new ArrayList<BaseModel>();
+
+			List<DockingPreApplyForm> dockingPreAttrMappings = new ArrayList<>();
+			VciBaseUtil.alertNotNull(oids, "閫夋嫨鐨勬暟鎹�");
+			VciBaseUtil.alertNotNull(btmName, "涓氬姟绫诲瀷");
+			//List<BaseModelVO> codeWupins=mdmEngineService.listByIds(VciBaseUtil.str2List(oids));
+			List<BaseModelVO> dataModelList = new ArrayList<>();
+			if (!CollectionUtils.isEmpty(dataModelList)) {
+				DockingGroupDataVO dockingGroupDataVO = new DockingGroupDataVO();
+				//鐢宠鍗曞拰鐢宠鍗曞璞″叧绯�
+				Map<String, DockingPreApplyForm> addDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>();
+				Map<String, DockingPreApplyForm> editDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>();
+				Map<String, BaseModelVO> baseModelVOMap = new HashMap<String, BaseModelVO>();
+				//缁勭粐鏁版嵁
+				dockingGroupDataVO = queryApplycodeDataObjects(1, dataModelList, addDockingPreApplyFormMap, editDockingPreApplyFormMap, baseModelVOMap);
+				DockingResultVO resultDataObject = mdmApplyGroupCodeProvider.receiveAddApply(dockingGroupDataVO);
+				code = resultDataObject.getCode();
+				msg = resultDataObject.getMsg();
+				if ("1".equals(resultDataObject.getCode())) {//缁撴灉姝g‘鐨勬儏鍐�
+					List<DockingDataVO> dataObjectVOList = resultDataObject.getData();
+					dataObjectVOList.stream().forEach(dataObject -> {
+						boolean isEditDatas = false;
+						String code2 = dataObject.getCode();
+						DockingMainDataVO data2 = dataObject.getData();
+						String applyId = data2.getApplyId();//鐢宠鍗昳d
+						String customCoding = StringUtils.isBlank(data2.getCustomCoding()) ? "" : data2.getCustomCoding();//闆嗗洟鐮佹
+						msg = dataObject.getMsg();
+						if (code2.equals("1")) {//缁撴灉姝g‘鐨勬儏鍐�
+							if (!"".equals(customCoding)) {
+								isEditDatas = true;
+							}
+						}
+						//闇�瑕佷慨鏀圭殑鐢宠鍗曟暟鎹�
+						if (editDockingPreApplyFormMap.containsKey(applyId)) {
+							DockingPreApplyForm dockingPreApplyForm = editDockingPreApplyFormMap.get(applyId);
+							dockingPreApplyForm.setCode(code2);
+							dockingPreApplyForm.setMsg("鐢宠锛�" + msg);
+							dockingPreApplyForm.setGroupCode(customCoding);
+							ObjectMapper mp = new ObjectMapper();
+							String writeValueAsString = null;
+							try {
+								writeValueAsString = mp.writeValueAsString(dataObject);
+								dockingPreApplyForm.setContent(writeValueAsString);
+							} catch (JsonProcessingException e) {
+							}
+						}
+						//鏂板鐨勭敵璇峰崟鏁版嵁
+						if (addDockingPreApplyFormMap.containsKey(applyId)) {
+							DockingPreApplyForm dockingPreApplyForm = addDockingPreApplyFormMap.get(applyId);
+							dockingPreApplyForm.setCode(code2);
+							dockingPreApplyForm.setMsg("鐢宠锛�" + msg);
+							dockingPreApplyForm.setGroupCode(customCoding);
+							ObjectMapper mp = new ObjectMapper();
+							String writeValueAsString = null;
+							try {
+								writeValueAsString = mp.writeValueAsString(dataObject);
+								dockingPreApplyForm.setContent(writeValueAsString);
+							} catch (JsonProcessingException e) {
+							}
+						}
+						//濡傛灉鏈夐泦鍥㈢爜鍒欐洿鏂版暟鎹�
+						if (isEditDatas) {
+							if (baseModelVOMap.containsKey(applyId)) {
+								BaseModelVO baseModelVO = baseModelVOMap.get(applyId);
+								BaseModel baseModel = new BaseModel();
+								BeanUtilForVCI.copyDeclaredIgnoreCase(baseModelVO, baseModel);
+								DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
+								DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
+								baseModelVO.setId(customCoding);
+								updateCbos.add(baseModel);//鏇存柊鏁版嵁闆嗗洟code
+							}
+						}
+					});
+				} else {
+					editDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
+						dockingPreApplyForm.setCode("2");
+						dockingPreApplyForm.setMsg("鐢宠锛�" + msg);
+						dockingPreApplyForm.setContent("");
+						dockingPreApplyForm.setGroupCode("");
+						DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
+					});
+					addDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
+						dockingPreApplyForm.setCode("2");
+						dockingPreApplyForm.setMsg("鐢宠锛�" + msg);
+						dockingPreApplyForm.setContent("");
+						dockingPreApplyForm.setGroupCode("");
+						DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
+					});
+				}
+				if (editDockingPreApplyFormMap.size() > 0) {
+					dockingPreAttrMappings.addAll(editDockingPreApplyFormMap.values());//娣诲姞鐢宠鍗曟暟鎹�
+				}
+				if (addDockingPreApplyFormMap.size() > 0) {
+					dockingPreAttrMappings.addAll(addDockingPreApplyFormMap.values());//闇�瑕佷慨鏀圭殑鐢宠鍗曟暟鎹�
+				}
+				//淇濆瓨琛ㄥ崟鏁版嵁
+				dockingPreApplyFormService.saveOrUpdateBatch(dockingPreAttrMappings);
+				//mdmEngineService.saveBatch(updateCbos);//淇濆瓨鏁版嵁
+			}
+			return R.success("鐢宠鎺ュ彛璋冪敤鎴愬姛");
+		}catch (VciBaseException e){
+			return R.success("鐢宠鎺ュ彛璋冪敤鎴愬姛"+e);
+		}
+	}
+
+	/***
+	 * 涓绘暟鎹儚闆嗗洟鏇存敼缂栫爜
+	 * @param oids 闇�瑕佷慨鏀圭殑鏁版嵁涓婚敭鏁扮粍
+	 * @param btmName 涓氬姟绫诲瀷
+	 * @return 杩斿洖缁撴灉淇℃伅
+	 * @throws Throwable
+	 */
+	@Transactional(rollbackFor = VciBaseException.class)
+	@Override
+	public R receiveEditApply(String oids, String btmName) throws VciBaseException {
+		List<BaseModel> updateCbos=new ArrayList<BaseModel>();
+		List<DockingPreApplyForm> dockingPreAttrMappings=new ArrayList<>();
+		VciBaseUtil.alertNotNull(oids,"閫夋嫨鐨勬暟鎹�");
+		VciBaseUtil.alertNotNull(btmName,"涓氬姟绫诲瀷");
+		//List<BaseModelVO> codeWupins=mdmEngineService.listByIds(VciBaseUtil.str2List(oids));
+		List<BaseModelVO> dataModelList = new ArrayList<>();
+		try {
+			if (!CollectionUtils.isEmpty(dataModelList)) {
+				DockingGroupDataVO dockingGroupDataVO = new DockingGroupDataVO();
+				//鐢宠鍗曞拰鐢宠鍗曞璞″叧绯�
+				Map<String, DockingPreApplyForm> addDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>();
+				Map<String, DockingPreApplyForm> editDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>();
+				Map<String, BaseModelVO> baseModelVOMap = new HashMap<String, BaseModelVO>();
+				//缁勭粐鏁版嵁
+				dockingGroupDataVO = queryApplycodeDataObjects(2, dataModelList, addDockingPreApplyFormMap, editDockingPreApplyFormMap, baseModelVOMap);
+				DockingResultVO resultDataObject = mdmApplyGroupCodeProvider.receiveEditApply(dockingGroupDataVO);
+				code = resultDataObject.getCode();
+				msg = resultDataObject.getMsg();
+				if ("1".equals(resultDataObject.getCode())) {//缁撴灉姝g‘鐨勬儏鍐�
+					List<DockingDataVO> dataObjectVOList = resultDataObject.getData();
+					dataObjectVOList.stream().forEach(dataObject -> {
+						boolean isEditDatas = false;
+						String code2 = dataObject.getCode();
+						DockingMainDataVO data2 = dataObject.getData();
+						String applyId = data2.getApplyId();//鐢宠鍗昳d
+						String customCoding = StringUtils.isBlank(data2.getCustomCoding()) ? "" : data2.getCustomCoding();//闆嗗洟鐮佹
+						msg = dataObject.getMsg();
+						if (code2.equals("1")) {//缁撴灉姝g‘鐨勬儏鍐�
+							if (!"".equals(customCoding)) {
+								isEditDatas = true;
+							}
+						}
+						//闇�瑕佷慨鏀圭殑鐢宠鍗曟暟鎹�
+						if (editDockingPreApplyFormMap.containsKey(applyId)) {
+							DockingPreApplyForm dockingPreApplyForm = editDockingPreApplyFormMap.get(applyId);
+							dockingPreApplyForm.setCode(code2);
+							dockingPreApplyForm.setMsg("淇敼锛�" + msg);
+							dockingPreApplyForm.setGroupCode(customCoding);
+							ObjectMapper mp = new ObjectMapper();
+							String writeValueAsString = null;
+							try {
+								writeValueAsString = mp.writeValueAsString(dataObject);
+								dockingPreApplyForm.setContent(writeValueAsString);
+							} catch (JsonProcessingException e) {
+							}
+						}
+						//鏂板鐨勭敵璇峰崟鏁版嵁
+						if (addDockingPreApplyFormMap.containsKey(applyId)) {
+							DockingPreApplyForm dockingPreApplyForm = addDockingPreApplyFormMap.get(applyId);
+							dockingPreApplyForm.setCode(code2);
+							dockingPreApplyForm.setMsg("淇敼锛�" + msg);
+							dockingPreApplyForm.setGroupCode(customCoding);
+							ObjectMapper mp = new ObjectMapper();
+							String writeValueAsString = null;
+							try {
+								writeValueAsString = mp.writeValueAsString(dataObject);
+								dockingPreApplyForm.setContent(writeValueAsString);
+							} catch (JsonProcessingException e) {
+							}
+						}
+						//濡傛灉鏈夐泦鍥㈢爜鍒欐洿鏂版暟鎹�
+						if (isEditDatas) {
+							if (baseModelVOMap.containsKey(applyId)) {
+								BaseModelVO baseModelVO = baseModelVOMap.get(applyId);
+								BaseModel baseModel = new BaseModel();
+								BeanUtilForVCI.copyDeclaredIgnoreCase(baseModelVO, baseModel);
+								DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
+								DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
+								baseModelVO.setId(customCoding);
+								updateCbos.add(baseModel);//鏇存柊鏁版嵁闆嗗洟code
+							}
+						}
+					});
+				} else {
+					editDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
+						dockingPreApplyForm.setCode("2");
+						dockingPreApplyForm.setMsg("淇敼锛�" + msg);
+						dockingPreApplyForm.setContent("");
+						dockingPreApplyForm.setGroupCode("");
+						DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
+					});
+					addDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
+						dockingPreApplyForm.setCode("2");
+						dockingPreApplyForm.setMsg("淇敼锛�" + msg);
+						dockingPreApplyForm.setContent("");
+						dockingPreApplyForm.setGroupCode("");
+						DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
+					});
+				}
+				if (editDockingPreApplyFormMap.size() > 0) {
+					dockingPreAttrMappings.addAll(editDockingPreApplyFormMap.values());//娣诲姞鐢宠鍗曟暟鎹�
+				}
+				if (addDockingPreApplyFormMap.size() > 0) {
+					dockingPreAttrMappings.addAll(addDockingPreApplyFormMap.values());//闇�瑕佷慨鏀圭殑鐢宠鍗曟暟鎹�
+				}
+				//淇濆瓨琛ㄥ崟鏁版嵁
+				dockingPreApplyFormService.saveOrUpdateBatch(dockingPreAttrMappings);
+				//mdmEngineService.saveBatch(updateCbos);//淇濆瓨鏁版嵁
+			}
+			return R.success("鐢宠鎺ュ彛璋冪敤鎴愬姛");
+		}catch (VciBaseException e){
+			return R.fail("鐢宠鎺ュ彛璋冪敤澶辫触"+e.getMessage());
+		}
+	}
+
+	/***
+	 * 鑾峰彇闆嗗洟妯″瀷璇︾粏淇℃伅鎵ц淇濆瓨
+	 * @param groupClassifyId
+	 * @return
+	 * @throws VciBaseException
+	 */
+	@Override
+	public R queryClassModel(String groupClassifyId) throws Throwable {
+		log.info("鑾峰彇闆嗗洟妯″瀷璇︾粏淇℃伅鎵ц淇濆瓨start");
+		String message="鎵ц鎴愬姛锛�";
+		try {
+			if (StringUtils.isBlank(groupClassifyId)) {
+				message = "鍙傛暟锛氶泦鍥㈠垎绫讳富閿紝涓虹┖!";
+				log.info(message);
+				throw new Throwable(message);
+			}
+			if (StringUtils.isBlank(dockingApplySysName)) {
+				message = "鑾峰彇绯荤粺鏍囪瘑" + dockingApplySysName + "涓虹┖锛岃鏌ョ湅閰嶇疆锛�";
+				log.info(message);
+				throw new Throwable(message);
+			}
+			DockingModelQueryVO dockingModelQueryVO = new DockingModelQueryVO();
+			dockingModelQueryVO.setClassId(groupClassifyId);
+			dockingModelQueryVO.setSysName(dockingApplySysName);
+			DockingQueryClassModelVO dockingQueryClassifyModelVO = mdmApplyGroupCodeProvider.queryClassModel(dockingModelQueryVO);
+			if (dockingQueryClassifyModelVO != null) {
+				int code = dockingQueryClassifyModelVO.getCode();
+				message = dockingQueryClassifyModelVO.getMsg();
+				if (code == 1) {
+					this.saveDatas(dockingQueryClassifyModelVO);
+				} else {
+					log.info(message);
+					throw new Throwable(message);
+				}
+			}else{
+				message="鏈幏浠庨泦鍥㈣幏鍙栧埌浠讳綍妯″瀷淇℃伅";
+				log.info(message);
+				throw new Throwable(message);
+			}
+			return R.success(message);
+		}catch (Throwable e){
+			e.printStackTrace();;
+			log.error("鑾峰彇鏁版嵁妯″瀷璇︾粏淇℃伅澶辫触"+e);
+			R.fail(message);
+		}
+		log.info("鑾峰彇闆嗗洟妯″瀷璇︾粏淇℃伅鎵ц淇濆瓨end");
+		return R.success(message);
+	}
+
+	/***
+	 * 浠庨泦鍥㈣幏鍙栦富妯″瀷淇℃伅鎵ц淇濆瓨
+	 * @return
+	 * @throws Throwable
+	 */
+	@Override
+	public R queryMdmModel() throws Throwable {
+		String message="鎵ц鎴愬姛锛�";
+		log.info("浠庨泦鍥㈣幏鍙栦富妯″瀷淇℃伅鎵ц淇濆瓨鎺ュ彛statr");
+		try {
+			if (StringUtils.isBlank(dockingApplySysName)) {
+				message = "鑾峰彇绯荤粺鏍囪瘑" + dockingApplySysName + "涓虹┖锛岃鏌ョ湅閰嶇疆锛�";
+				log.info(message);
+				throw new Throwable(message);
+			}
+
+			DockingModelQueryVO dockingModelQueryVO = new DockingModelQueryVO();
+			dockingModelQueryVO.setSysName(dockingApplySysName);
+			DockingQueryModelVO dockingQueryModelVO=  mdmApplyGroupCodeProvider.queryMdmModel(dockingModelQueryVO);
+			if (dockingQueryModelVO != null) {
+				int code = dockingQueryModelVO.getCode();
+				message = dockingQueryModelVO.getMsg();
+				if (code == 1) {
+					List<DockingClassifyVO> dockingClassifyVOList=dockingQueryModelVO.getData();
+					List<DockingPreClassify>dockingPreClassifyList=new ArrayList<>();
+					dockingClassifyVOList.stream().forEach(dockingClassifyVO -> {
+						String id = StringUtils.isBlank(dockingClassifyVO.getId())?"":dockingClassifyVO.getId();
+						String className = StringUtils.isBlank(dockingClassifyVO.getClassName())?"":dockingClassifyVO.getClassName();
+						String classNumber = StringUtils.isBlank(dockingClassifyVO.getClassNumber())?"":dockingClassifyVO.getClassNumber();
+						String nodeLink = StringUtils.isBlank(dockingClassifyVO.getNodeLink())?"":dockingClassifyVO.getNodeLink();
+						String nodeLinkName = StringUtils.isBlank(dockingClassifyVO.getNodeLinkName())?"":dockingClassifyVO.getNodeLinkName();
+						String pid = StringUtils.isBlank(dockingClassifyVO.getPid())?"":dockingClassifyVO.getPid();
+						String version = StringUtils.isBlank(dockingClassifyVO.getVersion())?"":dockingClassifyVO.getVersion();
+						DockingPreClassify dockingPreClassify=	this.dockingPreClassifyService.getById(id);
+
+						log.info("classify:-------------->闆嗗洟鍒嗙被涓绘満:"+id);
+						log.info("classify:-------------->闆嗗洟鍒嗙被鍚嶇О:"+className);
+						log.info("classify:--------------> 闆嗗洟鍒嗙被鐖惰妭鐐�:"+pid);
+						log.info("classify:-------------->閾炬帴:"+nodeLink);
+						log.info("classify:-------------->闆嗗洟鍒嗙被浠e彿:"+classNumber);
+						log.info("classify:-------------->閾炬帴鍚嶇О:"+nodeLinkName);
+						log.info("classify:-------------->閾炬帴鐗堟湰:"+version);
+						if (dockingPreClassify == null || StringUtils.isBlank(dockingPreClassify.getOid())) {
+							DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify,MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY);
+						} else {
+							DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify);
+						}
+						dockingPreClassify.setOid(id);
+						dockingPreClassify.setName(className);
+						dockingPreClassify.setPid(pid);
+						dockingPreClassify.setId(classNumber);
+						dockingPreClassify.setNodeLink(nodeLink);
+						dockingPreClassify.setGetNodeLinkName(nodeLinkName);
+						dockingPreClassify.setClassName(className);
+						dockingPreClassify.setVersionValue(version);
+						dockingPreClassifyList.add(dockingPreClassify);
+					});
+					boolean res=	dockingPreClassifyService.saveOrUpdateBatch(dockingPreClassifyList);
+					if(res){
+						R.success(message);
+					}else{
+						message="淇濆瓨鍒嗙被涓绘ā鍨嬪け璐�";
+						throw new Throwable(message);
+					}
+				} else {
+					log.info(message);
+					throw new Throwable(message);
+				}
+			}else{
+				message="鏈幏浠庨泦鍥㈣幏鍙栧埌浠讳綍妯″瀷淇℃伅";
+				log.info(message);
+				throw new Throwable(message);
+			}
+			return R.success(message);
+		}catch (Throwable e){
+			e.printStackTrace();;
+			log.error("鑾峰彇鏁版嵁妯″瀷澶辫触"+e);
+			R.fail(message);
+		}
+		log.info("浠庨泦鍥㈣幏鍙栦富妯″瀷淇℃伅鎵ц淇濆瓨鎺ュ彛end");
+		return R.success(message);
+	}
+
+
+
+	/***
+	 * 鏌ヨ鐢宠鍗曠姸鎬�
+	 * @param dataOids
+	 * @return 鎵ц缁撴灉
+	 */
+	public R queryApplyState(String dataOids) {
+
+		String message="鎵ц鎴愬姛锛�";
+		log.info("鏌ヨ鐢宠鍗曠姸鎬佹帴鍙tatr");
+		try {
+			VciBaseUtil.alertNotNull(dataOids,"鎵�鏌ョ敵璇峰崟鏁版嵁涓婚敭");
+			VciBaseUtil.alertNotNull(dockingApplySysName,"绯荤粺鏍囪瘑閰嶇疆锛歞ocking.apply.unitCode");
+
+			List<DockingPreApplyForm> dockingPreApplyFormList=	this.dockingPreApplyFormService.list(Wrappers.<DockingPreApplyForm>query().lambda().in(DockingPreApplyForm::getDataOid, VciBaseUtil.str2List(dataOids)));
+			dockingPreApplyFormList.stream().forEach(dockingPreApplyForm -> {
+				dockingPreApplyForm.getId();
+
+			});
+
+		}catch (Throwable e){
+			e.printStackTrace();;
+			log.error("鑾峰彇鏁版嵁妯″瀷澶辫触"+e);
+			R.fail(message);
+		}
+		log.info("鏌ヨ鐢宠鍗曠姸鎬佹帴鍙nd");
+		return R.success(message);
+	}
+
+	/***
+	 * 鍚屾闆嗗洟妯″瀷淇℃伅
+	 * @param classifyId
+	 * @param operationType
+	 * @return 杩斿洖鎵ц缁撴灉
+	 * @throws VciBaseException
+	 */
+	@Override
+	public R syncClassifyModel(String classifyId, String operationType) throws VciBaseException {
+		VciBaseUtil.alertNotNull(operationType,"闆嗘垚鎿嶄綔绫诲瀷");
+		try {
+			if(operationType.equals("all")){
+				return	queryMdmModel();
+			}else{
+				VciBaseUtil.alertNotNull(classifyId,"闆嗗洟鍒嗙被涓婚敭");
+				return queryClassModel(classifyId);
+			}
+		} catch (Throwable e) {
+			throw  new VciBaseException(e.getMessage());
+		}
+	}
+
+//	/**
+//	 * 鍚屾涓绘ā鍨�
+//	 * @return
+//	 */
+//	private String  queryMdmModel() throws VciBaseException {
+//		String message="鎵ц鎴愬姛锛�";
+//		try {
+//
+//
+//		}catch (VciBaseException e){
+//			message=e.getMessage();
+//			throw new VciBaseException(message);
+//		}finally {
+//			return message;
+//		}
+//
+//
+//	}
+//
+//	/***
+//	 * 鍚屾妯″瀷璇︾粏淇℃伅
+//	 * @param classifyId
+//	 * @return
+//	 */
+//	private String queryClassModel(String classifyId)throws VciBaseException{
+//		String message="鎵ц鎴愬姛锛�";
+//		try {
+//
+//		}catch (VciBaseException e){
+//			message=e.getMessage();
+//			throw new VciBaseException(message);
+//		}finally {
+//			return message;
+//		}
+//
+//	}
+
+
+	/***
+	 * 缁勭粐 淇濆瓨鏁版嵁鏂规硶
+	 *
+	 * @param dockingQueryClassifyModelVO
+	 * @return
+	 * @throws Throwable
+	 * @throws
+	 * @throws Throwable
+	 */
+	private boolean saveDatas(DockingQueryClassModelVO dockingQueryClassifyModelVO) throws Throwable {
+		try {
+			DockingClassifyMainVO mainData = dockingQueryClassifyModelVO.getMainData();
+			List<DockingClassifyVO> classList = mainData.getClassList();
+			Map<String,List<DockingClassifyViewVO>>classInfoMap = mainData.getClassInfos();
+			////initVCIInvocationInfo("1");
+			List<DockingPreClassify> dockingPreClassifyArrayList=new ArrayList<>();
+			for (DockingClassifyVO jclassObject : classList) {
+				String id =StringUtils.isBlank(jclassObject.getId())?"":jclassObject.getId();
+				String className = StringUtils.isBlank(jclassObject.getClassName())?"":jclassObject.getClassName();
+				String pid = StringUtils.isBlank(jclassObject.getPid())?"":jclassObject.getPid();
+				String nodeLink = StringUtils.isBlank(jclassObject.getNodeLink())?"":jclassObject.getNodeLink();
+				String nodeLinkName = StringUtils.isBlank(jclassObject.getNodeLinkName())?"":jclassObject.getNodeLinkName();
+				String classNumber = StringUtils.isBlank(jclassObject.getClassNumber())?"":jclassObject.getClassNumber();
+				//鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄
+				DockingPreClassify dockingPreClassify = dockingPreClassifyService.getById(id);
+				log.info("classify:-------------->闆嗗洟鍒嗙被涓绘満:"+id);
+				log.info("classify:-------------->闆嗗洟鍒嗙被鍚嶇О:"+className);
+				log.info("classify:--------------> 闆嗗洟鍒嗙被鐖惰妭鐐�:"+pid);
+				log.info("classify:-------------->閾炬帴:"+nodeLink);
+				log.info("classify:-------------->閾炬帴鍚嶇О:"+nodeLinkName);
+
+				if (dockingPreClassify == null || StringUtils.isBlank(dockingPreClassify.getOid())) {
+					DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify,MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY);
+				} else {
+					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify);
+				}
+				dockingPreClassify.setOid(id);
+				dockingPreClassify.setName(className);
+				dockingPreClassify.setPid(pid);
+				dockingPreClassify.setId(classNumber);
+				dockingPreClassify.setNodeLink(nodeLink);
+				dockingPreClassify.setGetNodeLinkName(nodeLinkName);
+				dockingPreClassify.setClassName(className);
+				dockingPreClassifyArrayList.add(dockingPreClassify);
+				// 鑾峰彇瀵瑰簲鐨勫垎绫昏鍥炬ā鍨�
+				if (classInfoMap.containsKey(id)) {
+					List<DockingClassifyViewVO> list = classInfoMap.get(id);
+					getVilewMode(jclassObject,list);
+				}
+			}
+			boolean res= dockingPreClassifyService.saveOrUpdateBatch(dockingPreClassifyArrayList);
+			return res;
+		} catch (Throwable e) {
+			e.printStackTrace();
+			throw new Throwable("瀛樺偍瑙嗗浘妯″瀷鍑虹幇闂");
+		}
+	}
+
+	/***
+	 * 鑾峰彇鍒嗙被瑙嗗浘
+	 *
+	 * @param jclassObject
+	 * @throws Throwable
+	 */
+	private void getVilewMode(DockingClassifyVO jclassObject, List<DockingClassifyViewVO> list)
+		throws Throwable {
+		String nodeLinkName = jclassObject.getNodeLinkName();
+		try {
+			String jclassId = com.alibaba.cloud.commons.lang.StringUtils.isBlank(jclassObject.getId())?"":jclassObject.getId();
+			Map<String, DockingPreViewModel> jviewmodelMap = new HashMap<String, DockingPreViewModel>();
+			//Map<String, String> condtionMa = new HashMap<String, String>();
+			//	condtionMa.put("jsourceclsfid", jclassId);
+			List<DockingPreViewModel> dockingPreViewModelList= dockingPreViewModelService.list(Wrappers.<DockingPreViewModel>query().lambda().eq(DockingPreViewModel::getSourceClassifyId,false));// 鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄
+			for (DockingPreViewModel dockingPreViewModel : dockingPreViewModelList) {
+				jviewmodelMap.put(dockingPreViewModel.getViewName(),dockingPreViewModel);
+			}
+
+			for (DockingClassifyViewVO viewInfo : list) {
+				String viewName = com.alibaba.cloud.commons.lang.StringUtils.isBlank(viewInfo.getViewName())?"":viewInfo.getViewName();
+				String impactList = com.alibaba.cloud.commons.lang.StringUtils.isBlank(viewInfo.getImpactList())?"":viewInfo.getImpactList();
+				log.info("VilewMode:-------------->瑙嗗浘鍚嶇О:"+viewName);
+				log.info("VilewMode:-------------->褰卞搷缂栫爜椤�:"+impactList);
+				log.info("VilewMode:--------------> 闆嗗洟鍒嗙被涓婚敭:"+jclassId);
+				List<DockingClassifyMetaAttrVO> metaList = viewInfo.getMetaList();
+				DockingPreViewModel jviewModelObject = null;
+				if (jviewmodelMap.containsKey(viewName)) {
+					jviewModelObject = jviewmodelMap.get(viewName);
+					//褰卞搷缂栫爜椤圭殑鏁版嵁
+					jviewModelObject.setImpactList(impactList);
+					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(jviewModelObject);
+				} else {
+					jviewModelObject =new DockingPreViewModel();
+					DefaultAttrAssimtUtil.addDefaultAttrAssimt(jviewModelObject,MdmBtmTypeConstant.DOCKING_PRE_JVIEWMODEL);
+					jviewModelObject.setSourceClassifyId(jclassId);// 闆嗗洟鍒嗙被id
+					jviewModelObject.setViewName(viewName);// 闆嗗洟瑙嗗浘鍚嶇О
+					//褰卞搷缂栫爜椤圭殑鏁版嵁
+					jviewModelObject.setImpactList(impactList);
+					dockingPreViewModelList.add(jviewModelObject);
+				}
+				// 鑾峰彇妯″瀷瑙嗗浘涓嬬殑灞炴�ч泦
+				// String oid = jviewModelObject.getOid();
+				List<DockingPreMetaAttr>allDockingPreMetaAttrList=new ArrayList<>();
+				getMetaAttrObject(metaList, jclassId, jviewModelObject, "root",allDockingPreMetaAttrList);
+				//淇濆瓨妯″瀷瑙嗗浘灞炴��
+				dockingPreMetaAttrService.saveOrUpdateBatch(allDockingPreMetaAttrList);
+				//淇濆瓨妯″瀷瑙嗗浘
+				dockingPreViewModelService.saveOrUpdateBatch(dockingPreViewModelList);
+			}
+		} catch (Throwable e) {
+			e.printStackTrace();
+			throw new Throwable("缁勭粐鍒嗙被" + nodeLinkName + "妯″瀷瑙嗗浘瀛樺偍鍑虹幇闂");
+		}
+	}
+
+
+	/***
+	 * 鑾峰彇妯″瀷瑙嗗浘灞炴��
+	 * @throws Throwable
+	 */
+	private void getMetaAttrObject(List<DockingClassifyMetaAttrVO> metaList,
+								   String jclassId, DockingPreViewModel jviewModelObject, String pid,List<DockingPreMetaAttr>allDockingPreMetaAttrList)throws Throwable {
+		try {
+			//// 鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄
+			List<DockingPreMetaAttr> dockingPreMetaAttrList = dockingPreMetaAttrService.selectByWrapper(Wrappers.<DockingPreMetaAttr>query().lambda()
+				.eq(DockingPreMetaAttr::getSourceClassifyId,jclassId).eq(DockingPreMetaAttr::getViewModelId,jviewModelObject.getOid())
+				.eq(DockingPreMetaAttr:: getPid,pid));
+			Map<String,DockingPreMetaAttr> jmetaattrMap = dockingPreMetaAttrList.stream().filter(
+				s -> com.alibaba.cloud.commons.lang.StringUtils.isNotBlank(s.getEnglishName())).collect(Collectors.toMap(s -> s.getEnglishName().toLowerCase(Locale.ROOT), t -> t));
+
+			for (DockingClassifyMetaAttrVO dockingClassifyMetaAttrVO : metaList) {
+				String chineseName = com.alibaba.cloud.commons.lang.StringUtils.isBlank(dockingClassifyMetaAttrVO.getChineseName())?"":dockingClassifyMetaAttrVO.getChineseName();// 灞炴�у悕绉�
+				String englishName = com.alibaba.cloud.commons.lang.StringUtils.isBlank(dockingClassifyMetaAttrVO.getEnglishName())?"":dockingClassifyMetaAttrVO.getEnglishName();// 鑻辨枃鍚嶇О
+				String defaultValue = com.alibaba.cloud.commons.lang.StringUtils.isBlank(dockingClassifyMetaAttrVO.getDefaultValue())?"":dockingClassifyMetaAttrVO.getDefaultValue();
+				Integer metadataType =dockingClassifyMetaAttrVO.getMetadataType();// 绫诲瀷
+				Integer necessaryConf = dockingClassifyMetaAttrVO.getNecessaryConf();// 鏄惁蹇呭~
+				Map<String, String> range = dockingClassifyMetaAttrVO.getRange()==null?new HashMap<String, String>():dockingClassifyMetaAttrVO.getRange();// 鍙栧�艰寖鍥�
+
+				log.info("metaAttr:-------------->灞炴�у悕绉�:"+chineseName);
+				log.info("metaAttr:-------------->鑻辨枃鍚嶇О:"+englishName);
+				log.info("metaAttr:-------------->榛樿鍊�:"+defaultValue);
+				log.info("metaAttr:--------------> 绫诲瀷:"+metadataType);
+				log.info("metaAttr:-------------->  鏄惁蹇呭~:"+necessaryConf);
+				DockingPreMetaAttr dockingPreMetaAttr = new DockingPreMetaAttr();
+				if (jmetaattrMap.containsKey(englishName)) {
+					dockingPreMetaAttr = jmetaattrMap.get(englishName);
+					dockingPreMetaAttr.setChineseName(chineseName);
+					dockingPreMetaAttr.setDefaultValue(defaultValue);
+					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreMetaAttr);
+				} else {
+					DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreMetaAttr,MdmBtmTypeConstant.DOCKING_PRE_JMETAATRR);
+					dockingPreMetaAttr.setSourceClassifyId(jclassId);// 闆嗗洟鍒嗙被id
+					dockingPreMetaAttr.setViewModelId(jviewModelObject.getOid());// 闆嗗洟瑙嗗浘妯″瀷id
+					dockingPreMetaAttr.setChineseName(chineseName);// 灞炴�у悕绉�
+					dockingPreMetaAttr.setEnglishName(englishName);// 灞炴�у瓧娈�
+					dockingPreMetaAttr.setDefaultValue(defaultValue);// 灞炴�у悕绉�
+					dockingPreMetaAttr.setMetaDataType(metadataType);// 灞炴�х被鍨�
+					dockingPreMetaAttr.setNecesSaryConf(necessaryConf);// 灞炴�у繀濉」
+					dockingPreMetaAttr.setPid(pid);// 鐖惰妭鐐筰d
+				}
+				if(range!=null&&range.size()>0){
+					// 鑾峰彇灞炴�у�煎煙
+					getRange(dockingPreMetaAttr, range);
+				}
+				/***
+				 * 鑾峰彇瀛愯妭鐐�
+				 */
+				DockingClassifyMetaAttrVO compositeMeta = dockingClassifyMetaAttrVO.getCompositeMeta();
+				if (compositeMeta != null) {
+					pid = com.alibaba.cloud.commons.lang.StringUtils.isBlank(dockingPreMetaAttr.getOid())?"":dockingPreMetaAttr.getOid();// 褰撳墠oid
+					List<DockingClassifyMetaAttrVO> childMetaList = new ArrayList<>();
+					childMetaList.add(compositeMeta);
+					getMetaAttrObject(childMetaList, jclassId,jviewModelObject, pid,allDockingPreMetaAttrList);
+				}
+
+			}
+
+		} catch (Throwable e) {
+			e.printStackTrace();
+			log.error("缁勭粐妯″瀷瑙嗗浘"+ jviewModelObject.getViewName()
+				+ "灞炴�у瓨鍌ㄥ嚭鐜伴棶棰�" + e);
+			throw new Throwable("缁勭粐妯″瀷瑙嗗浘"+ jviewModelObject.getViewName()
+				+ "灞炴�у瓨鍌ㄥ嚭鐜伴棶棰�" + e);
+		}
+	}
+
+	/**
+	 * @throws Throwable
+	 *             * 鑾峰彇鍊煎煙
+	 * @param metaAttrObject
+	 * @param range
+	 * @throws
+	 */
+	private void getRange(DockingPreMetaAttr metaAttrObject,Map<String, String> range) throws Throwable {
+		String metaAttrOid = com.alibaba.cloud.commons.lang.StringUtils.isBlank(metaAttrObject.getOid())?"":metaAttrObject.getOid();// 灞炴�х殑oid
+		String jchinesename = com.alibaba.cloud.commons.lang.StringUtils.isBlank(metaAttrObject.getChineseName())?"":metaAttrObject.getChineseName();
+		Map<String, DockingPreAttrRange> rangeMap = new HashMap<>();
+		try {
+			Map<String, String> condtionMa = new HashMap<String, String>();
+			condtionMa.put("jmetalistid", metaAttrOid);
+			List<DockingPreAttrRange> jmetaattrList = dockingPreAttrRangeService.selectByWrapper(Wrappers.<DockingPreAttrRange>query().lambda()
+				.eq(DockingPreAttrRange::getMetaListId,metaAttrOid));// 鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄
+			rangeMap= jmetaattrList.stream().collect(Collectors.toMap(s -> com.alibaba.cloud.commons.lang.StringUtils.isNotBlank(s.getNumText().toLowerCase(Locale.ROOT))?"":s.getNumText().toLowerCase(Locale.ROOT), t -> t));
+
+			for (String rangeKey : range.keySet()) {
+				DockingPreAttrRange rangeObject = new DockingPreAttrRange();
+				String keyValue = com.alibaba.cloud.commons.lang.StringUtils.isBlank(range.get(rangeKey))?"":range.get(rangeKey);
+				log.info("range:-------------->鏄剧ず鍊�"+rangeKey+",鍐呴儴鍊�"+keyValue);
+				if (rangeMap.containsKey(rangeKey)) {
+					rangeObject = rangeMap.get(rangeKey);
+					rangeObject.setNumTextValue(keyValue);
+					rangeObject.setNumText(rangeKey);
+					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(rangeObject);
+				} else {
+					DefaultAttrAssimtUtil.addDefaultAttrAssimt(rangeObject,MdmBtmTypeConstant.DOCKING_PRE_JRANGE);
+					rangeObject.setNumTextValue(keyValue);
+					rangeObject.setNumText(rangeKey);
+					rangeObject.setTs(rangeObject.getLastModifyTime());
+					rangeObject.setMetaListId(metaAttrOid);
+					log.info("range:-------------->灞炴�у唴閮ㄥ��:"+metaAttrOid);
+					log.info("range:-------------->鏃堕棿:"+rangeObject.getLastModifyTime());
+					jmetaattrList.add(rangeObject);
+				}
+			}
+			dockingPreAttrRangeService.saveOrUpdateBatch(jmetaattrList);
+		} catch (Throwable e) {
+			e.printStackTrace();
+			log.info("缁勭粐灞炴�э細銆�" + jchinesename + "銆戝�煎煙鍑虹幇闂"+ e);
+			throw new Throwable("缁勭粐灞炴�э細銆�" + jchinesename + "銆戝�煎煙鍑虹幇闂"+ e);
+		}
+	}
+
+
+
+
+	/**
+	 * 缁勭粐鏁版嵁
+	 * */
+	private DockingGroupDataVO queryApplycodeDataObjects(int optationtype,List<BaseModelVO> codeWupins,Map<String,DockingPreApplyForm>   addDockingPreApplyFormMap,Map<String,DockingPreApplyForm>  editDockingPreApplyFormMap,Map<String,BaseModelVO>  codeWupinMap) throws VciBaseException{
+		try {
+			String curUserName = AuthUtil.getUser().getUserName();
+			//鐢宠鐨勬暟鎹�
+			List<DockingMainData> mainDataList=new ArrayList<DockingMainData>();
+			for (BaseModelVO dataBusinessObject : codeWupins) {
+				String format = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date());
+				String codeclsfid = dataBusinessObject.getData().getOrDefault("codeclsfid","");
+				String btmName = dataBusinessObject.getBtmname();
+				String oid = dataBusinessObject.getOid();
+
+				DockingPreApplyForm dockingPreApplyForm = new DockingPreApplyForm();
+
+				String dataOid = dataBusinessObject.getOid();
+				Map<String, String> conditionsMap = new HashMap<String, String>();
+				List<DockingPreApplyForm> applyFormObjects = dockingPreApplyFormService.list(Wrappers.<DockingPreApplyForm>query().lambda().eq(DockingPreApplyForm::getDataOid, dataOid).eq(DockingPreApplyForm::getOperationType, optationtype));
+				String apllyCode = "";
+				if (!CollectionUtils.isEmpty(applyFormObjects)) {
+					dockingPreApplyForm = applyFormObjects.get(0);
+					apllyCode = dockingPreApplyForm.getId();
+					editDockingPreApplyFormMap.put(apllyCode, dockingPreApplyForm);//鐢宠鍗曞拰鐢宠鍗曞璞″叧绯�
+				} else {
+					apllyCode = dockingApplyUnitCode + "-" + format;
+					dockingPreApplyForm.setId(apllyCode);
+					dockingPreApplyForm.setName("");
+					dockingPreApplyForm.setOperationType(optationtype+"");
+					dockingPreApplyForm.setDescription(dataBusinessObject.getDescription());//鑾峰彇鏁版嵁鎻忚堪淇℃伅
+					dockingPreApplyForm.setDataOid(oid);
+					dockingPreApplyForm.setDataBtmName(btmName);
+					addDockingPreApplyFormMap.put(apllyCode, dockingPreApplyForm);//鐢宠鍗曞拰鐢宠鍗曞璞″叧绯�
+				}
+
+				codeWupinMap.put(apllyCode, dataBusinessObject);//鐢宠鍗曞拰瀵瑰簲鏁版嵁鍏崇郴
+				conditionsMap = new HashMap<String, String>();
+				conditionsMap.put("jtargetclsfid", codeclsfid);//瑙嗗浘oid
+
+				List<DockingPreAttrMapping> dockingPreAttrMappingList = dockingPreAttrMappingMapper.selectList(Wrappers.<DockingPreAttrMapping>query().lambda().eq(DockingPreAttrMapping::getTargetClassifyId, codeclsfid));
+				if (CollectionUtils.isEmpty(dockingPreAttrMappingList)) {
+					throw new Exception("鏍规嵁鎵�閫夌殑鏁版嵁锛屾病鏈夋壘鍒板搴旂殑闆嗗洟鍒嗙被璁剧疆锛岃鏍稿!");
+				}
+				String jsourceclsfid = dockingPreAttrMappingList.get(0).getSourceClassifyId();
+				//鑾峰彇鏁版嵁妯″瀷鍒嗙被淇℃伅
+				DockingPreClassify dockingPreClassify = dockingPreClassifyService.getById(jsourceclsfid);
+				DockingMainData mainData = new DockingMainData();
+				mainData.setApplyEntId(dockingApplyUnitCode);//鐢宠鍗曚綅浠g爜
+				mainData.setApplyId(apllyCode);//鐢宠鍗曞彿
+				mainData.setClassName(dockingPreClassify.getGetNodeLinkName());//鍒嗙被鍚嶇О
+				mainData.setCreateBy(curUserName);//
+				mainData.setSecretLevel("鍐呴儴");//瀵嗙骇锛岄粯璁や负鍐呴儴
+				mainData.setViewInfos(getviewInfos(optationtype,dockingPreClassify, dataBusinessObject));//鑾峰彇瑙嗗浘妯″瀷
+				mainDataList.add(mainData);
+			}
+			//鏍规嵁鏁版嵁妯″瀷锛岀粍缁囨墍闇�瑕佹暟鎹�
+			DockingGroupDataVO postParameters=new DockingGroupDataVO();
+			postParameters.setSysName(dockingApplySysName);//绯荤粺鏍囪瘑
+			postParameters.setMainData(mainDataList);//
+			return postParameters;
+		} catch (Throwable e) {
+			// TODO Auto-generated catch block
+			throw new VciBaseException("鏌ヨ鏁版嵁鍑洪敊"+e);
+		}
+	}
+
+	/**
+	 * 鑾峰彇妯″瀷瑙嗗浘
+	 * @param dockingPreClassify
+	 * @param dataBusinessObject
+	 * @throws VciBaseException
+	 */
+	private List<DockingViewVO>getviewInfos(int type, DockingPreClassify dockingPreClassify, BaseModelVO dataBusinessObject) throws Throwable{
+		List<DockingViewVO> viewInfoList=new ArrayList<>();
+		String jclassOid=	dockingPreClassify.getOid();
+		List<DockingPreViewModel> dockingPreViewModels=new ArrayList<>();
+		if(type==1) {
+			//鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄
+			dockingPreViewModels= dockingPreViewModelService.list(Wrappers.<DockingPreViewModel>query().lambda().eq(DockingPreViewModel::getSourceClassifyId,jclassOid).eq(DockingPreViewModel::getViewName,"缂栫爜瑙嗗浘"));
+		}else{
+			//鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄
+			dockingPreViewModels= dockingPreViewModelService.list(Wrappers.<DockingPreViewModel>query().lambda().eq(DockingPreViewModel::getSourceClassifyId,jclassOid));
+		}
+		for (DockingPreViewModel dockingPreViewModel : dockingPreViewModels) {
+			//缁勭粐鏁版嵁灞炴�т俊鎭�
+			DockingViewVO viewInfo=new DockingViewVO();
+			viewInfo.setViewName(dockingPreViewModel.getViewName());//瑙嗗浘鍚嶇О
+			viewInfo.setViewValue(getViewValueList(dockingPreViewModel,jclassOid,dataBusinessObject));//瑙嗗浘
+			viewInfoList.add(viewInfo);
+		}
+		return viewInfoList;
+	}
+
+	/***
+	 * 鑾峰彇閰嶇疆淇℃伅
+	 * @param dockingPreViewModel
+	 * @param jclassOid
+	 * @param dataBusinessObject
+	 * @return
+	 * @throws VciBaseException
+	 */
+	private List<Map<String, Object>> getViewValueList(DockingPreViewModel dockingPreViewModel,String jclassOid,BaseModelVO dataBusinessObject) throws Throwable{
+		//鏋勯�犳ā鍨嬭鍥炬暟鎹�
+		List<Map<String, Object>> viewValueList=new ArrayList<Map<String,Object>>();
+		String oid = dockingPreViewModel.getOid();
+		Map<String,String> dataValueMap=dataBusinessObject.getData();
+		String codeClassifyId=dataValueMap.get("codeclsfid");
+		Map<String,String>conditionsMap=new HashMap<String, String>();
+
+
+
+		List<DockingPreAttrMapping> dockingPreAttrMappingList = dockingPreAttrMappingMapper.selectList(Wrappers.<DockingPreAttrMapping>query().lambda()
+			.eq(DockingPreAttrMapping::getSourceClassifyId, jclassOid).eq(DockingPreAttrMapping::getTargetClassifyId, codeClassifyId));
+		if(CollectionUtils.isEmpty(dockingPreAttrMappingList)) {
+			return viewValueList;
+		}
+
+		Map<String,DockingPreAttrMapping> jintegmappconfigMap=new HashMap<String, DockingPreAttrMapping>();
+		for (DockingPreAttrMapping businessObject : dockingPreAttrMappingList) {
+			jintegmappconfigMap.put(businessObject.getSourceAttrKey(), businessObject);
+		}
+		List<DockingPreMetaAttr> dockingPreMetaAttrList= dockingPreMetaAttrService.selectByWrapper(
+			Wrappers.<DockingPreMetaAttr>query().lambda().eq(DockingPreMetaAttr::getViewModelId,dockingPreViewModel.getOid())
+				.eq(DockingPreMetaAttr::getSourceClassifyId,dockingPreViewModel.getSourceClassifyId()));
+
+		Map<String,Object> viewValueMap=new HashMap<String,Object>();
+		for (DockingPreMetaAttr dockingPreMetaAttr : dockingPreMetaAttrList) {
+			String jenglishname=dockingPreMetaAttr.getEnglishName();////闆嗗洟閰嶇疆灞炴��
+			if(jintegmappconfigMap.containsKey(jenglishname)){
+				DockingPreAttrMapping dockingPreAttrMapping=jintegmappconfigMap.get(jenglishname);
+				String attrId = dockingPreAttrMapping.getTargetAttrId();//缂栫爜灞炴�d
+				String jtargetattrkey = dockingPreAttrMapping.getTargetAttrKey();//缂栫爜灞炴�d
+				Object newVaue=null;
+				if(StringUtils.isNotBlank(jtargetattrkey)){
+					getAttrRange(dockingPreMetaAttr);//鑾峰彇瀛楁鍙栧�艰寖鍥�
+					String value=dataValueMap.get(jtargetattrkey)==null?"":dataValueMap.getOrDefault(jtargetattrkey,"");
+					newVaue = getVaue(dockingPreMetaAttr, value);
+				}else{
+					newVaue = getVaue(dockingPreMetaAttr, "");
+				}
+				if(newVaue==null||"".equals(newVaue)){
+					newVaue= dockingPreMetaAttr.getDefaultValue();
+				}
+				viewValueMap.put(jenglishname, newVaue);
+			}
+		}
+
+		viewValueList.add(viewValueMap);
+		return viewValueList;
+	}
+
+	/***
+	 * 鑾峰彇灞炴�ф灇涓炬槧灏勯厤缃�
+	 */
+	Map<String,Map<String, DockingPreAttrRange>> attrRangeMap=new HashMap<String, Map<String,DockingPreAttrRange>>();
+	private void getAttrRange(DockingPreMetaAttr jmetaatter) throws Throwable{
+
+		String jmetalistoid = jmetaatter.getOid();
+		if(attrRangeMap.containsKey(jmetalistoid)) {
+			return;
+		}
+		Map<String,String>conditionsMap=new HashMap<String, String>();
+		conditionsMap.put("jmetalistid", jmetalistoid);//瑙嗗浘oid
+		List<DockingPreAttrRange> dockingPreAttrRangeList = dockingPreAttrRangeService.selectByWrapper(Wrappers.<DockingPreAttrRange>query().lambda().eq(DockingPreAttrRange::getMetaListId, jmetalistoid));
+		if (CollectionUtils.isEmpty(dockingPreAttrRangeList)) {
+			return;
+		}
+		Map<String, DockingPreAttrRange> rangeMap = new HashMap<String, DockingPreAttrRange>();
+		rangeMap = dockingPreAttrRangeList.stream().collect(Collectors.toMap(s -> s.getNumTextValue(), t -> t, (o1, o2) -> o2));
+		attrRangeMap.put(jmetalistoid, rangeMap);
+
+	}
+	/****
+	 * 鍊肩被鍨嬭浆鎹�
+	 * @param jmetaatter
+	 * @param value
+	 * @return
+	 * @throws Throwable
+	 */
+	private Object getVaue(DockingPreMetaAttr jmetaatter,String value) throws Throwable{
+		//jmetadatatype	鍏冩暟鎹被鍨嬶紙1 瀛楃鍨�, 2 鏁村瀷, 3 闀挎暣鍨�, 4 鍗曠簿搴�, 5 鍙岀簿搴�,6 鏃ユ湡鍨�, 7 鏃堕棿鍨�, 8 甯冨皵鍨�, 9 鏂囦欢, 10澶嶅悎鍨嬶級
+		int jmetadatatype = jmetaatter.getMetaDataType();
+		String jmetalistoid = jmetaatter.getOid();
+		Map<String, DockingPreAttrRange> rangeMap=new HashMap<String, DockingPreAttrRange>();
+		if(attrRangeMap.containsKey(jmetalistoid)){
+			rangeMap = attrRangeMap.get(jmetalistoid);
+			if(rangeMap.containsKey(value)){
+				DockingPreAttrRange dockingPreAttrRange = rangeMap.get(value);
+				value=dockingPreAttrRange.getNumText();//灏嗙紪鐮佸睘鎬у煙鍊艰浆鎹㈡垚闆嗗洟瀵瑰簲鐨勫煙鍊�
+			}
+		}
+
+		if(jmetadatatype==1){//1 瀛楃鍨�
+			return StringUtils.isBlank(value)?"":value;
+		}else if(jmetadatatype==2){//2 鏁村瀷
+			return StringUtils.isBlank(value)?null:Integer.parseInt(value);
+		}else if(jmetadatatype==3){//3 闀挎暣鍨�
+			return StringUtils.isBlank(value)?null:Long.parseLong(value);
+		}else if(jmetadatatype==4){//4 鍗曠簿搴�,
+			return StringUtils.isBlank(value)?null:Float.parseFloat(value);
+		}else if(jmetadatatype==5){// 5 鍙岀簿搴�
+			return StringUtils.isBlank(value)?null:Double.parseDouble(value);
+		}else if(jmetadatatype==6){//6 鏃ユ湡鍨�
+			SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-mm-dd");
+			if(StringUtils.isBlank(value)) {
+				return null;
+			}else {
+				try {
+					return simpleDateFormat.parse(value);
+				} catch (ParseException e) {
+					throw new VciBaseException("date", new String[]{"鏃ユ湡鏍煎紡杞崲閿欒"});
+				}
+			}
+		}else if(jmetadatatype==7){//7 鏃堕棿鍨�
+			SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm:ss");
+			if(StringUtils.isBlank(value)) {
+				return null;
+			}else{
+				try {
+					return simpleDateFormat.parse(value);
+				} catch (ParseException e) {
+					throw new VciBaseException("date", new String[]{"鏃ユ湡鏍煎紡杞崲閿欒"});
+				}
+			}
+		}else	if(jmetadatatype==8){//8 甯冨皵鍨�
+			return value;
+		}else if(jmetadatatype==9){//9 鏂囦欢,
+			return value;
+		}else if(jmetadatatype==10){//10澶嶅悎鍨�
+			return value;//绗﹀悎鍨嬫槸浠�涔堜笢涓滃浣曞鐞�
+		}
+		return value;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreApplyFormWrapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreApplyFormWrapper.java
new file mode 100644
index 0000000..f9f6a4a
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreApplyFormWrapper.java
@@ -0,0 +1,70 @@
+package com.vci.ubcs.code.webservice.wrapper;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.vci.ubcs.code.webservice.entity.DockingPreApplyForm;
+import com.vci.ubcs.code.webservice.vo.DockingPreApplyFormVO;
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Objects;
+
+/***
+ * 鐢宠鍗曞寘瑁呯被
+ * @author xiejun
+ * @date 2023-05-23
+ */
+public class DockingPreApplyFormWrapper extends BaseEntityWrapper<DockingPreApplyForm, DockingPreApplyFormVO> {
+	public static DockingPreApplyFormWrapper build() {
+		return new DockingPreApplyFormWrapper();
+	}
+	@Override
+	public DockingPreApplyFormVO entityVO(DockingPreApplyForm entity) {
+		DockingPreApplyFormVO dockingPreApplyFormVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreApplyFormVO.class));
+		return dockingPreApplyFormVO;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param entitys
+	 * @return
+	 */
+	public List<DockingPreApplyFormVO> entityVOs(Collection<DockingPreApplyForm> entitys) {
+		if(CollectionUtils.isEmpty(entitys)) {return new ArrayList<>();}
+		List<DockingPreApplyFormVO> vos=new ArrayList<>();
+		if(!CollectionUtils.isEmpty(entitys)) {
+			entitys.stream().forEach(vo -> {
+				vos.add(entityVO(vo));
+			});
+		}
+		return vos;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vos
+	 * @return
+	 */
+	public List<DockingPreApplyForm> voentitys(Collection<DockingPreApplyFormVO> vos) {
+		if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
+		List<DockingPreApplyForm>entitys =new ArrayList<>();
+		if(!CollectionUtils.isEmpty(vos)) {
+			vos.stream().forEach(entity -> {
+				entitys.add(voentity(entity));
+			});
+		}
+		return entitys;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vo
+	 * @return
+	 */
+	public DockingPreApplyForm voentity( DockingPreApplyFormVO vo) {
+		DockingPreApplyForm entity = Objects.requireNonNull(BeanUtil.copy(vo, DockingPreApplyForm.class));
+		return entity;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrMappingWrapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreAttrMappingWrapper.java
similarity index 65%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrMappingWrapper.java
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreAttrMappingWrapper.java
index 4db0b71..0aa56b7 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrMappingWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreAttrMappingWrapper.java
@@ -1,10 +1,8 @@
-package com.vci.ubcs.code.wrapper;
+package com.vci.ubcs.code.webservice.wrapper;
 
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-import com.vci.ubcs.code.entity.DockingPreAttrMapping;
-import com.vci.ubcs.code.entity.DockingPreAttrRange;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
+import com.vci.ubcs.code.webservice.entity.DockingPreAttrMapping;
+import com.vci.ubcs.code.webservice.vo.DockingPreAttrMappingVO;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
 
@@ -12,6 +10,7 @@
 import java.util.Collection;
 import java.util.List;
 import java.util.Objects;
+
 /**
  *闆嗗洟缂栫爜闆嗘垚灞炴�ф槧灏勯厤缃寘瑁呯被
  *
@@ -31,14 +30,15 @@
 
 	/***
 	 * 鏁扮粍瀵硅薄杞崲
-	 * @param dockingPreAttrMappings
+	 * @param entitys
 	 * @return
 	 */
-	public List<DockingPreAttrMappingVO> entityVOs(Collection<DockingPreAttrMapping> dockingPreAttrMappings) {
+	public List<DockingPreAttrMappingVO> entityVOs(Collection<DockingPreAttrMapping> entitys) {
+		if(CollectionUtils.isEmpty(entitys)) {return new ArrayList<>();}
 		List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList=new ArrayList<>();
-		if(!CollectionUtils.isEmpty(dockingPreAttrMappings)) {
-			dockingPreAttrMappings.stream().forEach(dockingPreAttrMapping -> {
-				dockingPreAttrMappingVOList.add(entityVO(dockingPreAttrMapping));
+		if(!CollectionUtils.isEmpty(entitys)) {
+			entitys.stream().forEach(entity -> {
+				dockingPreAttrMappingVOList.add(entityVO(entity));
 			});
 		}
 		return dockingPreAttrMappingVOList;
@@ -46,14 +46,15 @@
 
 	/***
 	 * 鏁扮粍瀵硅薄杞崲
-	 * @param dockingPreAttrMappingVOS
+	 * @param vos
 	 * @return
 	 */
-	public List<DockingPreAttrMapping> voentitys(Collection<DockingPreAttrMappingVO> dockingPreAttrMappingVOS) {
+	public List<DockingPreAttrMapping> voentitys(Collection<DockingPreAttrMappingVO> vos) {
+		if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
 		List<DockingPreAttrMapping> dockingPreAttrMappingList=new ArrayList<>();
-		if(!CollectionUtils.isEmpty(dockingPreAttrMappingVOS)) {
-			dockingPreAttrMappingVOS.stream().forEach(dockingPreAttrMappingVO -> {
-				dockingPreAttrMappingList.add(voentity(dockingPreAttrMappingVO));
+		if(!CollectionUtils.isEmpty(vos)) {
+			vos.stream().forEach(vo -> {
+				dockingPreAttrMappingList.add(voentity(vo));
 			});
 		}
 		return dockingPreAttrMappingList;
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrRangeWrapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreAttrRangeWrapper.java
similarity index 64%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrRangeWrapper.java
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreAttrRangeWrapper.java
index 0df3141..3b169cc 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrRangeWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreAttrRangeWrapper.java
@@ -1,11 +1,8 @@
-package com.vci.ubcs.code.wrapper;
+package com.vci.ubcs.code.webservice.wrapper;
 
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-import com.vci.ubcs.code.entity.DockingPreAttrMapping;
-import com.vci.ubcs.code.entity.DockingPreAttrRange;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingPreClassifyVO;
+import com.vci.ubcs.code.webservice.entity.DockingPreAttrRange;
+import com.vci.ubcs.code.webservice.vo.DockingPreAttrRangeVO;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
 
@@ -13,6 +10,7 @@
 import java.util.Collection;
 import java.util.List;
 import java.util.Objects;
+
 /**
  *闆嗗洟缂栫爜鍒嗙被妯″瀷瑙嗗浘灞炴�у彇鍊艰寖鍥村寘瑁呯被
  *
@@ -32,14 +30,16 @@
 
 	/***
 	 * 鏁扮粍瀵硅薄杞崲
-	 * @param dockingPreAttrRanges
+	 * @param entitys
 	 * @return
 	 */
-	public List<DockingPreAttrRangeVO> entityVOs(Collection<DockingPreAttrRange> dockingPreAttrRanges) {
+	public List<DockingPreAttrRangeVO> entityVOs(Collection<DockingPreAttrRange> entitys) {
+		if(CollectionUtils.isEmpty(entitys)) {return new ArrayList<>();}
 		List<DockingPreAttrRangeVO> dockingPreAttrRangeVOList=new ArrayList<>();
-		if(!CollectionUtils.isEmpty(dockingPreAttrRanges)) {
-			dockingPreAttrRanges.stream().forEach(dockingPreAttrRange -> {
-				dockingPreAttrRangeVOList.add(entityVO(dockingPreAttrRange));
+
+		if(!CollectionUtils.isEmpty(entitys)) {
+			entitys.stream().forEach(entity -> {
+				dockingPreAttrRangeVOList.add(entityVO(entity));
 			});
 		}
 		return dockingPreAttrRangeVOList;
@@ -47,14 +47,15 @@
 
 	/***
 	 * 鏁扮粍瀵硅薄杞崲
-	 * @param dockingPreAttrRangeVos
+	 * @param vos
 	 * @return
 	 */
-	public List<DockingPreAttrRange> voentitys(Collection<DockingPreAttrRangeVO> dockingPreAttrRangeVos) {
+	public List<DockingPreAttrRange> voentitys(Collection<DockingPreAttrRangeVO> vos) {
+		if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
 		List<DockingPreAttrRange> dockingPreAttrRangeList=new ArrayList<>();
-		if(!CollectionUtils.isEmpty(dockingPreAttrRangeVos)) {
-			dockingPreAttrRangeVos.stream().forEach(dockingPreAttrRangeVO -> {
-				dockingPreAttrRangeList.add(voentity(dockingPreAttrRangeVO));
+		if(!CollectionUtils.isEmpty(vos)) {
+			vos.stream().forEach(vo -> {
+				dockingPreAttrRangeList.add(voentity(vo));
 			});
 		}
 		return dockingPreAttrRangeList;
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreClassifyWrapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreClassifyWrapper.java
new file mode 100644
index 0000000..0010b97
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreClassifyWrapper.java
@@ -0,0 +1,71 @@
+package com.vci.ubcs.code.webservice.wrapper;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.vci.ubcs.code.webservice.entity.DockingPreClassify;
+import com.vci.ubcs.code.webservice.vo.DockingPreClassifyVO;
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ *闆嗗洟缂栫爜鍒嗙被鍖呰绫�
+ *
+ * @author xiejun
+ * @since 2023-05-23
+ */
+public class DockingPreClassifyWrapper extends BaseEntityWrapper<DockingPreClassify, DockingPreClassifyVO> {
+	public static DockingPreClassifyWrapper build() {
+		return new DockingPreClassifyWrapper();
+	}
+	@Override
+	public DockingPreClassifyVO entityVO(DockingPreClassify entity) {
+		DockingPreClassifyVO dockingPreClassifyVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreClassifyVO.class));
+		return dockingPreClassifyVO;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param entitys
+	 * @return
+	 */
+	public List<DockingPreClassifyVO> entityVOs(Collection<DockingPreClassify> entitys) {
+		if(CollectionUtils.isEmpty(entitys)) {return new ArrayList<>();}
+		List<DockingPreClassifyVO> vos=new ArrayList<>();
+		if(!CollectionUtils.isEmpty(entitys)) {
+			entitys.stream().forEach(vo -> {
+				vos.add(entityVO(vo));
+			});
+		}
+		return vos;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vos
+	 * @return
+	 */
+	public List<DockingPreClassify> voentitys(Collection<DockingPreClassifyVO> vos) {
+		if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
+		List<DockingPreClassify>entitys =new ArrayList<>();
+		if(!CollectionUtils.isEmpty(vos)) {
+			vos.stream().forEach(entity -> {
+				entitys.add(voentity(entity));
+			});
+		}
+		return entitys;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vo
+	 * @return
+	 */
+	public DockingPreClassify voentity( DockingPreClassifyVO vo) {
+		DockingPreClassify entity = Objects.requireNonNull(BeanUtil.copy(vo, DockingPreClassify.class));
+		return entity;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreMetaAttrWrapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreMetaAttrWrapper.java
new file mode 100644
index 0000000..85c716d
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreMetaAttrWrapper.java
@@ -0,0 +1,75 @@
+package com.vci.ubcs.code.webservice.wrapper;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.vci.ubcs.code.webservice.entity.DockingPreMetaAttr;
+import com.vci.ubcs.code.webservice.vo.DockingPreMetaAttrVO;
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ *闆嗗洟缂栫爜鐢宠妯″瀷灞炴�у寘瑁呯被
+ *
+ * @author xiejun
+ * @since 2023-05-23
+ */
+public class DockingPreMetaAttrWrapper extends BaseEntityWrapper<DockingPreMetaAttr, DockingPreMetaAttrVO> {
+
+	public static DockingPreMetaAttrWrapper build() {
+		return new DockingPreMetaAttrWrapper();
+	}
+
+	@Override
+	public DockingPreMetaAttrVO entityVO(DockingPreMetaAttr entity) {
+		DockingPreMetaAttrVO dockingPreMetaAttrVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreMetaAttrVO.class));
+		return dockingPreMetaAttrVO;
+	}
+
+
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param entitys
+	 * @return
+	 */
+	public List<DockingPreMetaAttrVO> entityVOs(Collection<DockingPreMetaAttr> entitys) {
+		if(CollectionUtils.isEmpty(entitys)) {return new ArrayList<>();}
+		List<DockingPreMetaAttrVO> vos=new ArrayList<>();
+		if(!CollectionUtils.isEmpty(entitys)) {
+			entitys.stream().forEach(vo -> {
+				vos.add(entityVO(vo));
+			});
+		}
+		return vos;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vos
+	 * @return
+	 */
+	public List<DockingPreMetaAttr> voentitys(Collection<DockingPreMetaAttrVO> vos) {
+		if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
+		List<DockingPreMetaAttr>entitys =new ArrayList<>();
+		if(!CollectionUtils.isEmpty(vos)) {
+			vos.stream().forEach(entity -> {
+				entitys.add(voentity(entity));
+			});
+		}
+		return entitys;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vo
+	 * @return
+	 */
+	public DockingPreMetaAttr voentity( DockingPreMetaAttrVO vo) {
+		DockingPreMetaAttr entity = Objects.requireNonNull(BeanUtil.copy(vo, DockingPreMetaAttr.class));
+		return entity;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreViewWrapper.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreViewWrapper.java
new file mode 100644
index 0000000..bd2b398
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/wrapper/DockingPreViewWrapper.java
@@ -0,0 +1,71 @@
+package com.vci.ubcs.code.webservice.wrapper;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.vci.ubcs.code.webservice.entity.DockingPreViewModel;
+import com.vci.ubcs.code.webservice.vo.DockingPreViewModelVO;
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ *闆嗗洟缂栫爜鐢宠瑙嗗浘鍖呰绫�
+ *
+ * @author xiejun
+ * @since 2023-05-23
+ */
+public class DockingPreViewWrapper  extends BaseEntityWrapper<DockingPreViewModel, DockingPreViewModelVO> {
+	public static DockingPreViewWrapper build() {
+		return new DockingPreViewWrapper();
+	}
+	@Override
+	public DockingPreViewModelVO entityVO(DockingPreViewModel entity) {
+		DockingPreViewModelVO dockingPreViewModelVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreViewModelVO.class));
+		return dockingPreViewModelVO;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param entitys
+	 * @return
+	 */
+	public List<DockingPreViewModelVO> entityVOs(Collection<DockingPreViewModel> entitys) {
+		if(CollectionUtils.isEmpty(entitys)) {return new ArrayList<>();}
+		List<DockingPreViewModelVO> vos=new ArrayList<>();
+		if(!CollectionUtils.isEmpty(entitys)) {
+			entitys.stream().forEach(dockingPreAttrRange -> {
+				vos.add(entityVO(dockingPreAttrRange));
+			});
+		}
+		return vos;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vos
+	 * @return
+	 */
+	public List<DockingPreViewModel> voentitys(Collection<DockingPreViewModelVO> vos) {
+		if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
+		List<DockingPreViewModel>entitys =new ArrayList<>();
+		if(!CollectionUtils.isEmpty(vos)) {
+			vos.stream().forEach(entity -> {
+				entitys.add(voentity(entity));
+			});
+		}
+		return entitys;
+	}
+
+	/***
+	 * 鏁扮粍瀵硅薄杞崲
+	 * @param vo
+	 * @return
+	 */
+	public DockingPreViewModel voentity( DockingPreViewModelVO vo) {
+		DockingPreViewModel entity = Objects.requireNonNull(BeanUtil.copy(vo, DockingPreViewModel.class));
+		return entity;
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-dev.yml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-dev.yml
new file mode 100644
index 0000000..26fed91
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-dev.yml
@@ -0,0 +1,24 @@
+#鏈嶅姟鍣ㄧ鍙�
+server:
+  port: 36016
+
+#鏁版嵁婧愰厤缃�
+spring:
+  datasource:
+    url: ${ubcs.datasource.mdm.dev.url}
+    username: ${ubcs.datasource.mdm.dev.username}
+    password: ${ubcs.datasource.mdm.dev.password}
+#鍏抽棴椹煎嘲鍛藉悕鏄犲皠
+mybatis-plus:
+  configuration:
+    map-underscore-to-camel-case: false
+  #闆嗗洟闆嗘垚閰嶇疆淇℃伅
+docking:
+  apply:
+    #闆嗗洟鎻愪緵鐨勬帴鍙e湴鍧�
+    jtInterUrl: http://116.205.176.185:8099
+    #绯荤粺鍘傚鍗曚綅浠g爜
+    unitCode: 131460
+    #绯荤粺鏍囪瘑
+    sysName:  410-MDM
+
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-prod.yml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-prod.yml
new file mode 100644
index 0000000..8931921
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-prod.yml
@@ -0,0 +1,10 @@
+#鏈嶅姟鍣ㄧ鍙�
+server:
+  port: 8107
+
+#鏁版嵁婧愰厤缃�
+spring:
+  datasource:
+    url: ${ubcs.datasource.mdm.dev.url}
+    username: ${ubcs.datasource.mdm.dev.username}
+    password: ${ubcs.datasource.mdm.dev.password}
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-test.yml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-test.yml
new file mode 100644
index 0000000..8931921
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/application-test.yml
@@ -0,0 +1,10 @@
+#鏈嶅姟鍣ㄧ鍙�
+server:
+  port: 8107
+
+#鏁版嵁婧愰厤缃�
+spring:
+  datasource:
+    url: ${ubcs.datasource.mdm.dev.url}
+    username: ${ubcs.datasource.mdm.dev.username}
+    password: ${ubcs.datasource.mdm.dev.password}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreApplyFormMapper.xml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreApplyFormMapper.xml
similarity index 86%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreApplyFormMapper.xml
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreApplyFormMapper.xml
index 58c86ca..a313684 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreApplyFormMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreApplyFormMapper.xml
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vci.ubcs.code.mapper.DockingPreApplyFormMapper">
+<mapper namespace="com.vci.ubcs.code.webservice.mapper.DockingPreApplyFormMapper">
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
-    <resultMap id="DockingPreAttrMappingResultMap" type="com.vci.ubcs.code.entity.DockingPreApplyForm">
+    <resultMap id="DockingPreAttrMappingResultMap" type="com.vci.ubcs.code.webservice.entity.DockingPreApplyForm">
         <result column="OID" property="oid"/>
         <result column="REVISIONOID" property="revisionOid"/>
         <result column="NAMEOID" property="nameOid"/>
@@ -33,6 +33,10 @@
         <result column="CONTENT" property="content"/>
         <result column="DATAOID" property="dataOid"/>
         <result column="DATABTMNAME" property="dataBtmName"/>
-        <result column="MSG" property="msg"/>
+        <result column="MSG" property="msg"  />
+        <result column="OPERATIONTYPE" property="operationType" />
+        <result column="GROUPCODE" property="groupCode" />
     </resultMap>
+
+
 </mapper>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreAttrMappingMapper.xml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrMappingMapper.xml
similarity index 90%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreAttrMappingMapper.xml
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrMappingMapper.xml
index a6a0649..e07dcc1 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreAttrMappingMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrMappingMapper.xml
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vci.ubcs.code.mapper.DockingPreAttrMappingMapper">
+<mapper namespace="com.vci.ubcs.code.webservice.mapper.DockingPreAttrMappingMapper">
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
-    <resultMap id="DockingPreAttrMappingResultMap" type="com.vci.ubcs.code.entity.DockingPreAttrMapping">
+    <resultMap id="plDockingPreAttrMappingResultMap" type="com.vci.ubcs.code.webservice.entity.DockingPreAttrMapping">
             <result column="OID" property="oid"/>
             <result column="REVISIONOID" property="revisionOid"/>
             <result column="NAMEOID" property="nameOid"/>
@@ -36,7 +36,7 @@
             <result column="TARGETATTRID" property="targetAttrId"/>
             <result column="TARGETCLSFID" property="targetClassifyId"/>
             <result column="VIEWMODEID" property="viewModeId"/>
-            <result column="VIEWMODENAME" property="viewModeName"/>
+            <result column="VIEWMODENAME" property="viewModelName"/>
             <result column="TARGETATTRKEY" property="targetAttrKey"/>
             <result column="TARGETATTRNAME" property="targetAttrName"/>
             <result column="SOURCEATTRKEY" property="sourceAttrKey"/>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreAttrRangeMapper.xml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrRangeMapper.xml
similarity index 90%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreAttrRangeMapper.xml
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrRangeMapper.xml
index 903ee79..8b4f8f1 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreAttrRangeMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrRangeMapper.xml
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vci.ubcs.code.mapper.DockingPreAttrRangeMapper">
+<mapper namespace="com.vci.ubcs.code.webservice.mapper.DockingPreAttrRangeMapper">
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
-    <resultMap id="DockingPreAttrMappingResultMap" type="com.vci.ubcs.code.entity.DockingPreAttrRange">
+    <resultMap id="plDockingPreAttrRangeResultMap" type="com.vci.ubcs.code.webservice.entity.DockingPreAttrRange">
         <result column="OID" property="oid"/>
         <result column="REVISIONOID" property="revisionOid"/>
         <result column="NAMEOID" property="nameOid"/>
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreClassifyMapper.xml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreClassifyMapper.xml
new file mode 100644
index 0000000..220f181
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreClassifyMapper.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.vci.ubcs.code.webservice.mapper.DockingPreClassifyMapper">
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="plDockingClassifyResultMap" type="com.vci.ubcs.code.webservice.entity.DockingPreClassify">
+        <result column="OID" property="oid"/>
+        <result column="REVISIONOID" property="revisionOid"/>
+        <result column="NAMEOID" property="nameOid"/>
+        <result column="BTMNAME" property="btmname"/>
+        <result column="LASTR" property="lastR"/>
+        <result column="FIRSTR" property="firstR"/>
+        <result column="LASTV" property="lastV"/>
+        <result column="FIRSTV" property="firstV"/>
+        <result column="CREATOR" property="creator"/>
+        <result column="CREATETIME" property="createTime"/>
+        <result column="LASTMODIFIER" property="lastModifier"/>
+        <result column="LASTMODIFYTIME" property="lastModifyTime"/>
+        <result column="REVISIONRULE" property="revisionRule"/>
+        <result column="VERSIONRULE" property="versionRule"/>
+        <result column="REVISIONSEQ" property="revisionSeq"/>
+        <result column="REVISIONVALUE" property="revisionValue"/>
+        <result column="VERSIONSEQ" property="versionSeq"/>
+        <result column="VERSIONVALUE" property="versionValue"/>
+        <result column="LCTID" property="lctid"/>
+        <result column="LCSTATUS" property="lcStatus"/>
+        <result column="TS" property="ts"/>
+        <result column="ID" property="id"/>
+        <result column="NAME" property="name"/>
+        <result column="DESCRIPTION" property="description"/>
+        <result column="OWNER" property="owner"/>
+        <result column="COPYFROMVERSION" property="copyFromVersion"/>
+        <result column="CLASSNAME" property="className"/>
+        <result column="NODELINK" property="nodeLink"/>
+        <result column="NODELINKNAME" property="getNodeLinkName"/>
+        <result column="PID" property="pid"/>
+    </resultMap>
+    <select id="selectCompanyGroupClassifyVOByTree" resultMap="plDockingClassifyResultMap">
+        select codeclassify0.OID                 as oid,
+        codeclassify0.REVISIONOID             as revisionoid,
+        codeclassify0.NAMEOID              as nameOid,
+        codeclassify0.BTMNAME            as btmname,
+        codeclassify0.LASTR          as lastr,
+        codeclassify0.FIRSTR              as firstr,
+        codeclassify0.LASTV           as lastv,
+        codeclassify0.FIRSTV           as firstv,
+        codeclassify0.CREATOR           as creator,
+        codeclassify0.CREATETIME           as createtime,
+        codeclassify0.LASTMODIFIER           as lastmodifier,
+        codeclassify0.LASTMODIFYTIME        as lastmodifytime,
+        codeclassify0.REVISIONRULE        as revisionrule,
+        codeclassify0.VERSIONRULE        as versionrule,
+        codeclassify0.REVISIONSEQ        as revisionseq,
+        codeclassify0.REVISIONVALUE        as revisionvalue,
+        codeclassify0.VERSIONSEQ        as versionseq,
+        codeclassify0.VERSIONVALUE        as versionvalue,
+        codeclassify0.LCTID        as lctid,
+        codeclassify0.LCSTATUS              as lcstatus,
+        codeclassify0.OID                   as oid,
+        codeclassify0.TS                    as ts,
+        codeclassify0.DESCRIPTION           as description,
+        codeclassify0.OWNER                 as owner,
+        codeclassify0.COPYFROMVERSION       as copyfromversion,
+        codeclassify0.ID                    as id,
+        codeclassify0.NAME                  as name,
+        codeclassify0.CLASSNAME               as classname,
+        codeclassify0.NODELINK   as nodelink,
+        codeclassify0.NODELINKNAME   as nodelinkname,
+        codeclassify0.PID   as pid
+        from PL_CODE_JCLASSIFY codeclassify0
+        <!--<where>-->
+            <if test="oid != null and oid != ''">
+                start with
+                    codeclassify0.pid = '${oid}'
+                connect by prior codeclassify0.oid =codeclassify0.pid
+            </if>
+          <!--  <if test="oid = null">
+                codeclassify0.pid is null
+            </if>-->
+        <!--</where>-->
+
+        order by id asc
+    </select>
+
+    <select id="checkHasChild" resultType="java.lang.Boolean">
+        select count(oid) from PL_CODE_JCLASSIFY  where pid = #{oid}
+    </select>
+</mapper>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreMetaAttrMapper.xml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreMetaAttrMapper.xml
similarity index 91%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreMetaAttrMapper.xml
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreMetaAttrMapper.xml
index f30a2ca..34e9f7b 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreMetaAttrMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreMetaAttrMapper.xml
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vci.ubcs.code.mapper.DockingPreMetaAttrMapper">
+<mapper namespace="com.vci.ubcs.code.webservice.mapper.DockingPreMetaAttrMapper">
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
-    <resultMap id="DockingPreAttrMappingResultMap" type="com.vci.ubcs.code.entity.DockingPreMetaAttr">
+    <resultMap id="plDockingPreMetaAttrResultMap" type="com.vci.ubcs.code.webservice.entity.DockingPreMetaAttr">
         <result column="OID" property="oid"/>
         <result column="REVISIONOID" property="revisionOid"/>
         <result column="NAMEOID" property="nameOid"/>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreViewMapper.xml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreViewMapper.xml
similarity index 90%
rename from Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreViewMapper.xml
rename to Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreViewMapper.xml
index 8801524..6b0905d 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingPreViewMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreViewMapper.xml
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vci.ubcs.code.mapper.DockingPreViewModelMapper">
+<mapper namespace="com.vci.ubcs.code.webservice.mapper.DockingPreViewModelMapper">
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
-    <resultMap id="DockingPreAttrMappingResultMap" type="com.vci.ubcs.code.entity.DockingPreViewModel">
+    <resultMap id="plDockingPreViewModelResultMap" type="com.vci.ubcs.code.webservice.entity.DockingPreViewModel">
         <result column="OID" property="oid"/>
         <result column="REVISIONOID" property="revisionOid"/>
         <result column="NAMEOID" property="nameOid"/>
diff --git a/Source/data/applogs/xxl-job/xxl-job-admin.log b/Source/data/applogs/xxl-job/xxl-job-admin.log
index 42b2b3d..d9a53e0 100644
--- a/Source/data/applogs/xxl-job/xxl-job-admin.log
+++ b/Source/data/applogs/xxl-job/xxl-job-admin.log
@@ -1,85 +1,32 @@
-2023-05-20 00:08:11,841 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:08:11,886 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:08:12,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:08:12,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:17:10,390 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:17:10,392 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:43:13,252 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:43:13,253 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:43:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:43:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:43:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:43:15,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:43:16,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:43:16,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:43:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:43:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:43:17,004 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:43:17,010 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:40:34,144 INFO [background-preinit] o.h.validator.internal.util.Version [Version.java : 21] HV000001: Hibernate Validator 6.2.3.Final
+2023-05-30 18:40:35,493 INFO [main] c.a.n.p.a.s.c.ClientAuthPluginManager [ClientAuthPluginManager.java : 56] [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.impl.NacosClientAuthServiceImpl success.
+2023-05-30 18:40:35,493 INFO [main] c.a.n.p.a.s.c.ClientAuthPluginManager [ClientAuthPluginManager.java : 56] [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.ram.RamClientAuthServiceImpl success.
+2023-05-30 18:40:40,030 WARN [main] c.a.c.n.c.NacosPropertySourceBuilder [NacosPropertySourceBuilder.java : 87] Ignore the empty nacos configuration and get it based on dataId[ubcs-xxljob-admin] & group[DEFAULT_GROUP]
+2023-05-30 18:40:40,037 WARN [main] c.a.c.n.c.NacosPropertySourceBuilder [NacosPropertySourceBuilder.java : 87] Ignore the empty nacos configuration and get it based on dataId[ubcs-xxljob-admin.yaml] & group[DEFAULT_GROUP]
+2023-05-30 18:40:40,043 WARN [main] c.a.c.n.c.NacosPropertySourceBuilder [NacosPropertySourceBuilder.java : 87] Ignore the empty nacos configuration and get it based on dataId[ubcs-xxljob-admin-dev.yaml] & group[DEFAULT_GROUP]
+2023-05-30 18:40:40,044 INFO [main] o.s.c.b.c.PropertySourceBootstrapConfiguration [PropertySourceBootstrapConfiguration.java : 109] Located property source: [BootstrapPropertySource {name='bootstrapProperties-ubcs-xxljob-admin-dev.yaml,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-ubcs-xxljob-admin.yaml,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-ubcs-xxljob-admin,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-ubcs-dev.yaml,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-ubcs.yaml,DEFAULT_GROUP'}]
+2023-05-30 18:40:40,060 INFO [main] c.v.u.x.j.admin.JobAdminApplication [SpringApplication.java : 640] The following 1 profile is active: "dev"
+2023-05-30 18:40:42,220 INFO [main] o.s.d.r.c.RepositoryConfigurationDelegate [RepositoryConfigurationDelegate.java : 262] Multiple Spring Data modules found, entering strict repository configuration mode
+2023-05-30 18:40:42,231 INFO [main] o.s.d.r.c.RepositoryConfigurationDelegate [RepositoryConfigurationDelegate.java : 132] Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-05-30 18:40:42,300 INFO [main] o.s.d.r.c.RepositoryConfigurationDelegate [RepositoryConfigurationDelegate.java : 201] Finished Spring Data repository scanning in 35 ms. Found 0 Redis repository interfaces.
+2023-05-30 18:40:42,837 INFO [main] o.s.cloud.context.scope.GenericScope [GenericScope.java : 283] BeanFactory id=0b8610df-6079-3b3e-970e-367fbf5dc1df
+2023-05-30 18:40:42,846 INFO [main] o.s.c.l.p.BladePropertySourcePostProcessor [BladePropertySourcePostProcessor.java : 150] BladePropertySourcePostProcessor init.
+2023-05-30 18:40:42,993 INFO [main] o.s.c.l.p.BladePropertySourcePostProcessor [BladePropertySourcePostProcessor.java : 62] BladePropertySourcePostProcessor process @BladePropertySource bean.
+2023-05-30 18:40:43,054 WARN [main] o.s.c.l.p.BladePropertySourcePostProcessor [BladePropertySourcePostProcessor.java : 67] Not found @BladePropertySource on spring bean class.
+2023-05-30 18:40:43,692 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration' of type [org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:43,701 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:43,704 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'loadBalancerClientsDefaultsMappingsProvider' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration$$Lambda$515/467185608] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:43,710 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'defaultsBindHandlerAdvisor' of type [org.springframework.cloud.commons.config.DefaultsBindHandlerAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:43,808 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:43,819 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:44,214 WARN [main] io.undertow.websockets.jsr [Bootstrap.java : 68] UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2023-05-30 18:40:44,269 INFO [main] io.undertow.servlet [ServletContextImpl.java : 382] Initializing Spring embedded WebApplicationContext
+2023-05-30 18:40:44,270 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java : 292] Root WebApplicationContext: initialization completed in 4175 ms
+2023-05-30 18:40:45,686 INFO [main] c.v.u.x.j.a.c.s.XxlJobScheduler [XxlJobScheduler.java : 46] >>>>>>>>> init xxl-job admin success.
+2023-05-30 18:40:45,736 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:45,743 INFO [xxl-job, admin JobLogReportHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:45,744 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:45,765 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -105,7 +52,8 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	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:433)
@@ -129,9 +77,534 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:43:17,835 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:43:17,840 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+	... 14 common frames omitted
+2023-05-30 18:40:45,764 ERROR [xxl-job, admin JobLogReportHelper] c.v.u.x.j.a.c.t.JobLogReportHelper [JobLogReportHelper.java : 92] >>>>>>>>>>> xxl-job, job log report thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findLogReport
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectOne(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectOne(SqlSessionTemplate.java:166)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:83)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findLogReport(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobLogReportHelper$1.run(JobLogReportHelper.java:71)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findLogReport
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:77)
+	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:433)
+	... 7 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 14 common frames omitted
+2023-05-30 18:40:45,764 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 14 common frames omitted
+2023-05-30 18:40:45,814 INFO [xxl-job, admin JobLogReportHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:46,453 INFO [main] o.s.b.a.w.s.WelcomePageHandlerMapping [WelcomePageHandlerMapping.java : 57] Adding welcome page template: index
+2023-05-30 18:40:46,459 INFO [main] c.a.c.s.SentinelWebMvcConfigurer [SentinelWebMvcConfigurer.java : 52] [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
+2023-05-30 18:40:46,966 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobinfo/remove]}" onto com.vci.ubcs.xxl.job.admin.controller.JobInfoController#remove(int)
+2023-05-30 18:40:46,967 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobinfo/trigger]}" onto com.vci.ubcs.xxl.job.admin.controller.JobInfoController#triggerJob(int, String)
+2023-05-30 18:40:46,967 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobgroup]}" onto com.vci.ubcs.xxl.job.admin.controller.JobGroupController#index(Model)
+2023-05-30 18:40:46,968 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobinfo]}" onto com.vci.ubcs.xxl.job.admin.controller.JobInfoController#index(HttpServletRequest, Model, int)
+2023-05-30 18:40:46,969 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/error]}" onto org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController#error(HttpServletRequest)
+2023-05-30 18:40:46,969 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/user/updatePwd]}" onto com.vci.ubcs.xxl.job.admin.controller.UserController#updatePwd(HttpServletRequest, String)
+2023-05-30 18:40:46,969 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/joblog/logKill]}" onto com.vci.ubcs.xxl.job.admin.controller.JobLogController#logKill(int)
+2023-05-30 18:40:46,970 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobinfo/nextTriggerTime]}" onto com.vci.ubcs.xxl.job.admin.controller.JobInfoController#nextTriggerTime(String)
+2023-05-30 18:40:46,970 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobinfo/add]}" onto com.vci.ubcs.xxl.job.admin.controller.JobInfoController#add(XxlJobInfo)
+2023-05-30 18:40:46,970 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/toLogin]}" onto com.vci.ubcs.xxl.job.admin.controller.IndexController#toLogin(HttpServletRequest, HttpServletResponse)
+2023-05-30 18:40:46,971 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/user/remove]}" onto com.vci.ubcs.xxl.job.admin.controller.UserController#remove(HttpServletRequest, int)
+2023-05-30 18:40:46,971 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{POST [/login]}" onto com.vci.ubcs.xxl.job.admin.controller.IndexController#loginDo(HttpServletRequest, HttpServletResponse, String, String, String)
+2023-05-30 18:40:46,972 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/error], produces [text/html]}" onto org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController#errorHtml(HttpServletRequest, HttpServletResponse)
+2023-05-30 18:40:46,973 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/user/update]}" onto com.vci.ubcs.xxl.job.admin.controller.UserController#update(HttpServletRequest, XxlJobUser)
+2023-05-30 18:40:46,973 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/user/add]}" onto com.vci.ubcs.xxl.job.admin.controller.UserController#add(XxlJobUser)
+2023-05-30 18:40:46,973 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobcode]}" onto com.vci.ubcs.xxl.job.admin.controller.JobCodeController#index(HttpServletRequest, Model, int)
+2023-05-30 18:40:46,974 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobgroup/save]}" onto com.vci.ubcs.xxl.job.admin.controller.JobGroupController#save(XxlJobGroup)
+2023-05-30 18:40:46,974 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/help]}" onto com.vci.ubcs.xxl.job.admin.controller.IndexController#help()
+2023-05-30 18:40:46,974 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobinfo/update]}" onto com.vci.ubcs.xxl.job.admin.controller.JobInfoController#update(XxlJobInfo)
+2023-05-30 18:40:46,974 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/joblog/logDetailCat]}" onto com.vci.ubcs.xxl.job.admin.controller.JobLogController#logDetailCat(String, long, long, int)
+2023-05-30 18:40:46,974 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/joblog/pageList]}" onto com.vci.ubcs.xxl.job.admin.controller.JobLogController#pageList(HttpServletRequest, int, int, int, int, int, String)
+2023-05-30 18:40:46,975 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobgroup/remove]}" onto com.vci.ubcs.xxl.job.admin.controller.JobGroupController#remove(int)
+2023-05-30 18:40:46,975 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/joblog/getJobsByGroup]}" onto com.vci.ubcs.xxl.job.admin.controller.JobLogController#getJobsByGroup(int)
+2023-05-30 18:40:46,975 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobcode/save]}" onto com.vci.ubcs.xxl.job.admin.controller.JobCodeController#save(Model, int, String, String)
+2023-05-30 18:40:46,975 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{POST [/logout]}" onto com.vci.ubcs.xxl.job.admin.controller.IndexController#logout(HttpServletRequest, HttpServletResponse)
+2023-05-30 18:40:46,976 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/user/pageList]}" onto com.vci.ubcs.xxl.job.admin.controller.UserController#pageList(int, int, String, int)
+2023-05-30 18:40:46,976 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/]}" onto com.vci.ubcs.xxl.job.admin.controller.IndexController#index(Model)
+2023-05-30 18:40:46,976 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/joblog/logDetailPage]}" onto com.vci.ubcs.xxl.job.admin.controller.JobLogController#logDetailPage(int, Model)
+2023-05-30 18:40:46,977 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/api/registry]}" onto com.vci.ubcs.xxl.job.admin.controller.JobApiController#registry(HttpServletRequest, String)
+2023-05-30 18:40:46,977 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/joblog]}" onto com.vci.ubcs.xxl.job.admin.controller.JobLogController#index(HttpServletRequest, Model, Integer)
+2023-05-30 18:40:46,977 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobgroup/loadById]}" onto com.vci.ubcs.xxl.job.admin.controller.JobGroupController#loadById(int)
+2023-05-30 18:40:46,978 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/joblog/clearLog]}" onto com.vci.ubcs.xxl.job.admin.controller.JobLogController#clearLog(int, int, int)
+2023-05-30 18:40:46,978 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobinfo/start]}" onto com.vci.ubcs.xxl.job.admin.controller.JobInfoController#start(int)
+2023-05-30 18:40:46,978 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobinfo/stop]}" onto com.vci.ubcs.xxl.job.admin.controller.JobInfoController#pause(int)
+2023-05-30 18:40:46,978 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobgroup/update]}" onto com.vci.ubcs.xxl.job.admin.controller.JobGroupController#update(XxlJobGroup)
+2023-05-30 18:40:46,979 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/jobinfo/pageList]}" onto com.vci.ubcs.xxl.job.admin.controller.JobInfoController#pageList(int, int, int, int, String, String, String)
+2023-05-30 18:40:46,979 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/user]}" onto com.vci.ubcs.xxl.job.admin.controller.UserController#index(Model)
+2023-05-30 18:40:46,979 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/api/registryRemove]}" onto com.vci.ubcs.xxl.job.admin.controller.JobApiController#registryRemove(HttpServletRequest, String)
+2023-05-30 18:40:46,979 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/chartInfo]}" onto com.vci.ubcs.xxl.job.admin.controller.IndexController#chartInfo(Date, Date)
+2023-05-30 18:40:46,980 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/api/callback]}" onto com.vci.ubcs.xxl.job.admin.controller.JobApiController#callback(HttpServletRequest, String)
+2023-05-30 18:40:48,150 INFO [main] c.a.n.p.a.s.c.ClientAuthPluginManager [ClientAuthPluginManager.java : 56] [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.impl.NacosClientAuthServiceImpl success.
+2023-05-30 18:40:48,151 INFO [main] c.a.n.p.a.s.c.ClientAuthPluginManager [ClientAuthPluginManager.java : 56] [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.ram.RamClientAuthServiceImpl success.
+2023-05-30 18:40:50,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 51] >>>>>>>>> init xxl-job admin scheduler success.
+2023-05-30 18:40:50,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:50,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:50,748 INFO [main] o.s.b.f.a.AutowiredAnnotationBeanPostProcessor [AutowiredAnnotationBeanPostProcessor.java : 367] Inconsistent constructor declaration on bean with name 'org.springblade.core.launch.server.ServerInfo': single autowire-marked constructor flagged as optional - this constructor is effectively required since there is no default constructor to fall back to: public org.springblade.core.launch.server.ServerInfo(org.springframework.boot.autoconfigure.web.ServerProperties)
+2023-05-30 18:40:51,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:51,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:51,491 WARN [main] o.s.c.l.c.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger [LoadBalancerCacheAutoConfiguration.java : 82] Spring Cloud LoadBalancer is currently working with the default cache. While this cache implementation is useful for development and tests, it's recommended to use Caffeine cache in production.You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
+2023-05-30 18:40:51,603 INFO [main] o.s.b.a.e.web.EndpointLinksResolver [EndpointLinksResolver.java : 58] Exposing 20 endpoint(s) beneath base path '/actuator'
+2023-05-30 18:40:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:52,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:52,937 INFO [main] io.undertow.servlet [ServletContextImpl.java : 382] Initializing Spring DispatcherServlet 'dispatcherServlet'
+2023-05-30 18:40:52,938 INFO [main] o.s.web.servlet.DispatcherServlet [FrameworkServlet.java : 525] Initializing Servlet 'dispatcherServlet'
+2023-05-30 18:40:52,943 INFO [main] o.s.web.servlet.DispatcherServlet [FrameworkServlet.java : 547] Completed initialization in 5 ms
+2023-05-30 18:40:52,966 INFO [main] io.undertow [Undertow.java : 120] starting server: Undertow - 2.2.18.Final
+2023-05-30 18:40:52,983 INFO [main] org.xnio [Xnio.java : 95] XNIO version 3.8.7.Final
+2023-05-30 18:40:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:52,999 INFO [main] org.xnio.nio [NioXnio.java : 58] XNIO NIO Implementation Version 3.8.7.Final
+2023-05-30 18:40:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:53,059 INFO [main] org.jboss.threads [Version.java : 52] JBoss Threads version 3.1.0.Final
+2023-05-30 18:40:53,189 INFO [main] o.s.b.w.e.undertow.UndertowWebServer [UndertowWebServer.java : 119] Undertow started on port(s) 36013 (http) with context path '/xxl-job-admin'
+2023-05-30 18:40:53,362 INFO [main] c.a.c.n.r.NacosServiceRegistry [NacosServiceRegistry.java : 75] nacos registry, DEFAULT_GROUP ubcs-xxljob-admin 192.168.237.1:36013 register finished
+2023-05-30 18:40:54,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:54,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:54,080 INFO [main] o.s.core.launch.StartEventListener [StartEventListener.java : 45] ---[UBCS-XXLJOB-ADMIN]---鍚姩瀹屾垚锛屽綋鍓嶄娇鐢ㄧ殑绔彛:[36013]锛岀幆澧冨彉閲�:[dev]---
+2023-05-30 18:40:54,108 INFO [main] c.v.u.x.j.admin.JobAdminApplication [StartupInfoLogger.java : 61] Started JobAdminApplication in 21.47 seconds (JVM running for 24.217)
+2023-05-30 18:40:54,122 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs-xxljob-admin, group=DEFAULT_GROUP
+2023-05-30 18:40:54,125 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs-dev.yaml, group=DEFAULT_GROUP
+2023-05-30 18:40:54,126 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs-xxljob-admin-dev.yaml, group=DEFAULT_GROUP
+2023-05-30 18:40:54,128 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs-xxljob-admin.yaml, group=DEFAULT_GROUP
+2023-05-30 18:40:54,130 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs.yaml, group=DEFAULT_GROUP
+2023-05-30 18:40:54,918 INFO [RMI TCP Connection(4)-192.168.1.46] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:54,919 WARN [RMI TCP Connection(4)-192.168.1.46] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
+	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
+	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
+	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
+	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
+	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
+	at org.springframework.boot.actuate.health.HealthEndpoint.getHealth(HealthEndpoint.java:93)
+	at org.springframework.boot.actuate.health.HealthEndpoint.getHealth(HealthEndpoint.java:41)
+	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
+	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
+	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
+	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
+	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
+	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
+	at org.springframework.boot.actuate.health.HealthEndpoint.health(HealthEndpoint.java:87)
+	at org.springframework.boot.actuate.health.HealthEndpoint.health(HealthEndpoint.java:77)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
+	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
+	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
+	at org.springframework.boot.actuate.endpoint.jmx.EndpointMBean.invoke(EndpointMBean.java:122)
+	at org.springframework.boot.actuate.endpoint.jmx.EndpointMBean.invoke(EndpointMBean.java:97)
+	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
+	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
+	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468)
+	at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
+	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309)
+	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1401)
+	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829)
+	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 sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:357)
+	at sun.rmi.transport.Transport$1.run(Transport.java:200)
+	at sun.rmi.transport.Transport$1.run(Transport.java:197)
+	at java.security.AccessController.doPrivileged(Native Method)
+	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
+	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:573)
+	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:834)
+	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:688)
+	at java.security.AccessController.doPrivileged(Native Method)
+	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:687)
+	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
+	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:55,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:55,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:55,768 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:55,769 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 14 common frames omitted
+2023-05-30 18:40:56,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:56,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:58,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:58,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:40:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:40:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:00,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:01,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:01,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:02,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:02,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:03,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:04,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:04,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:05,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:05,770 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:05,771 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 14 common frames omitted
+2023-05-30 18:41:06,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:06,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:08,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:08,627 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:08,630 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -157,7 +630,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -165,7 +639,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -229,11 +704,11 @@
 	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
 	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
+	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1423)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:43:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:43:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:09,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:09,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -242,218 +717,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:48:54,079 WARN [XNIO-1 task-1] o.s.b.a.health.HealthEndpointSupport [HealthEndpointSupport.java : 181] Health contributor org.springframework.boot.actuate.autoconfigure.health.HealthEndpointConfiguration$AdaptedReactiveHealthContributors$1 (redis) took 336230ms to respond
-2023-05-20 00:48:54,096 ERROR [XNIO-1 task-1] c.v.u.x.j.a.c.r.WebExceptionResolver [WebExceptionResolver.java : 32] WebExceptionResolver:{}
-java.io.IOException: 浣犵殑涓绘満涓殑杞欢涓浜嗕竴涓凡寤虹珛鐨勮繛鎺ャ��
-	at sun.nio.ch.SocketDispatcher.writev0(Native Method)
-	at sun.nio.ch.SocketDispatcher.writev(SocketDispatcher.java:55)
-	at sun.nio.ch.IOUtil.write(IOUtil.java:148)
-	at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:502)
-	at org.xnio.nio.NioSocketConduit.write(NioSocketConduit.java:162)
-	at io.undertow.server.protocol.http.HttpResponseConduit.processWrite(HttpResponseConduit.java:260)
-	at io.undertow.server.protocol.http.HttpResponseConduit.write(HttpResponseConduit.java:639)
-	at io.undertow.conduits.ChunkedStreamSinkConduit.doWrite(ChunkedStreamSinkConduit.java:166)
-	at io.undertow.conduits.ChunkedStreamSinkConduit.write(ChunkedStreamSinkConduit.java:128)
-	at io.undertow.conduits.ChunkedStreamSinkConduit.write(ChunkedStreamSinkConduit.java:219)
-	at org.xnio.conduits.ConduitStreamSinkChannel.write(ConduitStreamSinkChannel.java:158)
-	at io.undertow.channels.DetachableStreamSinkChannel.write(DetachableStreamSinkChannel.java:179)
-	at io.undertow.server.HttpServerExchange$WriteDispatchChannel.write(HttpServerExchange.java:2157)
-	at org.xnio.channels.Channels.writeBlocking(Channels.java:202)
-	at io.undertow.servlet.spec.ServletOutputStreamImpl.writeTooLargeForBuffer(ServletOutputStreamImpl.java:199)
-	at io.undertow.servlet.spec.ServletOutputStreamImpl.write(ServletOutputStreamImpl.java:147)
-	at com.fasterxml.jackson.core.json.UTF8JsonGenerator._flushBuffer(UTF8JsonGenerator.java:2171)
-	at com.fasterxml.jackson.core.json.UTF8JsonGenerator.flush(UTF8JsonGenerator.java:1184)
-	at com.fasterxml.jackson.databind.ObjectWriter.writeValue(ObjectWriter.java:1009)
-	at org.springblade.core.tool.jackson.AbstractReadWriteJackson2HttpMessageConverter.writeInternal(AbstractReadWriteJackson2HttpMessageConverter.java:116)
-	at org.springblade.core.tool.jackson.MappingApiJackson2HttpMessageConverter.writeInternal(MappingApiJackson2HttpMessageConverter.java:73)
-	at org.springframework.http.converter.AbstractGenericHttpMessageConverter.write(AbstractGenericHttpMessageConverter.java:104)
-	at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:290)
-	at org.springframework.web.servlet.mvc.method.annotation.HttpEntityMethodProcessor.handleReturnValue(HttpEntityMethodProcessor.java:219)
-	at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:78)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:135)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:48:54,113 ERROR [XNIO-1 task-1] io.undertow.request [LoggingExceptionHandler.java : 80] UT005023: Exception handling request to /xxl-job-admin/actuator/health
-org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalStateException: UT010006: Cannot call getWriter(), getOutputStream() already called
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: java.lang.IllegalStateException: UT010006: Cannot call getWriter(), getOutputStream() already called
-	at io.undertow.servlet.spec.HttpServletResponseImpl.getWriter(HttpServletResponseImpl.java:377)
-	at com.vci.ubcs.xxl.job.admin.controller.resolver.WebExceptionResolver.resolveException(WebExceptionResolver.java:51)
-	at org.springframework.web.servlet.DispatcherServlet.processHandlerException(DispatcherServlet.java:1327)
-	at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1138)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1084)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	... 55 common frames omitted
-2023-05-20 00:48:54,137 INFO [lettuce-eventExecutorLoop-1-15] i.l.core.protocol.ConnectionWatchdog [AbstractInternalLogger.java : 171] Reconnecting, last destination was /1.12.225.193:6379
-2023-05-20 00:48:54,273 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:48:54,279 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:48:54,343 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:48:54,343 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -462,9 +727,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:48:54,435 INFO [lettuce-nioEventLoop-4-3] i.l.c.protocol.ReconnectionHandler [ReconnectionHandler.java : 174] Reconnected to 1.12.225.193:6379
-2023-05-20 00:48:55,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:48:55,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:11,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:11,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -473,8 +737,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:48:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:48:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:12,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:12,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -483,8 +747,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:48:57,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:48:57,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:13,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:13,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -493,8 +757,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:48:58,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:48:58,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:14,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:14,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -503,8 +767,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:48:59,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:48:59,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:15,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -513,342 +777,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:00,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:00,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:01,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:01,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:02,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:02,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:04,281 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:04,282 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:49:05,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:05,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:06,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:06,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:07,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:07,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:09,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:09,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:10,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:10,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:12,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:12,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:13,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:13,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:14,286 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:14,288 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:49:15,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:15,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:17,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:17,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:19,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:19,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:20,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:20,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:21,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:21,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:22,343 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:22,344 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:41:15,766 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:15,767 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -874,7 +804,8 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	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:433)
@@ -898,29 +829,9 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:49:23,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:23,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:24,299 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:24,300 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+	... 14 common frames omitted
+2023-05-30 18:41:15,772 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:15,772 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -946,7 +857,8 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	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:433)
@@ -970,9 +882,9 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:49:25,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:25,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+	... 14 common frames omitted
+2023-05-30 18:41:16,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:16,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -981,8 +893,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:26,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:26,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:17,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -991,8 +903,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:18,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:18,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1001,8 +913,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:28,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:28,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:19,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:19,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1011,8 +923,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:20,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:20,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1021,8 +933,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:30,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:30,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:21,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:21,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1031,8 +943,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:31,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:31,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1041,8 +953,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:23,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:23,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1051,8 +963,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:33,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:33,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:24,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:24,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1061,8 +973,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:33,159 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:33,162 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:41:24,386 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:24,389 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1088,7 +1000,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -1096,7 +1009,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -1163,8 +1077,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:34,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:34,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:25,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:25,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1173,8 +1087,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:34,313 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:34,314 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:41:25,785 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:25,789 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -1200,7 +1114,8 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	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:433)
@@ -1224,9 +1139,9 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:49:35,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:35,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+	... 14 common frames omitted
+2023-05-30 18:41:26,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:26,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1235,8 +1150,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:36,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:36,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1245,8 +1160,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:37,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:37,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:28,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:28,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1255,8 +1170,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:38,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:38,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1265,8 +1180,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:30,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:30,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1275,8 +1190,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:40,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:40,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:31,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:31,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1285,8 +1200,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:41,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:41,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:32,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:32,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1295,8 +1210,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:42,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:42,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:33,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:33,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1305,8 +1220,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:43,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:43,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:34,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:34,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1315,8 +1230,161 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:43,229 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:43,232 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:41:35,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:35,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:35,794 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:35,795 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 14 common frames omitted
+2023-05-30 18:41:36,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:36,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:37,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:37,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:38,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:38,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:39,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:39,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:40,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:40,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:41,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:41,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:42,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:42,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:43,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:43,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:44,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:44,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:44,294 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:44,296 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1342,7 +1410,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -1350,7 +1419,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -1417,8 +1487,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:44,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:44,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1427,140 +1497,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:44,314 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:44,315 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:49:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:46,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:46,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:47,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:47,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:48,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:48,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:50,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:50,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:51,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:52,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:52,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:52,356 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:52,357 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:41:45,768 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:45,768 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -1586,7 +1524,8 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	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:433)
@@ -1610,29 +1549,9 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:49:53,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:53,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:54,316 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:54,317 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+	... 14 common frames omitted
+2023-05-30 18:41:45,797 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:45,797 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -1658,7 +1577,8 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	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:433)
@@ -1682,9 +1602,9 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:49:55,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:55,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+	... 14 common frames omitted
+2023-05-30 18:41:46,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:46,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1693,8 +1613,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:56,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:56,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1703,8 +1623,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:48,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:48,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1713,8 +1633,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:58,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:58,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:49,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:49,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1723,8 +1643,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:59,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:49:59,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:50,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1733,8 +1653,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:00,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:00,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:51,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:51,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1743,8 +1663,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:01,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:01,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1753,8 +1673,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:02,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:02,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:53,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:53,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1763,8 +1683,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:41:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1773,8 +1693,161 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:03,220 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:03,223 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:41:55,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:55,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:55,801 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:55,801 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 14 common frames omitted
+2023-05-30 18:41:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:58,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:58,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:41:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:41:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:01,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:01,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:02,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:02,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:03,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:03,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:04,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:04,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:04,290 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:04,291 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1800,7 +1873,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -1808,7 +1882,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -1875,8 +1950,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1885,8 +1960,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:04,330 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:04,331 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:42:05,802 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:05,803 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -1912,7 +1987,8 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	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:433)
@@ -1936,9 +2012,9 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:50:05,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:05,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+	... 14 common frames omitted
+2023-05-30 18:42:06,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:06,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1947,8 +2023,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:06,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:06,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1957,8 +2033,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:07,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:07,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:08,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:08,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1967,8 +2043,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:09,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:09,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1977,8 +2053,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:09,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:09,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:10,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:10,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1987,8 +2063,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:10,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:10,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -1997,8 +2073,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:12,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:12,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2007,8 +2083,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:12,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:12,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:13,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:13,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2017,8 +2093,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:13,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:13,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:14,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:14,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2027,8 +2103,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2037,140 +2113,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:14,336 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:14,337 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:50:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:16,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:16,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:18,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:18,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:19,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:19,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:21,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:21,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:22,357 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:22,358 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:42:15,773 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:15,773 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -2196,7 +2140,8 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	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:433)
@@ -2220,9 +2165,62 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:50:23,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:23,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+	... 14 common frames omitted
+2023-05-30 18:42:15,804 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:15,804 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 14 common frames omitted
+2023-05-30 18:42:16,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:16,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2231,8 +2229,88 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:23,240 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:23,243 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:42:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:18,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:18,016 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:21,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:21,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:22,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:22,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:23,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:23,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:24,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:24,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:24,281 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:24,282 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2258,7 +2336,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -2266,7 +2345,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -2333,8 +2413,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:24,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:24,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2343,8 +2423,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:24,345 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:24,346 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:42:25,806 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:25,807 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -2370,7 +2450,8 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	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:433)
@@ -2394,9 +2475,9 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:50:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+	... 14 common frames omitted
+2023-05-30 18:42:26,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:26,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2405,8 +2486,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:26,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:26,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2415,8 +2496,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:28,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:28,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2425,8 +2506,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:28,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:28,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2435,8 +2516,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:30,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:30,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2445,8 +2526,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:30,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:30,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:31,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:31,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2455,8 +2536,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:31,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:31,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:32,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:32,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2465,8 +2546,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:32,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:32,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:33,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:33,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2475,8 +2556,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:33,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:33,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:34,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:34,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2485,8 +2566,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:34,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:34,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2495,8 +2576,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:34,347 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:34,348 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:42:35,819 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:35,822 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -2522,7 +2603,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -2547,8 +2628,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:50:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:36,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:36,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2557,8 +2638,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:36,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:36,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:37,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:37,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2567,8 +2648,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:37,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:37,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2577,8 +2658,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:39,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:39,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2587,8 +2668,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:39,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:39,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:40,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:40,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2597,8 +2678,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:40,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:40,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:41,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:41,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2607,8 +2688,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:41,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:41,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2617,8 +2698,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:43,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:43,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2627,8 +2708,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:43,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:43,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2637,8 +2718,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:43,232 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:43,235 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:42:44,298 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:44,299 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2664,7 +2745,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -2672,7 +2754,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -2739,8 +2822,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -2749,140 +2832,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:44,350 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:44,351 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:50:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:46,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:46,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:48,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:48,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:50,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:50,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:51,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:52,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:52,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:52,374 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:52,375 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:42:45,776 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:45,777 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -2908,7 +2859,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -2933,28 +2884,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:50:53,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:53,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:54,364 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:54,365 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:42:45,822 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:45,824 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -2980,7 +2911,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -3005,8 +2936,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:50:55,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:55,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:46,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:46,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3015,8 +2946,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:56,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:56,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:47,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:47,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3025,8 +2956,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:48,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3035,8 +2966,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:58,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:58,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:49,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:49,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3045,8 +2976,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:50:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:50,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3055,8 +2986,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:51,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:51,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3065,8 +2996,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:01,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:01,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3075,8 +3006,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:53,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:53,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3085,8 +3016,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:42:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3095,8 +3026,160 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:03,229 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:03,232 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:42:55,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:55,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:55,834 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:55,835 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:42:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:57,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:57,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:58,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:58,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:42:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:42:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:01,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:01,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:02,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:02,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:03,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:03,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:04,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:04,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:04,351 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:04,353 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3122,7 +3205,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -3130,7 +3214,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -3197,8 +3282,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:04,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:04,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3207,8 +3292,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:04,369 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:04,370 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:43:05,836 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:05,840 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -3234,7 +3319,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -3259,8 +3344,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:51:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:06,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:06,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3269,8 +3354,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:06,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:06,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:07,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:07,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3279,8 +3364,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3289,8 +3374,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:09,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:09,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3299,8 +3384,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:09,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:09,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3309,8 +3394,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:10,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:10,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:11,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:11,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3319,8 +3404,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:11,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:11,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:12,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:12,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3329,8 +3414,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:12,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:12,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3339,8 +3424,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:13,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:13,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:14,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:14,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3349,8 +3434,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:15,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:15,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3359,140 +3444,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:14,370 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:14,372 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:51:15,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:15,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:16,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:16,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:18,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:18,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:20,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:20,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:21,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:21,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:22,375 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:22,376 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:43:15,791 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:15,793 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -3518,7 +3471,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -3543,8 +3496,60 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:51:23,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:23,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:15,946 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:15,948 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:43:16,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:16,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3553,8 +3558,88 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:23,210 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:23,213 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:43:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:18,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:18,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:19,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:19,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:21,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:21,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:22,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:22,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:23,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:23,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:24,354 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:24,357 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3580,7 +3665,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -3588,7 +3674,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -3655,8 +3742,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:24,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:24,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:25,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:25,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3665,8 +3752,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:24,376 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:24,377 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:43:25,948 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:25,950 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -3692,7 +3779,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -3717,8 +3804,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:51:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3727,8 +3814,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:26,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:26,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:27,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:27,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3737,8 +3824,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:28,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:28,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3747,8 +3834,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:28,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:28,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3757,8 +3844,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:30,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:30,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3767,8 +3854,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:30,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:30,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:31,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:31,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3777,8 +3864,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:31,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:31,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3787,8 +3874,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:32,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:32,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:33,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:33,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3797,8 +3884,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:33,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:33,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:34,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:34,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3807,8 +3894,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:34,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3817,8 +3904,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:34,377 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:34,378 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:43:35,951 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:35,952 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -3844,7 +3931,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -3869,8 +3956,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:51:35,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:35,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:36,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:36,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3879,8 +3966,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:36,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:36,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:37,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:37,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3889,8 +3976,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:37,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:37,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:38,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:38,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3899,8 +3986,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:38,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:38,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3909,8 +3996,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:39,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:39,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:40,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:40,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3919,8 +4006,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:40,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:40,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:41,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:41,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3929,8 +4016,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:41,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:41,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:42,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:42,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3939,8 +4026,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:43,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:43,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3949,8 +4036,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:43,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:43,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3959,8 +4046,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:43,246 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:43,249 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:43:44,282 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:44,283 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -3986,7 +4073,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -3994,7 +4082,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -4061,8 +4150,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:45,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:45,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4071,140 +4160,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:44,387 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:44,388 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:51:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:46,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:46,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:48,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:48,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:50,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:50,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:51,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:51,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:52,392 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:52,394 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:43:45,794 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:45,796 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -4230,7 +4187,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -4255,28 +4212,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:51:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:54,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:54,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:54,393 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:54,394 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:43:45,966 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:45,968 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -4302,7 +4239,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -4327,8 +4264,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:51:55,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:55,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:46,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:46,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4337,8 +4274,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4347,8 +4284,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:57,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:57,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:48,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:48,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4357,8 +4294,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:58,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:58,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:49,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:49,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4367,8 +4304,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:51:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:50,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4377,8 +4314,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:51,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:51,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4387,8 +4324,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:01,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:01,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4397,8 +4334,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:02,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:02,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:53,016 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:53,016 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4407,8 +4344,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:03,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:03,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:43:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4417,8 +4354,160 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:03,262 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:03,265 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:43:55,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:55,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:55,979 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:55,980 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:43:56,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:56,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:58,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:58,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:43:59,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:43:59,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:00,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:00,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:01,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:01,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:02,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:02,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:03,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:03,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:04,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:04,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:04,278 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:04,279 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4444,7 +4533,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -4452,7 +4542,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -4519,8 +4610,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:04,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:04,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4529,8 +4620,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:04,395 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:04,396 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:44:05,982 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:05,984 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -4556,7 +4647,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -4581,8 +4672,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:52:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:06,016 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:06,016 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4591,8 +4682,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:06,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:06,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4601,8 +4692,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:08,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:08,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4611,8 +4702,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:09,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:09,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4621,8 +4712,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:09,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:09,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:10,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:10,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4631,8 +4722,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:10,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:10,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:11,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:11,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4641,8 +4732,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:12,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:12,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4651,8 +4742,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:12,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:12,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:13,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:13,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4661,8 +4752,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4671,8 +4762,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:14,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:14,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:15,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:15,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4681,140 +4772,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:14,397 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:14,398 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:52:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:16,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:16,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:18,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:18,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:19,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:19,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:20,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:20,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:21,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:21,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:22,404 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:22,405 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:44:15,808 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:15,809 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -4840,7 +4799,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -4865,8 +4824,60 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:52:23,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:23,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:15,998 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:15,999 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:44:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4875,8 +4886,88 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:23,223 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:23,227 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:44:17,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:17,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:19,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:19,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:20,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:20,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:21,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:21,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:22,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:22,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:23,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:23,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:24,278 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:24,279 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4902,7 +4993,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -4910,7 +5002,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -4977,8 +5070,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:24,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:24,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:25,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:25,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -4987,8 +5080,18 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:24,398 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:24,399 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:44:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:26,000 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:26,001 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -5014,7 +5117,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -5039,8 +5142,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:52:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:27,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:27,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5049,8 +5152,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:26,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:26,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:28,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:28,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5059,8 +5162,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5069,8 +5172,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:30,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:30,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5079,8 +5182,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:29,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:29,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:31,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:31,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5089,8 +5192,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:30,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:30,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5099,8 +5202,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:31,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:31,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:33,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:33,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5109,8 +5212,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:34,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:34,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5119,8 +5222,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:33,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:33,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5129,8 +5232,9 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:34,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:34,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:36,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:36,013 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:36,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5139,8 +5243,7 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:34,400 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:34,401 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:44:36,014 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -5166,7 +5269,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -5191,8 +5294,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:52:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:37,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:37,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5201,8 +5304,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:36,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:36,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:38,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:38,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5211,8 +5314,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:37,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:37,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5221,8 +5324,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:40,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:40,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5231,8 +5334,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:39,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:39,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:41,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:41,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5241,8 +5344,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:40,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:40,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5251,8 +5354,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:41,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:41,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:43,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:43,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5261,8 +5364,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5271,18 +5374,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:43,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:43,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:43,225 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:43,228 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:44:44,267 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:44,268 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5308,7 +5401,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -5316,7 +5410,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -5383,8 +5478,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:44,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:44,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:45,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:45,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5393,140 +5488,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:44,402 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:44,403 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:52:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:46,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:46,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:48,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:49,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:49,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:50,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:51,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:51,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:52,406 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:52,408 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:44:45,809 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:45,810 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -5552,7 +5515,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -5577,8 +5540,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:52:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:46,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:46,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5587,18 +5550,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:54,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:54,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:54,403 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:54,404 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:44:46,014 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:46,015 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -5624,7 +5577,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -5649,8 +5602,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:52:55,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:55,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:47,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:47,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5659,8 +5612,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:56,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:56,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:48,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5669,8 +5622,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:49,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:49,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5679,8 +5632,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:58,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:58,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:50,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:50,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5689,8 +5642,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:52:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:51,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5699,8 +5652,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:52,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:52,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5709,8 +5662,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:01,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:01,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5719,8 +5672,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:02,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:02,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:54,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:54,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5729,8 +5682,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:03,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:03,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:44:55,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:55,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5739,8 +5692,150 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:03,227 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:03,230 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:44:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:56,016 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:56,017 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:44:57,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:57,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:58,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:58,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:44:59,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:44:59,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:00,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:00,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:01,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:01,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:02,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:02,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:04,277 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:04,278 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5766,7 +5861,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -5774,7 +5870,8 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	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:205)
@@ -5841,8 +5938,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:04,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:04,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:05,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:05,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5851,8 +5948,18 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:04,404 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:04,406 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:45:06,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:06,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:06,021 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:06,023 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -5878,7 +5985,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -5903,8 +6010,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:53:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:07,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:07,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5913,8 +6020,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:06,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:06,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5923,8 +6030,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:09,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:09,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5933,8 +6040,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5943,8 +6050,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:09,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:09,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5953,8 +6060,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:12,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:12,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5963,8 +6070,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5973,8 +6080,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:12,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:12,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:14,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:14,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5983,8 +6090,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:15,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:15,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -5993,150 +6100,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:14,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:14,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:14,407 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:14,408 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:53:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:18,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:18,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:19,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:19,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:21,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:21,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:22,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:22,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:22,408 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:22,409 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:45:15,811 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:15,812 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -6162,7 +6127,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -6187,8 +6152,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:53:23,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:23,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6197,8 +6162,140 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:23,242 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:23,244 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:45:16,027 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:16,046 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:45:17,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:17,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:18,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:18,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:20,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:20,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:21,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:21,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:23,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:23,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:24,267 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:24,269 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6224,7 +6321,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -6232,7 +6330,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -6299,8 +6397,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:25,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:25,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6309,8 +6407,18 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:24,408 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:24,410 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:45:26,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:26,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:26,055 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:26,056 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -6336,7 +6444,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -6361,8 +6469,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:53:25,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:25,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6371,8 +6479,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:28,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:28,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6381,8 +6489,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:27,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:27,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6391,8 +6499,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:28,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:28,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:30,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:30,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6401,8 +6509,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:31,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:31,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6411,8 +6519,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:30,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:30,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:32,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:32,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6421,8 +6529,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:31,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:31,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:33,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:33,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6431,8 +6539,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:32,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:32,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:34,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:34,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6441,8 +6549,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:33,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:33,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6451,8 +6559,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:34,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:34,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:36,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:36,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6461,8 +6569,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:34,421 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:34,423 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:45:36,058 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:36,060 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -6488,7 +6596,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -6513,8 +6621,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:53:35,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:35,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:37,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:37,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6523,8 +6631,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:36,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:36,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:38,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:38,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6533,8 +6641,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:37,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:37,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6543,8 +6651,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:38,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:38,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:40,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:40,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6553,8 +6661,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:41,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:41,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6563,8 +6671,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:40,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:40,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:42,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:42,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6573,8 +6681,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:41,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:41,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:43,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:43,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6583,8 +6691,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:44,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:44,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6593,18 +6701,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:43,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:43,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:43,248 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:43,251 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:45:44,267 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:44,268 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6630,7 +6728,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -6638,7 +6737,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -6705,8 +6804,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:45,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:45,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6715,140 +6814,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:44,437 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:44,439 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:53:45,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:45,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:46,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:46,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:48,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:48,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:50,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:50,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:51,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:51,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:52,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:52,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:52,410 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:52,411 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:45:45,813 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:45,814 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -6874,7 +6841,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -6899,8 +6866,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:53:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:46,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:46,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6909,18 +6876,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:54,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:54,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:54,448 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:54,449 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:45:46,060 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:46,062 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -6946,7 +6903,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -6971,8 +6928,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:53:55,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:55,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6981,8 +6938,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:56,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:56,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:48,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:48,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -6991,8 +6948,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:57,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:57,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7001,8 +6958,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:58,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:58,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:50,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:50,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7011,8 +6968,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:59,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:53:59,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:51,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7021,8 +6978,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:00,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:00,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:52,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:52,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7031,8 +6988,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:01,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:01,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:53,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:53,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7041,8 +6998,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7051,8 +7008,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:45:55,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:55,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7061,8 +7018,150 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:03,249 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:03,252 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:45:56,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:56,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:56,063 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:56,064 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:45:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:58,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:58,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:45:59,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:45:59,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:00,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:00,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:01,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:01,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:02,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:02,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:04,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:04,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:04,279 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:04,281 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7088,7 +7187,8 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -7096,7 +7196,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -7163,8 +7263,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7173,8 +7273,18 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:04,449 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:04,452 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:46:06,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:06,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:06,065 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:06,066 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -7200,7 +7310,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -7225,8 +7335,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:54:05,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:05,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7235,8 +7345,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:06,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:06,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7245,8 +7355,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:07,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:07,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:09,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:09,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7255,8 +7365,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7265,8 +7375,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:09,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:09,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7275,8 +7385,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:10,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:10,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:12,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:12,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7285,8 +7395,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:11,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:11,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7295,8 +7405,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:12,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:12,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:14,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:14,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7305,8 +7415,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:13,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:13,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7315,150 +7425,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:14,465 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:14,467 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:54:15,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:15,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:17,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:17,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:20,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:20,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:21,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:21,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:22,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:22,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:22,411 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:22,412 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:46:15,815 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:15,816 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -7484,7 +7452,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -7509,8 +7477,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:54:23,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:23,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:16,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:16,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7519,8 +7487,140 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:23,254 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:23,257 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:46:16,066 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:16,067 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:46:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:19,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:19,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:21,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:21,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:22,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:22,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:23,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:23,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:24,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:24,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:24,281 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:24,283 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7546,7 +7646,7 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor140.invoke(Unknown Source)
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 	at java.lang.reflect.Method.invoke(Method.java:498)
 	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -7554,7 +7654,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -7621,8 +7721,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7631,8 +7731,18 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:24,468 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:24,469 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:46:26,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:26,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:26,067 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:26,069 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -7658,7 +7768,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -7683,8 +7793,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:54:25,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:25,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:27,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:27,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7693,8 +7803,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:26,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:26,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7703,8 +7813,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:29,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:29,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7713,8 +7823,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:28,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:28,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:30,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:30,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7723,8 +7833,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:29,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:29,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:31,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:31,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7733,8 +7843,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:30,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:30,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:32,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:32,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7743,8 +7853,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:31,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:31,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:33,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:33,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7753,8 +7863,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:32,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:32,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:34,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7763,8 +7873,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:33,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:33,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:35,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:35,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7773,8 +7883,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:34,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:36,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:36,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7783,8 +7893,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:34,482 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:34,483 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:46:36,070 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:36,071 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -7810,7 +7920,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -7835,8 +7945,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:54:35,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:35,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:37,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:37,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7845,8 +7955,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:36,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:36,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:38,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:38,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7855,8 +7965,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:37,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:37,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7865,8 +7975,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:38,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:38,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:40,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:40,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7875,8 +7985,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:41,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:41,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7885,8 +7995,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:40,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:40,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:42,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:42,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7895,8 +8005,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:41,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:41,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:43,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:43,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7905,8 +8015,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:42,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:42,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7915,18 +8025,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:43,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:43,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:43,227 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:43,230 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:46:44,278 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:44,280 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -7952,7 +8052,7 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor140.invoke(Unknown Source)
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 	at java.lang.reflect.Method.invoke(Method.java:498)
 	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -7960,7 +8060,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -8027,8 +8127,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:44,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:44,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:45,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:45,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8037,140 +8137,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:44,496 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:44,498 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:54:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:46,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:46,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:47,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:47,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:48,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:49,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:49,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:50,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:50,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:51,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:52,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:52,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:52,414 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:52,415 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:46:45,816 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:45,817 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -8196,7 +8164,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -8221,8 +8189,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:54:53,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:53,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:46,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:46,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8231,18 +8199,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:54,498 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:54,500 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:46:46,071 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:46,072 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -8268,7 +8226,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -8293,8 +8251,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:54:55,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:55,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:47,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:47,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8303,8 +8261,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:56,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:56,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:48,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8313,8 +8271,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:49,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:49,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8323,8 +8281,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:58,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:58,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:50,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8333,8 +8291,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:54:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:51,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:51,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8343,8 +8301,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:52,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:52,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8353,8 +8311,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:01,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:01,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8363,8 +8321,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:54,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:54,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8373,8 +8331,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:46:55,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:55,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8383,8 +8341,150 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:03,231 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:03,234 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:46:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:56,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:56,081 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:56,083 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:46:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:58,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:58,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:46:59,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:46:59,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:00,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:00,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:01,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:01,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:02,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:02,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:03,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:03,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:04,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:04,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:04,284 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:04,286 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8410,7 +8510,7 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor140.invoke(Unknown Source)
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 	at java.lang.reflect.Method.invoke(Method.java:498)
 	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -8418,7 +8518,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -8485,8 +8585,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:05,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:05,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8495,8 +8595,18 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:04,505 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:04,507 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:47:06,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:06,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:06,083 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:06,084 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -8522,7 +8632,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -8547,8 +8657,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:55:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8557,8 +8667,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:06,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:06,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:08,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:08,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8567,8 +8677,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:09,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:09,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8577,8 +8687,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8587,8 +8697,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:09,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:09,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8597,8 +8707,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:10,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:10,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:12,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:12,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8607,8 +8717,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:11,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:11,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8617,8 +8727,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:12,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:12,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:14,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:14,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8627,8 +8737,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8637,150 +8747,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:14,508 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:14,509 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:55:15,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:15,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:17,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:17,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:19,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:19,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:21,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:21,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:22,417 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:22,418 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:47:15,818 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:15,819 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -8806,7 +8774,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -8831,8 +8799,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:55:23,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:23,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:16,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:16,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8841,8 +8809,140 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:23,232 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:23,236 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:47:16,090 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:16,091 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:47:17,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:17,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:18,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:18,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:21,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:21,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:22,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:22,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:23,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:23,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:24,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:24,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:24,288 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:24,291 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8868,7 +8968,7 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor140.invoke(Unknown Source)
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 	at java.lang.reflect.Method.invoke(Method.java:498)
 	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -8876,7 +8976,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -8943,8 +9043,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:25,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:25,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -8953,8 +9053,18 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:24,524 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:24,525 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:47:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:26,091 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:26,092 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -8980,7 +9090,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -9005,8 +9115,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:55:25,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:25,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:27,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:27,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9015,8 +9125,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9025,8 +9135,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:27,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:27,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:29,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:29,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9035,8 +9145,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:30,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:30,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9045,8 +9155,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:29,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:29,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:31,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:31,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9055,8 +9165,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:30,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:30,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9065,8 +9175,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:31,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:31,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:33,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:33,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9075,8 +9185,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:34,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9085,8 +9195,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:33,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:33,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:35,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:35,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9095,8 +9205,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:34,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:36,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:36,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9105,8 +9215,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:34,531 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:34,533 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:47:36,096 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:36,098 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -9132,7 +9242,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -9157,8 +9267,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:55:35,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:35,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:37,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:37,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9167,8 +9277,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:36,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:36,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:38,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:38,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9177,8 +9287,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:37,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:37,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9187,8 +9297,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:40,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:40,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9197,8 +9307,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:39,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:39,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:41,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:41,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9207,8 +9317,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:40,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:40,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9217,8 +9327,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:41,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:41,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:43,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:43,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9227,8 +9337,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:42,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:42,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9237,18 +9347,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:43,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:43,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:43,234 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:43,237 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:47:44,354 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:44,359 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9274,7 +9374,7 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor140.invoke(Unknown Source)
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 	at java.lang.reflect.Method.invoke(Method.java:498)
 	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -9282,7 +9382,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -9349,8 +9449,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:44,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:44,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:45,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:45,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9359,140 +9459,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:44,539 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:44,540 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:55:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:46,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:46,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:48,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:49,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:49,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:50,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:51,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:51,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:52,429 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:52,430 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:47:45,821 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:45,823 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -9518,7 +9486,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -9543,8 +9511,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:55:53,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:53,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:46,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:46,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9553,18 +9521,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:54,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:54,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:54,542 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:54,543 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:47:46,100 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:46,102 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -9590,7 +9548,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -9615,8 +9573,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:55:55,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:55,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:47,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:47,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9625,8 +9583,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:56,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:56,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:48,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:48,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9635,8 +9593,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:57,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:57,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9645,8 +9603,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:58,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:58,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:50,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:50,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9655,8 +9613,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:59,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:55:59,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:51,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9665,8 +9623,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:00,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:00,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9675,8 +9633,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:01,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:01,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:53,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:53,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9685,8 +9643,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:54,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:54,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9695,8 +9653,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:47:55,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:55,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9705,8 +9663,150 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:03,231 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:03,237 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:47:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:56,406 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:56,408 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:47:57,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:57,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:58,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:58,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:47:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:47:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:01,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:01,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:02,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:02,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:04,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:04,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:04,296 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:04,300 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9732,7 +9832,7 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor140.invoke(Unknown Source)
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 	at java.lang.reflect.Method.invoke(Method.java:498)
 	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -9740,7 +9840,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -9807,8 +9907,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9817,8 +9917,18 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:04,543 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:04,545 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:48:06,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:06,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:06,412 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:06,413 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -9844,7 +9954,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -9869,8 +9979,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:56:05,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:05,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:07,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:07,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9879,8 +9989,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:06,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:06,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9889,8 +9999,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:09,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:09,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9899,8 +10009,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:08,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:08,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9909,8 +10019,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:09,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:09,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9919,8 +10029,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:10,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:10,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:12,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:12,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9929,8 +10039,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:11,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:11,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9939,8 +10049,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:12,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:12,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:14,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:14,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9949,8 +10059,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:13,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:13,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:15,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:15,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -9959,150 +10069,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:14,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:14,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:14,549 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:14,550 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:56:15,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:15,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:20,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:20,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:21,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:21,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:22,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:22,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:22,437 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:22,439 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
+2023-05-30 18:48:15,824 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:15,825 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
@@ -10128,7 +10096,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -10153,8 +10121,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:56:23,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:23,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:16,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:16,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10163,8 +10131,140 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:23,219 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:23,221 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
+2023-05-30 18:48:16,413 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:16,414 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
+	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
+	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
+	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
+	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
+	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
+	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
+	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
+	at java.lang.Thread.run(Thread.java:748)
+Caused by: org.apache.ibatis.exceptions.PersistenceException: 
+### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
+### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
+### The error occurred while executing a query
+### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
+	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:433)
+	... 8 common frames omitted
+Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
+	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
+	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
+	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
+	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
+	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
+	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
+	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
+	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
+	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
+	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
+	... 13 common frames omitted
+2023-05-30 18:48:17,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:17,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:19,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:19,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:21,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:21,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:22,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:22,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:23,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:23,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:24,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:24,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:24,284 INFO [XNIO-1 task-2] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:24,287 WARN [XNIO-1 task-2] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10190,7 +10290,7 @@
 	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
 	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor140.invoke(Unknown Source)
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 	at java.lang.reflect.Method.invoke(Method.java:498)
 	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
@@ -10198,7 +10298,7 @@
 	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
 	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor133.invoke(Unknown Source)
 	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:205)
@@ -10265,8 +10365,8 @@
 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
 	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:24,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:24,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10275,8 +10375,18 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:24,551 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:24,552 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
+2023-05-30 18:48:26,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:26,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:26,415 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:26,418 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 ### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
@@ -10302,7 +10412,7 @@
 	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
+	at sun.reflect.GeneratedMethodAccessor125.invoke(Unknown Source)
 	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:433)
@@ -10327,8 +10437,8 @@
 	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
 	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
 	... 13 common frames omitted
-2023-05-20 00:56:25,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:25,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10337,8 +10447,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:28,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:28,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10347,8 +10457,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:27,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:27,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:29,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:29,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10357,8 +10467,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:30,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:30,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10367,8 +10477,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:29,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:29,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:31,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:31,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10377,8 +10487,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:30,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:30,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10387,8 +10497,8 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:31,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:31,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+2023-05-30 18:48:33,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:33,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
 java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
 	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
 	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
@@ -10397,10539 +10507,13 @@
 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
 	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:32,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:32,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:33,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:33,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:34,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:34,552 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:34,553 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:56:35,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:35,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:36,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:36,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:37,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:37,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:39,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:39,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:40,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:40,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:41,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:41,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:42,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:42,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:43,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:43,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:43,250 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:43,253 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:44,554 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:44,555 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:56:45,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:45,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:46,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:46,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:47,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:47,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:48,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:49,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:49,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:50,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:51,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:52,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:52,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:52,439 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:52,440 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:56:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:54,570 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:54,572 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:56:55,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:55,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:58,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:58,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:59,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:56:59,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:00,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:00,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:01,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:01,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:03,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:03,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:03,255 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:03,257 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:04,582 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:04,583 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:57:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:06,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:06,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:07,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:07,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:09,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:09,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:12,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:12,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:13,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:13,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:14,597 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:14,599 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:57:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:16,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:16,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:18,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:18,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:19,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:19,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:21,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:21,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:22,440 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:22,441 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:57:23,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:23,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:23,244 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:23,246 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:24,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:24,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:24,603 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:24,606 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:57:25,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:25,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:27,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:27,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:30,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:30,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:31,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:31,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:33,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:33,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:34,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:34,606 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:34,607 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:57:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:36,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:36,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:37,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:37,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:40,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:40,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:41,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:41,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:42,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:42,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:43,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:43,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:43,237 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:43,240 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:44,607 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:44,609 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:57:45,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:45,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:46,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:46,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:47,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:47,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:48,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:48,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:49,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:49,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:50,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:51,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:51,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:52,452 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:52,454 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:57:53,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:53,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:54,622 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:54,623 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:57:55,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:55,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:56,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:56,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:58,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:58,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:59,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:57:59,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:00,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:00,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:01,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:01,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:03,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:03,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:03,229 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:03,231 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:04,628 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:04,629 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:58:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:06,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:06,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:08,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:08,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:09,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:09,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:12,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:12,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:13,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:13,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:14,633 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:14,635 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:58:15,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:15,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:17,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:17,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:19,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:19,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:20,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:20,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:21,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:21,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:22,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:22,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:22,463 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:22,465 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:58:23,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:23,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:23,231 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:23,233 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:24,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:24,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:24,646 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:24,648 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:58:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:26,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:26,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:27,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:27,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:29,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:29,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:30,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:30,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:31,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:31,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:33,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:33,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:34,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:34,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:34,648 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:34,650 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:58:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:36,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:36,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:37,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:37,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:39,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:39,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:40,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:40,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:41,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:41,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:43,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:43,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:43,233 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:43,235 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:44,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:44,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:44,651 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:44,653 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:58:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:46,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:46,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:47,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:47,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:48,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:48,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:50,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:51,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:51,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:52,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:52,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:52,466 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:52,467 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:58:53,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:53,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:54,653 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:54,655 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:58:55,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:55,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:58,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:58,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:59,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:58:59,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:01,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:01,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:03,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:03,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:03,303 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:03,307 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:04,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:04,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:04,658 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:04,660 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:59:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:06,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:06,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:07,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:07,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:09,016 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:09,016 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:12,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:12,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:13,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:13,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:14,660 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:14,662 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:59:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:16,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:16,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:18,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:18,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:21,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:21,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:22,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:22,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:22,468 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:23,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:22,472 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:59:23,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:23,777 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:23,811 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:24,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:24,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:24,665 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:24,680 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:59:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:25,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:27,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:27,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:29,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:29,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:30,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:30,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:31,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:31,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:33,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:33,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:34,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:34,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:34,682 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:34,684 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:59:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:36,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:36,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:37,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:37,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:39,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:39,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:40,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:40,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:41,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:41,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:43,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:43,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:43,247 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:43,252 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:44,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:44,685 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:44,687 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:59:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:46,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:46,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:48,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:48,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:50,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:50,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:51,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:52,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:52,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:53,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:53,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:53,009 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:53,011 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:59:54,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:54,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:54,689 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:54,691 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 00:59:55,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:55,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:56,013 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:56,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:58,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:58,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 00:59:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:01,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:01,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:03,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:03,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:03,226 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:03,229 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:04,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:04,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:04,692 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:04,694 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:00:05,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:05,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:06,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:06,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:09,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:09,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:10,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:10,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:11,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:11,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:12,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:12,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:14,695 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:14,697 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:00:15,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:15,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:16,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:16,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:18,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:18,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:21,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:21,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:23,011 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:23,013 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:00:23,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:23,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:23,236 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:23,239 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:24,699 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:24,701 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:00:25,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:25,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:27,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:27,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:28,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:28,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:30,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:30,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:31,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:31,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:32,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:32,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:33,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:33,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:34,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:34,713 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:34,715 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:00:35,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:35,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:36,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:36,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:37,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:37,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:40,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:40,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:41,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:41,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:42,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:42,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:43,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:43,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:43,245 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:43,249 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:44,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:44,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:44,726 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:44,729 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:00:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:46,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:46,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:48,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:48,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:50,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:50,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:51,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:52,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:52,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:53,014 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:53,016 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:00:54,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:54,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:54,736 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:54,738 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:00:55,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:55,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:57,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:57,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:58,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:58,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:59,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:00:59,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:01,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:01,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:03,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:03,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:03,230 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:03,234 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:04,739 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:04,741 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:01:05,012 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:05,013 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:06,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:06,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:07,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:08,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:08,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:09,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:09,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:12,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:12,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:14,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:14,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:14,741 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:14,743 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:01:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:16,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:16,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:17,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:17,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:19,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:19,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:20,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:20,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:21,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:21,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:23,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:23,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:23,018 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:23,019 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:01:23,223 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:23,226 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:24,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:24,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:24,745 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:24,747 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:01:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:26,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:26,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:29,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:29,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:30,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:30,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:31,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:31,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:33,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:33,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:34,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:34,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:34,747 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:34,749 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:01:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:36,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:36,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:37,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:37,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:38,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:38,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:39,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:39,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:40,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:40,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:41,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:41,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:43,008 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:43,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:43,225 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:43,229 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:44,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:44,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:44,750 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:44,752 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:01:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:46,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:46,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:47,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:47,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:48,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:49,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:49,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:50,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:50,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:51,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:51,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:53,021 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:53,023 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:01:54,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:54,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:54,752 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:54,753 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:01:55,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:55,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:56,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:56,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:57,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:57,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:58,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:58,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:59,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:01:59,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:01,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:01,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:03,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:03,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:03,219 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:03,223 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:04,755 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:04,756 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:02:05,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:05,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:06,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:06,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:07,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:07,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:08,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:08,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:09,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:09,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:10,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:10,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:12,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:12,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:13,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:13,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:14,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:14,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:14,765 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:14,766 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:02:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:17,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:17,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:20,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:20,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:21,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:21,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:22,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:22,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:23,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:23,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:23,034 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:23,037 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:02:23,260 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:23,267 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:24,767 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:24,769 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:02:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:26,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:26,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:27,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:27,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:28,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:28,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:29,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:29,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:30,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:30,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:31,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:31,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:32,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:32,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:33,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:33,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:34,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:34,782 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:34,785 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:02:35,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:35,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:36,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:36,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:37,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:37,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:39,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:39,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:40,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:40,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:41,009 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:41,009 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:42,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:42,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:43,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:43,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:43,266 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:43,271 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:44,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:44,011 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:44,796 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:44,798 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:02:45,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:45,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:46,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:46,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:47,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:47,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:48,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:50,006 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:50,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:51,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:51,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:52,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:52,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:53,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:53,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:53,039 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:53,040 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:02:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:54,799 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:54,800 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:02:55,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:55,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:57,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:57,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:58,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:58,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:59,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:02:59,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:00,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:00,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:01,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:01,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:02,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:02,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:03,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:03,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:03,254 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:03,257 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:04,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:04,812 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:04,814 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:03:05,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:05,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:06,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:06,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:07,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:08,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:08,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:09,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:09,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:10,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:10,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:12,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:12,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:13,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:13,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:14,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:14,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:14,814 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:14,816 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:03:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:15,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:16,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:16,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:17,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:17,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:19,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:19,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:20,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:20,006 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:21,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:21,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:22,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:22,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:23,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:23,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:23,041 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:23,043 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:03:23,230 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:23,234 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:24,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:24,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:24,818 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:24,820 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:03:25,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:25,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:26,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:26,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:27,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:27,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:28,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:28,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:29,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:29,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:30,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:30,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:31,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:31,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:32,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:32,007 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:33,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:33,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:34,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:34,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:34,822 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:34,823 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:03:35,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:35,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:36,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:36,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:37,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:37,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:38,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:38,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:39,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:39,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:40,011 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:40,012 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:41,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:41,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:42,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:42,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:43,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:43,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:43,249 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:43,255 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:44,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:44,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:44,825 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:44,827 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:03:45,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:45,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:46,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:46,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:47,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:47,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:48,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:48,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:49,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:49,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:50,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:50,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:51,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:51,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:52,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:52,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:53,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:53,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:53,043 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:53,045 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:03:54,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:54,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:54,829 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:54,831 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:03:55,004 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:55,004 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:56,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:56,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:57,003 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:57,003 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:58,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:58,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:59,014 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:03:59,014 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:00,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:00,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:01,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:01,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:02,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:02,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:03,007 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:03,008 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:03,216 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:03,220 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:04,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:04,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:04,841 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:04,844 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:04:05,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:05,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:06,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:06,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:07,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:07,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:08,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:08,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:09,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:09,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:10,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:10,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:11,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:11,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:12,005 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:12,005 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:13,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:13,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:14,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:14,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:14,847 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:14,850 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:04:15,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:15,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:16,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:16,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:17,002 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:17,002 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:18,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:18,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:19,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:19,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:20,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:20,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:21,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:21,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:22,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:22,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:23,015 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:23,015 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:23,047 INFO [xxl-job, admin JobRegistryMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:23,048 ERROR [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 81] >>>>>>>>>>> xxl-job, job registry monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy120.findByAddressType(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobRegistryMonitorHelper$1.run(JobRegistryMonitorHelper.java:34)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobGroupMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobGroupDao.findByAddressType
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:04:23,227 INFO [XNIO-1 task-1] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:23,230 WARN [XNIO-1 task-1] o.s.b.a.j.DataSourceHealthIndicator [AbstractHealthIndicator.java : 94] DataSource health check failed
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:330)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.getProduct(DataSourceHealthIndicator.java:122)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doDataSourceHealthCheck(DataSourceHealthIndicator.java:105)
-	at org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator.doHealthCheck(DataSourceHealthIndicator.java:100)
-	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82)
-	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:103)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.getHealth(HealthEndpointWebExtension.java:46)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getLoggedHealth(HealthEndpointSupport.java:172)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:145)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getAggregateContribution(HealthEndpointSupport.java:156)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:141)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:110)
-	at org.springframework.boot.actuate.health.HealthEndpointSupport.getHealth(HealthEndpointSupport.java:81)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:89)
-	at org.springframework.boot.actuate.health.HealthEndpointWebExtension.health(HealthEndpointWebExtension.java:78)
-	at sun.reflect.GeneratedMethodAccessor181.invoke(Unknown Source)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:498)
-	at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:282)
-	at org.springframework.boot.actuate.endpoint.invoke.reflect.ReflectiveOperationInvoker.invoke(ReflectiveOperationInvoker.java:74)
-	at org.springframework.boot.actuate.endpoint.annotation.AbstractDiscoveredOperation.invoke(AbstractDiscoveredOperation.java:60)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$ServletWebOperationAdapter.handle(AbstractWebMvcEndpointHandlerMapping.java:353)
-	at org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(AbstractWebMvcEndpointHandlerMapping.java:458)
-	at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
-	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:205)
-	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
-	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
-	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
-	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
-	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1067)
-	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
-	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
-	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:497)
-	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
-	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584)
-	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
-	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
-	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
-	at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
-	at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
-	at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
-	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
-	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
-	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
-	at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
-	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
-	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
-	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
-	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
-	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
-	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
-	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:275)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:134)
-	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:131)
-	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
-	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
-	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:255)
-	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:79)
-	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:100)
-	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
-	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:852)
-	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
-	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
-	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
-	at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:24,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:24,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:24,851 INFO [xxl-job, admin JobFailMonitorHelper] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:24,853 ERROR [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 90] >>>>>>>>>>> xxl-job, job fail monitor thread error:{}
-org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)
-	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
-	at com.sun.proxy.$Proxy119.selectList(Unknown Source)
-	at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)
-	at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:139)
-	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:76)
-	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)
-	at com.sun.proxy.$Proxy122.findFailJobLogIds(Unknown Source)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobFailMonitorHelper$1.run(JobFailMonitorHelper.java:49)
-	at java.lang.Thread.run(Thread.java:748)
-Caused by: org.apache.ibatis.exceptions.PersistenceException: 
-### Error querying database.  Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-### The error may exist in file [C:\java_workspace\GIT-VCI-UBCS\ubcs\Source\UBCS\ubcs-ops\ubcs-xxljob-admin\target\classes\mybatis-mapper\XxlJobLogMapper.xml]
-### The error may involve com.vci.ubcs.xxl.job.admin.dao.XxlJobLogDao.findFailJobLogIds
-### The error occurred while executing a query
-### Cause: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:150)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141)
-	at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
-	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:433)
-	... 8 common frames omitted
-Caused by: java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159)
-	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117)
-	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:82)
-	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:68)
-	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:338)
-	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:84)
-	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
-	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326)
-	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
-	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
-	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148)
-	... 13 common frames omitted
-2023-05-20 01:04:25,010 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:25,010 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:26,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
-2023-05-20 01:04:26,000 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
-java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
-	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
-	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
-	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
-	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
-	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
-	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:26,030 WARN [Thread-15] c.a.nacos.common.notify.NotifyCenter [NotifyCenter.java : 136] [NotifyCenter] Start destroying Publisher
-2023-05-20 01:04:26,030 WARN [Thread-7] c.a.n.c.http.HttpClientBeanHolder [HttpClientBeanHolder.java : 108] [HttpClientBeanHolder] Start destroying common HttpClient
-2023-05-20 01:04:26,031 WARN [Thread-15] c.a.nacos.common.notify.NotifyCenter [NotifyCenter.java : 153] [NotifyCenter] Destruction of the end
-2023-05-20 01:04:26,034 WARN [Thread-7] c.a.n.c.http.HttpClientBeanHolder [HttpClientBeanHolder.java : 114] [HttpClientBeanHolder] Destruction of the end
-2023-05-20 01:04:26,176 INFO [SpringApplicationShutdownHook] io.undertow [Undertow.java : 259] stopping server: Undertow - 2.2.18.Final
-2023-05-20 01:04:26,224 INFO [SpringApplicationShutdownHook] io.undertow.servlet [ServletContextImpl.java : 382] Destroying Spring FrameworkServlet 'dispatcherServlet'
-2023-05-20 01:04:26,243 ERROR [SpringApplicationShutdownHook] c.a.cloud.nacos.discovery.NacosWatch [NacosWatch.java : 180] namingService unsubscribe failed, properties:NacosDiscoveryProperties{serverAddr='localhost:8848', username='', password='', endpoint='', namespace='', watchDelay=30000, logName='', service='ubcs-xxljob-admin', weight=1.0, clusterName='DEFAULT', group='DEFAULT_GROUP', namingLoadCacheAtStart='false', metadata={preserved.register.source=SPRING_CLOUD, management.context-path=/xxl-job-admin/actuator}, registerEnabled=true, ip='192.168.237.1', networkInterface='', port=36013, secure=false, accessKey='', secretKey='', heartBeatInterval=null, heartBeatTimeout=null, ipDeleteTimeout=null, instanceEnabled=true, ephemeral=true, failureToleranceEnabled=false}, ipDeleteTimeout=null, failFast=true}
+2023-05-30 18:48:33,569 WARN [Thread-14] c.a.nacos.common.notify.NotifyCenter [NotifyCenter.java : 136] [NotifyCenter] Start destroying Publisher
+2023-05-30 18:48:33,569 WARN [Thread-6] c.a.n.c.http.HttpClientBeanHolder [HttpClientBeanHolder.java : 108] [HttpClientBeanHolder] Start destroying common HttpClient
+2023-05-30 18:48:33,570 WARN [Thread-14] c.a.nacos.common.notify.NotifyCenter [NotifyCenter.java : 153] [NotifyCenter] Destruction of the end
+2023-05-30 18:48:33,576 WARN [Thread-6] c.a.n.c.http.HttpClientBeanHolder [HttpClientBeanHolder.java : 114] [HttpClientBeanHolder] Destruction of the end
+2023-05-30 18:48:33,617 INFO [SpringApplicationShutdownHook] io.undertow [Undertow.java : 259] stopping server: Undertow - 2.2.18.Final
+2023-05-30 18:48:33,639 INFO [SpringApplicationShutdownHook] io.undertow.servlet [ServletContextImpl.java : 382] Destroying Spring FrameworkServlet 'dispatcherServlet'
+2023-05-30 18:48:33,647 ERROR [SpringApplicationShutdownHook] c.a.cloud.nacos.discovery.NacosWatch [NacosWatch.java : 180] namingService unsubscribe failed, properties:NacosDiscoveryProperties{serverAddr='127.0.0.1:8848', username='', password='', endpoint='', namespace='', watchDelay=30000, logName='', service='ubcs-xxljob-admin', weight=1.0, clusterName='DEFAULT', group='DEFAULT_GROUP', namingLoadCacheAtStart='false', metadata={preserved.register.source=SPRING_CLOUD, management.context-path=/xxl-job-admin/actuator}, registerEnabled=true, ip='192.168.237.1', networkInterface='', port=36013, secure=false, accessKey='', secretKey='', heartBeatInterval=null, heartBeatTimeout=null, ipDeleteTimeout=null, instanceEnabled=true, ephemeral=true, failureToleranceEnabled=false}, ipDeleteTimeout=null, failFast=true}
 java.lang.IllegalStateException: UT015023: This Context has been already destroyed
 	at io.undertow.servlet.spec.ServletContextImpl.getDeploymentInfo(ServletContextImpl.java:211)
 	at io.undertow.servlet.spec.ServletContextImpl.getInitParameterNames(ServletContextImpl.java:449)
@@ -20953,11 +10537,21 @@
 	at java.lang.Iterable.forEach(Iterable.java:75)
 	at org.springframework.boot.SpringApplicationShutdownHook.run(SpringApplicationShutdownHook.java:114)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:26,563 INFO [SpringApplicationShutdownHook] c.a.c.n.r.NacosServiceRegistry [NacosServiceRegistry.java : 94] De-registering from Nacos Server now...
-2023-05-20 01:04:26,568 WARN [SpringApplicationShutdownHook] o.s.c.a.CommonAnnotationBeanPostProcessor [InitDestroyAnnotationBeanPostProcessor.java : 185] Destroy method on bean with name 'nacosAutoServiceRegistration' threw an exception: java.lang.IllegalStateException: UT015023: This Context has been already destroyed
-2023-05-20 01:04:27,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 203] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread stop
-2023-05-20 01:04:28,001 INFO [xxl-job, admin JobScheduleHelper#ringThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 264] >>>>>>>>>>> xxl-job, JobScheduleHelper#ringThread stop
-2023-05-20 01:04:28,921 INFO [SpringApplicationShutdownHook] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 351] >>>>>>>>>>> xxl-job, JobScheduleHelper stop
-2023-05-20 01:04:28,922 INFO [SpringApplicationShutdownHook] c.v.u.x.j.a.c.t.JobTriggerPoolHelper [JobTriggerPoolHelper.java : 60] >>>>>>>>> xxl-job trigger thread pool shutdown success.
-2023-05-20 01:04:28,922 INFO [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 104] >>>>>>>>>>> xxl-job, job fail monitor thread stop
-2023-05-20 01:04:28,923 INFO [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 92] >>>>>>>>>>> xxl-job, job registry monitor thread stop
+2023-05-30 18:48:33,866 INFO [SpringApplicationShutdownHook] c.a.c.n.r.NacosServiceRegistry [NacosServiceRegistry.java : 94] De-registering from Nacos Server now...
+2023-05-30 18:48:33,872 WARN [SpringApplicationShutdownHook] o.s.c.a.CommonAnnotationBeanPostProcessor [InitDestroyAnnotationBeanPostProcessor.java : 185] Destroy method on bean with name 'nacosAutoServiceRegistration' threw an exception: java.lang.IllegalStateException: UT015023: This Context has been already destroyed
+2023-05-30 18:48:34,000 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] com.zaxxer.hikari.HikariDataSource [HikariDataSource.java : 110] HikariPool-1 - Starting...
+2023-05-30 18:48:34,001 ERROR [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 146] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread error:{}
+java.lang.RuntimeException: Driver oracle.jdbc.OracleDriver claims to not accept jdbcUrl, ${blade.datasource.job.dev.url}
+	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110)
+	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:331)
+	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:114)
+	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108)
+	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
+	at com.vci.ubcs.xxl.job.admin.core.thread.JobScheduleHelper$1.run(JobScheduleHelper.java:68)
+	at java.lang.Thread.run(Thread.java:748)
+2023-05-30 18:48:35,001 INFO [xxl-job, admin JobScheduleHelper#scheduleThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 203] >>>>>>>>>>> xxl-job, JobScheduleHelper#scheduleThread stop
+2023-05-30 18:48:36,001 INFO [xxl-job, admin JobScheduleHelper#ringThread] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 264] >>>>>>>>>>> xxl-job, JobScheduleHelper#ringThread stop
+2023-05-30 18:48:36,211 INFO [SpringApplicationShutdownHook] c.v.u.x.j.a.c.t.JobScheduleHelper [JobScheduleHelper.java : 351] >>>>>>>>>>> xxl-job, JobScheduleHelper stop
+2023-05-30 18:48:36,211 INFO [SpringApplicationShutdownHook] c.v.u.x.j.a.c.t.JobTriggerPoolHelper [JobTriggerPoolHelper.java : 60] >>>>>>>>> xxl-job trigger thread pool shutdown success.
+2023-05-30 18:48:36,212 INFO [xxl-job, admin JobFailMonitorHelper] c.v.u.x.j.a.c.t.JobFailMonitorHelper [JobFailMonitorHelper.java : 104] >>>>>>>>>>> xxl-job, job fail monitor thread stop
+2023-05-30 18:48:36,212 INFO [xxl-job, admin JobRegistryMonitorHelper] c.v.u.x.j.a.c.t.JobRegistryMonitorHelper [JobRegistryMonitorHelper.java : 92] >>>>>>>>>>> xxl-job, job registry monitor thread stop
diff --git a/Source/data/applogs/xxl-job/xxl-job-admin.log.2023-05-20.zip b/Source/data/applogs/xxl-job/xxl-job-admin.log.2023-05-20.zip
new file mode 100644
index 0000000..e59b4b6
--- /dev/null
+++ b/Source/data/applogs/xxl-job/xxl-job-admin.log.2023-05-20.zip
Binary files differ
diff --git a/Source/data/applogs/xxl-job/xxl-job-admin.log.2023-05-26.zip b/Source/data/applogs/xxl-job/xxl-job-admin.log.2023-05-26.zip
new file mode 100644
index 0000000..ed4fcc0
--- /dev/null
+++ b/Source/data/applogs/xxl-job/xxl-job-admin.log.2023-05-26.zip
Binary files differ
diff --git a/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log b/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log
index 2df48da..631c998 100644
--- a/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log
+++ b/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log
@@ -1,13 +1,93 @@
-2023-05-20 00:08:12,304 INFO [nacos-grpc-client-executor-localhost-1081] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [3e635850-c2bd-4d08-b6fd-e5343c60783f] Receive server push request, request = ClientDetectionRequest, requestId = 140
-2023-05-20 00:08:12,403 INFO [nacos-grpc-client-executor-localhost-1081] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [3e635850-c2bd-4d08-b6fd-e5343c60783f] Ack server push request, request = ClientDetectionRequest, requestId = 140
-2023-05-20 00:48:54,086 WARN [XNIO-1 task-2] o.s.b.a.health.HealthEndpointSupport [HealthEndpointSupport.java : 181] Health contributor org.springframework.boot.actuate.autoconfigure.health.HealthEndpointConfiguration$AdaptedReactiveHealthContributors$1 (redis) took 336256ms to respond
-2023-05-20 00:48:54,145 INFO [lettuce-eventExecutorLoop-1-15] i.l.core.protocol.ConnectionWatchdog [AbstractInternalLogger.java : 171] Reconnecting, last destination was /1.12.225.193:6379
-2023-05-20 00:48:54,382 INFO [lettuce-nioEventLoop-6-3] i.l.c.protocol.ReconnectionHandler [ReconnectionHandler.java : 174] Reconnected to 1.12.225.193:6379
-2023-05-20 00:48:56,127 INFO [nacos-grpc-client-executor-localhost-1093] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [c279855f-5634-4159-84ec-09347150fd37_config-0] Receive server push request, request = ClientDetectionRequest, requestId = 172
-2023-05-20 00:48:56,130 INFO [nacos-grpc-client-executor-localhost-1084] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [3e635850-c2bd-4d08-b6fd-e5343c60783f] Receive server push request, request = ClientDetectionRequest, requestId = 176
-2023-05-20 00:48:56,130 INFO [nacos-grpc-client-executor-localhost-1084] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [3e635850-c2bd-4d08-b6fd-e5343c60783f] Ack server push request, request = ClientDetectionRequest, requestId = 176
-2023-05-20 00:48:56,131 INFO [nacos-grpc-client-executor-localhost-1093] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [c279855f-5634-4159-84ec-09347150fd37_config-0] Ack server push request, request = ClientDetectionRequest, requestId = 172
-2023-05-20 00:49:14,980 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:40:10,251 INFO [background-preinit] o.h.validator.internal.util.Version [Version.java : 21] HV000001: Hibernate Validator 6.2.3.Final
+2023-05-30 18:40:11,223 INFO [main] c.a.n.p.a.s.c.ClientAuthPluginManager [ClientAuthPluginManager.java : 56] [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.impl.NacosClientAuthServiceImpl success.
+2023-05-30 18:40:11,224 INFO [main] c.a.n.p.a.s.c.ClientAuthPluginManager [ClientAuthPluginManager.java : 56] [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.ram.RamClientAuthServiceImpl success.
+2023-05-30 18:40:16,558 WARN [main] c.a.c.n.c.NacosPropertySourceBuilder [NacosPropertySourceBuilder.java : 87] Ignore the empty nacos configuration and get it based on dataId[ubcs-xxljob] & group[DEFAULT_GROUP]
+2023-05-30 18:40:16,568 WARN [main] c.a.c.n.c.NacosPropertySourceBuilder [NacosPropertySourceBuilder.java : 87] Ignore the empty nacos configuration and get it based on dataId[ubcs-xxljob.yaml] & group[DEFAULT_GROUP]
+2023-05-30 18:40:16,576 WARN [main] c.a.c.n.c.NacosPropertySourceBuilder [NacosPropertySourceBuilder.java : 87] Ignore the empty nacos configuration and get it based on dataId[ubcs-xxljob-dev.yaml] & group[DEFAULT_GROUP]
+2023-05-30 18:40:16,579 INFO [main] o.s.c.b.c.PropertySourceBootstrapConfiguration [PropertySourceBootstrapConfiguration.java : 109] Located property source: [BootstrapPropertySource {name='bootstrapProperties-ubcs-xxljob-dev.yaml,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-ubcs-xxljob.yaml,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-ubcs-xxljob,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-ubcs-dev.yaml,DEFAULT_GROUP'}, BootstrapPropertySource {name='bootstrapProperties-ubcs.yaml,DEFAULT_GROUP'}]
+2023-05-30 18:40:16,616 INFO [main] c.v.ubcs.job.executor.JobApplication [SpringApplication.java : 640] The following 1 profile is active: "dev"
+2023-05-30 18:40:18,929 INFO [main] o.s.d.r.c.RepositoryConfigurationDelegate [RepositoryConfigurationDelegate.java : 262] Multiple Spring Data modules found, entering strict repository configuration mode
+2023-05-30 18:40:18,932 INFO [main] o.s.d.r.c.RepositoryConfigurationDelegate [RepositoryConfigurationDelegate.java : 132] Bootstrapping Spring Data Redis repositories in DEFAULT mode.
+2023-05-30 18:40:18,971 INFO [main] o.s.d.r.c.RepositoryConfigurationDelegate [RepositoryConfigurationDelegate.java : 201] Finished Spring Data repository scanning in 11 ms. Found 0 Redis repository interfaces.
+2023-05-30 18:40:19,425 INFO [main] o.s.cloud.context.scope.GenericScope [GenericScope.java : 283] BeanFactory id=8a87525c-4e09-336f-9e65-667cebc7cd92
+2023-05-30 18:40:19,434 INFO [main] o.s.c.l.p.BladePropertySourcePostProcessor [BladePropertySourcePostProcessor.java : 150] BladePropertySourcePostProcessor init.
+2023-05-30 18:40:19,459 INFO [main] o.s.c.l.p.BladePropertySourcePostProcessor [BladePropertySourcePostProcessor.java : 62] BladePropertySourcePostProcessor process @BladePropertySource bean.
+2023-05-30 18:40:19,520 WARN [main] o.s.c.l.p.BladePropertySourcePostProcessor [BladePropertySourcePostProcessor.java : 67] Not found @BladePropertySource on spring bean class.
+2023-05-30 18:40:19,888 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration' of type [org.springframework.cloud.commons.config.CommonsConfigAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:19,893 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:19,895 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'loadBalancerClientsDefaultsMappingsProvider' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerDefaultMappingsProviderAutoConfiguration$$Lambda$490/425842522] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:19,899 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'defaultsBindHandlerAdvisor' of type [org.springframework.cloud.commons.config.DefaultsBindHandlerAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:19,962 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'spring.cloud.sentinel-com.alibaba.cloud.sentinel.SentinelProperties' of type [com.alibaba.cloud.sentinel.SentinelProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:19,970 INFO [main] o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker [PostProcessorRegistrationDelegate.java : 376] Bean 'com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration' of type [com.alibaba.cloud.sentinel.custom.SentinelAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
+2023-05-30 18:40:20,334 WARN [main] io.undertow.websockets.jsr [Bootstrap.java : 68] UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2023-05-30 18:40:20,380 INFO [main] io.undertow.servlet [ServletContextImpl.java : 382] Initializing Spring embedded WebApplicationContext
+2023-05-30 18:40:20,381 INFO [main] o.s.b.w.s.c.ServletWebServerApplicationContext [ServletWebServerApplicationContext.java : 292] Root WebApplicationContext: initialization completed in 3723 ms
+2023-05-30 18:40:20,880 INFO [main] c.v.u.j.executor.config.XxlJobConfig [XxlJobConfig.java : 43] >>>>>>>>>>> xxl-job config init.
+2023-05-30 18:40:20,902 INFO [main] c.x.job.core.executor.XxlJobExecutor [XxlJobExecutor.java : 211] >>>>>>>>>>> xxl-job register jobhandler success, name:demoJobHandler, jobHandler:com.xxl.job.core.handler.impl.MethodJobHandler@111a7973[class com.vci.ubcs.job.executor.jobhandler.SampleXxlJob#demoJobHandler]
+2023-05-30 18:40:20,903 INFO [main] c.x.job.core.executor.XxlJobExecutor [XxlJobExecutor.java : 211] >>>>>>>>>>> xxl-job register jobhandler success, name:httpJobHandler, jobHandler:com.xxl.job.core.handler.impl.MethodJobHandler@1a2773a8[class com.vci.ubcs.job.executor.jobhandler.SampleXxlJob#httpJobHandler]
+2023-05-30 18:40:20,903 INFO [main] c.x.job.core.executor.XxlJobExecutor [XxlJobExecutor.java : 211] >>>>>>>>>>> xxl-job register jobhandler success, name:demoJobHandler2, jobHandler:com.xxl.job.core.handler.impl.MethodJobHandler@78b0ec3a[class com.vci.ubcs.job.executor.jobhandler.SampleXxlJob#demoJobHandler2]
+2023-05-30 18:40:20,903 INFO [main] c.x.job.core.executor.XxlJobExecutor [XxlJobExecutor.java : 211] >>>>>>>>>>> xxl-job register jobhandler success, name:shardingJobHandler, jobHandler:com.xxl.job.core.handler.impl.MethodJobHandler@46612bfc[class com.vci.ubcs.job.executor.jobhandler.SampleXxlJob#shardingJobHandler]
+2023-05-30 18:40:20,903 INFO [main] c.x.job.core.executor.XxlJobExecutor [XxlJobExecutor.java : 211] >>>>>>>>>>> xxl-job register jobhandler success, name:commandJobHandler, jobHandler:com.xxl.job.core.handler.impl.MethodJobHandler@4f213a2[class com.vci.ubcs.job.executor.jobhandler.SampleXxlJob#commandJobHandler]
+2023-05-30 18:40:21,573 INFO [main] c.a.c.s.SentinelWebMvcConfigurer [SentinelWebMvcConfigurer.java : 52] [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
+2023-05-30 18:40:21,682 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/error], produces [text/html]}" onto org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController#errorHtml(HttpServletRequest, HttpServletResponse)
+2023-05-30 18:40:21,683 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{ [/error]}" onto org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController#error(HttpServletRequest)
+2023-05-30 18:40:21,684 INFO [main] o.s.c.c.v.BladeRequestMappingHandlerMapping [BladeRequestMappingHandlerMapping.java : 99] Mapped "{GET [/test/testRequest]}" onto com.vci.ubcs.job.executor.controller.TestController#testRequest(String)
+2023-05-30 18:40:24,382 INFO [main] com.alibaba.nacos.client.naming [InitUtils.java : 62] initializer namespace from System Property : null
+2023-05-30 18:40:24,385 INFO [main] com.alibaba.nacos.client.naming [InitUtils.java : 66] initializer namespace from System Environment :null
+2023-05-30 18:40:24,388 INFO [main] com.alibaba.nacos.client.naming [InitUtils.java : 73] initializer namespace from System Property :null
+2023-05-30 18:40:24,418 INFO [main] c.a.n.p.a.s.c.ClientAuthPluginManager [ClientAuthPluginManager.java : 56] [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.impl.NacosClientAuthServiceImpl success.
+2023-05-30 18:40:24,420 INFO [main] c.a.n.p.a.s.c.ClientAuthPluginManager [ClientAuthPluginManager.java : 56] [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.ram.RamClientAuthServiceImpl success.
+2023-05-30 18:40:24,440 INFO [main] c.alibaba.nacos.common.remote.client [RpcClientFactory.java : 95] [RpcClientFactory] create a new rpc client of 8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9
+2023-05-30 18:40:24,441 INFO [main] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] RpcClient init label, labels = {module=naming, source=sdk}
+2023-05-30 18:40:24,448 INFO [main] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
+2023-05-30 18:40:24,449 INFO [main] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
+2023-05-30 18:40:24,451 INFO [main] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
+2023-05-30 18:40:24,452 INFO [main] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] Try to connect to server on start up, server: {serverIp = '127.0.0.1', server main port = 8848}
+2023-05-30 18:40:24,593 INFO [main] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] Success to connect to server [127.0.0.1:8848] on start up, connectionId = 1685443224475_127.0.0.1_63184
+2023-05-30 18:40:24,596 INFO [com.alibaba.nacos.client.remote.worker] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] Notify connected event to listeners.
+2023-05-30 18:40:24,596 INFO [main] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
+2023-05-30 18:40:24,601 INFO [com.alibaba.nacos.client.remote.worker] com.alibaba.nacos.client.naming [NamingGrpcRedoService.java : 76] Grpc connection connect
+2023-05-30 18:40:24,602 INFO [main] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$376/700837405
+2023-05-30 18:40:25,034 INFO [main] o.s.b.a.e.web.EndpointLinksResolver [EndpointLinksResolver.java : 58] Exposing 20 endpoint(s) beneath base path '/actuator'
+2023-05-30 18:40:27,551 INFO [main] o.s.b.f.a.AutowiredAnnotationBeanPostProcessor [AutowiredAnnotationBeanPostProcessor.java : 367] Inconsistent constructor declaration on bean with name 'org.springblade.core.launch.server.ServerInfo': single autowire-marked constructor flagged as optional - this constructor is effectively required since there is no default constructor to fall back to: public org.springblade.core.launch.server.ServerInfo(org.springframework.boot.autoconfigure.web.ServerProperties)
+2023-05-30 18:40:29,465 WARN [main] o.s.c.l.c.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger [LoadBalancerCacheAutoConfiguration.java : 82] Spring Cloud LoadBalancer is currently working with the default cache. While this cache implementation is useful for development and tests, it's recommended to use Caffeine cache in production.You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
+2023-05-30 18:40:29,562 INFO [main] c.x.r.r.p.XxlRpcProviderFactory [XxlRpcProviderFactory.java : 197] >>>>>>>>>>> xxl-rpc, provider factory add service success. serviceKey = com.xxl.job.core.biz.ExecutorBiz, serviceBean = class com.xxl.job.core.biz.impl.ExecutorBizImpl
+2023-05-30 18:40:30,731 INFO [main] com.alibaba.nacos.client.naming [NamingClientProxyDelegate.java : 141] [SUBSCRIBE-SERVICE] service:ubcs-xxljob, group:DEFAULT_GROUP, clusters:DEFAULT 
+2023-05-30 18:40:30,761 INFO [main] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 181] init new ips(0) service: DEFAULT_GROUP@@ubcs-xxljob@@DEFAULT -> []
+2023-05-30 18:40:30,784 INFO [main] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 166] current ips:(0) service: DEFAULT_GROUP@@ubcs-xxljob@@DEFAULT -> []
+2023-05-30 18:40:30,794 INFO [Thread-51] com.xxl.rpc.remoting.net.Server [NettyHttpServer.java : 66] >>>>>>>>>>> xxl-rpc remoting server start success, nettype = com.xxl.rpc.remoting.net.impl.netty_http.server.NettyHttpServer, port = 7018
+2023-05-30 18:40:30,822 INFO [main] io.undertow [Undertow.java : 120] starting server: Undertow - 2.2.18.Final
+2023-05-30 18:40:30,844 INFO [main] org.xnio [Xnio.java : 95] XNIO version 3.8.7.Final
+2023-05-30 18:40:30,881 INFO [main] org.xnio.nio [NioXnio.java : 58] XNIO NIO Implementation Version 3.8.7.Final
+2023-05-30 18:40:31,028 INFO [main] org.jboss.threads [Version.java : 52] JBoss Threads version 3.1.0.Final
+2023-05-30 18:40:31,159 INFO [main] o.s.b.w.e.undertow.UndertowWebServer [UndertowWebServer.java : 119] Undertow started on port(s) 36009 (http)
+2023-05-30 18:40:31,170 INFO [main] com.alibaba.nacos.client.naming [NamingGrpcClientProxy.java : 111] [REGISTER-SERVICE] public registering service ubcs-xxljob with instance Instance{instanceId='null', ip='192.168.237.1', port=36009, weight=1.0, healthy=true, enabled=true, ephemeral=true, clusterName='DEFAULT', serviceName='null', metadata={preserved.register.source=SPRING_CLOUD}}
+2023-05-30 18:40:31,187 INFO [main] c.a.c.n.r.NacosServiceRegistry [NacosServiceRegistry.java : 75] nacos registry, DEFAULT_GROUP ubcs-xxljob 192.168.237.1:36009 register finished
+2023-05-30 18:40:31,336 INFO [nacos-grpc-client-executor-127.0.0.1-10] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] Receive server push request, request = NotifySubscriberRequest, requestId = 1587
+2023-05-30 18:40:31,343 INFO [nacos-grpc-client-executor-127.0.0.1-10] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 181] init new ips(1) service: DEFAULT_GROUP@@ubcs-xxljob -> [{"ip":"192.168.237.1","port":36009,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"DEFAULT","serviceName":"DEFAULT_GROUP@@ubcs-xxljob","metadata":{"preserved.register.source":"SPRING_CLOUD"},"instanceHeartBeatInterval":5000,"instanceHeartBeatTimeOut":15000,"ipDeleteTimeout":30000}]
+2023-05-30 18:40:31,344 INFO [nacos-grpc-client-executor-127.0.0.1-10] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 166] current ips:(1) service: DEFAULT_GROUP@@ubcs-xxljob -> [{"ip":"192.168.237.1","port":36009,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"DEFAULT","serviceName":"DEFAULT_GROUP@@ubcs-xxljob","metadata":{"preserved.register.source":"SPRING_CLOUD"},"instanceHeartBeatInterval":5000,"instanceHeartBeatTimeOut":15000,"ipDeleteTimeout":30000}]
+2023-05-30 18:40:31,346 INFO [nacos-grpc-client-executor-127.0.0.1-10] c.alibaba.nacos.common.remote.client [LoggerUtils.java : 60] [8db2c736-5dfa-4c32-b8c9-fa6c3ddacbb9] Ack server push request, request = NotifySubscriberRequest, requestId = 1587
+2023-05-30 18:40:31,760 INFO [com.alibaba.nacos.client.naming.updater.0] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 234] new ips(1) service: DEFAULT_GROUP@@ubcs-xxljob@@DEFAULT -> [{"ip":"192.168.237.1","port":36009,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"DEFAULT","serviceName":"DEFAULT_GROUP@@ubcs-xxljob","metadata":{"preserved.register.source":"SPRING_CLOUD"},"instanceHeartBeatInterval":5000,"instanceHeartBeatTimeOut":15000,"ipDeleteTimeout":30000}]
+2023-05-30 18:40:31,762 INFO [com.alibaba.nacos.client.naming.updater.0] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 166] current ips:(1) service: DEFAULT_GROUP@@ubcs-xxljob@@DEFAULT -> [{"ip":"192.168.237.1","port":36009,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"DEFAULT","serviceName":"DEFAULT_GROUP@@ubcs-xxljob","metadata":{"preserved.register.source":"SPRING_CLOUD"},"instanceHeartBeatInterval":5000,"instanceHeartBeatTimeOut":15000,"ipDeleteTimeout":30000}]
+2023-05-30 18:40:32,070 INFO [main] o.s.core.launch.StartEventListener [StartEventListener.java : 45] ---[UBCS-XXLJOB]---鍚姩瀹屾垚锛屽綋鍓嶄娇鐢ㄧ殑绔彛:[36009]锛岀幆澧冨彉閲�:[dev]---
+2023-05-30 18:40:32,098 INFO [main] c.v.ubcs.job.executor.JobApplication [StartupInfoLogger.java : 61] Started JobApplication in 23.74 seconds (JVM running for 26.324)
+2023-05-30 18:40:32,110 INFO [main] c.a.n.client.config.impl.CacheData [CacheData.java : 65] nacos.cache.data.init.snapshot = true 
+2023-05-30 18:40:32,113 INFO [main] c.a.n.c.config.impl.ClientWorker [ClientWorker.java : 373] [fixed-127.0.0.1_8848] [subscribe] ubcs-dev.yaml+DEFAULT_GROUP
+2023-05-30 18:40:32,115 INFO [main] c.a.n.client.config.impl.CacheData [CacheData.java : 180] [fixed-127.0.0.1_8848] [add-listener] ok, tenant=, dataId=ubcs-dev.yaml, group=DEFAULT_GROUP, cnt=1
+2023-05-30 18:40:32,116 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs-dev.yaml, group=DEFAULT_GROUP
+2023-05-30 18:40:32,117 INFO [main] c.a.n.c.config.impl.ClientWorker [ClientWorker.java : 373] [fixed-127.0.0.1_8848] [subscribe] ubcs-xxljob+DEFAULT_GROUP
+2023-05-30 18:40:32,117 INFO [main] c.a.n.client.config.impl.CacheData [CacheData.java : 180] [fixed-127.0.0.1_8848] [add-listener] ok, tenant=, dataId=ubcs-xxljob, group=DEFAULT_GROUP, cnt=1
+2023-05-30 18:40:32,118 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs-xxljob, group=DEFAULT_GROUP
+2023-05-30 18:40:32,120 INFO [main] c.a.n.c.config.impl.ClientWorker [ClientWorker.java : 373] [fixed-127.0.0.1_8848] [subscribe] ubcs.yaml+DEFAULT_GROUP
+2023-05-30 18:40:32,120 INFO [main] c.a.n.client.config.impl.CacheData [CacheData.java : 180] [fixed-127.0.0.1_8848] [add-listener] ok, tenant=, dataId=ubcs.yaml, group=DEFAULT_GROUP, cnt=1
+2023-05-30 18:40:32,121 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs.yaml, group=DEFAULT_GROUP
+2023-05-30 18:40:32,122 INFO [main] c.a.n.c.config.impl.ClientWorker [ClientWorker.java : 373] [fixed-127.0.0.1_8848] [subscribe] ubcs-xxljob.yaml+DEFAULT_GROUP
+2023-05-30 18:40:32,122 INFO [main] c.a.n.client.config.impl.CacheData [CacheData.java : 180] [fixed-127.0.0.1_8848] [add-listener] ok, tenant=, dataId=ubcs-xxljob.yaml, group=DEFAULT_GROUP, cnt=1
+2023-05-30 18:40:32,122 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs-xxljob.yaml, group=DEFAULT_GROUP
+2023-05-30 18:40:32,123 INFO [main] c.a.n.c.config.impl.ClientWorker [ClientWorker.java : 373] [fixed-127.0.0.1_8848] [subscribe] ubcs-xxljob-dev.yaml+DEFAULT_GROUP
+2023-05-30 18:40:32,124 INFO [main] c.a.n.client.config.impl.CacheData [CacheData.java : 180] [fixed-127.0.0.1_8848] [add-listener] ok, tenant=, dataId=ubcs-xxljob-dev.yaml, group=DEFAULT_GROUP, cnt=1
+2023-05-30 18:40:32,124 INFO [main] c.a.c.n.r.NacosContextRefresher [NacosContextRefresher.java : 105] listening config: dataId=ubcs-xxljob-dev.yaml, group=DEFAULT_GROUP
+2023-05-30 18:40:32,857 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -31,8 +111,11 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:14,981 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:49:47,005 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:40:32,858 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:40:32,936 INFO [RMI TCP Connection(5)-192.168.1.46] io.undertow.servlet [ServletContextImpl.java : 382] Initializing Spring DispatcherServlet 'dispatcherServlet'
+2023-05-30 18:40:32,936 INFO [RMI TCP Connection(5)-192.168.1.46] o.s.web.servlet.DispatcherServlet [FrameworkServlet.java : 525] Initializing Servlet 'dispatcherServlet'
+2023-05-30 18:40:32,940 INFO [RMI TCP Connection(5)-192.168.1.46] o.s.web.servlet.DispatcherServlet [FrameworkServlet.java : 547] Completed initialization in 4 ms
+2023-05-30 18:41:04,927 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -56,8 +139,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:49:47,006 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:50:19,032 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:41:04,928 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:41:36,978 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -81,8 +164,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:19,032 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:50:51,094 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:41:36,979 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:42:09,008 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -106,8 +189,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:50:51,095 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:51:23,130 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:42:09,008 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:42:41,038 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -131,8 +214,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:23,133 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:51:55,163 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:42:41,038 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:43:13,081 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -156,8 +239,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:51:55,165 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:52:27,195 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:43:13,179 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:43:45,242 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -181,8 +264,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:27,196 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:52:59,238 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:43:45,243 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:44:17,289 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -206,8 +289,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:52:59,242 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:53:31,298 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:44:17,290 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:44:49,322 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -231,8 +314,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:53:31,299 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:54:03,322 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:44:49,323 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:45:21,341 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -256,8 +339,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:03,323 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:54:35,368 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:45:21,341 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:45:53,370 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -281,8 +364,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:54:35,369 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:55:07,411 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:45:53,371 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:46:25,389 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -306,8 +389,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:07,412 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:55:39,458 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:46:25,389 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:46:57,414 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -331,8 +414,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:55:39,462 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:56:11,496 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:46:57,415 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:47:29,468 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -356,8 +439,8 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:11,502 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:56:43,536 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:47:29,469 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:48:01,505 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -381,8 +464,12 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:56:43,537 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:57:15,582 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:48:01,508 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:48:33,522 WARN [Thread-2] c.a.n.c.http.HttpClientBeanHolder [HttpClientBeanHolder.java : 108] [HttpClientBeanHolder] Start destroying common HttpClient
+2023-05-30 18:48:33,523 WARN [Thread-8] c.a.nacos.common.notify.NotifyCenter [NotifyCenter.java : 136] [NotifyCenter] Start destroying Publisher
+2023-05-30 18:48:33,524 WARN [Thread-8] c.a.nacos.common.notify.NotifyCenter [NotifyCenter.java : 153] [NotifyCenter] Destruction of the end
+2023-05-30 18:48:33,549 WARN [Thread-2] c.a.n.c.http.HttpClientBeanHolder [HttpClientBeanHolder.java : 114] [HttpClientBeanHolder] Destruction of the end
+2023-05-30 18:48:33,546 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -406,339 +493,10 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:15,582 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:57:47,623 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:57:47,625 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:58:19,669 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:19,670 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:58:51,705 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:58:51,707 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:59:23,734 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:23,739 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 00:59:55,791 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 00:59:55,792 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 01:00:27,825 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:27,826 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 01:00:59,876 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:00:59,881 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 01:01:31,905 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:01:31,906 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 01:02:03,944 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:03,946 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 01:02:35,966 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:02:35,967 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 01:03:08,011 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:08,012 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 01:03:40,042 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:03:40,043 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 01:04:12,084 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
-java.net.ConnectException: Connection refused: connect
-	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
-	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
-	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
-	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
-	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
-	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:162)
-	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
-	at java.net.Socket.connect(Socket.java:606)
-	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
-	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
-	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
-	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
-	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
-	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
-	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
-	at com.xxl.job.core.util.XxlJobRemotingUtil.postBody(XxlJobRemotingUtil.java:94)
-	at com.xxl.job.core.biz.client.AdminBizClient.registry(AdminBizClient.java:41)
-	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:48)
-	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:12,085 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
-2023-05-20 01:04:26,066 WARN [Thread-11] c.a.nacos.common.notify.NotifyCenter [NotifyCenter.java : 136] [NotifyCenter] Start destroying Publisher
-2023-05-20 01:04:26,066 WARN [Thread-3] c.a.n.c.http.HttpClientBeanHolder [HttpClientBeanHolder.java : 108] [HttpClientBeanHolder] Start destroying common HttpClient
-2023-05-20 01:04:26,068 WARN [Thread-11] c.a.nacos.common.notify.NotifyCenter [NotifyCenter.java : 153] [NotifyCenter] Destruction of the end
-2023-05-20 01:04:26,074 WARN [Thread-3] c.a.n.c.http.HttpClientBeanHolder [HttpClientBeanHolder.java : 114] [HttpClientBeanHolder] Destruction of the end
-2023-05-20 01:04:26,353 INFO [SpringApplicationShutdownHook] io.undertow [Undertow.java : 259] stopping server: Undertow - 2.2.18.Final
-2023-05-20 01:04:26,453 INFO [SpringApplicationShutdownHook] io.undertow.servlet [ServletContextImpl.java : 382] Destroying Spring FrameworkServlet 'dispatcherServlet'
-2023-05-20 01:04:26,471 ERROR [SpringApplicationShutdownHook] c.a.cloud.nacos.discovery.NacosWatch [NacosWatch.java : 180] namingService unsubscribe failed, properties:NacosDiscoveryProperties{serverAddr='localhost:8848', username='', password='', endpoint='', namespace='', watchDelay=30000, logName='', service='ubcs-xxljob', weight=1.0, clusterName='DEFAULT', group='DEFAULT_GROUP', namingLoadCacheAtStart='false', metadata={preserved.register.source=SPRING_CLOUD}, registerEnabled=true, ip='192.168.237.1', networkInterface='', port=36009, secure=false, accessKey='', secretKey='', heartBeatInterval=null, heartBeatTimeout=null, ipDeleteTimeout=null, instanceEnabled=true, ephemeral=true, failureToleranceEnabled=false}, ipDeleteTimeout=null, failFast=true}
+2023-05-30 18:48:33,549 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 54] >>>>>>>>>>> xxl-job registry fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registry, content=null]
+2023-05-30 18:48:33,720 INFO [SpringApplicationShutdownHook] io.undertow [Undertow.java : 259] stopping server: Undertow - 2.2.18.Final
+2023-05-30 18:48:33,775 INFO [SpringApplicationShutdownHook] io.undertow.servlet [ServletContextImpl.java : 382] Destroying Spring FrameworkServlet 'dispatcherServlet'
+2023-05-30 18:48:33,788 ERROR [SpringApplicationShutdownHook] c.a.cloud.nacos.discovery.NacosWatch [NacosWatch.java : 180] namingService unsubscribe failed, properties:NacosDiscoveryProperties{serverAddr='127.0.0.1:8848', username='', password='', endpoint='', namespace='', watchDelay=30000, logName='', service='ubcs-xxljob', weight=1.0, clusterName='DEFAULT', group='DEFAULT_GROUP', namingLoadCacheAtStart='false', metadata={preserved.register.source=SPRING_CLOUD}, registerEnabled=true, ip='192.168.237.1', networkInterface='', port=36009, secure=false, accessKey='', secretKey='', heartBeatInterval=null, heartBeatTimeout=null, ipDeleteTimeout=null, instanceEnabled=true, ephemeral=true, failureToleranceEnabled=false}, ipDeleteTimeout=null, failFast=true}
 java.lang.IllegalStateException: UT015023: This Context has been already destroyed
 	at io.undertow.servlet.spec.ServletContextImpl.getDeploymentInfo(ServletContextImpl.java:211)
 	at io.undertow.servlet.spec.ServletContextImpl.getInitParameterNames(ServletContextImpl.java:449)
@@ -762,8 +520,8 @@
 	at java.lang.Iterable.forEach(Iterable.java:75)
 	at org.springframework.boot.SpringApplicationShutdownHook.run(SpringApplicationShutdownHook.java:114)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:26,486 INFO [Thread-52] com.xxl.rpc.remoting.net.Server [NettyHttpServer.java : 74] >>>>>>>>>>> xxl-rpc remoting server stop.
-2023-05-20 01:04:28,532 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
+2023-05-30 18:48:33,796 INFO [Thread-51] com.xxl.rpc.remoting.net.Server [NettyHttpServer.java : 74] >>>>>>>>>>> xxl-rpc remoting server stop.
+2023-05-30 18:48:35,829 ERROR [xxl-job, executor ExecutorRegistryThread] c.x.job.core.util.XxlJobRemotingUtil [XxlJobRemotingUtil.java : 146] Connection refused: connect
 java.net.ConnectException: Connection refused: connect
 	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
 	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:81)
@@ -787,36 +545,36 @@
 	at com.xxl.job.core.biz.client.AdminBizClient.registryRemove(AdminBizClient.java:46)
 	at com.xxl.job.core.thread.ExecutorRegistryThread$1.run(ExecutorRegistryThread.java:84)
 	at java.lang.Thread.run(Thread.java:748)
-2023-05-20 01:04:28,533 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 90] >>>>>>>>>>> xxl-job registry-remove fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registryRemove, content=null]
-2023-05-20 01:04:28,533 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 105] >>>>>>>>>>> xxl-job, executor registry thread destory.
-2023-05-20 01:04:28,534 INFO [SpringApplicationShutdownHook] com.xxl.rpc.remoting.net.Server [NettyHttpServer.java : 110] >>>>>>>>>>> xxl-rpc remoting server destroy success.
-2023-05-20 01:04:28,539 INFO [xxl-job, executor TriggerCallbackThread] c.x.j.c.thread.TriggerCallbackThread [TriggerCallbackThread.java : 96] >>>>>>>>>>> xxl-job, executor callback thread destory.
-2023-05-20 01:04:28,539 INFO [Thread-51] c.x.j.c.thread.TriggerCallbackThread [TriggerCallbackThread.java : 126] >>>>>>>>>>> xxl-job, executor retry callback thread destory.
-2023-05-20 01:04:28,567 INFO [SpringApplicationShutdownHook] c.a.c.n.r.NacosServiceRegistry [NacosServiceRegistry.java : 94] De-registering from Nacos Server now...
-2023-05-20 01:04:28,572 WARN [SpringApplicationShutdownHook] o.s.c.a.CommonAnnotationBeanPostProcessor [InitDestroyAnnotationBeanPostProcessor.java : 185] Destroy method on bean with name 'nacosAutoServiceRegistration' threw an exception: java.lang.IllegalStateException: UT015023: This Context has been already destroyed
-2023-05-20 01:04:28,575 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 255] com.alibaba.nacos.client.naming.cache.ServiceInfoHolder do shutdown begin
-2023-05-20 01:04:28,576 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [FailoverReactor.java : 140] com.alibaba.nacos.client.naming.backups.FailoverReactor do shutdown begin
-2023-05-20 01:04:28,577 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [FailoverReactor.java : 142] com.alibaba.nacos.client.naming.backups.FailoverReactor do shutdown stop
-2023-05-20 01:04:28,577 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 257] com.alibaba.nacos.client.naming.cache.ServiceInfoHolder do shutdown stop
-2023-05-20 01:04:28,577 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingClientProxyDelegate.java : 182] com.alibaba.nacos.client.naming.remote.NamingClientProxyDelegate do shutdown begin
-2023-05-20 01:04:28,578 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServiceInfoUpdateService.java : 130] com.alibaba.nacos.client.naming.core.ServiceInfoUpdateService do shutdown begin
-2023-05-20 01:04:28,911 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServiceInfoUpdateService.java : 132] com.alibaba.nacos.client.naming.core.ServiceInfoUpdateService do shutdown stop
-2023-05-20 01:04:28,912 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServerListManager.java : 192] com.alibaba.nacos.client.naming.core.ServerListManager do shutdown begin
-2023-05-20 01:04:28,913 WARN [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientManager.java : 74] [NamingHttpClientManager] Start destroying NacosRestTemplate
-2023-05-20 01:04:28,913 WARN [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientManager.java : 81] [NamingHttpClientManager] Destruction of the end
-2023-05-20 01:04:28,913 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServerListManager.java : 197] com.alibaba.nacos.client.naming.core.ServerListManager do shutdown stop
-2023-05-20 01:04:28,914 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientProxy.java : 527] com.alibaba.nacos.client.naming.remote.http.NamingHttpClientProxy do shutdown begin
-2023-05-20 01:04:28,914 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [BeatReactor.java : 162] com.alibaba.nacos.client.naming.beat.BeatReactor do shutdown begin
-2023-05-20 01:04:28,914 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [BeatReactor.java : 164] com.alibaba.nacos.client.naming.beat.BeatReactor do shutdown stop
-2023-05-20 01:04:28,914 WARN [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientManager.java : 74] [NamingHttpClientManager] Start destroying NacosRestTemplate
-2023-05-20 01:04:28,914 WARN [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientManager.java : 81] [NamingHttpClientManager] Destruction of the end
-2023-05-20 01:04:28,914 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientProxy.java : 530] com.alibaba.nacos.client.naming.remote.http.NamingHttpClientProxy do shutdown stop
-2023-05-20 01:04:28,915 INFO [SpringApplicationShutdownHook] c.alibaba.nacos.common.remote.client [RpcClient.java : 453] Shutdown rpc client, set status to shutdown
-2023-05-20 01:04:28,915 INFO [SpringApplicationShutdownHook] c.alibaba.nacos.common.remote.client [RpcClient.java : 455] Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@20397823[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
-2023-05-20 01:04:28,916 INFO [SpringApplicationShutdownHook] c.alibaba.nacos.common.remote.client [RpcClient.java : 592] Close current connection 1684500039323_127.0.0.1_55961
-2023-05-20 01:04:28,920 INFO [nacos-grpc-client-executor-localhost-1279] c.a.n.c.r.client.grpc.GrpcClient [LoggerUtils.java : 60] [1684500039323_127.0.0.1_55961]Ignore complete event,isRunning:false,isAbandon=false
-2023-05-20 01:04:28,934 INFO [SpringApplicationShutdownHook] c.a.n.c.r.client.grpc.GrpcClient [GrpcClient.java : 129] Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@389f1783[Running, pool size = 4, active threads = 0, queued tasks = 0, completed tasks = 1280]
-2023-05-20 01:04:28,935 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingGrpcRedoService.java : 267] Shutdown grpc redo service executor java.util.concurrent.ScheduledThreadPoolExecutor@510facf0[Running, pool size = 1, active threads = 0, queued tasks = 1, completed tasks = 2052]
-2023-05-20 01:04:28,935 INFO [SpringApplicationShutdownHook] c.a.n.c.a.r.i.CredentialWatcher [CredentialWatcher.java : 105] [null] CredentialWatcher is stopped
-2023-05-20 01:04:28,936 INFO [SpringApplicationShutdownHook] c.a.n.c.a.r.i.CredentialService [CredentialService.java : 99] [null] CredentialService is freed
-2023-05-20 01:04:28,936 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingClientProxyDelegate.java : 189] com.alibaba.nacos.client.naming.remote.NamingClientProxyDelegate do shutdown stop
+2023-05-30 18:48:35,831 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 90] >>>>>>>>>>> xxl-job registry-remove fail, registryParam:RegistryParam{registryGroup='EXECUTOR', registryKey='blade-xxljob', registryValue='127.0.0.1:7018'}, registryResult:ReturnT [code=500, msg=xxl-rpc remoting error(Connection refused: connect), for url : http://127.0.0.1:37012/xxl-job-admin/api/registryRemove, content=null]
+2023-05-30 18:48:35,831 INFO [xxl-job, executor ExecutorRegistryThread] c.x.j.c.t.ExecutorRegistryThread [ExecutorRegistryThread.java : 105] >>>>>>>>>>> xxl-job, executor registry thread destory.
+2023-05-30 18:48:35,831 INFO [SpringApplicationShutdownHook] com.xxl.rpc.remoting.net.Server [NettyHttpServer.java : 110] >>>>>>>>>>> xxl-rpc remoting server destroy success.
+2023-05-30 18:48:35,832 INFO [xxl-job, executor TriggerCallbackThread] c.x.j.c.thread.TriggerCallbackThread [TriggerCallbackThread.java : 96] >>>>>>>>>>> xxl-job, executor callback thread destory.
+2023-05-30 18:48:35,832 INFO [Thread-50] c.x.j.c.thread.TriggerCallbackThread [TriggerCallbackThread.java : 126] >>>>>>>>>>> xxl-job, executor retry callback thread destory.
+2023-05-30 18:48:35,846 INFO [SpringApplicationShutdownHook] c.a.c.n.r.NacosServiceRegistry [NacosServiceRegistry.java : 94] De-registering from Nacos Server now...
+2023-05-30 18:48:35,848 WARN [SpringApplicationShutdownHook] o.s.c.a.CommonAnnotationBeanPostProcessor [InitDestroyAnnotationBeanPostProcessor.java : 185] Destroy method on bean with name 'nacosAutoServiceRegistration' threw an exception: java.lang.IllegalStateException: UT015023: This Context has been already destroyed
+2023-05-30 18:48:35,849 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 255] com.alibaba.nacos.client.naming.cache.ServiceInfoHolder do shutdown begin
+2023-05-30 18:48:35,849 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [FailoverReactor.java : 140] com.alibaba.nacos.client.naming.backups.FailoverReactor do shutdown begin
+2023-05-30 18:48:35,850 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [FailoverReactor.java : 142] com.alibaba.nacos.client.naming.backups.FailoverReactor do shutdown stop
+2023-05-30 18:48:35,850 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServiceInfoHolder.java : 257] com.alibaba.nacos.client.naming.cache.ServiceInfoHolder do shutdown stop
+2023-05-30 18:48:35,850 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingClientProxyDelegate.java : 182] com.alibaba.nacos.client.naming.remote.NamingClientProxyDelegate do shutdown begin
+2023-05-30 18:48:35,850 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServiceInfoUpdateService.java : 130] com.alibaba.nacos.client.naming.core.ServiceInfoUpdateService do shutdown begin
+2023-05-30 18:48:36,172 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServiceInfoUpdateService.java : 132] com.alibaba.nacos.client.naming.core.ServiceInfoUpdateService do shutdown stop
+2023-05-30 18:48:36,172 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServerListManager.java : 192] com.alibaba.nacos.client.naming.core.ServerListManager do shutdown begin
+2023-05-30 18:48:36,173 WARN [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientManager.java : 74] [NamingHttpClientManager] Start destroying NacosRestTemplate
+2023-05-30 18:48:36,173 WARN [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientManager.java : 81] [NamingHttpClientManager] Destruction of the end
+2023-05-30 18:48:36,173 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [ServerListManager.java : 197] com.alibaba.nacos.client.naming.core.ServerListManager do shutdown stop
+2023-05-30 18:48:36,173 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientProxy.java : 527] com.alibaba.nacos.client.naming.remote.http.NamingHttpClientProxy do shutdown begin
+2023-05-30 18:48:36,173 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [BeatReactor.java : 162] com.alibaba.nacos.client.naming.beat.BeatReactor do shutdown begin
+2023-05-30 18:48:36,173 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [BeatReactor.java : 164] com.alibaba.nacos.client.naming.beat.BeatReactor do shutdown stop
+2023-05-30 18:48:36,173 WARN [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientManager.java : 74] [NamingHttpClientManager] Start destroying NacosRestTemplate
+2023-05-30 18:48:36,173 WARN [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientManager.java : 81] [NamingHttpClientManager] Destruction of the end
+2023-05-30 18:48:36,174 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingHttpClientProxy.java : 530] com.alibaba.nacos.client.naming.remote.http.NamingHttpClientProxy do shutdown stop
+2023-05-30 18:48:36,174 INFO [SpringApplicationShutdownHook] c.alibaba.nacos.common.remote.client [RpcClient.java : 453] Shutdown rpc client, set status to shutdown
+2023-05-30 18:48:36,175 INFO [SpringApplicationShutdownHook] c.alibaba.nacos.common.remote.client [RpcClient.java : 455] Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@65207516[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
+2023-05-30 18:48:36,175 INFO [SpringApplicationShutdownHook] c.alibaba.nacos.common.remote.client [RpcClient.java : 592] Close current connection 1685443224475_127.0.0.1_63184
+2023-05-30 18:48:36,176 INFO [nacos-grpc-client-executor-127.0.0.1-129] c.a.n.c.r.client.grpc.GrpcClient [LoggerUtils.java : 60] [1685443224475_127.0.0.1_63184]Ignore complete event,isRunning:false,isAbandon=false
+2023-05-30 18:48:36,183 INFO [SpringApplicationShutdownHook] c.a.n.c.r.client.grpc.GrpcClient [GrpcClient.java : 129] Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@16633451[Running, pool size = 3, active threads = 0, queued tasks = 0, completed tasks = 130]
+2023-05-30 18:48:36,183 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingGrpcRedoService.java : 267] Shutdown grpc redo service executor java.util.concurrent.ScheduledThreadPoolExecutor@427b75af[Running, pool size = 1, active threads = 0, queued tasks = 1, completed tasks = 163]
+2023-05-30 18:48:36,184 INFO [SpringApplicationShutdownHook] c.a.n.c.a.r.i.CredentialWatcher [CredentialWatcher.java : 105] [null] CredentialWatcher is stopped
+2023-05-30 18:48:36,184 INFO [SpringApplicationShutdownHook] c.a.n.c.a.r.i.CredentialService [CredentialService.java : 99] [null] CredentialService is freed
+2023-05-30 18:48:36,184 INFO [SpringApplicationShutdownHook] com.alibaba.nacos.client.naming [NamingClientProxyDelegate.java : 189] com.alibaba.nacos.client.naming.remote.NamingClientProxyDelegate do shutdown stop
diff --git a/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log.2023-05-20.zip b/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log.2023-05-20.zip
new file mode 100644
index 0000000..10ed581
--- /dev/null
+++ b/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log.2023-05-20.zip
Binary files differ
diff --git a/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log.2023-05-26.zip b/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log.2023-05-26.zip
new file mode 100644
index 0000000..f53b3c7
--- /dev/null
+++ b/Source/data/applogs/xxl-job/xxl-job-executor-sample-springboot.log.2023-05-26.zip
Binary files differ

--
Gitblit v1.9.3