├── .gitee
└── ISSUE_TEMPLATE.zh-CN.md
├── .gitignore
├── DEPLOY.md
├── LICENSE
├── README.en.md
├── README.md
├── images
├── banner.png
├── banner2.png
├── deploy
│ ├── rabbitmq.png
│ ├── redis.png
│ ├── 后端jar包.png
│ ├── 后端打包成功.png
│ ├── 后端部署
│ │ ├── docker-compose修改.png
│ │ ├── restart修改.png
│ │ ├── 修改Dockerfile.png
│ │ ├── 后端jar包.png
│ │ ├── 后端启动中.png
│ │ ├── 后端启动成功.png
│ │ ├── 后端所需文件.png
│ │ └── 服务器文件.png
│ ├── 数据库.png
│ ├── 调度器.png
│ └── 调度器
│ │ ├── image1.png
│ │ ├── image2.png
│ │ ├── image3.png
│ │ ├── image4.png
│ │ ├── 个人版实例.png
│ │ ├── 设置访问凭证.png
│ │ └── 验证spark.png
├── framework.png
└── system
│ ├── 10资产地图.png
│ ├── 11数据集成任务.png
│ ├── 12可视化etl.png
│ ├── 13数据服务.png
│ ├── 14执行日志.png
│ ├── 15发布服务.png
│ ├── 16日志.png
│ ├── 1登录页.png
│ ├── 2首页.png
│ ├── 3稽查规则.png
│ ├── 4清洗规则.png
│ ├── 5逻辑模型.png
│ ├── 6数据元.png
│ ├── 7映射.png
│ ├── 8数据连接.png
│ └── 9数据发现.png
├── pom.xml
├── qdata-api-ds
├── pom.xml
├── qdata-api-ds-api
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── api
│ │ └── ds
│ │ └── api
│ │ ├── base
│ │ ├── DsResultDTO.java
│ │ └── DsStatusRespDTO.java
│ │ ├── etl
│ │ ├── DSExecuteDTO.java
│ │ ├── DsNodeGenCodeRespDTO.java
│ │ ├── DsSchedulerRespDTO.java
│ │ ├── DsSchedulerSaveReqDTO.java
│ │ ├── DsSchedulerUpdateReqDTO.java
│ │ ├── DsStartTaskReqDTO.java
│ │ ├── DsTaskSaveReqDTO.java
│ │ ├── DsTaskSaveRespDTO.java
│ │ └── ds
│ │ │ ├── ProcessDefinition.java
│ │ │ ├── ProcessDefinitionLog.java
│ │ │ ├── ProcessInstance.java
│ │ │ ├── ProcessTaskRelation.java
│ │ │ ├── ProcessTaskRelationLog.java
│ │ │ ├── Schedule.java
│ │ │ ├── TaskDefinition.java
│ │ │ ├── TaskDefinitionLog.java
│ │ │ └── TaskInstance.java
│ │ ├── package-info.java
│ │ ├── project
│ │ ├── DsProjectCreateReqDTO.java
│ │ ├── DsProjectDeleteRespDTO.java
│ │ ├── DsProjectRespDTO.java
│ │ └── DsProjectUpdateReqDTO.java
│ │ └── service
│ │ ├── etl
│ │ ├── IDsEtlExecutorService.java
│ │ ├── IDsEtlNodeService.java
│ │ ├── IDsEtlSchedulerService.java
│ │ └── IDsEtlTaskService.java
│ │ └── project
│ │ └── IDsProjectService.java
└── qdata-api-ds-biz
│ ├── pom.xml
│ └── src
│ └── main
│ └── java
│ └── tech
│ └── qiantong
│ └── qdata
│ └── api
│ └── ds
│ └── service
│ ├── etl
│ ├── DsEtlExecutorServiceImpl.java
│ ├── DsEtlNodeServiceImpl.java
│ ├── DsEtlSchedulerServiceImpl.java
│ └── DsEtlTaskServiceImpl.java
│ └── project
│ └── DsProjectServiceImpl.java
├── qdata-etl
├── pom.xml
└── src
│ └── main
│ ├── java
│ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── spark
│ │ └── etl
│ │ ├── EtlApplication.java
│ │ ├── reader
│ │ ├── CsvReader.java
│ │ ├── DBReader.java
│ │ ├── ExcelReader.java
│ │ ├── KafkaReader.java
│ │ ├── Reader.java
│ │ ├── ReaderFactory.java
│ │ └── ReaderRegistry.java
│ │ ├── transition
│ │ └── CleanTransition.java
│ │ ├── utils
│ │ ├── CodeGenerateUtils.java
│ │ ├── Constants.java
│ │ ├── EtlUtils.java
│ │ ├── IDGeneratorUtils.java
│ │ ├── LogUtils.java
│ │ ├── RabbitmqUtils.java
│ │ ├── SnowflakeIdHelper.java
│ │ └── db
│ │ │ ├── DBUtils.java
│ │ │ ├── element
│ │ │ ├── BoolDataColumn.java
│ │ │ ├── BytesDataColumn.java
│ │ │ ├── ColumnCast.java
│ │ │ ├── DataColumn.java
│ │ │ ├── DateDataColumn.java
│ │ │ ├── DoubleDataColumn.java
│ │ │ ├── LongDataColumn.java
│ │ │ ├── OverFlowUtil.java
│ │ │ └── StringDataColumn.java
│ │ │ ├── exception
│ │ │ └── DBException.java
│ │ │ └── spark
│ │ │ └── dialect
│ │ │ └── HiveSqlDialect.java
│ │ └── writer
│ │ ├── DBWriter.java
│ │ ├── Writer.java
│ │ ├── WriterFactory.java
│ │ └── WriterRegistry.java
│ └── resources
│ └── json
│ ├── CSV输入.json
│ ├── EXCEL输入.json
│ ├── HDFS输入.json
│ ├── HDFS输出.json
│ ├── HIVE输入.json
│ ├── HIVE输出.json
│ ├── Kafka输入.json
│ ├── 数据库输入.json
│ ├── 数据库输出.json
│ └── 清洗转换.json
├── qdata-framework
├── pom.xml
├── qdata-auth
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── resources
│ │ ├── application-auth-dev.yml
│ │ └── application-auth-prod.yml
├── qdata-common
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── common
│ │ ├── annotation
│ │ ├── Anonymous.java
│ │ ├── DataScope.java
│ │ ├── DataSource.java
│ │ ├── Excel.java
│ │ ├── Excels.java
│ │ ├── Log.java
│ │ ├── RateLimiter.java
│ │ ├── RepeatSubmit.java
│ │ └── Sensitive.java
│ │ ├── config
│ │ ├── AniviaConfig.java
│ │ ├── RabbitmqConfig.java
│ │ └── serializer
│ │ │ ├── BooleanDeserializer.java
│ │ │ └── SensitiveJsonSerializer.java
│ │ ├── constant
│ │ ├── CacheConstants.java
│ │ ├── Constants.java
│ │ ├── GenConstants.java
│ │ ├── HttpStatus.java
│ │ ├── ScheduleConstants.java
│ │ └── UserConstants.java
│ │ ├── core
│ │ ├── controller
│ │ │ └── BaseController.java
│ │ ├── domain
│ │ │ ├── AjaxResult.java
│ │ │ ├── BaseEntity.java
│ │ │ ├── CommonResult.java
│ │ │ ├── R.java
│ │ │ ├── ReturnT.java
│ │ │ ├── TreeEntity.java
│ │ │ ├── TreeSelect.java
│ │ │ ├── entity
│ │ │ │ ├── RpAreaDict.java
│ │ │ │ ├── RpDept.java
│ │ │ │ ├── SysDept.java
│ │ │ │ ├── SysDictData.java
│ │ │ │ ├── SysDictType.java
│ │ │ │ ├── SysMenu.java
│ │ │ │ ├── SysRole.java
│ │ │ │ └── SysUser.java
│ │ │ └── model
│ │ │ │ ├── LoginBody.java
│ │ │ │ ├── LoginUser.java
│ │ │ │ └── RegisterBody.java
│ │ ├── page
│ │ │ ├── PageDomain.java
│ │ │ ├── PageParam.java
│ │ │ ├── PageResult.java
│ │ │ ├── SortablePageParam.java
│ │ │ ├── SortingField.java
│ │ │ ├── TableDataInfo.java
│ │ │ └── TableSupport.java
│ │ ├── redis
│ │ │ └── RedisCache.java
│ │ └── text
│ │ │ ├── CharsetKit.java
│ │ │ ├── Convert.java
│ │ │ └── StrFormatter.java
│ │ ├── database
│ │ ├── DataSourceFactory.java
│ │ ├── DbDialect.java
│ │ ├── DbQuery.java
│ │ ├── DialectFactory.java
│ │ ├── cache
│ │ │ ├── DefaultSqlCache.java
│ │ │ └── SqlCache.java
│ │ ├── constants
│ │ │ ├── DbDataType.java
│ │ │ ├── DbQueryProperty.java
│ │ │ ├── DbType.java
│ │ │ ├── InterpretationType.java
│ │ │ └── fieldtypes
│ │ │ │ ├── DM8FieldType.java
│ │ │ │ ├── Kingbase8FieldType.java
│ │ │ │ ├── MysqlFieldType.java
│ │ │ │ └── OracleFieldType.java
│ │ ├── core
│ │ │ ├── DbColumn.java
│ │ │ ├── DbTable.java
│ │ │ └── PageResult.java
│ │ ├── datasource
│ │ │ ├── AbstractDataSourceFactory.java
│ │ │ ├── CacheDataSourceFactoryBean.java
│ │ │ └── DefaultDataSourceFactoryBean.java
│ │ ├── dialect
│ │ │ ├── AbstractDbDialect.java
│ │ │ ├── DM8Dialect.java
│ │ │ ├── DialectRegistry.java
│ │ │ ├── KafkaDialect.java
│ │ │ ├── Kingbase8Dialect.java
│ │ │ ├── MariaDBDialect.java
│ │ │ ├── MySqlDialect.java
│ │ │ ├── Oracle12cDialect.java
│ │ │ ├── OracleDialect.java
│ │ │ ├── PostgreDialect.java
│ │ │ ├── SQLServer2008Dialect.java
│ │ │ ├── SQLServerDialect.java
│ │ │ └── UnknownDialect.java
│ │ ├── exception
│ │ │ └── DataQueryException.java
│ │ ├── query
│ │ │ ├── AbstractDbQueryFactory.java
│ │ │ ├── CacheDbQueryFactoryBean.java
│ │ │ └── DefaultDbQueryFactoryBean.java
│ │ └── utils
│ │ │ └── MD5Util.java
│ │ ├── enums
│ │ ├── BusinessStatus.java
│ │ ├── BusinessType.java
│ │ ├── CommandType.java
│ │ ├── ConfigType.java
│ │ ├── DataConstant.java
│ │ ├── DataSourceType.java
│ │ ├── DesensitizedType.java
│ │ ├── DmColumnTypeEnum.java
│ │ ├── ExecuteType.java
│ │ ├── FailureStrategy.java
│ │ ├── Flag.java
│ │ ├── HttpMethod.java
│ │ ├── KingbaseColumnTypeEnum.java
│ │ ├── LimitType.java
│ │ ├── MySqlColumnTypeEnum.java
│ │ ├── OperatorType.java
│ │ ├── ParamType.java
│ │ ├── Priority.java
│ │ ├── RequestMethodEnum.java
│ │ ├── TaskCatEnum.java
│ │ ├── TaskComponentTypeEnum.java
│ │ ├── TaskExecutionStatus.java
│ │ ├── UserStatus.java
│ │ ├── WhereType.java
│ │ └── WorkflowExecutionStatus.java
│ │ ├── exception
│ │ ├── DemoModeException.java
│ │ ├── ErrorCode.java
│ │ ├── GlobalException.java
│ │ ├── ServiceException.java
│ │ ├── UtilException.java
│ │ ├── base
│ │ │ └── BaseException.java
│ │ ├── enums
│ │ │ └── GlobalErrorCodeConstants.java
│ │ ├── file
│ │ │ ├── FileException.java
│ │ │ ├── FileNameLengthLimitExceededException.java
│ │ │ ├── FileSizeLimitExceededException.java
│ │ │ ├── FileUploadException.java
│ │ │ └── InvalidExtensionException.java
│ │ ├── job
│ │ │ └── TaskException.java
│ │ └── user
│ │ │ ├── BlackListException.java
│ │ │ ├── CaptchaException.java
│ │ │ ├── CaptchaExpireException.java
│ │ │ ├── UserException.java
│ │ │ ├── UserNotExistsException.java
│ │ │ ├── UserPasswordNotMatchException.java
│ │ │ └── UserPasswordRetryLimitExceedException.java
│ │ ├── filter
│ │ ├── PropertyPreExcludeFilter.java
│ │ ├── RepeatableFilter.java
│ │ ├── RepeatedlyRequestWrapper.java
│ │ ├── XssFilter.java
│ │ └── XssHttpServletRequestWrapper.java
│ │ ├── httpClient
│ │ ├── DsRequestUtils.java
│ │ ├── HeaderEntity.java
│ │ ├── HttpTaskLogger.java
│ │ ├── HttpUtils.java
│ │ ├── JsonUtil.java
│ │ └── constants
│ │ │ └── QianTongDCApiType.java
│ │ ├── utils
│ │ ├── AesEncryptUtil.java
│ │ ├── Arith.java
│ │ ├── ConversionUtils.java
│ │ ├── DateUtils.java
│ │ ├── DesensitizedUtil.java
│ │ ├── DictUtils.java
│ │ ├── ExcelToCsvUtil.java
│ │ ├── ExceptionUtil.java
│ │ ├── IPUtil.java
│ │ ├── JSONUtils.java
│ │ ├── LogUtils.java
│ │ ├── MD5Util.java
│ │ ├── MessageUtils.java
│ │ ├── PageUtil.java
│ │ ├── PageUtils.java
│ │ ├── SecurityUtils.java
│ │ ├── ServletUtils.java
│ │ ├── SoMap.java
│ │ ├── StringUtils.java
│ │ ├── Threads.java
│ │ ├── YouBianCodeUtil.java
│ │ ├── bean
│ │ │ ├── BeanUtils.java
│ │ │ └── BeanValidators.java
│ │ ├── ca
│ │ │ ├── CaCertificateIssuer.java
│ │ │ └── CaGenerateRootCertificate.java
│ │ ├── collection
│ │ │ ├── CollectionUtils.java
│ │ │ └── SetUtils.java
│ │ ├── encryptor
│ │ │ └── DynamicAESUtil.java
│ │ ├── file
│ │ │ ├── FileTypeUtils.java
│ │ │ ├── FileUploadUtils.java
│ │ │ ├── FileUtils.java
│ │ │ ├── ImageUtils.java
│ │ │ └── MimeTypeUtils.java
│ │ ├── html
│ │ │ ├── EscapeUtil.java
│ │ │ └── HTMLFilter.java
│ │ ├── http
│ │ │ ├── HttpHelper.java
│ │ │ └── HttpUtils.java
│ │ ├── ip
│ │ │ ├── AddressUtils.java
│ │ │ └── IpUtils.java
│ │ ├── json
│ │ │ ├── JsonDataDeserializer.java
│ │ │ └── JsonDataSerializer.java
│ │ ├── object
│ │ │ └── BeanUtils.java
│ │ ├── poi
│ │ │ ├── ExcelHandlerAdapter.java
│ │ │ └── ExcelUtil.java
│ │ ├── reflect
│ │ │ └── ReflectUtils.java
│ │ ├── sign
│ │ │ ├── Base64.java
│ │ │ └── Md5Utils.java
│ │ ├── spring
│ │ │ └── SpringUtils.java
│ │ ├── sql
│ │ │ └── SqlUtil.java
│ │ ├── string
│ │ │ └── StrUtils.java
│ │ └── uuid
│ │ │ ├── IdUtils.java
│ │ │ ├── Seq.java
│ │ │ └── UUID.java
│ │ └── xss
│ │ ├── Xss.java
│ │ └── XssValidator.java
├── qdata-config
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── config
│ │ ├── ApplicationConfig.java
│ │ ├── CaptchaConfig.java
│ │ ├── FilterConfig.java
│ │ ├── I18nConfig.java
│ │ ├── KaptchaTextCreator.java
│ │ ├── RabbitConfig.java
│ │ ├── ResourcesConfig.java
│ │ ├── ServerConfig.java
│ │ ├── ThreadPoolConfig.java
│ │ ├── interceptor
│ │ ├── RepeatSubmitInterceptor.java
│ │ └── impl
│ │ │ └── SameUrlDataInterceptor.java
│ │ └── web
│ │ └── domain
│ │ ├── Server.java
│ │ └── server
│ │ ├── Cpu.java
│ │ ├── Jvm.java
│ │ ├── Mem.java
│ │ ├── Sys.java
│ │ └── SysFile.java
├── qdata-es
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── tech
│ │ │ └── qiantong
│ │ │ └── qdata
│ │ │ └── es
│ │ │ ├── esmapper
│ │ │ └── example
│ │ │ │ ├── DocumentMapper.java
│ │ │ │ └── EsTextDocumentMapper.java
│ │ │ ├── model
│ │ │ ├── Search.java
│ │ │ └── example
│ │ │ │ ├── Document.java
│ │ │ │ └── EsTextDocument.java
│ │ │ └── service
│ │ │ ├── ISearchService.java
│ │ │ └── impl
│ │ │ └── SearchImpl.java
│ │ └── resources
│ │ ├── application-es-dev.yml
│ │ └── application-es-prod.yml
├── qdata-file
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── tech
│ │ │ └── qiantong
│ │ │ └── qdata
│ │ │ └── file
│ │ │ ├── controller
│ │ │ └── FileUploadController.java
│ │ │ └── util
│ │ │ └── FileUploadUtil.java
│ │ └── resources
│ │ ├── application-file-dev.yml
│ │ └── application-file-prod.yml
├── qdata-generator
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── tech
│ │ │ └── qiantong
│ │ │ └── qdata
│ │ │ └── generator
│ │ │ ├── config
│ │ │ └── GenConfig.java
│ │ │ ├── controller
│ │ │ └── GenController.java
│ │ │ ├── domain
│ │ │ ├── GenTable.java
│ │ │ └── GenTableColumn.java
│ │ │ ├── mapper
│ │ │ ├── GenTableColumnMapper.java
│ │ │ └── GenTableMapper.java
│ │ │ ├── service
│ │ │ ├── GenTableColumnServiceImpl.java
│ │ │ ├── GenTableServiceImpl.java
│ │ │ ├── IGenTableColumnService.java
│ │ │ └── IGenTableService.java
│ │ │ └── util
│ │ │ ├── GenUtils.java
│ │ │ ├── VelocityInitializer.java
│ │ │ └── VelocityUtils.java
│ │ └── resources
│ │ ├── generator.yml
│ │ ├── mapper
│ │ └── generator
│ │ │ ├── GenTableColumnMapper.xml
│ │ │ └── GenTableMapper.xml
│ │ ├── vm-tree
│ │ ├── java
│ │ │ ├── controller.java.vm
│ │ │ ├── domain.java.vm
│ │ │ ├── mapper.java.vm
│ │ │ ├── service.java.vm
│ │ │ ├── serviceImpl.java.vm
│ │ │ └── sub-domain.java.vm
│ │ ├── js
│ │ │ └── api.js.vm
│ │ ├── sql
│ │ │ └── sql.vm
│ │ ├── vue
│ │ │ ├── index-tree.vue.vm
│ │ │ ├── index.vue.vm
│ │ │ ├── v2
│ │ │ │ ├── index-tree.vue.vm
│ │ │ │ └── index.vue.vm
│ │ │ └── v3
│ │ │ │ ├── index-tree.vue.vm
│ │ │ │ └── index.vue.vm
│ │ └── xml
│ │ │ └── mapper.xml.vm
│ │ └── vm
│ │ ├── java
│ │ ├── controller.java.vm
│ │ ├── convert.java.vm
│ │ ├── dict.java.vm
│ │ ├── do.java.vm
│ │ ├── mapper.java.vm
│ │ ├── pageReqVO.java.vm
│ │ ├── reqDTO.java.vm
│ │ ├── respDTO.java.vm
│ │ ├── respVO.java.vm
│ │ ├── saveReqVO.java.vm
│ │ ├── service.java.vm
│ │ ├── serviceImpl.java.vm
│ │ └── sub-domain.java.vm
│ │ ├── js
│ │ └── api.js.vm
│ │ ├── sql
│ │ └── sql.vm
│ │ ├── vue
│ │ ├── index-tree.vue.vm
│ │ ├── index.vue.vm
│ │ ├── v2
│ │ │ ├── index-tree.vue.vm
│ │ │ ├── index.vue.vm
│ │ │ └── selection
│ │ │ │ ├── multiple-selection.vue.vm
│ │ │ │ └── single-selection.vue.vm
│ │ └── v3
│ │ │ ├── detail
│ │ │ ├── complex-detail.vue.vm
│ │ │ ├── componentOne.vue.vm
│ │ │ └── componentTwo.vue.vm
│ │ │ ├── index-tree.vue.vm
│ │ │ ├── index.vue.vm
│ │ │ └── selection
│ │ │ ├── multiple-selection.vue.vm
│ │ │ └── single-selection.vue.vm
│ │ └── xml
│ │ └── mapper.xml.vm
├── qdata-mybatis
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── mybatis
│ │ ├── config
│ │ ├── DynamicDataSourceAspect.java
│ │ ├── MasterDataSourceConfig.java
│ │ └── MybatisPlusConfig.java
│ │ ├── core
│ │ ├── enums
│ │ │ ├── DbTypeEnum.java
│ │ │ └── SqlConstants.java
│ │ ├── mapper
│ │ │ └── BaseMapperX.java
│ │ ├── query
│ │ │ ├── LambdaQueryWrapperX.java
│ │ │ ├── MPJLambdaWrapperX.java
│ │ │ └── QueryWrapperX.java
│ │ ├── type
│ │ │ ├── EncryptTypeHandler.java
│ │ │ ├── IntegerListTypeHandler.java
│ │ │ ├── LongListTypeHandler.java
│ │ │ └── StringListTypeHandler.java
│ │ └── util
│ │ │ ├── JdbcUtils.java
│ │ │ ├── MyBatisUtils.java
│ │ │ └── MyMetaObjectHandler.java
│ │ └── datasource
│ │ ├── DynamicDataSource.java
│ │ └── DynamicDataSourceContextHolder.java
├── qdata-pay
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── tech
│ │ │ └── qiantong
│ │ │ └── qdata
│ │ │ └── pay
│ │ │ ├── config
│ │ │ └── AliPayConfig.java
│ │ │ ├── domain
│ │ │ ├── AlipayNotification.java
│ │ │ ├── Notification.java
│ │ │ ├── PaymentRequest.java
│ │ │ ├── PaymentResponse.java
│ │ │ ├── PaymentStatusResponse.java
│ │ │ ├── PaymentType.java
│ │ │ ├── RefundRequest.java
│ │ │ └── RefundResponse.java
│ │ │ ├── service
│ │ │ ├── PayGatewayClient.java
│ │ │ ├── PaymentService.java
│ │ │ └── impl
│ │ │ │ ├── AlipayClientImpl.java
│ │ │ │ ├── PaymentServiceImpl.java
│ │ │ │ └── WeChatPayClientImpl.java
│ │ │ └── utils
│ │ │ └── SignatureUtil.java
│ │ └── resources
│ │ ├── application-pay-dev.yml
│ │ └── application-pay-prod.yml
├── qdata-quartz
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── tech
│ │ │ └── qiantong
│ │ │ └── qdata
│ │ │ └── quartz
│ │ │ ├── config
│ │ │ └── ScheduleConfig.java
│ │ │ ├── controller
│ │ │ ├── SysJobController.java
│ │ │ └── SysJobLogController.java
│ │ │ ├── domain
│ │ │ ├── SysJob.java
│ │ │ └── SysJobLog.java
│ │ │ ├── enums
│ │ │ └── JobErrorEnum.java
│ │ │ ├── mapper
│ │ │ ├── SysJobLogMapper.java
│ │ │ └── SysJobMapper.java
│ │ │ ├── service
│ │ │ ├── ISysJobLogService.java
│ │ │ ├── ISysJobService.java
│ │ │ └── impl
│ │ │ │ ├── SysJobLogServiceImpl.java
│ │ │ │ └── SysJobServiceImpl.java
│ │ │ ├── task
│ │ │ └── RyTask.java
│ │ │ └── util
│ │ │ ├── AbstractQuartzJob.java
│ │ │ ├── CronUtils.java
│ │ │ ├── JobInvokeUtil.java
│ │ │ ├── QuartzDisallowConcurrentExecution.java
│ │ │ ├── QuartzJobExecution.java
│ │ │ └── ScheduleUtils.java
│ │ └── resources
│ │ └── mapper
│ │ └── quartz
│ │ ├── SysJobLogMapper.xml
│ │ └── SysJobMapper.xml
├── qdata-redis
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── redis
│ │ ├── config
│ │ ├── FastJson2JsonRedisSerializer.java
│ │ └── RedisConfig.java
│ │ ├── constant
│ │ └── Constants.java
│ │ └── service
│ │ ├── IRedisService.java
│ │ └── impl
│ │ └── RedisServiceImpl.java
├── qdata-security
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── security
│ │ ├── aspectj
│ │ ├── DataScopeAspect.java
│ │ ├── DataSourceAspect.java
│ │ ├── LogAspect.java
│ │ └── RateLimiterAspect.java
│ │ ├── config
│ │ ├── SecurityConfig.java
│ │ └── properties
│ │ │ └── PermitAllUrlProperties.java
│ │ ├── context
│ │ ├── AuthenticationContextHolder.java
│ │ └── PermissionContextHolder.java
│ │ ├── filter
│ │ └── JwtAuthenticationTokenFilter.java
│ │ ├── handle
│ │ ├── AuthenticationEntryPointImpl.java
│ │ └── LogoutSuccessHandlerImpl.java
│ │ ├── manager
│ │ ├── AsyncManager.java
│ │ ├── ShutdownManager.java
│ │ └── factory
│ │ │ └── AsyncFactory.java
│ │ └── web
│ │ ├── exception
│ │ └── GlobalExceptionHandler.java
│ │ └── service
│ │ ├── PermissionService.java
│ │ ├── RpTokenService.java
│ │ ├── SysLoginService.java
│ │ ├── SysPasswordService.java
│ │ ├── SysPermissionService.java
│ │ ├── SysRegisterService.java
│ │ ├── TokenService.java
│ │ └── UserDetailsServiceImpl.java
└── qdata-websocket
│ ├── pom.xml
│ └── src
│ └── main
│ └── java
│ └── tech
│ └── qiantong
│ └── qdata
│ └── websocket
│ ├── SemaphoreUtils.java
│ ├── WebSocketConfig.java
│ ├── WebSocketMessage.java
│ └── WebSocketUsers.java
├── qdata-module-att
├── pom.xml
├── qdata-module-att-api
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── att
│ │ └── api
│ │ ├── cat
│ │ ├── IAttCatService.java
│ │ └── dto
│ │ │ ├── AttApiCatReqDTO.java
│ │ │ ├── AttApiCatRespDTO.java
│ │ │ ├── AttAssetCatReqDTO.java
│ │ │ ├── AttAssetCatRespDTO.java
│ │ │ ├── AttDataDevCatReqDTO.java
│ │ │ ├── AttDataDevCatRespDTO.java
│ │ │ ├── AttDataElemCatReqDTO.java
│ │ │ ├── AttDataElemCatRespDTO.java
│ │ │ ├── AttDiscoverTaskCatReqDTO.java
│ │ │ ├── AttDiscoverTaskCatRespDTO.java
│ │ │ ├── AttDocCatReqDTO.java
│ │ │ ├── AttDocCatRespDTO.java
│ │ │ ├── AttJobCatReqDTO.java
│ │ │ ├── AttJobCatRespDTO.java
│ │ │ ├── AttModelCatReqDTO.java
│ │ │ ├── AttModelCatRespDTO.java
│ │ │ ├── AttTaskCatReqDTO.java
│ │ │ └── AttTaskCatRespDTO.java
│ │ ├── client
│ │ ├── ClientApi.java
│ │ └── dto
│ │ │ ├── AttClientReqDTO.java
│ │ │ └── AttClientRespDTO.java
│ │ ├── package-info.java
│ │ ├── project
│ │ ├── IAttProjectApi.java
│ │ └── dto
│ │ │ ├── AttProjectReqDTO.java
│ │ │ ├── AttProjectRespDTO.java
│ │ │ ├── AttProjectUserRelReqDTO.java
│ │ │ └── AttProjectUserRelRespDTO.java
│ │ ├── rule
│ │ └── dto
│ │ │ ├── AttAuditRuleReqDTO.java
│ │ │ ├── AttAuditRuleRespDTO.java
│ │ │ ├── AttCleanRuleReqDTO.java
│ │ │ └── AttCleanRuleRespDTO.java
│ │ ├── service
│ │ └── cat
│ │ │ ├── IAttApiCatApiService.java
│ │ │ ├── IAttDataDevCatApiService.java
│ │ │ ├── IAttDocCatApiService.java
│ │ │ └── IAttTaskCatApiService.java
│ │ └── theme
│ │ └── dto
│ │ ├── AttThemeReqDTO.java
│ │ └── AttThemeRespDTO.java
└── qdata-module-att-biz
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── att
│ │ ├── api
│ │ └── client
│ │ │ └── ClientApiImpl.java
│ │ ├── controller
│ │ └── admin
│ │ │ ├── cat
│ │ │ ├── AttApiCatController.java
│ │ │ ├── AttAssetCatController.java
│ │ │ ├── AttDataDevCatController.java
│ │ │ ├── AttDataElemCatController.java
│ │ │ ├── AttModelCatController.java
│ │ │ ├── AttTaskCatController.java
│ │ │ └── vo
│ │ │ │ ├── AttApiCatPageReqVO.java
│ │ │ │ ├── AttApiCatRespVO.java
│ │ │ │ ├── AttApiCatSaveReqVO.java
│ │ │ │ ├── AttAssetCatPageReqVO.java
│ │ │ │ ├── AttAssetCatRespVO.java
│ │ │ │ ├── AttAssetCatSaveReqVO.java
│ │ │ │ ├── AttDataDevCatPageReqVO.java
│ │ │ │ ├── AttDataDevCatRespVO.java
│ │ │ │ ├── AttDataDevCatSaveReqVO.java
│ │ │ │ ├── AttDataElemCatPageReqVO.java
│ │ │ │ ├── AttDataElemCatRespVO.java
│ │ │ │ ├── AttDataElemCatSaveReqVO.java
│ │ │ │ ├── AttDiscoverTaskCatPageReqVO.java
│ │ │ │ ├── AttDiscoverTaskCatRespVO.java
│ │ │ │ ├── AttDiscoverTaskCatSaveReqVO.java
│ │ │ │ ├── AttDocCatPageReqVO.java
│ │ │ │ ├── AttDocCatRespVO.java
│ │ │ │ ├── AttDocCatSaveReqVO.java
│ │ │ │ ├── AttJobCatPageReqVO.java
│ │ │ │ ├── AttJobCatRespVO.java
│ │ │ │ ├── AttJobCatSaveReqVO.java
│ │ │ │ ├── AttModelCatPageReqVO.java
│ │ │ │ ├── AttModelCatRespVO.java
│ │ │ │ ├── AttModelCatSaveReqVO.java
│ │ │ │ ├── AttTaskCatPageReqVO.java
│ │ │ │ ├── AttTaskCatRespVO.java
│ │ │ │ └── AttTaskCatSaveReqVO.java
│ │ │ ├── client
│ │ │ ├── AttClientController.java
│ │ │ └── vo
│ │ │ │ ├── AttClientPageReqVO.java
│ │ │ │ ├── AttClientRespVO.java
│ │ │ │ └── AttClientSaveReqVO.java
│ │ │ ├── project
│ │ │ ├── AttProjectController.java
│ │ │ ├── AttProjectUserRelController.java
│ │ │ └── vo
│ │ │ │ ├── AttProjectPageReqVO.java
│ │ │ │ ├── AttProjectRespVO.java
│ │ │ │ ├── AttProjectSaveReqVO.java
│ │ │ │ ├── AttProjectUserRelPageReqVO.java
│ │ │ │ ├── AttProjectUserRelRespVO.java
│ │ │ │ └── AttProjectUserRelSaveReqVO.java
│ │ │ ├── rule
│ │ │ ├── AttAuditRuleController.java
│ │ │ ├── AttCleanRuleController.java
│ │ │ └── vo
│ │ │ │ ├── AttAuditRulePageReqVO.java
│ │ │ │ ├── AttAuditRuleRespVO.java
│ │ │ │ ├── AttAuditRuleSaveReqVO.java
│ │ │ │ ├── AttCleanRulePageReqVO.java
│ │ │ │ ├── AttCleanRuleRespVO.java
│ │ │ │ └── AttCleanRuleSaveReqVO.java
│ │ │ └── theme
│ │ │ ├── AttThemeController.java
│ │ │ └── vo
│ │ │ ├── AttThemePageReqVO.java
│ │ │ ├── AttThemeRespVO.java
│ │ │ └── AttThemeSaveReqVO.java
│ │ ├── convert
│ │ ├── cat
│ │ │ ├── AttApiCatConvert.java
│ │ │ ├── AttAssetCatConvert.java
│ │ │ ├── AttDataDevCatConvert.java
│ │ │ ├── AttDataElemCatConvert.java
│ │ │ ├── AttModelCatConvert.java
│ │ │ └── AttTaskCatConvert.java
│ │ ├── client
│ │ │ └── AttClientConvert.java
│ │ ├── project
│ │ │ ├── AttProjectConvert.java
│ │ │ └── AttProjectUserRelConvert.java
│ │ ├── rule
│ │ │ ├── AttAuditRuleConvert.java
│ │ │ └── AttCleanRuleConvert.java
│ │ └── theme
│ │ │ └── AttThemeConvert.java
│ │ ├── dal
│ │ ├── dataobject
│ │ │ ├── cat
│ │ │ │ ├── AttApiCatDO.java
│ │ │ │ ├── AttAssetCatDO.java
│ │ │ │ ├── AttDataDevCatDO.java
│ │ │ │ ├── AttDataElemCatDO.java
│ │ │ │ ├── AttModelCatDO.java
│ │ │ │ └── AttTaskCatDO.java
│ │ │ ├── client
│ │ │ │ └── AttClientDO.java
│ │ │ ├── project
│ │ │ │ ├── AttProjectDO.java
│ │ │ │ └── AttProjectUserRelDO.java
│ │ │ ├── rule
│ │ │ │ ├── AttAuditRuleDO.java
│ │ │ │ ├── AttCleanRuleDO.java
│ │ │ │ └── enums
│ │ │ │ │ ├── CleanRuleTypeEnum.java
│ │ │ │ │ └── RuleTypeEnum.java
│ │ │ └── theme
│ │ │ │ └── AttThemeDO.java
│ │ └── mapper
│ │ │ ├── cat
│ │ │ ├── AttApiCatMapper.java
│ │ │ ├── AttAssetCatMapper.java
│ │ │ ├── AttCatMapper.java
│ │ │ ├── AttDataDevCatMapper.java
│ │ │ ├── AttDataElemCatMapper.java
│ │ │ ├── AttModelCatMapper.java
│ │ │ └── AttTaskCatMapper.java
│ │ │ ├── client
│ │ │ └── AttClientMapper.java
│ │ │ ├── project
│ │ │ ├── AttProjectMapper.java
│ │ │ └── AttProjectUserRelMapper.java
│ │ │ ├── rule
│ │ │ ├── AttAuditRuleMapper.java
│ │ │ └── AttCleanRuleMapper.java
│ │ │ └── theme
│ │ │ └── AttThemeMapper.java
│ │ ├── package-info.java
│ │ └── service
│ │ ├── cat
│ │ ├── IAttApiCatService.java
│ │ ├── IAttAssetCatService.java
│ │ ├── IAttDataDevCatService.java
│ │ ├── IAttDataElemCatService.java
│ │ ├── IAttModelCatService.java
│ │ ├── IAttTaskCatService.java
│ │ └── impl
│ │ │ ├── AttApiCatServiceImpl.java
│ │ │ ├── AttAssetCatServiceImpl.java
│ │ │ ├── AttCatServiceImpl.java
│ │ │ ├── AttDataDevCatServiceImpl.java
│ │ │ ├── AttDataElemCatServiceImpl.java
│ │ │ ├── AttModelCatServiceImpl.java
│ │ │ └── AttTaskCatServiceImpl.java
│ │ ├── client
│ │ ├── IAttClientService.java
│ │ └── impl
│ │ │ └── AttClientServiceImpl.java
│ │ ├── project
│ │ ├── IAttProjectService.java
│ │ ├── IAttProjectUserRelService.java
│ │ └── impl
│ │ │ ├── AttProjectUserRelServiceImpl.java
│ │ │ └── IAttProjectServiceImpl.java
│ │ ├── rule
│ │ ├── IAttAuditRuleService.java
│ │ ├── IAttCleanRuleService.java
│ │ └── impl
│ │ │ ├── AttAuditRuleServiceImpl.java
│ │ │ └── AttCleanRuleServiceImpl.java
│ │ └── theme
│ │ ├── IAttThemeService.java
│ │ └── impl
│ │ └── AttThemeServiceImpl.java
│ └── resources
│ ├── application-att-dev.yml
│ ├── application-att-prod.yml
│ └── mapper
│ └── att
│ ├── cat
│ ├── AttApiCatMapper.xml
│ ├── AttAssetCatMapper.xml
│ ├── AttCatMapper.xml
│ ├── AttDataDevCatMapper.xml
│ ├── AttDataElemCatMapper.xml
│ ├── AttModelCatMapper.xml
│ └── AttTaskCatMapper.xml
│ ├── client
│ └── AttClientMapper.xml
│ ├── project
│ ├── AttProjectMapper.xml
│ └── IDataElemRuleRelService.xml
│ ├── rule
│ ├── AttAuditRuleMapper.xml
│ └── AttCleanRuleMapper.xml
│ └── theme
│ └── AttThemeMapper.xml
├── qdata-module-da
├── pom.xml
├── qdata-module-da-api
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── da
│ │ └── api
│ │ ├── asset
│ │ └── dto
│ │ │ ├── DaAssetReqDTO.java
│ │ │ └── DaAssetRespDTO.java
│ │ ├── assetColumn
│ │ └── dto
│ │ │ ├── DaAssetColumnReqDTO.java
│ │ │ └── DaAssetColumnRespDTO.java
│ │ ├── assetchild
│ │ ├── api
│ │ │ └── dto
│ │ │ │ ├── DaAssetApiParamReqDTO.java
│ │ │ │ ├── DaAssetApiParamRespDTO.java
│ │ │ │ ├── DaAssetApiReqDTO.java
│ │ │ │ └── DaAssetApiRespDTO.java
│ │ ├── audit
│ │ │ └── dto
│ │ │ │ ├── DaAssetAuditAlertReqDTO.java
│ │ │ │ ├── DaAssetAuditAlertRespDTO.java
│ │ │ │ ├── DaAssetAuditRuleReqDTO.java
│ │ │ │ ├── DaAssetAuditRuleRespDTO.java
│ │ │ │ ├── DaAssetAuditScheduleReqDTO.java
│ │ │ │ └── DaAssetAuditScheduleRespDTO.java
│ │ ├── geo
│ │ │ └── dto
│ │ │ │ ├── DaAssetGeoReqDTO.java
│ │ │ │ └── DaAssetGeoRespDTO.java
│ │ ├── gis
│ │ │ └── dto
│ │ │ │ ├── DaAssetGisReqDTO.java
│ │ │ │ └── DaAssetGisRespDTO.java
│ │ ├── operate
│ │ │ └── dto
│ │ │ │ ├── DaAssetOperateApplyReqDTO.java
│ │ │ │ ├── DaAssetOperateApplyRespDTO.java
│ │ │ │ ├── DaAssetOperateLogReqDTO.java
│ │ │ │ └── DaAssetOperateLogRespDTO.java
│ │ ├── projectRel
│ │ │ └── dto
│ │ │ │ ├── DaAssetProjectRelReqDTO.java
│ │ │ │ └── DaAssetProjectRelRespDTO.java
│ │ ├── theme
│ │ │ └── dto
│ │ │ │ ├── DaAssetThemeRelReqDTO.java
│ │ │ │ └── DaAssetThemeRelRespDTO.java
│ │ └── video
│ │ │ └── dto
│ │ │ ├── DaAssetVideoReqDTO.java
│ │ │ └── DaAssetVideoRespDTO.java
│ │ ├── daAssetApply
│ │ └── dto
│ │ │ ├── DaAssetApplyReqDTO.java
│ │ │ └── DaAssetApplyRespDTO.java
│ │ ├── datasource
│ │ └── dto
│ │ │ ├── DaDatasourceProjectRelReqDTO.java
│ │ │ ├── DaDatasourceProjectRelRespDTO.java
│ │ │ ├── DaDatasourceReqDTO.java
│ │ │ ├── DaDatasourceRespDTO.java
│ │ │ ├── DatasourceCreaTeTableListReqDTO.java
│ │ │ └── DatasourceCreaTeTableReqDTO.java
│ │ ├── package-info.java
│ │ ├── sensitiveLevel
│ │ └── dto
│ │ │ ├── DaSensitiveLevelReqDTO.java
│ │ │ └── DaSensitiveLevelRespDTO.java
│ │ └── service
│ │ ├── asset
│ │ ├── IDaAssetApiOutService.java
│ │ └── IDaDatasourceApiService.java
│ │ ├── assetchild
│ │ ├── api
│ │ │ └── IDaApiOutService.java
│ │ └── gis
│ │ │ └── IDaAssetGisOutService.java
│ │ └── package-info.java
└── qdata-module-da-biz
│ ├── pom.xml
│ └── src
│ ├── lib
│ └── artemis-http-client-1.1.8.jar
│ └── main
│ ├── java
│ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── da
│ │ ├── controller
│ │ └── admin
│ │ │ ├── asset
│ │ │ ├── DaAssetController.java
│ │ │ └── vo
│ │ │ │ ├── DaAssetPageReqVO.java
│ │ │ │ ├── DaAssetRespVO.java
│ │ │ │ └── DaAssetSaveReqVO.java
│ │ │ ├── assetColumn
│ │ │ ├── DaAssetColumnController.java
│ │ │ └── vo
│ │ │ │ ├── DaAssetColumnPageReqVO.java
│ │ │ │ ├── DaAssetColumnRespVO.java
│ │ │ │ └── DaAssetColumnSaveReqVO.java
│ │ │ ├── assetchild
│ │ │ ├── api
│ │ │ │ ├── DaAssetApiController.java
│ │ │ │ ├── DaAssetApiParamController.java
│ │ │ │ └── vo
│ │ │ │ │ ├── DaAssetApiPageReqVO.java
│ │ │ │ │ ├── DaAssetApiParamPageReqVO.java
│ │ │ │ │ ├── DaAssetApiParamRespVO.java
│ │ │ │ │ ├── DaAssetApiParamSaveReqVO.java
│ │ │ │ │ ├── DaAssetApiReqVO.java
│ │ │ │ │ ├── DaAssetApiRespVO.java
│ │ │ │ │ └── DaAssetApiSaveReqVO.java
│ │ │ ├── audit
│ │ │ │ ├── DaAssetAuditAlertController.java
│ │ │ │ ├── DaAssetAuditRuleController.java
│ │ │ │ ├── DaAssetAuditScheduleController.java
│ │ │ │ └── vo
│ │ │ │ │ ├── DaAssetAuditAlertPageReqVO.java
│ │ │ │ │ ├── DaAssetAuditAlertRespVO.java
│ │ │ │ │ ├── DaAssetAuditAlertSaveReqVO.java
│ │ │ │ │ ├── DaAssetAuditRulePageReqVO.java
│ │ │ │ │ ├── DaAssetAuditRuleRespVO.java
│ │ │ │ │ ├── DaAssetAuditRuleSaveReqVO.java
│ │ │ │ │ ├── DaAssetAuditSchedulePageReqVO.java
│ │ │ │ │ ├── DaAssetAuditScheduleRespVO.java
│ │ │ │ │ └── DaAssetAuditScheduleSaveReqVO.java
│ │ │ ├── geo
│ │ │ │ ├── DaAssetGeoController.java
│ │ │ │ └── vo
│ │ │ │ │ ├── DaAssetGeoPageReqVO.java
│ │ │ │ │ ├── DaAssetGeoRespVO.java
│ │ │ │ │ └── DaAssetGeoSaveReqVO.java
│ │ │ ├── gis
│ │ │ │ ├── DaAssetGisController.java
│ │ │ │ └── vo
│ │ │ │ │ ├── DaAssetGisPageReqVO.java
│ │ │ │ │ ├── DaAssetGisReqVO.java
│ │ │ │ │ ├── DaAssetGisRespVO.java
│ │ │ │ │ └── DaAssetGisSaveReqVO.java
│ │ │ ├── operate
│ │ │ │ ├── DaAssetOperateApplyController.java
│ │ │ │ ├── DaAssetOperateLogController.java
│ │ │ │ └── vo
│ │ │ │ │ ├── DaAssetOperateApplyPageReqVO.java
│ │ │ │ │ ├── DaAssetOperateApplyRespVO.java
│ │ │ │ │ ├── DaAssetOperateApplySaveReqVO.java
│ │ │ │ │ ├── DaAssetOperateLogPageReqVO.java
│ │ │ │ │ ├── DaAssetOperateLogRespVO.java
│ │ │ │ │ └── DaAssetOperateLogSaveReqVO.java
│ │ │ ├── projectRel
│ │ │ │ ├── DaAssetProjectRelController.java
│ │ │ │ └── vo
│ │ │ │ │ ├── DaAssetProjectRelPageReqVO.java
│ │ │ │ │ ├── DaAssetProjectRelRespVO.java
│ │ │ │ │ └── DaAssetProjectRelSaveReqVO.java
│ │ │ ├── theme
│ │ │ │ ├── DaAssetThemeRelController.java
│ │ │ │ └── vo
│ │ │ │ │ ├── DaAssetThemeRelPageReqVO.java
│ │ │ │ │ ├── DaAssetThemeRelRespVO.java
│ │ │ │ │ └── DaAssetThemeRelSaveReqVO.java
│ │ │ └── video
│ │ │ │ ├── DaAssetVideoController.java
│ │ │ │ └── vo
│ │ │ │ ├── DaAssetVideoPageReqVO.java
│ │ │ │ ├── DaAssetVideoReqVO.java
│ │ │ │ ├── DaAssetVideoRespVO.java
│ │ │ │ └── DaAssetVideoSaveReqVO.java
│ │ │ ├── daAssetApply
│ │ │ ├── DaAssetApplyController.java
│ │ │ └── vo
│ │ │ │ ├── DaAssetApplyPageReqVO.java
│ │ │ │ ├── DaAssetApplyRespVO.java
│ │ │ │ └── DaAssetApplySaveReqVO.java
│ │ │ ├── datasource
│ │ │ ├── DaDatasourceController.java
│ │ │ ├── DaDatasourceProjectRelController.java
│ │ │ └── vo
│ │ │ │ ├── DaDatasourcePageReqVO.java
│ │ │ │ ├── DaDatasourceProjectRelPageReqVO.java
│ │ │ │ ├── DaDatasourceProjectRelRespVO.java
│ │ │ │ ├── DaDatasourceProjectRelSaveReqVO.java
│ │ │ │ ├── DaDatasourceRespVO.java
│ │ │ │ └── DaDatasourceSaveReqVO.java
│ │ │ └── sensitiveLevel
│ │ │ ├── DaSensitiveLevelController.java
│ │ │ └── vo
│ │ │ ├── DaSensitiveLevelPageReqVO.java
│ │ │ ├── DaSensitiveLevelRespVO.java
│ │ │ └── DaSensitiveLevelSaveReqVO.java
│ │ ├── convert
│ │ ├── asset
│ │ │ └── DaAssetConvert.java
│ │ ├── assetColumn
│ │ │ └── DaAssetColumnConvert.java
│ │ ├── assetchild
│ │ │ ├── api
│ │ │ │ ├── DaAssetApiConvert.java
│ │ │ │ └── DaAssetApiParamConvert.java
│ │ │ ├── audit
│ │ │ │ ├── DaAssetAuditAlertConvert.java
│ │ │ │ ├── DaAssetAuditRuleConvert.java
│ │ │ │ └── DaAssetAuditScheduleConvert.java
│ │ │ ├── geo
│ │ │ │ └── DaAssetGeoConvert.java
│ │ │ ├── gis
│ │ │ │ └── DaAssetGisConvert.java
│ │ │ ├── operate
│ │ │ │ ├── DaAssetOperateApplyConvert.java
│ │ │ │ └── DaAssetOperateLogConvert.java
│ │ │ ├── projectRel
│ │ │ │ └── DaAssetProjectRelConvert.java
│ │ │ ├── theme
│ │ │ │ └── DaAssetThemeRelConvert.java
│ │ │ └── video
│ │ │ │ └── DaAssetVideoConvert.java
│ │ ├── daAssetApply
│ │ │ └── DaAssetApplyConvert.java
│ │ ├── datasource
│ │ │ ├── DaDatasourceConvert.java
│ │ │ └── DaDatasourceProjectRelConvert.java
│ │ └── sensitiveLevel
│ │ │ └── DaSensitiveLevelConvert.java
│ │ ├── dal
│ │ ├── dataobject
│ │ │ ├── asset
│ │ │ │ └── DaAssetDO.java
│ │ │ ├── assetColumn
│ │ │ │ └── DaAssetColumnDO.java
│ │ │ ├── assetchild
│ │ │ │ ├── api
│ │ │ │ │ ├── DaAssetApiDO.java
│ │ │ │ │ └── DaAssetApiParamDO.java
│ │ │ │ ├── audit
│ │ │ │ │ ├── DaAssetAuditAlertDO.java
│ │ │ │ │ ├── DaAssetAuditRuleDO.java
│ │ │ │ │ └── DaAssetAuditScheduleDO.java
│ │ │ │ ├── geo
│ │ │ │ │ └── DaAssetGeoDO.java
│ │ │ │ ├── gis
│ │ │ │ │ └── DaAssetGisDO.java
│ │ │ │ ├── operate
│ │ │ │ │ ├── DaAssetOperateApplyDO.java
│ │ │ │ │ └── DaAssetOperateLogDO.java
│ │ │ │ ├── projectRel
│ │ │ │ │ └── DaAssetProjectRelDO.java
│ │ │ │ ├── theme
│ │ │ │ │ └── DaAssetThemeRelDO.java
│ │ │ │ └── video
│ │ │ │ │ └── DaAssetVideoDO.java
│ │ │ ├── daAssetApply
│ │ │ │ └── DaAssetApplyDO.java
│ │ │ ├── datasource
│ │ │ │ ├── DaDatasourceDO.java
│ │ │ │ └── DaDatasourceProjectRelDO.java
│ │ │ └── sensitiveLevel
│ │ │ │ └── DaSensitiveLevelDO.java
│ │ └── mapper
│ │ │ ├── asset
│ │ │ └── DaAssetMapper.java
│ │ │ ├── assetColumn
│ │ │ └── DaAssetColumnMapper.java
│ │ │ ├── assetchild
│ │ │ ├── api
│ │ │ │ ├── DaAssetApiMapper.java
│ │ │ │ └── DaAssetApiParamMapper.java
│ │ │ ├── audit
│ │ │ │ ├── DaAssetAuditAlertMapper.java
│ │ │ │ ├── DaAssetAuditRuleMapper.java
│ │ │ │ └── DaAssetAuditScheduleMapper.java
│ │ │ ├── geo
│ │ │ │ └── DaAssetGeoMapper.java
│ │ │ ├── gis
│ │ │ │ └── DaAssetGisMapper.java
│ │ │ ├── operate
│ │ │ │ ├── DaAssetOperateApplyMapper.java
│ │ │ │ └── DaAssetOperateLogMapper.java
│ │ │ ├── projectRel
│ │ │ │ └── DaAssetProjectRelMapper.java
│ │ │ ├── theme
│ │ │ │ └── DaAssetThemeRelMapper.java
│ │ │ └── video
│ │ │ │ └── DaAssetVideoMapper.java
│ │ │ ├── daAssetApply
│ │ │ └── DaAssetApplyMapper.java
│ │ │ ├── datasource
│ │ │ ├── DaDatasourceMapper.java
│ │ │ └── DaDatasourceProjectRelMapper.java
│ │ │ └── sensitiveLevel
│ │ │ └── DaSensitiveLevelMapper.java
│ │ ├── package-info.java
│ │ ├── service
│ │ ├── asset
│ │ │ ├── IDaAssetService.java
│ │ │ └── impl
│ │ │ │ └── DaAssetServiceImpl.java
│ │ ├── assetColumn
│ │ │ ├── IDaAssetColumnService.java
│ │ │ └── impl
│ │ │ │ └── DaAssetColumnServiceImpl.java
│ │ ├── assetchild
│ │ │ ├── api
│ │ │ │ ├── IDaAssetApiParamService.java
│ │ │ │ ├── IDaAssetApiService.java
│ │ │ │ └── impl
│ │ │ │ │ ├── DaAssetApiParamServiceImpl.java
│ │ │ │ │ └── DaAssetApiServiceImpl.java
│ │ │ ├── audit
│ │ │ │ ├── IDaAssetAuditAlertService.java
│ │ │ │ ├── IDaAssetAuditRuleService.java
│ │ │ │ ├── IDaAssetAuditScheduleService.java
│ │ │ │ └── impl
│ │ │ │ │ ├── DaAssetAuditAlertServiceImpl.java
│ │ │ │ │ ├── DaAssetAuditRuleServiceImpl.java
│ │ │ │ │ └── DaAssetAuditScheduleServiceImpl.java
│ │ │ ├── geo
│ │ │ │ ├── IDaAssetGeoService.java
│ │ │ │ └── impl
│ │ │ │ │ └── DaAssetGeoServiceImpl.java
│ │ │ ├── gis
│ │ │ │ ├── IDaAssetGisService.java
│ │ │ │ └── impl
│ │ │ │ │ └── DaAssetGisServiceImpl.java
│ │ │ ├── operate
│ │ │ │ ├── IDaAssetOperateApplyService.java
│ │ │ │ ├── IDaAssetOperateLogService.java
│ │ │ │ └── impl
│ │ │ │ │ ├── DaAssetOperateApplyServiceImpl.java
│ │ │ │ │ └── DaAssetOperateLogServiceImpl.java
│ │ │ ├── projectRel
│ │ │ │ ├── IDaAssetProjectRelService.java
│ │ │ │ └── impl
│ │ │ │ │ └── DaAssetProjectRelServiceImpl.java
│ │ │ ├── theme
│ │ │ │ ├── IDaAssetThemeRelService.java
│ │ │ │ └── impl
│ │ │ │ │ └── DaAssetThemeRelServiceImpl.java
│ │ │ └── video
│ │ │ │ ├── IDaAssetVideoService.java
│ │ │ │ └── impl
│ │ │ │ └── DaAssetVideoServiceImpl.java
│ │ ├── daAssetApply
│ │ │ ├── IDaAssetApplyService.java
│ │ │ └── impl
│ │ │ │ └── DaAssetApplyServiceImpl.java
│ │ ├── datasource
│ │ │ ├── IDaDatasourceProjectRelService.java
│ │ │ ├── IDaDatasourceService.java
│ │ │ └── impl
│ │ │ │ ├── DaDatasourceProjectRelServiceImpl.java
│ │ │ │ └── DaDatasourceServiceImpl.java
│ │ └── sensitiveLevel
│ │ │ ├── IDaSensitiveLevelService.java
│ │ │ └── impl
│ │ │ └── DaSensitiveLevelServiceImpl.java
│ │ └── utils
│ │ ├── ToTableColumnsUtils.java
│ │ ├── model
│ │ └── TaskSaveReqInput.java
│ │ └── video
│ │ └── VideoHandler.java
│ └── resources
│ ├── application-da-dev.yml
│ ├── application-da-prod.yml
│ └── mapper
│ └── da
│ ├── asset
│ └── DaAssetMapper.xml
│ ├── assetColumn
│ └── DaAssetColumnMapper.xml
│ ├── assetchild
│ ├── api
│ │ ├── DaAssetApiMapper.xml
│ │ └── DaAssetApiParamMapper.xml
│ ├── audit
│ │ ├── DaAssetAuditAlertMapper.xml
│ │ ├── DaAssetAuditRuleMapper.xml
│ │ └── DaAssetAuditScheduleMapper.xml
│ ├── geo
│ │ └── DaAssetGeoMapper.xml
│ ├── gis
│ │ └── DaAssetGisMapper.xml
│ ├── operate
│ │ ├── DaAssetOperateApplyMapper.xml
│ │ └── DaAssetOperateLogMapper.xml
│ ├── projectRel
│ │ └── DaAssetProjectRelMapper.xml
│ ├── theme
│ │ └── DaAssetThemeRelMapper.xml
│ └── video
│ │ └── DaAssetVideoMapper.xml
│ ├── daAssetApply
│ └── DaAssetApplyMapper.xml
│ ├── datasource
│ ├── DaDatasourceMapper.xml
│ └── DaDatasourceProjectRelMapper.xml
│ ├── discovery
│ └── IDataElemRuleRelService.xml
│ └── sensitiveLevel
│ └── DaSensitiveLevelMapper.xml
├── qdata-module-dp
├── pom.xml
├── qdata-module-dp-api
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── dp
│ │ └── api
│ │ ├── codeMap
│ │ └── dto
│ │ │ ├── DpCodeMapReqDTO.java
│ │ │ └── DpCodeMapRespDTO.java
│ │ ├── dataElem
│ │ └── dto
│ │ │ ├── DpDataElemAssetRelReqDTO.java
│ │ │ ├── DpDataElemAssetRelRespDTO.java
│ │ │ ├── DpDataElemCodeReqDTO.java
│ │ │ ├── DpDataElemCodeRespDTO.java
│ │ │ ├── DpDataElemReqDTO.java
│ │ │ ├── DpDataElemRespDTO.java
│ │ │ ├── DpDataElemRuleRelReqDTO.java
│ │ │ └── DpDataElemRuleRelRespDTO.java
│ │ ├── model
│ │ └── dto
│ │ │ ├── DpModelColumnReqDTO.java
│ │ │ ├── DpModelColumnRespDTO.java
│ │ │ ├── DpModelMaterializedReqDTO.java
│ │ │ ├── DpModelMaterializedRespDTO.java
│ │ │ ├── DpModelReqDTO.java
│ │ │ └── DpModelRespDTO.java
│ │ ├── package-info.java
│ │ └── service
│ │ ├── dataElem
│ │ ├── IDataElemApiService.java
│ │ └── IDataElemRuleRelService.java
│ │ ├── model
│ │ └── IDpModelApiService.java
│ │ └── package-info.java
└── qdata-module-dp-biz
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── dp
│ │ ├── controller
│ │ └── admin
│ │ │ ├── codeMap
│ │ │ ├── DpCodeMapController.java
│ │ │ └── vo
│ │ │ │ ├── DpCodeMapPageReqVO.java
│ │ │ │ ├── DpCodeMapRespVO.java
│ │ │ │ └── DpCodeMapSaveReqVO.java
│ │ │ ├── dataElem
│ │ │ ├── DpDataElemAssetRelController.java
│ │ │ ├── DpDataElemCodeController.java
│ │ │ ├── DpDataElemController.java
│ │ │ ├── DpDataElemRuleRelController.java
│ │ │ └── vo
│ │ │ │ ├── DpDataElemAssetRelPageReqVO.java
│ │ │ │ ├── DpDataElemAssetRelRespVO.java
│ │ │ │ ├── DpDataElemAssetRelSaveReqVO.java
│ │ │ │ ├── DpDataElemCodePageReqVO.java
│ │ │ │ ├── DpDataElemCodeRespVO.java
│ │ │ │ ├── DpDataElemCodeSaveReqVO.java
│ │ │ │ ├── DpDataElemPageReqVO.java
│ │ │ │ ├── DpDataElemRespVO.java
│ │ │ │ ├── DpDataElemRuleRelPageReqVO.java
│ │ │ │ ├── DpDataElemRuleRelRespVO.java
│ │ │ │ ├── DpDataElemRuleRelSaveReqVO.java
│ │ │ │ └── DpDataElemSaveReqVO.java
│ │ │ └── model
│ │ │ ├── DpModelColumnController.java
│ │ │ ├── DpModelController.java
│ │ │ ├── DpModelMaterializedController.java
│ │ │ └── vo
│ │ │ ├── DpMaterializedMethodReqVO.java
│ │ │ ├── DpModelColumnPageReqVO.java
│ │ │ ├── DpModelColumnRespVO.java
│ │ │ ├── DpModelColumnSaveReqVO.java
│ │ │ ├── DpModelMaterializedPageReqVO.java
│ │ │ ├── DpModelMaterializedRespVO.java
│ │ │ ├── DpModelMaterializedSaveReqVO.java
│ │ │ ├── DpModelPageReqVO.java
│ │ │ ├── DpModelRespVO.java
│ │ │ └── DpModelSaveReqVO.java
│ │ ├── convert
│ │ ├── codeMap
│ │ │ └── DpCodeMapConvert.java
│ │ ├── dataElem
│ │ │ ├── DpDataElemAssetRelConvert.java
│ │ │ ├── DpDataElemCodeConvert.java
│ │ │ ├── DpDataElemConvert.java
│ │ │ └── DpDataElemRuleRelConvert.java
│ │ └── model
│ │ │ ├── DpModelColumnConvert.java
│ │ │ ├── DpModelConvert.java
│ │ │ └── DpModelMaterializedConvert.java
│ │ ├── dal
│ │ ├── dataobject
│ │ │ ├── codeMap
│ │ │ │ └── DpCodeMapDO.java
│ │ │ ├── dataElem
│ │ │ │ ├── DpDataElemAssetRelDO.java
│ │ │ │ ├── DpDataElemCodeDO.java
│ │ │ │ ├── DpDataElemDO.java
│ │ │ │ └── DpDataElemRuleRelDO.java
│ │ │ └── model
│ │ │ │ ├── DpModelColumnDO.java
│ │ │ │ ├── DpModelDO.java
│ │ │ │ └── DpModelMaterializedDO.java
│ │ └── mapper
│ │ │ ├── codeMap
│ │ │ └── DpCodeMapMapper.java
│ │ │ ├── dataElem
│ │ │ ├── DpDataElemAssetRelMapper.java
│ │ │ ├── DpDataElemCodeMapper.java
│ │ │ ├── DpDataElemMapper.java
│ │ │ └── DpDataElemRuleRelMapper.java
│ │ │ └── model
│ │ │ ├── DpModelColumnMapper.java
│ │ │ ├── DpModelMapper.java
│ │ │ └── DpModelMaterializedMapper.java
│ │ ├── package-info.java
│ │ └── service
│ │ ├── codeMap
│ │ ├── IDpCodeMapService.java
│ │ └── impl
│ │ │ └── DpCodeMapServiceImpl.java
│ │ ├── dataElem
│ │ ├── IDpDataElemAssetRelService.java
│ │ ├── IDpDataElemCodeService.java
│ │ ├── IDpDataElemRuleRelService.java
│ │ ├── IDpDataElemService.java
│ │ └── impl
│ │ │ ├── DpDataElemAssetRelServiceImpl.java
│ │ │ ├── DpDataElemCodeServiceImpl.java
│ │ │ ├── DpDataElemRuleRelServiceImpl.java
│ │ │ └── DpDataElemServiceImpl.java
│ │ └── model
│ │ ├── IDpModelColumnService.java
│ │ ├── IDpModelMaterializedService.java
│ │ ├── IDpModelService.java
│ │ └── impl
│ │ ├── DpModelColumnServiceImpl.java
│ │ ├── DpModelMaterializedServiceImpl.java
│ │ └── DpModelServiceImpl.java
│ └── resources
│ ├── application-dp-dev.yml
│ ├── application-dp-prod.yml
│ └── mapper
│ └── dp
│ ├── codeMap
│ └── DpCodeMapMapper.xml
│ ├── dataElem
│ ├── DpDataElemAssetRelMapper.xml
│ ├── DpDataElemCodeMapper.xml
│ ├── DpDataElemMapper.xml
│ └── DpDataElemRuleRelMapper.xml
│ └── model
│ ├── DpModelColumnMapper.xml
│ ├── DpModelMapper.xml
│ └── DpModelMaterializedMapper.xml
├── qdata-module-dpp
├── pom.xml
├── qdata-module-dpp-api
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── dpp
│ │ └── api
│ │ ├── etl
│ │ └── dto
│ │ │ ├── DppEtlNodeInstanceReqDTO.java
│ │ │ ├── DppEtlNodeInstanceRespDTO.java
│ │ │ ├── DppEtlNodeLogReqDTO.java
│ │ │ ├── DppEtlNodeLogRespDTO.java
│ │ │ ├── DppEtlNodeReqDTO.java
│ │ │ ├── DppEtlNodeRespDTO.java
│ │ │ ├── DppEtlSchedulerReqDTO.java
│ │ │ ├── DppEtlSchedulerRespDTO.java
│ │ │ ├── DppEtlTaskExtReqDTO.java
│ │ │ ├── DppEtlTaskExtRespDTO.java
│ │ │ ├── DppEtlTaskInstanceReqDTO.java
│ │ │ ├── DppEtlTaskInstanceRespDTO.java
│ │ │ ├── DppEtlTaskLogReqDTO.java
│ │ │ ├── DppEtlTaskLogRespDTO.java
│ │ │ ├── DppEtlTaskNodeRelLogReqDTO.java
│ │ │ ├── DppEtlTaskNodeRelLogRespDTO.java
│ │ │ ├── DppEtlTaskNodeRelReqDTO.java
│ │ │ ├── DppEtlTaskNodeRelRespDTO.java
│ │ │ ├── DppEtlTaskReqDTO.java
│ │ │ └── DppEtlTaskRespDTO.java
│ │ ├── package-info.java
│ │ └── service
│ │ └── etl
│ │ └── DppEtlTaskService.java
└── qdata-module-dpp-biz
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── dpp
│ │ ├── controller
│ │ └── admin
│ │ │ └── etl
│ │ │ ├── DppEtlExecutorController.java
│ │ │ ├── DppEtlNodeController.java
│ │ │ ├── DppEtlNodeInstanceController.java
│ │ │ ├── DppEtlNodeLogController.java
│ │ │ ├── DppEtlSchedulerController.java
│ │ │ ├── DppEtlTaskController.java
│ │ │ ├── DppEtlTaskInstanceController.java
│ │ │ ├── DppEtlTaskLogController.java
│ │ │ ├── DppEtlTaskNodeRelController.java
│ │ │ ├── DppEtlTaskNodeRelLogController.java
│ │ │ └── vo
│ │ │ ├── DppEtlNewNodeSaveReqVO.java
│ │ │ ├── DppEtlNodeInstancePageReqVO.java
│ │ │ ├── DppEtlNodeInstanceRespVO.java
│ │ │ ├── DppEtlNodeInstanceSaveReqVO.java
│ │ │ ├── DppEtlNodeLogPageReqVO.java
│ │ │ ├── DppEtlNodeLogRespVO.java
│ │ │ ├── DppEtlNodeLogSaveReqVO.java
│ │ │ ├── DppEtlNodePageReqVO.java
│ │ │ ├── DppEtlNodeRespVO.java
│ │ │ ├── DppEtlNodeSaveReqVO.java
│ │ │ ├── DppEtlSchedulerPageReqVO.java
│ │ │ ├── DppEtlSchedulerRespVO.java
│ │ │ ├── DppEtlSchedulerSaveReqVO.java
│ │ │ ├── DppEtlTaskExtPageReqVO.java
│ │ │ ├── DppEtlTaskExtRespVO.java
│ │ │ ├── DppEtlTaskExtSaveReqVO.java
│ │ │ ├── DppEtlTaskInstancePageReqVO.java
│ │ │ ├── DppEtlTaskInstanceRespVO.java
│ │ │ ├── DppEtlTaskInstanceSaveReqVO.java
│ │ │ ├── DppEtlTaskInstanceTreeListReqVO.java
│ │ │ ├── DppEtlTaskInstanceTreeListRespVO.java
│ │ │ ├── DppEtlTaskLogPageReqVO.java
│ │ │ ├── DppEtlTaskLogRespVO.java
│ │ │ ├── DppEtlTaskLogSaveReqVO.java
│ │ │ ├── DppEtlTaskNodeRelLogPageReqVO.java
│ │ │ ├── DppEtlTaskNodeRelLogRespVO.java
│ │ │ ├── DppEtlTaskNodeRelLogSaveReqVO.java
│ │ │ ├── DppEtlTaskNodeRelPageReqVO.java
│ │ │ ├── DppEtlTaskNodeRelRespVO.java
│ │ │ ├── DppEtlTaskNodeRelSaveReqVO.java
│ │ │ ├── DppEtlTaskPageReqVO.java
│ │ │ ├── DppEtlTaskRespVO.java
│ │ │ ├── DppEtlTaskSaveReqVO.java
│ │ │ ├── DppEtlTaskTreeRespVO.java
│ │ │ ├── DppEtlTaskUpdateQueryRespVO.java
│ │ │ ├── DppOnlDesformAndFormDataRespVO.java
│ │ │ ├── DppOnlDesformDataBaseRequestVO.java
│ │ │ ├── DppOnlDesformDataDeletedOrDetailsRequestVO.java
│ │ │ ├── DppOnlDesformDataListRequestVO.java
│ │ │ ├── DppOnlDesformDataPageReqVO.java
│ │ │ ├── DppOnlDesformDataPageRequestVO.java
│ │ │ ├── DppOnlDesformDataRespVO.java
│ │ │ ├── DppOnlDesformDataSaveReqVO.java
│ │ │ ├── DppOnlDesformDataSaveRequestVO.java
│ │ │ ├── DppOnlDesformPageReqVO.java
│ │ │ ├── DppOnlDesformRespVO.java
│ │ │ ├── DppOnlDesformSaveReqVO.java
│ │ │ └── ParametersNode.java
│ │ ├── convert
│ │ └── etl
│ │ │ ├── DppEtlNodeConvert.java
│ │ │ ├── DppEtlNodeInstanceConvert.java
│ │ │ ├── DppEtlNodeLogConvert.java
│ │ │ ├── DppEtlSchedulerConvert.java
│ │ │ ├── DppEtlTaskConvert.java
│ │ │ ├── DppEtlTaskInstanceConvert.java
│ │ │ ├── DppEtlTaskLogConvert.java
│ │ │ ├── DppEtlTaskNodeRelConvert.java
│ │ │ └── DppEtlTaskNodeRelLogConvert.java
│ │ ├── dal
│ │ ├── dataobject
│ │ │ └── etl
│ │ │ │ ├── DppEtlNodeDO.java
│ │ │ │ ├── DppEtlNodeInstanceDO.java
│ │ │ │ ├── DppEtlNodeLogDO.java
│ │ │ │ ├── DppEtlSchedulerDO.java
│ │ │ │ ├── DppEtlTaskDO.java
│ │ │ │ ├── DppEtlTaskExtDO.java
│ │ │ │ ├── DppEtlTaskInstanceDO.java
│ │ │ │ ├── DppEtlTaskLogDO.java
│ │ │ │ ├── DppEtlTaskNodeRelDO.java
│ │ │ │ └── DppEtlTaskNodeRelLogDO.java
│ │ └── mapper
│ │ │ └── etl
│ │ │ ├── DppEtlNodeInstanceMapper.java
│ │ │ ├── DppEtlNodeLogMapper.java
│ │ │ ├── DppEtlNodeMapper.java
│ │ │ ├── DppEtlSchedulerMapper.java
│ │ │ ├── DppEtlTaskExtMapper.java
│ │ │ ├── DppEtlTaskInstanceMapper.java
│ │ │ ├── DppEtlTaskLogMapper.java
│ │ │ ├── DppEtlTaskMapper.java
│ │ │ ├── DppEtlTaskNodeRelLogMapper.java
│ │ │ └── DppEtlTaskNodeRelMapper.java
│ │ ├── listener
│ │ ├── ProcessListener.java
│ │ └── TaskListener.java
│ │ ├── package-info.java
│ │ ├── service
│ │ └── etl
│ │ │ ├── IDppEtlNodeInstanceService.java
│ │ │ ├── IDppEtlNodeLogService.java
│ │ │ ├── IDppEtlNodeService.java
│ │ │ ├── IDppEtlSchedulerService.java
│ │ │ ├── IDppEtlTaskExtService.java
│ │ │ ├── IDppEtlTaskInstanceService.java
│ │ │ ├── IDppEtlTaskLogService.java
│ │ │ ├── IDppEtlTaskNodeRelLogService.java
│ │ │ ├── IDppEtlTaskNodeRelService.java
│ │ │ ├── IDppEtlTaskService.java
│ │ │ └── impl
│ │ │ ├── DppEtlNodeInstanceServiceImpl.java
│ │ │ ├── DppEtlNodeLogServiceImpl.java
│ │ │ ├── DppEtlNodeServiceImpl.java
│ │ │ ├── DppEtlSchedulerServiceImpl.java
│ │ │ ├── DppEtlTaskExtServiceImpl.java
│ │ │ ├── DppEtlTaskInstanceServiceImpl.java
│ │ │ ├── DppEtlTaskLogServiceImpl.java
│ │ │ ├── DppEtlTaskNodeRelLogServiceImpl.java
│ │ │ ├── DppEtlTaskNodeRelServiceImpl.java
│ │ │ └── DppEtlTaskServiceImpl.java
│ │ └── utils
│ │ ├── IDGeneratorUtils.java
│ │ ├── SnowflakeIdHelper.java
│ │ ├── TaskConverter.java
│ │ ├── datax
│ │ └── FlinkxJson.java
│ │ ├── ds
│ │ └── component
│ │ │ ├── ComponentFactory.java
│ │ │ ├── ComponentItem.java
│ │ │ ├── ComponentRegistry.java
│ │ │ ├── CsvReaderComponent.java
│ │ │ ├── DBReaderComponent.java
│ │ │ ├── DBWriterComponent.java
│ │ │ ├── ExcelReaderComponent.java
│ │ │ ├── KafkaReaderComponent.java
│ │ │ ├── ProcedureComponent.java
│ │ │ ├── SQLComponent.java
│ │ │ ├── ShellComponent.java
│ │ │ ├── SparkCleanComponent.java
│ │ │ ├── SparkSQLComponent.java
│ │ │ └── SubProcessComponent.java
│ │ ├── model
│ │ ├── DsResource.java
│ │ ├── PreviousTaskNode.java
│ │ └── TaskNode.java
│ │ └── taskParamsCheck
│ │ ├── AbstractParameters.java
│ │ ├── DataXParameters.java
│ │ └── SparkParameters.java
│ └── resources
│ ├── application-dp-dev.yml
│ ├── application-dp-prod.yml
│ └── mapper
│ └── dpp
│ └── etl
│ ├── DppEtlNodeInstanceMapper.xml
│ ├── DppEtlNodeLogMapper.xml
│ ├── DppEtlNodeMapper.xml
│ ├── DppEtlSchedulerMapper.xml
│ ├── DppEtlTaskExtMapper.xml
│ ├── DppEtlTaskInstanceMapper.xml
│ ├── DppEtlTaskLogMapper.xml
│ ├── DppEtlTaskMapper.xml
│ ├── DppEtlTaskNodeRelLogMapper.xml
│ └── DppEtlTaskNodeRelMapper.xml
├── qdata-module-ds
├── pom.xml
├── qdata-module-ds-api
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── ds
│ │ └── api
│ │ ├── api
│ │ └── dto
│ │ │ ├── DsApiReqDTO.java
│ │ │ ├── DsApiRespDTO.java
│ │ │ ├── ExecuteConfig.java
│ │ │ ├── FieldParam.java
│ │ │ ├── ReqParam.java
│ │ │ └── ResParam.java
│ │ ├── apiLog
│ │ └── dto
│ │ │ ├── DsApiLogReqDTO.java
│ │ │ └── DsApiLogRespDTO.java
│ │ ├── apply
│ │ └── dto
│ │ │ ├── DsApiApplyReqDTO.java
│ │ │ └── DsApiApplyRespDTO.java
│ │ └── package-info.java
└── qdata-module-ds-biz
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── ds
│ │ ├── annotation
│ │ ├── DsCheckClientToken.java
│ │ └── handler
│ │ │ └── DsCheckClientTokenInterceptor.java
│ │ ├── async
│ │ └── AsyncTask.java
│ │ ├── config
│ │ ├── api
│ │ │ ├── ApiMappingConfig.java
│ │ │ └── StartedUpRunner.java
│ │ └── auth
│ │ │ ├── DsTokenConfigure.java
│ │ │ └── dataLoader
│ │ │ └── DsDataLoaderImpl.java
│ │ ├── controller
│ │ └── admin
│ │ │ ├── api
│ │ │ ├── CommonServicesController.java
│ │ │ ├── DsApiController.java
│ │ │ └── vo
│ │ │ │ ├── DsApiPageReqVO.java
│ │ │ │ ├── DsApiReqVO.java
│ │ │ │ ├── DsApiRespVO.java
│ │ │ │ ├── DsApiSaveReqVO.java
│ │ │ │ └── SqlParseVo.java
│ │ │ ├── apiLog
│ │ │ ├── DsApiLogController.java
│ │ │ └── vo
│ │ │ │ ├── DsApiLogPageReqVO.java
│ │ │ │ ├── DsApiLogRespVO.java
│ │ │ │ └── DsApiLogSaveReqVO.java
│ │ │ └── auth
│ │ │ └── DsAuthController.java
│ │ ├── convert
│ │ ├── api
│ │ │ └── DsApiConvert.java
│ │ └── apiLog
│ │ │ └── DsApiLogConvert.java
│ │ ├── dal
│ │ ├── dataobject
│ │ │ ├── api
│ │ │ │ ├── DsApiDO.java
│ │ │ │ ├── ExecuteConfig.java
│ │ │ │ ├── FieldParam.java
│ │ │ │ └── SqlParseDto.java
│ │ │ ├── apiLog
│ │ │ │ └── DsApiLogDO.java
│ │ │ └── dto
│ │ │ │ ├── ReqParam.java
│ │ │ │ └── ResParam.java
│ │ └── mapper
│ │ │ ├── api
│ │ │ └── DsApiMapper.java
│ │ │ └── apiLog
│ │ │ └── DsApiLogMapper.java
│ │ ├── handler
│ │ ├── MappingHandlerMapping.java
│ │ ├── RequestHandler.java
│ │ ├── RequestInterceptor.java
│ │ └── WebConfig.java
│ │ ├── package-info.java
│ │ ├── service
│ │ ├── api
│ │ │ ├── IDsApiService.java
│ │ │ └── impl
│ │ │ │ ├── ApiMappingEngine.java
│ │ │ │ └── DsApiServiceImpl.java
│ │ └── apiLog
│ │ │ ├── IDsApiLogService.java
│ │ │ └── impl
│ │ │ └── DsApiLogServiceImpl.java
│ │ └── utils
│ │ ├── ApiJwtUtil.java
│ │ ├── DataTimeUtil.java
│ │ ├── DateUtil.java
│ │ ├── JsonUtil.java
│ │ ├── NamedParameterUtil.java
│ │ ├── PageUtil.java
│ │ ├── ParsedSql.java
│ │ └── SqlBuilderUtil.java
│ └── resources
│ ├── application-dp-dev.yml
│ ├── application-dp-prod.yml
│ └── mapper
│ └── ds
│ ├── api
│ └── DsApiMapper.xml
│ └── apiLog
│ └── DsApiLogMapper.xml
├── qdata-module-system
├── pom.xml
├── qdata-module-system-api
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── system
│ │ ├── api
│ │ └── message
│ │ │ └── dto
│ │ │ ├── MessageReqDTO.java
│ │ │ ├── MessageRespDTO.java
│ │ │ ├── MessageSaveReqDTO.java
│ │ │ ├── MessageTemplateReqDTO.java
│ │ │ └── MessageTemplateRespDTO.java
│ │ ├── domain
│ │ ├── SysCache.java
│ │ ├── SysConfig.java
│ │ ├── SysLogininfor.java
│ │ ├── SysNotice.java
│ │ ├── SysOperLog.java
│ │ ├── SysPost.java
│ │ ├── SysRoleDept.java
│ │ ├── SysRoleMenu.java
│ │ ├── SysUserOnline.java
│ │ ├── SysUserPost.java
│ │ ├── SysUserRole.java
│ │ ├── SystemContentDO.java
│ │ ├── dto
│ │ │ ├── DeptDto.java
│ │ │ ├── PageDto.java
│ │ │ ├── RoleDto.java
│ │ │ ├── SystemContentReqDTO.java
│ │ │ ├── SystemContentRespDTO.java
│ │ │ ├── UserDto.java
│ │ │ └── UserQueryDto.java
│ │ └── vo
│ │ │ ├── ColumnRespVO.java
│ │ │ ├── CsvColumnReqVO.java
│ │ │ ├── ExcelColumnReqVO.java
│ │ │ ├── MetaVo.java
│ │ │ ├── RouterVo.java
│ │ │ ├── SystemContentPageReqVO.java
│ │ │ ├── SystemContentRespVO.java
│ │ │ └── SystemContentSaveReqVO.java
│ │ ├── enums
│ │ └── auth
│ │ │ └── AuthProductEnums.java
│ │ ├── mapper
│ │ ├── SysConfigMapper.java
│ │ ├── SysDeptMapper.java
│ │ ├── SysDictDataMapper.java
│ │ ├── SysDictTypeMapper.java
│ │ ├── SysLogininforMapper.java
│ │ ├── SysMenuMapper.java
│ │ ├── SysNoticeMapper.java
│ │ ├── SysOperLogMapper.java
│ │ ├── SysPostMapper.java
│ │ ├── SysRoleDeptMapper.java
│ │ ├── SysRoleMapper.java
│ │ ├── SysRoleMenuMapper.java
│ │ ├── SysUserMapper.java
│ │ ├── SysUserPostMapper.java
│ │ ├── SysUserRoleMapper.java
│ │ └── SystemContentMapper.java
│ │ ├── rsa
│ │ └── RSAUtil.java
│ │ └── service
│ │ ├── ISysConfigService.java
│ │ ├── ISysDeptService.java
│ │ ├── ISysDictDataService.java
│ │ ├── ISysDictTypeService.java
│ │ ├── ISysLogininforService.java
│ │ ├── ISysMenuService.java
│ │ ├── ISysMessageService.java
│ │ ├── ISysNoticeService.java
│ │ ├── ISysOperLogService.java
│ │ ├── ISysPostService.java
│ │ ├── ISysRoleService.java
│ │ ├── ISysUserOnlineService.java
│ │ ├── ISysUserService.java
│ │ ├── ISystemContentService.java
│ │ ├── ISystemDictDataService.java
│ │ └── impl
│ │ ├── SysConfigServiceImpl.java
│ │ ├── SysDeptServiceImpl.java
│ │ ├── SysDictDataServiceImpl.java
│ │ ├── SysDictTypeServiceImpl.java
│ │ ├── SysLogininforServiceImpl.java
│ │ ├── SysMenuServiceImpl.java
│ │ ├── SysNoticeServiceImpl.java
│ │ ├── SysOperLogServiceImpl.java
│ │ ├── SysPostServiceImpl.java
│ │ ├── SysRoleServiceImpl.java
│ │ ├── SysUserOnlineServiceImpl.java
│ │ ├── SysUserServiceImpl.java
│ │ └── SystemContentServiceImpl.java
└── qdata-module-system-biz
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ └── tech
│ │ └── qiantong
│ │ └── qdata
│ │ └── module
│ │ └── system
│ │ ├── ca
│ │ ├── domain
│ │ │ ├── CaCert.java
│ │ │ └── CaSubject.java
│ │ ├── mapper
│ │ │ ├── CaCertMapper.java
│ │ │ └── CaSubjectMapper.java
│ │ └── service
│ │ │ ├── ICaCertService.java
│ │ │ ├── ICaSubjectService.java
│ │ │ └── impl
│ │ │ ├── CaCertServiceImpl.java
│ │ │ └── CaSubjectServiceImpl.java
│ │ ├── controller
│ │ └── admin
│ │ │ ├── auth
│ │ │ └── AuthController.java
│ │ │ ├── ca
│ │ │ ├── CaCertController.java
│ │ │ └── CaSubjectController.java
│ │ │ ├── common
│ │ │ ├── CaptchaController.java
│ │ │ └── CommonController.java
│ │ │ ├── example
│ │ │ ├── es
│ │ │ │ └── TextSearchController.java
│ │ │ ├── pay
│ │ │ │ └── PaymentController.java
│ │ │ └── websocket
│ │ │ │ └── WebSocketServer.java
│ │ │ ├── monitor
│ │ │ ├── CacheController.java
│ │ │ ├── ServerController.java
│ │ │ ├── SysLogininforController.java
│ │ │ ├── SysOperlogController.java
│ │ │ └── SysUserOnlineController.java
│ │ │ ├── system
│ │ │ ├── SysConfigController.java
│ │ │ ├── SysDeptController.java
│ │ │ ├── SysDictDataController.java
│ │ │ ├── SysDictTypeController.java
│ │ │ ├── SysIndexController.java
│ │ │ ├── SysLoginController.java
│ │ │ ├── SysMenuController.java
│ │ │ ├── SysNoticeController.java
│ │ │ ├── SysPostController.java
│ │ │ ├── SysProfileController.java
│ │ │ ├── SysRegisterController.java
│ │ │ ├── SysRoleController.java
│ │ │ ├── SysSyncDataController.java
│ │ │ ├── SysUserController.java
│ │ │ ├── SystemContentController.java
│ │ │ └── message
│ │ │ │ ├── MessageController.java
│ │ │ │ ├── MessageTemplateController.java
│ │ │ │ ├── vo
│ │ │ │ ├── MessagePageReqVO.java
│ │ │ │ ├── MessageRespVO.java
│ │ │ │ ├── MessageSaveReqVO.java
│ │ │ │ ├── MessageTemplatePageReqVO.java
│ │ │ │ ├── MessageTemplateRespVO.java
│ │ │ │ └── MessageTemplateSaveReqVO.java
│ │ │ │ └── websocket
│ │ │ │ └── WebSocketMessageServer.java
│ │ │ └── tool
│ │ │ └── TestController.java
│ │ ├── convert
│ │ └── message
│ │ │ ├── MessageConvert.java
│ │ │ └── MessageTemplateConvert.java
│ │ ├── core
│ │ └── config
│ │ │ └── SwaggerConfig.java
│ │ ├── dal
│ │ ├── dataobject
│ │ │ ├── auth
│ │ │ │ └── RelUserAuthProductDO.java
│ │ │ └── message
│ │ │ │ ├── MessageDO.java
│ │ │ │ ├── MessageTemplateDO.java
│ │ │ │ └── enums
│ │ │ │ └── MessageHasReadEnums.java
│ │ └── mapper
│ │ │ ├── auth
│ │ │ └── RelUserAuthProductMapper.java
│ │ │ └── message
│ │ │ ├── MessageMapper.java
│ │ │ └── MessageTemplateMapper.java
│ │ └── service
│ │ ├── auth
│ │ ├── IRelUserAuthProductService.java
│ │ ├── SysSyncDataService.java
│ │ └── impl
│ │ │ ├── RelUserAuthProductServiceImpl.java
│ │ │ └── SysSyncDataServiceImpl.java
│ │ └── message
│ │ ├── IMessageService.java
│ │ ├── IMessageTemplateService.java
│ │ └── impl
│ │ ├── MessageServiceImpl.java
│ │ └── MessageTemplateServiceImpl.java
│ └── resources
│ ├── application-system-dev.yml
│ ├── application-system-prod.yml
│ └── mapper
│ ├── ca
│ ├── CaCertMapper.xml
│ └── IDataElemRuleRelService.xml
│ └── system
│ ├── IDsProjectServiceMapper.xml
│ ├── SysConfigMapper.xml
│ ├── SysDeptMapper.xml
│ ├── SysDictDataMapper.xml
│ ├── SysDictTypeMapper.xml
│ ├── SysLogininforMapper.xml
│ ├── SysMenuMapper.xml
│ ├── SysNoticeMapper.xml
│ ├── SysOperLogMapper.xml
│ ├── SysPostMapper.xml
│ ├── SysRoleMapper.xml
│ ├── SysRoleMenuMapper.xml
│ ├── SysUserMapper.xml
│ ├── SysUserPostMapper.xml
│ └── SysUserRoleMapper.xml
├── qdata-server
├── pom.xml
└── src
│ ├── docker
│ ├── Dockerfile
│ ├── docker-compose.yml
│ └── restart.sh
│ ├── main
│ ├── java
│ │ └── tech
│ │ │ └── qiantong
│ │ │ └── qdata
│ │ │ └── server
│ │ │ ├── QDataApplication.java
│ │ │ ├── QDataServletInitializer.java
│ │ │ ├── config
│ │ │ └── EmbeddedRedisConfig.java
│ │ │ └── controller
│ │ │ └── DefaultController.java
│ └── resources
│ │ ├── META-INF
│ │ └── spring-devtools.properties
│ │ ├── application-dev.yml
│ │ ├── application-prod.yml
│ │ ├── application.yml
│ │ ├── banner.txt
│ │ ├── ehcache.xml
│ │ ├── i18n
│ │ └── messages.properties
│ │ ├── logback.xml
│ │ ├── mybatis
│ │ └── mybatis-config.xml
│ │ ├── private_key.pem
│ │ └── public_key.pem
│ └── test
│ └── java
│ └── tech
│ └── qiantong
│ └── qdata
│ └── server
│ ├── DpModelMaterializedServiceImplTest.java
│ ├── EsTest.java
│ ├── HttpUtilsTest.java
│ ├── IDaDatasourceTest.java
│ ├── IDpModelColumnServiceTest.java
│ ├── ProjectRenamer.java
│ └── SystemMessageTest.java
├── qdata-ui
├── .env.development
├── .env.production
├── .env.staging
├── .eslintignore
├── .gitignore
├── LICENSE
├── bin
│ ├── build.bat
│ ├── package.bat
│ └── run-web.bat
├── eslint.config.js
├── html
│ └── ie.html
├── index.html
├── package.json
├── public
│ ├── excel
│ │ └── 缺陷管理导入模板.xlsx
│ ├── favicon.ico
│ ├── qianshu-favicon.png
│ └── sso-favicon.ico
├── src
│ ├── App.vue
│ ├── api
│ │ ├── att
│ │ │ ├── attDataElemCat
│ │ │ │ └── attDataElemCat.js
│ │ │ ├── cat
│ │ │ │ ├── attApiCat
│ │ │ │ │ └── attApiCat.js
│ │ │ │ ├── attAssetCat
│ │ │ │ │ └── attAssetCat.js
│ │ │ │ ├── attDataDevCat
│ │ │ │ │ └── attDataDevCat.js
│ │ │ │ ├── attDataElemCat
│ │ │ │ │ └── attDataElemCat.js
│ │ │ │ ├── attJobCat
│ │ │ │ │ └── attJobCat.js
│ │ │ │ ├── attModelCat
│ │ │ │ │ └── attModelCat.js
│ │ │ │ └── attTaskCat
│ │ │ │ │ └── attTaskCat.js
│ │ │ ├── client
│ │ │ │ └── client.js
│ │ │ ├── project
│ │ │ │ └── attProject.js
│ │ │ ├── projectUserRel
│ │ │ │ └── attProjectUserRel.js
│ │ │ ├── rule
│ │ │ │ ├── attAuditRule.js
│ │ │ │ └── attCleanRule.js
│ │ │ └── theme
│ │ │ │ └── attTheme.js
│ │ ├── da
│ │ │ ├── apply
│ │ │ │ └── apply.js
│ │ │ ├── asset
│ │ │ │ └── daAsset.js
│ │ │ ├── assetColumn
│ │ │ │ └── daAssetColumn.js
│ │ │ ├── assetchild
│ │ │ │ ├── api
│ │ │ │ │ ├── api.js
│ │ │ │ │ └── daAssetApiParam.js
│ │ │ │ ├── audit
│ │ │ │ │ ├── daAssetAuditAlert.js
│ │ │ │ │ ├── daAssetAuditRule.js
│ │ │ │ │ └── daAssetAuditSchedule.js
│ │ │ │ ├── geo
│ │ │ │ │ └── daAssetGeo.js
│ │ │ │ ├── gis
│ │ │ │ │ └── daAssetGis.js
│ │ │ │ ├── operate
│ │ │ │ │ ├── daAssetOperateApply.js
│ │ │ │ │ └── daAssetOperateLog.js
│ │ │ │ ├── theme
│ │ │ │ │ └── daAssetThemeRel.js
│ │ │ │ └── video
│ │ │ │ │ └── daAssetVideo.js
│ │ │ ├── autoFill
│ │ │ │ ├── datax-jdbcDatasource.js
│ │ │ │ └── metadata-query.js
│ │ │ ├── daAssetApply
│ │ │ │ └── daAssetApply.js
│ │ │ ├── datasource
│ │ │ │ └── daDatasource.js
│ │ │ ├── discovery
│ │ │ │ ├── daDiscoveryColumn.js
│ │ │ │ ├── daDiscoveryTable.js
│ │ │ │ ├── daDiscoveryTask.js
│ │ │ │ └── daDiscoveryTaskLog.js
│ │ │ └── sensitiveLevel
│ │ │ │ └── daSensitiveLevel.js
│ │ ├── dp
│ │ │ ├── dataElem
│ │ │ │ ├── dpCodeMap.js
│ │ │ │ ├── dpDataElem.js
│ │ │ │ ├── dpDataElemAssetRel.js
│ │ │ │ ├── dpDataElemCode.js
│ │ │ │ └── dpDataElemRuleRel.js
│ │ │ └── model
│ │ │ │ ├── dpModel.js
│ │ │ │ ├── dpModelColumn.js
│ │ │ │ └── dpModelMaterialized.js
│ │ ├── dpp
│ │ │ ├── etl
│ │ │ │ ├── dppEtlExecutors.js
│ │ │ │ ├── dppEtlNode.js
│ │ │ │ ├── dppEtlNodeInstance.js
│ │ │ │ ├── dppEtlNodeLog.js
│ │ │ │ ├── dppEtlScheduler.js
│ │ │ │ ├── dppEtlTask.js
│ │ │ │ ├── dppEtlTaskInstance.js
│ │ │ │ ├── dppEtlTaskLog.js
│ │ │ │ ├── dppEtlTaskNodeRel.js
│ │ │ │ └── dppEtlTaskNodeRelLog.js
│ │ │ └── onlDesformData
│ │ │ │ └── desformData.js
│ │ ├── ds
│ │ │ ├── api
│ │ │ │ └── dsApi.js
│ │ │ └── apiLog
│ │ │ │ └── apiLog.js
│ │ ├── example
│ │ │ ├── gen
│ │ │ │ └── dept.js
│ │ │ ├── genStudent
│ │ │ │ └── student.js
│ │ │ ├── pay.js
│ │ │ └── user
│ │ │ │ └── userType.js
│ │ ├── report
│ │ │ ├── project.api.ts
│ │ │ └── project.d.ts
│ │ └── system
│ │ │ ├── auth
│ │ │ ├── client.js
│ │ │ └── user.js
│ │ │ ├── ca
│ │ │ ├── cert.js
│ │ │ └── subject.js
│ │ │ ├── login.js
│ │ │ ├── menu.js
│ │ │ ├── monitor
│ │ │ ├── cache.js
│ │ │ ├── job.js
│ │ │ ├── jobLog.js
│ │ │ ├── logininfor.js
│ │ │ ├── online.js
│ │ │ ├── operlog.js
│ │ │ └── server.js
│ │ │ ├── sso-auth.js
│ │ │ ├── sso-login-page.js
│ │ │ ├── system
│ │ │ ├── config.js
│ │ │ ├── content.js
│ │ │ ├── dept.js
│ │ │ ├── dict
│ │ │ │ ├── data.js
│ │ │ │ └── type.js
│ │ │ ├── menu.js
│ │ │ ├── message
│ │ │ │ ├── message.js
│ │ │ │ ├── messageTemplate.js
│ │ │ │ └── websocketService.js
│ │ │ ├── notice.js
│ │ │ ├── post.js
│ │ │ ├── role.js
│ │ │ └── user.js
│ │ │ └── tool
│ │ │ └── gen.js
│ ├── assets
│ │ ├── cockpit
│ │ │ ├── arrow-l.png
│ │ │ ├── arrow-r.png
│ │ │ ├── bg.png
│ │ │ ├── bot-left.png
│ │ │ ├── bottom-tab-act.png
│ │ │ ├── bottom-tab.png
│ │ │ ├── box (1).png
│ │ │ ├── box (2).png
│ │ │ ├── box (3).png
│ │ │ ├── box (4).png
│ │ │ ├── btbody.png
│ │ │ ├── bthead.png
│ │ │ ├── center-btn-act.png
│ │ │ ├── center-btn.png
│ │ │ ├── center-icon.png
│ │ │ ├── center.png
│ │ │ ├── left (1).png
│ │ │ ├── left (2).png
│ │ │ ├── left (3).png
│ │ │ ├── left (4).png
│ │ │ ├── left (5).png
│ │ │ ├── left (6).png
│ │ │ ├── right1.png
│ │ │ ├── sel-icon.png
│ │ │ ├── sel.png
│ │ │ ├── tab.png
│ │ │ ├── tabs.png
│ │ │ ├── tbody.png
│ │ │ ├── thead.png
│ │ │ ├── title.png
│ │ │ ├── top.png
│ │ │ └── user-btn.png
│ │ ├── dpp
│ │ │ └── etl
│ │ │ │ ├── circle-check.png
│ │ │ │ ├── circle-close.png
│ │ │ │ ├── circle-subtract.png
│ │ │ │ ├── circle-subtract1.png
│ │ │ │ ├── toolbar (1).png
│ │ │ │ ├── toolbar (2).png
│ │ │ │ ├── toolbar (3).png
│ │ │ │ ├── toolbar (4).png
│ │ │ │ ├── toolbar (5).png
│ │ │ │ ├── toolbar (6).png
│ │ │ │ ├── toolbar (7).png
│ │ │ │ └── toolbar (8).png
│ │ ├── fonts
│ │ │ ├── HYk2gj.ttf
│ │ │ ├── PingFangSCRegular.ttf
│ │ │ └── Sharp.ttf
│ │ ├── iconfont
│ │ │ ├── font
│ │ │ │ ├── demo.css
│ │ │ │ ├── demo_index.html
│ │ │ │ ├── iconfont.css
│ │ │ │ ├── iconfont.js
│ │ │ │ ├── iconfont.json
│ │ │ │ ├── iconfont.ttf
│ │ │ │ ├── iconfont.woff
│ │ │ │ └── iconfont.woff2
│ │ │ ├── font_new
│ │ │ │ ├── demo.css
│ │ │ │ ├── demo_index.html
│ │ │ │ ├── iconfont.css
│ │ │ │ ├── iconfont.js
│ │ │ │ ├── iconfont.json
│ │ │ │ ├── iconfont.svg
│ │ │ │ ├── iconfont.ttf
│ │ │ │ ├── iconfont.woff
│ │ │ │ └── iconfont.woff2
│ │ │ └── iconfont.css
│ │ ├── icons
│ │ │ └── svg
│ │ │ │ ├── 404.svg
│ │ │ │ ├── account-box-2-line.svg
│ │ │ │ ├── account-pin-box-line.svg
│ │ │ │ ├── archive-2-line.svg
│ │ │ │ ├── archive-drawer-line.svg
│ │ │ │ ├── archive-line.svg
│ │ │ │ ├── article-line.svg
│ │ │ │ ├── bnb-line.svg
│ │ │ │ ├── book-2-line.svg
│ │ │ │ ├── book-3-line.svg
│ │ │ │ ├── book-line.svg
│ │ │ │ ├── book-marked-line.svg
│ │ │ │ ├── book-read-line.svg
│ │ │ │ ├── box-3-line.svg
│ │ │ │ ├── briefcase-2-line.svg
│ │ │ │ ├── bug.svg
│ │ │ │ ├── build.svg
│ │ │ │ ├── button.svg
│ │ │ │ ├── calendar-2-line.svg
│ │ │ │ ├── calendar-schedule-line.svg
│ │ │ │ ├── calendar-todo-line.svg
│ │ │ │ ├── cascader.svg
│ │ │ │ ├── chart.svg
│ │ │ │ ├── checkbox.svg
│ │ │ │ ├── chrome-line.svg
│ │ │ │ ├── clipboard.svg
│ │ │ │ ├── code-box-line.svg
│ │ │ │ ├── code.svg
│ │ │ │ ├── color-filter-line.svg
│ │ │ │ ├── color.svg
│ │ │ │ ├── component.svg
│ │ │ │ ├── contacts-book-2-line.svg
│ │ │ │ ├── contacts-book-line.svg
│ │ │ │ ├── copper-coin-line.svg
│ │ │ │ ├── currency-line.svg
│ │ │ │ ├── dashboard-3-line.svg
│ │ │ │ ├── dashboard.svg
│ │ │ │ ├── date-range.svg
│ │ │ │ ├── date.svg
│ │ │ │ ├── dict.svg
│ │ │ │ ├── documentation.svg
│ │ │ │ ├── download.svg
│ │ │ │ ├── drag.svg
│ │ │ │ ├── druid.svg
│ │ │ │ ├── edit.svg
│ │ │ │ ├── education.svg
│ │ │ │ ├── email.svg
│ │ │ │ ├── equalizer-line.svg
│ │ │ │ ├── example.svg
│ │ │ │ ├── excel.svg
│ │ │ │ ├── exchange-dollar-line.svg
│ │ │ │ ├── exchange-funds-line.svg
│ │ │ │ ├── exit-fullscreen.svg
│ │ │ │ ├── eye-open.svg
│ │ │ │ ├── eye.svg
│ │ │ │ ├── file-copy-2-line.svg
│ │ │ │ ├── file-edit-line.svg
│ │ │ │ ├── file-list-2-line.svg
│ │ │ │ ├── file-list-line.svg
│ │ │ │ ├── form.svg
│ │ │ │ ├── fullscreen.svg
│ │ │ │ ├── github.svg
│ │ │ │ ├── group-3-line.svg
│ │ │ │ ├── guide.svg
│ │ │ │ ├── hard-drive-3-line.svg
│ │ │ │ ├── hourglass-line.svg
│ │ │ │ ├── icon.svg
│ │ │ │ ├── input.svg
│ │ │ │ ├── instance-line.svg
│ │ │ │ ├── international.svg
│ │ │ │ ├── job.svg
│ │ │ │ ├── language.svg
│ │ │ │ ├── lifebuoy-line.svg
│ │ │ │ ├── link.svg
│ │ │ │ ├── list-view.svg
│ │ │ │ ├── list.svg
│ │ │ │ ├── lock.svg
│ │ │ │ ├── log.svg
│ │ │ │ ├── logininfor.svg
│ │ │ │ ├── mail-line.svg
│ │ │ │ ├── map-2-line.svg
│ │ │ │ ├── megaphone-line.svg
│ │ │ │ ├── message.svg
│ │ │ │ ├── microsoft-line.svg
│ │ │ │ ├── mind-map.svg
│ │ │ │ ├── money-dollar-box-line.svg
│ │ │ │ ├── money.svg
│ │ │ │ ├── monitor.svg
│ │ │ │ ├── nested.svg
│ │ │ │ ├── news-line.svg
│ │ │ │ ├── newspaper-line.svg
│ │ │ │ ├── node-tree.svg
│ │ │ │ ├── number.svg
│ │ │ │ ├── online.svg
│ │ │ │ ├── openai-line.svg
│ │ │ │ ├── organization-chart.svg
│ │ │ │ ├── password.svg
│ │ │ │ ├── pdf.svg
│ │ │ │ ├── people.svg
│ │ │ │ ├── peoples.svg
│ │ │ │ ├── phone.svg
│ │ │ │ ├── post.svg
│ │ │ │ ├── qq.svg
│ │ │ │ ├── question.svg
│ │ │ │ ├── radio.svg
│ │ │ │ ├── rainbow-line.svg
│ │ │ │ ├── rate.svg
│ │ │ │ ├── redis-list.svg
│ │ │ │ ├── redis.svg
│ │ │ │ ├── row.svg
│ │ │ │ ├── safe-line.svg
│ │ │ │ ├── search.svg
│ │ │ │ ├── select.svg
│ │ │ │ ├── server.svg
│ │ │ │ ├── settings-line.svg
│ │ │ │ ├── shield-check-line.svg
│ │ │ │ ├── shopping.svg
│ │ │ │ ├── shuffle-line.svg
│ │ │ │ ├── size.svg
│ │ │ │ ├── skill.svg
│ │ │ │ ├── slider.svg
│ │ │ │ ├── slideshow-2-line.svg
│ │ │ │ ├── slideshow-3-line.svg
│ │ │ │ ├── slideshow-4-line.svg
│ │ │ │ ├── slideshow-line.svg
│ │ │ │ ├── smartphone-line.svg
│ │ │ │ ├── stack-line.svg
│ │ │ │ ├── star.svg
│ │ │ │ ├── swagger.svg
│ │ │ │ ├── switch.svg
│ │ │ │ ├── system.svg
│ │ │ │ ├── tab.svg
│ │ │ │ ├── table.svg
│ │ │ │ ├── telegram-line.svg
│ │ │ │ ├── textarea.svg
│ │ │ │ ├── theme.svg
│ │ │ │ ├── time-range.svg
│ │ │ │ ├── time.svg
│ │ │ │ ├── tool.svg
│ │ │ │ ├── tree-table.svg
│ │ │ │ ├── tree.svg
│ │ │ │ ├── upload.svg
│ │ │ │ ├── user-3-line.svg
│ │ │ │ ├── user-line.svg
│ │ │ │ ├── user.svg
│ │ │ │ ├── validCode.svg
│ │ │ │ ├── wechat.svg
│ │ │ │ └── zip.svg
│ │ ├── images
│ │ │ ├── defaultAvatar.png
│ │ │ ├── profile.png
│ │ │ ├── qrIcon.png
│ │ │ ├── rwgl.png
│ │ │ └── success.svg
│ │ └── system
│ │ │ ├── 401_images
│ │ │ └── 401.gif
│ │ │ ├── 404_images
│ │ │ ├── 404.png
│ │ │ └── 404_cloud.png
│ │ │ ├── images
│ │ │ ├── dark.svg
│ │ │ ├── dpp
│ │ │ │ ├── 1.svg
│ │ │ │ ├── DM.png
│ │ │ │ ├── HDFS.png
│ │ │ │ ├── Hive.png
│ │ │ │ ├── SHELL.png
│ │ │ │ ├── csv.png
│ │ │ │ ├── excel.png
│ │ │ │ ├── kafka.png
│ │ │ │ ├── kingBase.png
│ │ │ │ ├── mop.png
│ │ │ │ ├── mysql.png
│ │ │ │ ├── oracle.png
│ │ │ │ ├── sc.png
│ │ │ │ ├── sjjctb.png
│ │ │ │ ├── sjkf.png
│ │ │ │ ├── sjkftb.png
│ │ │ │ ├── sqlServer.png
│ │ │ │ ├── sr.png
│ │ │ │ ├── sx.png
│ │ │ │ ├── tsc.png
│ │ │ │ ├── tsr.png
│ │ │ │ ├── tzh.png
│ │ │ │ ├── xx.png
│ │ │ │ └── zh.png
│ │ │ ├── index
│ │ │ │ ├── 1.png
│ │ │ │ ├── 2.png
│ │ │ │ ├── 3.png
│ │ │ │ ├── 4.png
│ │ │ │ ├── 5.png
│ │ │ │ ├── module_1_1.png
│ │ │ │ └── weather.png
│ │ │ ├── layout
│ │ │ │ └── msg
│ │ │ │ │ ├── icon1.png
│ │ │ │ │ ├── 编组 3.png
│ │ │ │ │ ├── 编组 4.png
│ │ │ │ │ ├── 编组 6.png
│ │ │ │ │ ├── 编组 7.png
│ │ │ │ │ └── 编组 8.png
│ │ │ ├── light.svg
│ │ │ ├── login-background.jpg
│ │ │ ├── login
│ │ │ │ ├── banner-zt.png
│ │ │ │ ├── email.png
│ │ │ │ ├── goge-icon.png
│ │ │ │ ├── mac-icon.svg
│ │ │ │ ├── phone.png
│ │ │ │ ├── qianshu-logo.png
│ │ │ │ └── window-icon.svg
│ │ │ ├── no_data
│ │ │ │ └── noData.png
│ │ │ ├── pay.png
│ │ │ ├── profile.jpg
│ │ │ ├── project
│ │ │ │ └── board
│ │ │ │ │ ├── h1.png
│ │ │ │ │ ├── h2.png
│ │ │ │ │ ├── h3.png
│ │ │ │ │ ├── h4.png
│ │ │ │ │ ├── l1.png
│ │ │ │ │ ├── l2.png
│ │ │ │ │ ├── r1.png
│ │ │ │ │ └── tit1.png
│ │ │ └── sso_login
│ │ │ │ ├── an.png
│ │ │ │ ├── banner1.png
│ │ │ │ ├── chrome.png
│ │ │ │ ├── favicon.ico
│ │ │ │ ├── ios.svg
│ │ │ │ ├── sso-logo.png
│ │ │ │ └── win.svg
│ │ │ ├── logo
│ │ │ ├── logo.png
│ │ │ ├── qianshu-logo.png
│ │ │ ├── qianshu-simlogo.png
│ │ │ └── simpLogo.png
│ │ │ └── styles
│ │ │ ├── anivia.scss
│ │ │ ├── btn.scss
│ │ │ ├── element-ui.scss
│ │ │ ├── global.scss
│ │ │ ├── index.scss
│ │ │ ├── mixin.scss
│ │ │ ├── qdata.scss
│ │ │ ├── sidebar.scss
│ │ │ ├── transition.scss
│ │ │ └── variables.module.scss
│ ├── components
│ │ ├── Breadcrumb
│ │ │ └── index.vue
│ │ ├── Crontab
│ │ │ ├── day.vue
│ │ │ ├── hour.vue
│ │ │ ├── index.vue
│ │ │ ├── min.vue
│ │ │ ├── month.vue
│ │ │ ├── result.vue
│ │ │ ├── second.vue
│ │ │ ├── week.vue
│ │ │ └── year.vue
│ │ ├── DeptTree
│ │ │ └── index.vue
│ │ ├── DictTag
│ │ │ └── index.vue
│ │ ├── Editor
│ │ │ └── index.vue
│ │ ├── FileUpload
│ │ │ └── index.vue
│ │ ├── FileUpload2
│ │ │ └── index.vue
│ │ ├── FileUploadbtn
│ │ │ └── index.vue
│ │ ├── Hamburger
│ │ │ └── index.vue
│ │ ├── HeaderSearch
│ │ │ └── index.vue
│ │ ├── IconSelect
│ │ │ ├── index.vue
│ │ │ └── requireIcons.js
│ │ ├── ImagePreview
│ │ │ └── index.vue
│ │ ├── ImageUpload
│ │ │ └── index.vue
│ │ ├── Pagination
│ │ │ └── index.vue
│ │ ├── ParentView
│ │ │ └── index.vue
│ │ ├── RightToolbar
│ │ │ ├── index.vue
│ │ │ └── index2.vue
│ │ ├── Screenfull
│ │ │ └── index.vue
│ │ ├── ShellEditor
│ │ │ └── index.vue
│ │ ├── SizeSelect
│ │ │ └── index.vue
│ │ ├── SqlEditor
│ │ │ ├── index.vue
│ │ │ └── index1.vue
│ │ ├── SvgIcon
│ │ │ ├── index.vue
│ │ │ └── svgicon.js
│ │ ├── TopNav
│ │ │ ├── index.vue
│ │ │ └── index1.vue
│ │ ├── TreeSelect
│ │ │ └── index.vue
│ │ └── iFrame
│ │ │ └── index.vue
│ ├── directive
│ │ ├── common
│ │ │ └── copyText.js
│ │ ├── index.js
│ │ └── permission
│ │ │ ├── hasPermi.js
│ │ │ └── hasRole.js
│ ├── layout
│ │ ├── components
│ │ │ ├── AppMain.vue
│ │ │ ├── IframeToggle
│ │ │ │ └── index.vue
│ │ │ ├── InnerLink
│ │ │ │ └── index.vue
│ │ │ ├── Navbar.vue
│ │ │ ├── Settings
│ │ │ │ └── index.vue
│ │ │ ├── Sidebar
│ │ │ │ ├── Link.vue
│ │ │ │ ├── Logo.vue
│ │ │ │ ├── SidebarItem.vue
│ │ │ │ └── index.vue
│ │ │ ├── TagsView
│ │ │ │ ├── ScrollPane.vue
│ │ │ │ └── index.vue
│ │ │ └── index.js
│ │ └── index.vue
│ ├── main.js
│ ├── permission.js
│ ├── plugins
│ │ ├── auth.js
│ │ ├── cache.js
│ │ ├── download.js
│ │ ├── index.js
│ │ ├── modal.js
│ │ └── tab.js
│ ├── router
│ │ ├── da
│ │ │ ├── discovery
│ │ │ │ └── index.js
│ │ │ ├── dynamic
│ │ │ │ └── index.js
│ │ │ └── public
│ │ │ │ └── index.js
│ │ ├── dp
│ │ │ ├── dataElem
│ │ │ │ └── index.js
│ │ │ └── public
│ │ │ │ └── index.js
│ │ ├── dpp
│ │ │ └── etl
│ │ │ │ └── index.js
│ │ ├── ds
│ │ │ ├── dynamic
│ │ │ │ └── index.js
│ │ │ └── public
│ │ │ │ └── index.js
│ │ ├── example
│ │ │ ├── dynamic
│ │ │ │ └── index.js
│ │ │ └── public
│ │ │ │ └── index.js
│ │ ├── index.js
│ │ └── system
│ │ │ ├── dynamic
│ │ │ └── index.js
│ │ │ └── public
│ │ │ └── index.js
│ ├── settings.js
│ ├── store
│ │ ├── index.js
│ │ ├── project
│ │ │ └── project.js
│ │ └── system
│ │ │ ├── app.js
│ │ │ ├── dict.js
│ │ │ ├── permission.js
│ │ │ ├── settings.js
│ │ │ ├── tagsView.js
│ │ │ └── user.js
│ ├── utils
│ │ ├── aesEncrypt.js
│ │ ├── anivia.js
│ │ ├── auth.js
│ │ ├── bus.js
│ │ ├── cronUtils.js
│ │ ├── dict.js
│ │ ├── dynamicTitle.js
│ │ ├── errorCode.js
│ │ ├── graph.js
│ │ ├── index.js
│ │ ├── jsencrypt.js
│ │ ├── permission.js
│ │ ├── request.js
│ │ ├── rpAuth.js
│ │ ├── rpRequest.js
│ │ ├── scroll-to.js
│ │ ├── sso-request.js
│ │ ├── theme.js
│ │ ├── time.js
│ │ └── validate.js
│ └── views
│ │ ├── att
│ │ ├── cat
│ │ │ ├── attApiCat
│ │ │ │ └── index.vue
│ │ │ ├── attAssetCat
│ │ │ │ └── index.vue
│ │ │ ├── attDataDevCat
│ │ │ │ └── index.vue
│ │ │ ├── attDataElemCat
│ │ │ │ ├── index.vue
│ │ │ │ └── index2.vue
│ │ │ ├── attModelCat
│ │ │ │ └── index.vue
│ │ │ └── attTaskCat
│ │ │ │ └── index.vue
│ │ ├── client
│ │ │ ├── detail
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── clientMultiple.vue
│ │ │ │ └── clientSingle.vue
│ │ ├── project
│ │ │ └── index.vue
│ │ ├── projectUserRel
│ │ │ ├── index.vue
│ │ │ ├── role.vue
│ │ │ └── user.vue
│ │ ├── rule
│ │ │ ├── AttCleanRule
│ │ │ │ └── index.vue
│ │ │ └── attAuditRule
│ │ │ │ └── index.vue
│ │ └── theme
│ │ │ └── index.vue
│ │ ├── cockpit
│ │ ├── components
│ │ │ ├── bottom.vue
│ │ │ ├── center.vue
│ │ │ ├── head.vue
│ │ │ ├── left.vue
│ │ │ └── right.vue
│ │ └── index.vue
│ │ ├── da
│ │ ├── asset
│ │ │ ├── detail
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── daAssetMultiple.vue
│ │ │ │ └── daAssetSingle.vue
│ │ ├── assetColumn
│ │ │ ├── detail
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── daAssetColumnMultiple.vue
│ │ │ │ └── daAssetColumnSingle.vue
│ │ ├── daAssetApply
│ │ │ ├── detail
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── daAssetApplyMultiple.vue
│ │ │ │ └── daAssetApplySingle.vue
│ │ ├── datasource
│ │ │ ├── detail
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── daDatasourceMultiple.vue
│ │ │ │ └── daDatasourceSingle.vue
│ │ ├── executesqlquery
│ │ │ ├── components
│ │ │ │ └── TableInfoDialog.vue
│ │ │ └── index.vue
│ │ └── sensitiveLevel
│ │ │ ├── detail
│ │ │ ├── componentOne.vue
│ │ │ ├── componentTwo.vue
│ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ ├── daSensitiveLevelMultiple.vue
│ │ │ └── daSensitiveLevelSingle.vue
│ │ ├── dp
│ │ ├── dataElem
│ │ │ ├── detail
│ │ │ │ ├── component
│ │ │ │ │ ├── ruleAuditIndex.vue
│ │ │ │ │ └── ruleCleanIndex.vue
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ ├── dataElemCodeDetailDialog.vue
│ │ │ │ ├── dataElemCodeList.vue
│ │ │ │ ├── dataElemDetailDialog.vue
│ │ │ │ ├── dpCodeMap.vue
│ │ │ │ └── dpDataElemAssetRel.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── dpDataElemRuleRelMultiple.vue
│ │ │ │ └── dpDataElemSingle.vue
│ │ └── model
│ │ │ ├── detail
│ │ │ ├── FieldFormDialog.vue
│ │ │ ├── MaterializationDialog.vue
│ │ │ ├── MyFormDialog.vue
│ │ │ ├── componentOne.vue
│ │ │ ├── componentTwo.vue
│ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ ├── dpModelMultiple.vue
│ │ │ └── dpModelSingle.vue
│ │ ├── dpp
│ │ ├── asset
│ │ │ ├── components
│ │ │ │ ├── ApiConfigForm.vue
│ │ │ │ ├── CreateEditModal.vue
│ │ │ │ ├── TableConfigForm.vue
│ │ │ │ ├── TableDialog.vue
│ │ │ │ └── daAssetVideo.vue
│ │ │ ├── detail
│ │ │ │ ├── RequestParamsForm.vue
│ │ │ │ ├── ResponseFormatConfig.vue
│ │ │ │ ├── authParams.vue
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentThree.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ ├── components
│ │ │ │ │ ├── DataDiffDialog.vue
│ │ │ │ │ ├── UpdateDataDaiol.vue
│ │ │ │ │ └── UpdateHistory.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── daAssetMultiple.vue
│ │ │ │ └── daAssetSingle.vue
│ │ ├── etl
│ │ │ ├── components
│ │ │ │ ├── DataViewDialog.vue
│ │ │ │ ├── data.js
│ │ │ │ ├── formComponents
│ │ │ │ │ ├── ExcelInputForm.vue
│ │ │ │ │ ├── InputForm.vue
│ │ │ │ │ ├── KafkaForm.vue
│ │ │ │ │ ├── OutputForm.vue
│ │ │ │ │ ├── TransformForm.vue
│ │ │ │ │ ├── components
│ │ │ │ │ │ ├── CreateEditModal.vue
│ │ │ │ │ │ ├── DynamicForm.vue
│ │ │ │ │ │ ├── ExcelUploadDialog.vue
│ │ │ │ │ │ ├── KafkaUploadDialog.vue
│ │ │ │ │ │ ├── YourChildComponent.vue
│ │ │ │ │ │ ├── dpCodeMap.vue
│ │ │ │ │ │ └── inputEditModel.vue
│ │ │ │ │ └── csvForm.vue
│ │ │ │ ├── opBase.js
│ │ │ │ └── taskConfigDialog.vue
│ │ │ ├── detail
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── lntegratio
│ │ │ │ └── index.vue
│ │ ├── etljobinstance
│ │ │ └── index.vue
│ │ ├── etltaskinstance
│ │ │ ├── components
│ │ │ │ └── dppEtlTaskLog.vue
│ │ │ ├── detail
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── dppEtlTaskLogMultiple.vue
│ │ │ │ └── dppEtlTaskLogSingle.vue
│ │ └── tasker
│ │ │ └── ddv
│ │ │ ├── components
│ │ │ ├── data.js
│ │ │ ├── index.vue
│ │ │ ├── taskConfigDialog.vue
│ │ │ └── taskConfigUploadDialog.vue
│ │ │ └── index.vue
│ │ ├── ds
│ │ ├── api
│ │ │ ├── detail
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ └── index.vue
│ │ │ ├── edit
│ │ │ │ ├── components
│ │ │ │ │ ├── TableDialog.vue
│ │ │ │ │ ├── TableDialogapi.vue
│ │ │ │ │ ├── base.vue
│ │ │ │ │ ├── parameter.vue
│ │ │ │ │ ├── test.vue
│ │ │ │ │ └── testapi.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── dsApiMultiple.vue
│ │ │ │ └── dsApiSingle.vue
│ │ └── apiLog
│ │ │ ├── detail
│ │ │ ├── componentOne.vue
│ │ │ ├── componentTwo.vue
│ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ ├── apiLogMultiple.vue
│ │ │ └── apiLogSingle.vue
│ │ ├── example
│ │ ├── components
│ │ │ ├── view-a1-chart.vue
│ │ │ ├── view-a1.vue
│ │ │ ├── view-a2-chart.vue
│ │ │ ├── view-a2.vue
│ │ │ ├── view-a3.vue
│ │ │ ├── view-a4.vue
│ │ │ ├── view-b.vue
│ │ │ ├── view-c1.vue
│ │ │ ├── view-c2.vue
│ │ │ ├── view-c3.vue
│ │ │ ├── view-c4.vue
│ │ │ ├── view-c5.vue
│ │ │ ├── view-c6.vue
│ │ │ ├── view-c7.vue
│ │ │ ├── view-d.vue
│ │ │ └── view-e.vue
│ │ ├── coms.vue
│ │ ├── gen
│ │ │ └── index.vue
│ │ ├── genStudent
│ │ │ ├── detail
│ │ │ │ ├── componentOne.vue
│ │ │ │ ├── componentTwo.vue
│ │ │ │ └── index.vue
│ │ │ ├── index.vue
│ │ │ └── selection
│ │ │ │ ├── studentMultiple.vue
│ │ │ │ └── studentSingle.vue
│ │ ├── pay.vue
│ │ ├── user
│ │ │ ├── complexdetails.vue
│ │ │ └── index.vue
│ │ └── websocket.vue
│ │ └── system
│ │ ├── auth
│ │ └── client
│ │ │ └── index.vue
│ │ ├── ca
│ │ ├── cert
│ │ │ └── index.vue
│ │ └── subject
│ │ │ └── index.vue
│ │ ├── error
│ │ ├── 401.vue
│ │ └── 404.vue
│ │ ├── index.vue
│ │ ├── login.vue
│ │ ├── monitor
│ │ ├── cache
│ │ │ ├── index.vue
│ │ │ └── list.vue
│ │ ├── druid
│ │ │ └── index.vue
│ │ ├── job
│ │ │ ├── index.vue
│ │ │ └── log.vue
│ │ ├── logininfor
│ │ │ └── index.vue
│ │ ├── online
│ │ │ └── index.vue
│ │ ├── operlog
│ │ │ └── index.vue
│ │ └── server
│ │ │ └── index.vue
│ │ ├── redirect
│ │ └── index.vue
│ │ ├── register.vue
│ │ ├── sso.vue
│ │ ├── system
│ │ ├── config
│ │ │ └── index.vue
│ │ ├── content
│ │ │ └── index.vue
│ │ ├── dept
│ │ │ └── index.vue
│ │ ├── dict
│ │ │ ├── data.vue
│ │ │ └── index.vue
│ │ ├── menu
│ │ │ └── index.vue
│ │ ├── message
│ │ │ ├── components
│ │ │ │ ├── item.vue
│ │ │ │ └── messageList.vue
│ │ │ └── index.vue
│ │ ├── messageTemplate
│ │ │ └── index.vue
│ │ ├── notice
│ │ │ └── index.vue
│ │ ├── post
│ │ │ └── index.vue
│ │ ├── role
│ │ │ ├── authUser.vue
│ │ │ ├── index.vue
│ │ │ └── selectUser.vue
│ │ └── user
│ │ │ ├── authRole.vue
│ │ │ ├── index.vue
│ │ │ └── profile
│ │ │ ├── index.vue
│ │ │ ├── resetPwd.vue
│ │ │ ├── userAvatar.vue
│ │ │ └── userInfo.vue
│ │ └── tool
│ │ ├── build
│ │ └── index.vue
│ │ ├── choose
│ │ ├── index.vue
│ │ ├── temp-current.vue
│ │ ├── temp-selection.vue
│ │ └── userTypeMultiple.vue
│ │ ├── gen
│ │ ├── basicInfoForm.vue
│ │ ├── createTable.vue
│ │ ├── editTable.vue
│ │ ├── genInfoForm.vue
│ │ ├── importTable.vue
│ │ └── index.vue
│ │ └── swagger
│ │ └── index.vue
├── vite.config.js
└── vite
│ └── plugins
│ ├── auto-import.js
│ ├── compression.js
│ ├── index.js
│ ├── setup-extend.js
│ └── svg-icon.js
└── sql
├── dm
└── dm.sql
└── mysql
└── Mysql.sql
/.gitee/ISSUE_TEMPLATE.zh-CN.md:
--------------------------------------------------------------------------------
1 | ### 该问题是怎么引起的?
2 |
3 |
4 |
5 | ### 重现步骤
6 |
7 |
8 |
9 | ### 报错信息
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/images/banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/banner.png
--------------------------------------------------------------------------------
/images/banner2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/banner2.png
--------------------------------------------------------------------------------
/images/deploy/rabbitmq.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/rabbitmq.png
--------------------------------------------------------------------------------
/images/deploy/redis.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/redis.png
--------------------------------------------------------------------------------
/images/deploy/后端jar包.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端jar包.png
--------------------------------------------------------------------------------
/images/deploy/后端打包成功.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端打包成功.png
--------------------------------------------------------------------------------
/images/deploy/后端部署/docker-compose修改.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端部署/docker-compose修改.png
--------------------------------------------------------------------------------
/images/deploy/后端部署/restart修改.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端部署/restart修改.png
--------------------------------------------------------------------------------
/images/deploy/后端部署/修改Dockerfile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端部署/修改Dockerfile.png
--------------------------------------------------------------------------------
/images/deploy/后端部署/后端jar包.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端部署/后端jar包.png
--------------------------------------------------------------------------------
/images/deploy/后端部署/后端启动中.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端部署/后端启动中.png
--------------------------------------------------------------------------------
/images/deploy/后端部署/后端启动成功.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端部署/后端启动成功.png
--------------------------------------------------------------------------------
/images/deploy/后端部署/后端所需文件.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端部署/后端所需文件.png
--------------------------------------------------------------------------------
/images/deploy/后端部署/服务器文件.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/后端部署/服务器文件.png
--------------------------------------------------------------------------------
/images/deploy/数据库.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/数据库.png
--------------------------------------------------------------------------------
/images/deploy/调度器.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/调度器.png
--------------------------------------------------------------------------------
/images/deploy/调度器/image1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/调度器/image1.png
--------------------------------------------------------------------------------
/images/deploy/调度器/image2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/调度器/image2.png
--------------------------------------------------------------------------------
/images/deploy/调度器/image3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/调度器/image3.png
--------------------------------------------------------------------------------
/images/deploy/调度器/image4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/调度器/image4.png
--------------------------------------------------------------------------------
/images/deploy/调度器/个人版实例.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/调度器/个人版实例.png
--------------------------------------------------------------------------------
/images/deploy/调度器/设置访问凭证.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/调度器/设置访问凭证.png
--------------------------------------------------------------------------------
/images/deploy/调度器/验证spark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/deploy/调度器/验证spark.png
--------------------------------------------------------------------------------
/images/framework.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/framework.png
--------------------------------------------------------------------------------
/images/system/10资产地图.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/10资产地图.png
--------------------------------------------------------------------------------
/images/system/11数据集成任务.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/11数据集成任务.png
--------------------------------------------------------------------------------
/images/system/12可视化etl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/12可视化etl.png
--------------------------------------------------------------------------------
/images/system/13数据服务.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/13数据服务.png
--------------------------------------------------------------------------------
/images/system/14执行日志.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/14执行日志.png
--------------------------------------------------------------------------------
/images/system/15发布服务.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/15发布服务.png
--------------------------------------------------------------------------------
/images/system/16日志.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/16日志.png
--------------------------------------------------------------------------------
/images/system/1登录页.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/1登录页.png
--------------------------------------------------------------------------------
/images/system/2首页.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/2首页.png
--------------------------------------------------------------------------------
/images/system/3稽查规则.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/3稽查规则.png
--------------------------------------------------------------------------------
/images/system/4清洗规则.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/4清洗规则.png
--------------------------------------------------------------------------------
/images/system/5逻辑模型.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/5逻辑模型.png
--------------------------------------------------------------------------------
/images/system/6数据元.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/6数据元.png
--------------------------------------------------------------------------------
/images/system/7映射.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/7映射.png
--------------------------------------------------------------------------------
/images/system/8数据连接.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/8数据连接.png
--------------------------------------------------------------------------------
/images/system/9数据发现.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/images/system/9数据发现.png
--------------------------------------------------------------------------------
/qdata-api-ds/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 | * 用途:DS结果VO 8 | *
9 | * 10 | * @author: FXB 11 | * @create: 2025-02-18 15:58 12 | **/ 13 | @Data 14 | public class DsResultDTO { 15 | 16 | /** 17 | * 状态码 18 | */ 19 | private Integer code; 20 | 21 | /** 22 | * 信息 23 | */ 24 | private String msg; 25 | 26 | /** 27 | * 是否失败 28 | */ 29 | private Boolean failed; 30 | 31 | /** 32 | * 是否成功 33 | */ 34 | private Boolean success; 35 | } 36 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/base/DsStatusRespDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api.base; 2 | 3 | import lombok.Data; 4 | 5 | /** 6 | *7 | * 用途:状态相关接口响应DTO 8 | *
9 | * 10 | * @author: FXB 11 | * @create: 2025-02-18 14:20 12 | **/ 13 | @Data 14 | public class DsStatusRespDTO extends DsResultDTO { 15 | /** 16 | * 是否成功 17 | */ 18 | private Boolean data; 19 | } 20 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/etl/DSExecuteDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api.etl; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Builder; 5 | import lombok.Data; 6 | import lombok.NoArgsConstructor; 7 | import tech.qiantong.qdata.common.enums.ExecuteType; 8 | 9 | /** 10 | *11 | * 用途: 12 | *
13 | * 14 | * @author: FXB 15 | * @create: 2025-03-27 14:31 16 | **/ 17 | @Builder 18 | @NoArgsConstructor 19 | @AllArgsConstructor 20 | @Data 21 | public class DSExecuteDTO { 22 | 23 | /** 24 | * 流程id 25 | */ 26 | private Long processInstanceId; 27 | 28 | /** 29 | * 执行类型 30 | */ 31 | private ExecuteType executeType; 32 | } 33 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/etl/DsNodeGenCodeRespDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api.etl; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Builder; 5 | import lombok.Data; 6 | import lombok.NoArgsConstructor; 7 | import tech.qiantong.qdata.api.ds.api.base.DsResultDTO; 8 | 9 | import java.util.List; 10 | 11 | /** 12 | *13 | * 用途:ds生成节点编码响应DTO 14 | *
15 | * 16 | * @author: FXB 17 | * @create: 2025-02-18 16:57 18 | **/ 19 | @Builder 20 | @NoArgsConstructor 21 | @AllArgsConstructor 22 | @Data 23 | public class DsNodeGenCodeRespDTO extends DsResultDTO { 24 | /** 25 | * 节点编码列表 26 | */ 27 | private List9 | * 用途:调度器响应参数DTO 10 | *
11 | * 12 | * @author: FXB 13 | * @create: 2025-02-21 10:18 14 | **/ 15 | @Data 16 | public class DsSchedulerRespDTO extends DsResultDTO { 17 | private Schedule data; 18 | } 19 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/etl/DsTaskSaveRespDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api.etl; 2 | 3 | import lombok.Data; 4 | import tech.qiantong.qdata.api.ds.api.base.DsResultDTO; 5 | import tech.qiantong.qdata.api.ds.api.etl.ds.ProcessDefinition; 6 | 7 | /** 8 | *9 | * 用途:任务保存请求响应参数DTO 10 | *
11 | * 12 | * @author: FXB 13 | * @create: 2025-02-20 09:06 14 | **/ 15 | @Data 16 | public class DsTaskSaveRespDTO extends DsResultDTO { 17 | private ProcessDefinition data; 18 | } 19 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/package-info.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api; 2 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/project/DsProjectCreateReqDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api.project; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Builder; 5 | import lombok.Data; 6 | import lombok.NoArgsConstructor; 7 | 8 | /** 9 | *10 | * 用途:项目保存修改DTO 11 | *
12 | * 13 | * @author: FXB 14 | * @create: 2025-02-18 14:20 15 | **/ 16 | @Builder 17 | @NoArgsConstructor 18 | @AllArgsConstructor 19 | @Data 20 | public class DsProjectCreateReqDTO { 21 | 22 | /** 23 | * 项目名称(必填) 24 | */ 25 | private String projectName; 26 | 27 | /** 28 | * 项目描述 29 | */ 30 | private String description; 31 | } 32 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/project/DsProjectDeleteRespDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api.project; 2 | 3 | import lombok.Data; 4 | import tech.qiantong.qdata.api.ds.api.base.DsResultDTO; 5 | 6 | /** 7 | *8 | * 用途:项目删除响应DTO 9 | *
10 | * 11 | * @author: FXB 12 | * @create: 2025-02-18 14:20 13 | **/ 14 | @Data 15 | public class DsProjectDeleteRespDTO extends DsResultDTO { 16 | /** 17 | * 是否删除成功 18 | */ 19 | private Boolean data; 20 | } 21 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/project/DsProjectUpdateReqDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api.project; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Builder; 5 | import lombok.Data; 6 | import lombok.NoArgsConstructor; 7 | 8 | /** 9 | *10 | * 用途:项目保存修改DTO 11 | *
12 | * 13 | * @author: FXB 14 | * @create: 2025-02-18 14:20 15 | **/ 16 | @Builder 17 | @NoArgsConstructor 18 | @AllArgsConstructor 19 | @Data 20 | public class DsProjectUpdateReqDTO { 21 | 22 | /** 23 | * 项目编码(必填) 24 | */ 25 | private Long projectCode; 26 | 27 | /** 28 | * 项目名称(必填) 29 | */ 30 | private String projectName; 31 | 32 | /** 33 | * 项目描述 34 | */ 35 | private String description; 36 | } 37 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/service/etl/IDsEtlExecutorService.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api.service.etl; 2 | 3 | import tech.qiantong.qdata.api.ds.api.base.DsStatusRespDTO; 4 | import tech.qiantong.qdata.api.ds.api.etl.DSExecuteDTO; 5 | 6 | /** 7 | *8 | * 用途:执行相关相关接口 9 | *
10 | * 11 | * @author: FXB 12 | * @create: 2025-03-27 14:29 13 | **/ 14 | public interface IDsEtlExecutorService { 15 | /** 16 | * 执行命令 17 | * 18 | * @param dsExecuteDTO 19 | * @param projectCode 20 | * @return 21 | */ 22 | DsStatusRespDTO execute(DSExecuteDTO dsExecuteDTO, String projectCode); 23 | } 24 | -------------------------------------------------------------------------------- /qdata-api-ds/qdata-api-ds-api/src/main/java/tech/qiantong/qdata/api/ds/api/service/etl/IDsEtlNodeService.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.api.ds.api.service.etl; 2 | 3 | import tech.qiantong.qdata.api.ds.api.etl.DsNodeGenCodeRespDTO; 4 | 5 | /** 6 | *7 | * 用途:ds数据集成节点相关接口 8 | *
9 | * 10 | * @author: FXB 11 | * @create: 2025-02-18 16:47 12 | **/ 13 | public interface IDsEtlNodeService { 14 | /** 15 | * 生成节点编码 16 | */ 17 | DsNodeGenCodeRespDTO genCode(Long projectCode); 18 | } 19 | -------------------------------------------------------------------------------- /qdata-etl/src/main/java/tech/qiantong/qdata/spark/etl/reader/Reader.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.spark.etl.reader; 2 | 3 | import com.alibaba.fastjson2.JSONObject; 4 | import org.apache.spark.sql.Dataset; 5 | import org.apache.spark.sql.Row; 6 | import org.apache.spark.sql.SparkSession; 7 | 8 | import java.util.List; 9 | 10 | /** 11 | *12 | * 用途:读数据 13 | *
14 | * 15 | * @author: FXB 16 | * @create: 2025-04-21 13:34 17 | **/ 18 | public interface Reader { 19 | 20 | Dataset9 | * 用途:输入组件工厂 10 | *
11 | * 12 | * @author: FXB 13 | * @create: 2025-04-21 13:37 14 | **/ 15 | public class ReaderFactory { 16 | private static final ReaderRegistry COMPONENT_ITEM_REGISTRY = new ReaderRegistry(); 17 | 18 | public ReaderFactory() { 19 | } 20 | 21 | public static Reader getReader(String code) { 22 | return Optional.ofNullable(COMPONENT_ITEM_REGISTRY.getReader(code)).orElseThrow(() -> new ServiceException(String.format("%s not supported.", code))); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /qdata-etl/src/main/java/tech/qiantong/qdata/spark/etl/utils/IDGeneratorUtils.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.spark.etl.utils; 2 | 3 | /** 4 | *5 | * 用途:生成数字id 6 | *
7 | * 8 | * @author: FXB 9 | * @create: 2019-12-26 08:59 10 | **/ 11 | public class IDGeneratorUtils { 12 | 13 | private static long workerId = 1; 14 | 15 | private static long datacenterId = 1; 16 | 17 | public static long getLongId(){ 18 | return CodeGenerateUtils.genCode(); 19 | } 20 | public static String getStringId(){ 21 | return String.valueOf(CodeGenerateUtils.genCode()); 22 | } 23 | 24 | public static void main(String[] args) { 25 | System.out.println(getStringId()); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /qdata-etl/src/main/java/tech/qiantong/qdata/spark/etl/writer/Writer.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.spark.etl.writer; 2 | 3 | import com.alibaba.fastjson2.JSONObject; 4 | import org.apache.spark.sql.Dataset; 5 | import org.apache.spark.sql.Row; 6 | 7 | /** 8 | *9 | * 用途:写数据 10 | *
11 | * 12 | * @author: FXB 13 | * @create: 2025-04-25 09:34 14 | **/ 15 | public interface Writer { 16 | 17 | Boolean writer(JSONObject config,Dataset9 | * 用途:输出组件工厂 10 | *
11 | * 12 | * @author: FXB 13 | * @create: 2025-04-25 09:35 14 | **/ 15 | public class WriterFactory { 16 | private static final WriterRegistry COMPONENT_ITEM_REGISTRY = new WriterRegistry(); 17 | 18 | public WriterFactory() { 19 | } 20 | 21 | public static Writer getWriter(String code) { 22 | return Optional.ofNullable(COMPONENT_ITEM_REGISTRY.getWriter(code)).orElseThrow(() -> new ServiceException(String.format("%s not supported.", code))); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /qdata-etl/src/main/java/tech/qiantong/qdata/spark/etl/writer/WriterRegistry.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.spark.etl.writer; 2 | 3 | import tech.qiantong.qdata.common.enums.TaskComponentTypeEnum; 4 | 5 | import java.util.HashMap; 6 | import java.util.Map; 7 | 8 | /** 9 | *10 | * 用途:输出组件注册 11 | *
12 | * 13 | * @author: FXB 14 | * @create: 2025-04-25 09:35 15 | **/ 16 | public class WriterRegistry { 17 | private final Map11 | * 用途: 12 | *
13 | * 14 | * @author: FXB 15 | * @create: 2025-02-20 09:34 16 | **/ 17 | public class JsonDataSerializer extends JsonSerializer5 | * 用途: 6 | *
7 | * 8 | * @author: FXB 9 | * @create: 2025-03-11 16:51 10 | **/ 11 | public interface IAttCatService { 12 | 13 | /** 14 | * 根据类目表及类目编码获取类目id 15 | * 16 | * @param tableName 17 | * @param catCode 18 | * @return 19 | */ 20 | Long getCatIdByTableNameAndCatCode(String tableName, String catCode); 21 | } 22 | -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-api/src/main/java/tech/qiantong/qdata/module/att/api/client/ClientApi.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.att.api.client; 2 | 3 | import tech.qiantong.qdata.module.att.api.client.dto.AttClientRespDTO; 4 | 5 | /** 6 | * 应用 API 接口 7 | * 8 | * @author Ming 9 | */ 10 | public interface ClientApi { 11 | 12 | /** 13 | * 获得应用信息 14 | * 15 | * @param id 应用编号 16 | * @return 应用信息 17 | */ 18 | AttClientRespDTO getClient(Long id); 19 | } 20 | -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-api/src/main/java/tech/qiantong/qdata/module/att/api/package-info.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.att.api; 2 | -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-api/src/main/java/tech/qiantong/qdata/module/att/api/project/dto/AttProjectUserRelReqDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.att.api.project.dto; 2 | 3 | import lombok.Data; 4 | 5 | /** 6 | * 项目与用户关联关系 DTO 对象 ATT_PROJECT_USER_REL 7 | * 8 | * @author qdata 9 | * @date 2025-02-11 10 | */ 11 | @Data 12 | public class AttProjectUserRelReqDTO { 13 | 14 | private static final long serialVersionUID = 1L; 15 | 16 | /** ID */ 17 | private Long id; 18 | 19 | /** 项目空间ID */ 20 | private Long projectId; 21 | 22 | /** 用户ID */ 23 | private Long userId; 24 | 25 | /** 是否有效 */ 26 | private Boolean validFlag; 27 | 28 | /** 删除标志 */ 29 | private Boolean delFlag; 30 | 31 | 32 | } 33 | -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-api/src/main/java/tech/qiantong/qdata/module/att/api/project/dto/AttProjectUserRelRespDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.att.api.project.dto; 2 | 3 | import lombok.Data; 4 | 5 | /** 6 | * 项目与用户关联关系 DTO 对象 ATT_PROJECT_USER_REL 7 | * 8 | * @author qdata 9 | * @date 2025-02-11 10 | */ 11 | @Data 12 | public class AttProjectUserRelRespDTO { 13 | 14 | private static final long serialVersionUID = 1L; 15 | 16 | /** ID */ 17 | private Long id; 18 | 19 | /** 项目空间ID */ 20 | private Long projectId; 21 | 22 | /** 用户ID */ 23 | private Long userId; 24 | 25 | /** 是否有效 */ 26 | private Boolean validFlag; 27 | 28 | /** 删除标志 */ 29 | private Boolean delFlag; 30 | 31 | 32 | } 33 | -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-api/src/main/java/tech/qiantong/qdata/module/att/api/rule/dto/AttCleanRuleReqDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.att.api.rule.dto; 2 | 3 | import lombok.Data; 4 | 5 | /** 6 | * 清洗规则 DTO 对象 ATT_CLEAN_RULE 7 | * 8 | * @author qdata 9 | * @date 2025-01-20 10 | */ 11 | @Data 12 | public class AttCleanRuleReqDTO { 13 | 14 | private static final long serialVersionUID = 1L; 15 | 16 | /** 规则ID */ 17 | private Long id; 18 | 19 | /** 规则名称 */ 20 | private String name; 21 | 22 | /** 规则类型 */ 23 | private String type; 24 | 25 | /** 规则级别 */ 26 | private String level; 27 | 28 | /** 规则描述 */ 29 | private String description; 30 | 31 | /** 是否有效 */ 32 | private Boolean validFlag; 33 | 34 | /** 删除标志 */ 35 | private Boolean delFlag; 36 | 37 | 38 | } 39 | -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-api/src/main/java/tech/qiantong/qdata/module/att/api/rule/dto/AttCleanRuleRespDTO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.att.api.rule.dto; 2 | 3 | import lombok.Data; 4 | 5 | /** 6 | * 清洗规则 DTO 对象 ATT_CLEAN_RULE 7 | * 8 | * @author qdata 9 | * @date 2025-01-20 10 | */ 11 | @Data 12 | public class AttCleanRuleRespDTO { 13 | 14 | private static final long serialVersionUID = 1L; 15 | 16 | /** 规则ID */ 17 | private Long id; 18 | 19 | /** 规则名称 */ 20 | private String name; 21 | 22 | /** 规则类型 */ 23 | private String type; 24 | 25 | /** 规则级别 */ 26 | private String level; 27 | 28 | /** 规则描述 */ 29 | private String description; 30 | 31 | /** 是否有效 */ 32 | private Boolean validFlag; 33 | 34 | /** 删除标志 */ 35 | private Boolean delFlag; 36 | 37 | 38 | } 39 | -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-api/src/main/java/tech/qiantong/qdata/module/att/api/service/cat/IAttApiCatApiService.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.att.api.service.cat; 2 | 3 | import tech.qiantong.qdata.module.att.api.cat.dto.AttApiCatReqDTO; 4 | import tech.qiantong.qdata.module.att.api.cat.dto.AttApiCatRespDTO; 5 | 6 | import java.util.List; 7 | 8 | public interface IAttApiCatApiService { 9 | 10 | /** 11 | * 获得全部数据服务类目管理列表 服务资源模块使用 12 | * 13 | * @return 数据服务类目管理列表 14 | */ 15 | List8 | * 用途: 9 | *
10 | * 11 | * @author: FXB 12 | * @create: 2025-03-11 16:54 13 | **/ 14 | @Repository 15 | public interface AttCatMapper { 16 | 17 | Long getCatIdByTableNameAndCatCode(@Param("tableName") String tableName, @Param("catCode") String catCode); 18 | } 19 | -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-biz/src/main/java/tech/qiantong/qdata/module/att/package-info.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.att; 2 | -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-biz/src/main/resources/application-att-dev.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/qdata-module-att/qdata-module-att-biz/src/main/resources/application-att-dev.yml -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-biz/src/main/resources/application-att-prod.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/qdata-module-att/qdata-module-att-biz/src/main/resources/application-att-prod.yml -------------------------------------------------------------------------------- /qdata-module-att/qdata-module-att-biz/src/main/resources/mapper/att/cat/AttCatMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 |5 | * 用途:数据元Service接口 6 | *
7 | * 8 | * @author: FXB 9 | * @create: 2025-02-05 18:03 10 | **/ 11 | public interface IDataElemApiService { 12 | /** 13 | * 根据类目编码查询数量 14 | * 15 | * @return 16 | */ 17 | Long getCountByCatCode(String catCode); 18 | } 19 | -------------------------------------------------------------------------------- /qdata-module-dp/qdata-module-dp-api/src/main/java/tech/qiantong/qdata/module/dp/api/service/dataElem/IDataElemRuleRelService.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.dp.api.service.dataElem; 2 | 3 | import tech.qiantong.qdata.module.dp.api.dataElem.dto.DpDataElemRuleRelRespDTO; 4 | 5 | import java.util.List; 6 | 7 | /** 8 | *9 | * 用途: 10 | *
11 | * 12 | * @author: FXB 13 | * @create: 2025-03-03 18:06 14 | **/ 15 | public interface IDataElemRuleRelService { 16 | /** 17 | * 通过数据元id列表查询数据元规则关联信息 18 | * 19 | * @param dataElemIdList 20 | * @return 21 | */ 22 | List9 | * 用途: 10 | *
11 | * 12 | * @author: FXB 13 | * @create: 2025-03-12 17:47 14 | **/ 15 | public class ComponentFactory { 16 | private static final ComponentRegistry COMPONENT_ITEM_REGISTRY = new ComponentRegistry(); 17 | 18 | public ComponentFactory() { 19 | } 20 | 21 | public static ComponentItem getComponentItem(String code) { 22 | return Optional.ofNullable(COMPONENT_ITEM_REGISTRY.getComponentItem(code)).orElseThrow(() -> new ServiceException(String.format("%s not supported.", code))); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /qdata-module-dpp/qdata-module-dpp-biz/src/main/java/tech/qiantong/qdata/module/dpp/utils/model/DsResource.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.dpp.utils.model; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Builder; 5 | import lombok.Data; 6 | import lombok.NoArgsConstructor; 7 | 8 | import java.io.Serializable; 9 | 10 | /** 11 | *12 | * 用途: 13 | *
14 | * 15 | * @author: FXB 16 | * @create: 2025-04-29 15:24 17 | **/ 18 | @Data 19 | @Builder 20 | @NoArgsConstructor 21 | @AllArgsConstructor 22 | public class DsResource implements Serializable { 23 | private static final long serialVersionUID = -2629332208479320L; 24 | 25 | private String resourceName; 26 | } 27 | -------------------------------------------------------------------------------- /qdata-module-dpp/qdata-module-dpp-biz/src/main/java/tech/qiantong/qdata/module/dpp/utils/taskParamsCheck/AbstractParameters.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.dpp.utils.taskParamsCheck; 2 | 3 | public abstract class AbstractParameters { 4 | 5 | /** 6 | * 校验参数是否有效 7 | * @return true 表示有效,false 表示无效 8 | */ 9 | public abstract boolean checkParameters(); 10 | } 11 | -------------------------------------------------------------------------------- /qdata-module-dpp/qdata-module-dpp-biz/src/main/java/tech/qiantong/qdata/module/dpp/utils/taskParamsCheck/DataXParameters.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.dpp.utils.taskParamsCheck; 2 | 3 | import org.apache.commons.lang3.StringUtils; 4 | 5 | public class DataXParameters extends AbstractParameters { 6 | 7 | private String someDataXParam; 8 | 9 | @Override 10 | public boolean checkParameters() { 11 | // 假设某个参数不能为空 12 | return StringUtils.isNotEmpty(someDataXParam); 13 | } 14 | 15 | // Getter and Setter 16 | public String getSomeDataXParam() { 17 | return someDataXParam; 18 | } 19 | 20 | public void setSomeDataXParam(String someDataXParam) { 21 | this.someDataXParam = someDataXParam; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /qdata-module-dpp/qdata-module-dpp-biz/src/main/java/tech/qiantong/qdata/module/dpp/utils/taskParamsCheck/SparkParameters.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.dpp.utils.taskParamsCheck; 2 | 3 | import org.apache.commons.lang3.StringUtils; 4 | 5 | public class SparkParameters extends AbstractParameters { 6 | 7 | private String sparkJobName; 8 | 9 | @Override 10 | public boolean checkParameters() { 11 | // 假设 sparkJobName 不为空 12 | return StringUtils.isNotEmpty(sparkJobName); 13 | } 14 | 15 | // Getter and Setter 16 | public String getSparkJobName() { 17 | return sparkJobName; 18 | } 19 | 20 | public void setSparkJobName(String sparkJobName) { 21 | this.sparkJobName = sparkJobName; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /qdata-module-dpp/qdata-module-dpp-biz/src/main/resources/application-dp-dev.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/qdata-module-dpp/qdata-module-dpp-biz/src/main/resources/application-dp-dev.yml -------------------------------------------------------------------------------- /qdata-module-dpp/qdata-module-dpp-biz/src/main/resources/application-dp-prod.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qiantongtech/qData/45ecdd04998b9accf8fc2a73b34a77b4cce30c31/qdata-module-dpp/qdata-module-dpp-biz/src/main/resources/application-dp-prod.yml -------------------------------------------------------------------------------- /qdata-module-ds/pom.xml: -------------------------------------------------------------------------------- 1 | 2 |10 | * 用途: 11 | *
12 | * 13 | * @author: FXB 14 | * @create: 2025-03-13 15:49 15 | **/ 16 | @Data 17 | public class CsvColumnReqVO implements Serializable { 18 | private static final long serialVersionUID = 5343220360439610872L; 19 | 20 | @Schema(description = "csv文件路径") 21 | private String file; 22 | } 23 | -------------------------------------------------------------------------------- /qdata-module-system/qdata-module-system-api/src/main/java/tech/qiantong/qdata/module/system/domain/vo/ExcelColumnReqVO.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.system.domain.vo; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import lombok.Data; 5 | 6 | import java.io.Serializable; 7 | 8 | /** 9 | *10 | * 用途: 11 | *
12 | * 13 | * @author: FXB 14 | * @create: 2025-03-13 15:49 15 | **/ 16 | @Data 17 | public class ExcelColumnReqVO implements Serializable { 18 | private static final long serialVersionUID = 5343220360439610872L; 19 | 20 | @Schema(description = "Excel文件路径") 21 | private String excelFile; 22 | 23 | @Schema(description = "列开始行") 24 | private Integer startColumn; 25 | 26 | @Schema(description = "数据开始行") 27 | private Integer startData; 28 | } 29 | -------------------------------------------------------------------------------- /qdata-module-system/qdata-module-system-api/src/main/java/tech/qiantong/qdata/module/system/service/ISysMessageService.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.system.service; 2 | 3 | import tech.qiantong.qdata.module.system.api.message.dto.MessageSaveReqDTO; 4 | 5 | public interface ISysMessageService { 6 | public Boolean send(Long templateId, MessageSaveReqDTO messageSaveReqDTO, Object entity); 7 | 8 | /** 9 | * 数据发现使用 10 | * @param receiverId 11 | * @param entity 12 | * @return 13 | */ 14 | public Boolean sendDbChangeMessage( Long receiverId, Object entity); 15 | 16 | 17 | } 18 | -------------------------------------------------------------------------------- /qdata-module-system/qdata-module-system-api/src/main/java/tech/qiantong/qdata/module/system/service/ISystemDictDataService.java: -------------------------------------------------------------------------------- 1 | package tech.qiantong.qdata.module.system.service; 2 | 3 | import tech.qiantong.qdata.common.core.domain.entity.SysDictData; 4 | 5 | import java.util.List; 6 | 7 | public interface ISystemDictDataService { 8 | 9 | /** 10 | * 根据字典类型查询字典数据 提供服务资源门户字典值查询 11 | * 12 | * @param dictType 字典类型 13 | * @return 字典数据集合信息 14 | */ 15 | public List