Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
datax-cloud
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
黄营
datax-cloud
Commits
40183ee2
Commit
40183ee2
authored
Aug 25, 2020
by
yuwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
项目初始化
parent
f2707f70
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
35 changed files
with
304 additions
and
72 deletions
+304
-72
pom.xml
datax-common/datax-common-redis/pom.xml
+4
-0
ApiLogDto.java
.../java/cn/datax/service/data/market/api/dto/ApiLogDto.java
+0
-1
ServiceLogDto.java
...a/cn/datax/service/data/market/api/dto/ServiceLogDto.java
+0
-2
SqlParseDto.java
...ava/cn/datax/service/data/market/api/dto/SqlParseDto.java
+4
-0
ApiLogEntity.java
...cn/datax/service/data/market/api/entity/ApiLogEntity.java
+1
-0
ServiceLogEntity.java
...atax/service/data/market/api/entity/ServiceLogEntity.java
+2
-2
ServiceLogDao.java
...ax/service/data/market/integration/dao/ServiceLogDao.java
+11
-0
ServiceLogMapper.xml
...ntegration/src/main/resources/mapper/ServiceLogMapper.xml
+24
-1
ApiLogController.java
...vice/data/market/mapping/controller/ApiLogController.java
+1
-1
ApiLogDao.java
...a/cn/datax/service/data/market/mapping/dao/ApiLogDao.java
+12
-0
RequestInterceptor.java
...rvice/data/market/mapping/handler/RequestInterceptor.java
+5
-5
ApiLogMapper.xml
...ervice-mapping/src/main/resources/mapper/ApiLogMapper.xml
+24
-2
pom.xml
...es/data-market-service-parent/data-market-service/pom.xml
+5
-0
DataApiServiceImpl.java
.../service/data/market/service/impl/DataApiServiceImpl.java
+38
-14
api_1.0.0.docx
...arket-service/src/main/resources/templates/api_1.0.0.docx
+0
-0
StartedUpRunner.java
...n/datax/service/data/metadata/config/StartedUpRunner.java
+53
-0
MetadataSourceController.java
...ce/data/metadata/controller/MetadataSourceController.java
+11
-0
MetadataSourceService.java
.../service/data/metadata/service/MetadataSourceService.java
+2
-0
MetadataSourceServiceImpl.java
...data/metadata/service/impl/MetadataSourceServiceImpl.java
+41
-0
DeptRelationDao.java
...ain/java/cn/datax/service/system/dao/DeptRelationDao.java
+0
-2
RoleDeptDao.java
...rc/main/java/cn/datax/service/system/dao/RoleDeptDao.java
+0
-5
RoleMenuDao.java
...rc/main/java/cn/datax/service/system/dao/RoleMenuDao.java
+0
-5
UserPostDao.java
...rc/main/java/cn/datax/service/system/dao/UserPostDao.java
+0
-5
UserRoleDao.java
...rc/main/java/cn/datax/service/system/dao/UserRoleDao.java
+0
-5
DeptRelationMapper.xml
...-service/src/main/resources/mapper/DeptRelationMapper.xml
+5
-1
RoleDeptMapper.xml
...stem-service/src/main/resources/mapper/RoleDeptMapper.xml
+12
-1
RoleMenuMapper.xml
...stem-service/src/main/resources/mapper/RoleMenuMapper.xml
+11
-0
UserPostMapper.xml
...stem-service/src/main/resources/mapper/UserPostMapper.xml
+11
-0
UserRoleMapper.xml
...stem-service/src/main/resources/mapper/UserRoleMapper.xml
+11
-0
Topbar.vue
datax-ui/src/layout/components/Topbar.vue
+3
-1
topbar.scss
datax-ui/src/styles/topbar.scss
+5
-0
request.js
datax-ui/src/utils/request.js
+1
-0
DataApiAdd.vue
datax-ui/src/views/market/dataapi/DataApiAdd.vue
+7
-19
DataApiDetail.vue
datax-ui/src/views/market/dataapi/DataApiDetail.vue
+0
-0
DataApiEdit.vue
datax-ui/src/views/market/dataapi/DataApiEdit.vue
+0
-0
No files found.
datax-common/datax-common-redis/pom.xml
View file @
40183ee2
...
@@ -24,5 +24,9 @@
...
@@ -24,5 +24,9 @@
<groupId>
org.apache.commons
</groupId>
<groupId>
org.apache.commons
</groupId>
<artifactId>
commons-pool2
</artifactId>
<artifactId>
commons-pool2
</artifactId>
</dependency>
</dependency>
<dependency>
<groupId>
com.fasterxml.jackson.datatype
</groupId>
<artifactId>
jackson-datatype-jsr310
</artifactId>
</dependency>
</dependencies>
</dependencies>
</project>
</project>
datax-modules/data-market-service-parent/data-market-service-api/src/main/java/cn/datax/service/data/market/api/dto/ApiLogDto.java
View file @
40183ee2
...
@@ -12,7 +12,6 @@ public class ApiLogDto implements Serializable {
...
@@ -12,7 +12,6 @@ public class ApiLogDto implements Serializable {
private
String
id
;
private
String
id
;
private
String
apiId
;
private
String
apiId
;
private
String
apiName
;
private
String
callerId
;
private
String
callerId
;
private
String
callerIp
;
private
String
callerIp
;
private
String
callerUrl
;
private
String
callerUrl
;
...
...
datax-modules/data-market-service-parent/data-market-service-api/src/main/java/cn/datax/service/data/market/api/dto/ServiceLogDto.java
View file @
40183ee2
...
@@ -28,8 +28,6 @@ public class ServiceLogDto implements Serializable {
...
@@ -28,8 +28,6 @@ public class ServiceLogDto implements Serializable {
private
String
id
;
private
String
id
;
@ApiModelProperty
(
value
=
"服务id"
)
@ApiModelProperty
(
value
=
"服务id"
)
private
String
serviceId
;
private
String
serviceId
;
@ApiModelProperty
(
value
=
"服务名称"
)
private
String
serviceName
;
@ApiModelProperty
(
value
=
"调用者id"
)
@ApiModelProperty
(
value
=
"调用者id"
)
private
String
callerId
;
private
String
callerId
;
@ApiModelProperty
(
value
=
"调用者ip"
)
@ApiModelProperty
(
value
=
"调用者ip"
)
...
...
datax-modules/data-market-service-parent/data-market-service-api/src/main/java/cn/datax/service/data/market/api/dto/SqlParseDto.java
View file @
40183ee2
...
@@ -11,6 +11,10 @@ public class SqlParseDto implements Serializable {
...
@@ -11,6 +11,10 @@ public class SqlParseDto implements Serializable {
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"数据源"
)
@NotBlank
(
message
=
"数据源不能为空"
)
private
String
sourceId
;
@ApiModelProperty
(
value
=
"SQL文本"
)
@ApiModelProperty
(
value
=
"SQL文本"
)
@NotBlank
(
message
=
"SQL不能为空"
)
@NotBlank
(
message
=
"SQL不能为空"
)
private
String
sqlText
;
private
String
sqlText
;
...
...
datax-modules/data-market-service-parent/data-market-service-api/src/main/java/cn/datax/service/data/market/api/entity/ApiLogEntity.java
View file @
40183ee2
...
@@ -27,6 +27,7 @@ public class ApiLogEntity implements Serializable {
...
@@ -27,6 +27,7 @@ public class ApiLogEntity implements Serializable {
/**
/**
* api名称
* api名称
*/
*/
@TableField
(
exist
=
false
)
private
String
apiName
;
private
String
apiName
;
/**
/**
* 调用者id
* 调用者id
...
...
datax-modules/data-market-service-parent/data-market-service-api/src/main/java/cn/datax/service/data/market/api/entity/ServiceLogEntity.java
View file @
40183ee2
package
cn
.
datax
.
service
.
data
.
market
.
api
.
entity
;
package
cn
.
datax
.
service
.
data
.
market
.
api
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
cn.datax.common.base.BaseEntity
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
lombok.experimental.Accessors
;
/**
/**
...
@@ -41,6 +40,7 @@ public class ServiceLogEntity implements Serializable {
...
@@ -41,6 +40,7 @@ public class ServiceLogEntity implements Serializable {
/**
/**
* 服务名称
* 服务名称
*/
*/
@TableField
(
exist
=
false
)
private
String
serviceName
;
private
String
serviceName
;
/**
/**
...
...
datax-modules/data-market-service-parent/data-market-service-integration/src/main/java/cn/datax/service/data/market/integration/dao/ServiceLogDao.java
View file @
40183ee2
...
@@ -2,7 +2,13 @@ package cn.datax.service.data.market.integration.dao;
...
@@ -2,7 +2,13 @@ package cn.datax.service.data.market.integration.dao;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.service.data.market.api.entity.ServiceLogEntity
;
import
cn.datax.service.data.market.api.entity.ServiceLogEntity
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.toolkit.Constants
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.io.Serializable
;
/**
/**
* <p>
* <p>
...
@@ -15,4 +21,9 @@ import org.apache.ibatis.annotations.Mapper;
...
@@ -15,4 +21,9 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
@Mapper
public
interface
ServiceLogDao
extends
BaseDao
<
ServiceLogEntity
>
{
public
interface
ServiceLogDao
extends
BaseDao
<
ServiceLogEntity
>
{
@Override
ServiceLogEntity
selectById
(
Serializable
id
);
@Override
<
E
extends
IPage
<
ServiceLogEntity
>>
E
selectPage
(
E
page
,
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
ServiceLogEntity
>
queryWrapper
);
}
}
datax-modules/data-market-service-parent/data-market-service-integration/src/main/resources/mapper/ServiceLogMapper.xml
View file @
40183ee2
...
@@ -22,7 +22,30 @@
...
@@ -22,7 +22,30 @@
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id,
id,
status,
status,
service_id,
service_name,
caller_id, caller_ip, caller_date, caller_header, caller_param, caller_soap, time, msg
service_id, caller_id, caller_ip, caller_date, caller_header, caller_param, caller_soap, time, msg
</sql>
</sql>
<sql
id=
"Log_Column_List"
>
${alias}.id,
${alias}.status,
${alias}.service_id, ${alias}.caller_id, ${alias}.caller_ip, ${alias}.caller_date,
${alias}.caller_header, ${alias}.caller_param, ${alias}.caller_soap, ${alias}.time, ${alias}.msg
</sql>
<select
id=
"selectById"
resultMap=
"BaseResultMap"
>
SELECT service.service_name,
<include
refid=
"Log_Column_List"
><property
name=
"alias"
value=
"log"
/></include>
FROM market_service_log log
LEFT JOIN market_service_integration service ON service.id = log.service_id
WHERE 1 = 1 AND log.id = #{id}
</select>
<select
id=
"selectPage"
resultMap=
"BaseResultMap"
>
SELECT service.service_name,
<include
refid=
"Log_Column_List"
><property
name=
"alias"
value=
"log"
/></include>
FROM market_service_log log
LEFT JOIN market_service_integration service ON service.id = log.service_id
${ew.customSqlSegment}
</select>
</mapper>
</mapper>
datax-modules/data-market-service-parent/data-market-service-mapping/src/main/java/cn/datax/service/data/market/mapping/controller/ApiLogController.java
View file @
40183ee2
...
@@ -72,7 +72,7 @@ public class ApiLogController extends BaseController {
...
@@ -72,7 +72,7 @@ public class ApiLogController extends BaseController {
@GetMapping
(
"/page"
)
@GetMapping
(
"/page"
)
public
R
getApiLogPage
(
ApiLogQuery
apiLogQuery
)
{
public
R
getApiLogPage
(
ApiLogQuery
apiLogQuery
)
{
QueryWrapper
<
ApiLogEntity
>
queryWrapper
=
new
QueryWrapper
<>();
QueryWrapper
<
ApiLogEntity
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
like
(
StrUtil
.
isNotBlank
(
apiLogQuery
.
getApiName
()),
"api_name"
,
apiLogQuery
.
getApiName
());
queryWrapper
.
like
(
StrUtil
.
isNotBlank
(
apiLogQuery
.
getApiName
()),
"api
.api
_name"
,
apiLogQuery
.
getApiName
());
IPage
<
ApiLogEntity
>
page
=
apiLogService
.
page
(
new
Page
<>(
apiLogQuery
.
getPageNum
(),
apiLogQuery
.
getPageSize
()),
queryWrapper
);
IPage
<
ApiLogEntity
>
page
=
apiLogService
.
page
(
new
Page
<>(
apiLogQuery
.
getPageNum
(),
apiLogQuery
.
getPageSize
()),
queryWrapper
);
List
<
ApiLogVo
>
collect
=
page
.
getRecords
().
stream
().
map
(
apiLogMapper:
:
toVO
).
collect
(
Collectors
.
toList
());
List
<
ApiLogVo
>
collect
=
page
.
getRecords
().
stream
().
map
(
apiLogMapper:
:
toVO
).
collect
(
Collectors
.
toList
());
JsonPage
<
ApiLogVo
>
jsonPage
=
new
JsonPage
<>(
page
.
getCurrent
(),
page
.
getSize
(),
page
.
getTotal
(),
collect
);
JsonPage
<
ApiLogVo
>
jsonPage
=
new
JsonPage
<>(
page
.
getCurrent
(),
page
.
getSize
(),
page
.
getTotal
(),
collect
);
...
...
datax-modules/data-market-service-parent/data-market-service-mapping/src/main/java/cn/datax/service/data/market/mapping/dao/ApiLogDao.java
View file @
40183ee2
...
@@ -2,8 +2,20 @@ package cn.datax.service.data.market.mapping.dao;
...
@@ -2,8 +2,20 @@ package cn.datax.service.data.market.mapping.dao;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.service.data.market.api.entity.ApiLogEntity
;
import
cn.datax.service.data.market.api.entity.ApiLogEntity
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.toolkit.Constants
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.io.Serializable
;
@Mapper
@Mapper
public
interface
ApiLogDao
extends
BaseDao
<
ApiLogEntity
>
{
public
interface
ApiLogDao
extends
BaseDao
<
ApiLogEntity
>
{
@Override
ApiLogEntity
selectById
(
Serializable
id
);
@Override
<
E
extends
IPage
<
ApiLogEntity
>>
E
selectPage
(
E
page
,
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
ApiLogEntity
>
queryWrapper
);
}
}
datax-modules/data-market-service-parent/data-market-service-mapping/src/main/java/cn/datax/service/data/market/mapping/handler/RequestInterceptor.java
View file @
40183ee2
...
@@ -5,6 +5,7 @@ import cn.datax.common.exception.DataException;
...
@@ -5,6 +5,7 @@ import cn.datax.common.exception.DataException;
import
cn.datax.common.utils.IPUtil
;
import
cn.datax.common.utils.IPUtil
;
import
cn.datax.common.utils.MD5Util
;
import
cn.datax.common.utils.MD5Util
;
import
cn.datax.service.data.market.api.dto.ApiLogDto
;
import
cn.datax.service.data.market.api.dto.ApiLogDto
;
import
cn.datax.service.data.market.api.dto.RateLimit
;
import
cn.datax.service.data.market.api.entity.DataApiEntity
;
import
cn.datax.service.data.market.api.entity.DataApiEntity
;
import
cn.datax.service.data.market.api.enums.ParamType
;
import
cn.datax.service.data.market.api.enums.ParamType
;
import
cn.datax.service.data.market.mapping.utils.ThreadUtil
;
import
cn.datax.service.data.market.mapping.utils.ThreadUtil
;
...
@@ -80,11 +81,10 @@ public class RequestInterceptor {
...
@@ -80,11 +81,10 @@ public class RequestInterceptor {
}
}
// 限流校验
// 限流校验
String
rateLimit
=
api
.
getRateLimit
();
RateLimit
rateLimit
=
api
.
getRateLimit
();
rateLimit
=
Optional
.
ofNullable
(
rateLimit
).
orElse
(
DataConstant
.
TrueOrFalse
.
TRUE
.
getKey
());
if
(
DataConstant
.
TrueOrFalse
.
TRUE
.
getKey
().
equals
(
rateLimit
.
getEnable
()))
{
if
(
DataConstant
.
TrueOrFalse
.
TRUE
.
getKey
().
equals
(
rateLimit
))
{
Integer
times
=
rateLimit
.
getTimes
();
Integer
times
=
api
.
getTimes
();
Integer
seconds
=
rateLimit
.
getSeconds
();
Integer
seconds
=
api
.
getSeconds
();
// 请求次数
// 请求次数
times
=
Optional
.
ofNullable
(
times
).
orElse
(
5
);
times
=
Optional
.
ofNullable
(
times
).
orElse
(
5
);
// 请求时间范围60秒
// 请求时间范围60秒
...
...
datax-modules/data-market-service-parent/data-market-service-mapping/src/main/resources/mapper/ApiLogMapper.xml
View file @
40183ee2
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.datax.service.data.market.
api.call
.dao.ApiLogDao"
>
<mapper
namespace=
"cn.datax.service.data.market.
mapping
.dao.ApiLogDao"
>
<!-- 通用查询映射结果 -->
<!-- 通用查询映射结果 -->
<resultMap
id=
"BaseResultMap"
type=
"cn.datax.service.data.market.api.entity.ApiLogEntity"
>
<resultMap
id=
"BaseResultMap"
type=
"cn.datax.service.data.market.api.entity.ApiLogEntity"
>
...
@@ -22,7 +22,29 @@
...
@@ -22,7 +22,29 @@
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id,
id,
status,
status,
api_id,
api_name, caller_id, caller_ip, caller_url, caller_params, caller_date, callerS
ize, time, msg
api_id,
caller_id, caller_ip, caller_url, caller_params, caller_date, caller_s
ize, time, msg
</sql>
</sql>
<sql
id=
"Log_Column_List"
>
${alias}.id,
${alias}.status,
${alias}.api_id, ${alias}.caller_id, ${alias}.caller_ip, ${alias}.caller_url, ${alias}.caller_params,
${alias}.caller_date, ${alias}.caller_size, ${alias}.time, ${alias}.msg
</sql>
<select
id=
"selectById"
resultMap=
"BaseResultMap"
>
SELECT api.api_name,
<include
refid=
"Log_Column_List"
><property
name=
"alias"
value=
"log"
/></include>
FROM market_api_log log
LEFT JOIN market_api api ON api.id = log.api_id
WHERE 1 = 1 AND log.id = #{id}
</select>
<select
id=
"selectPage"
resultMap=
"BaseResultMap"
>
SELECT api.api_name,
<include
refid=
"Log_Column_List"
><property
name=
"alias"
value=
"log"
/></include>
FROM market_api_log log
LEFT JOIN market_api api ON api.id = log.api_id
${ew.customSqlSegment}
</select>
</mapper>
</mapper>
datax-modules/data-market-service-parent/data-market-service/pom.xml
View file @
40183ee2
...
@@ -84,6 +84,11 @@
...
@@ -84,6 +84,11 @@
<artifactId>
datax-common-rabbitmq
</artifactId>
<artifactId>
datax-common-rabbitmq
</artifactId>
<version>
2.0.0
</version>
<version>
2.0.0
</version>
</dependency>
</dependency>
<dependency>
<groupId>
cn.datax
</groupId>
<artifactId>
data-metadata-service-api
</artifactId>
<version>
2.0.0
</version>
</dependency>
</dependencies>
</dependencies>
<build>
<build>
...
...
datax-modules/data-market-service-parent/data-market-service/src/main/java/cn/datax/service/data/market/service/impl/DataApiServiceImpl.java
View file @
40183ee2
...
@@ -3,8 +3,10 @@ package cn.datax.service.data.market.service.impl;
...
@@ -3,8 +3,10 @@ package cn.datax.service.data.market.service.impl;
import
cn.datax.commo.office.word.WordUtil
;
import
cn.datax.commo.office.word.WordUtil
;
import
cn.datax.common.core.DataConstant
;
import
cn.datax.common.core.DataConstant
;
import
cn.datax.common.core.R
;
import
cn.datax.common.core.R
;
import
cn.datax.common.core.RedisConstant
;
import
cn.datax.common.exception.DataException
;
import
cn.datax.common.exception.DataException
;
import
cn.datax.common.rabbitmq.config.RabbitMqConstant
;
import
cn.datax.common.rabbitmq.config.RabbitMqConstant
;
import
cn.datax.common.redis.service.RedisService
;
import
cn.datax.common.utils.MD5Util
;
import
cn.datax.common.utils.MD5Util
;
import
cn.datax.common.utils.SecurityUtil
;
import
cn.datax.common.utils.SecurityUtil
;
import
cn.datax.common.utils.ThrowableUtil
;
import
cn.datax.common.utils.ThrowableUtil
;
...
@@ -17,6 +19,10 @@ import cn.datax.service.data.market.mapstruct.DataApiMapper;
...
@@ -17,6 +19,10 @@ import cn.datax.service.data.market.mapstruct.DataApiMapper;
import
cn.datax.service.data.market.dao.DataApiDao
;
import
cn.datax.service.data.market.dao.DataApiDao
;
import
cn.datax.common.base.BaseServiceImpl
;
import
cn.datax.common.base.BaseServiceImpl
;
import
cn.datax.service.data.market.utils.SqlBuilderUtil
;
import
cn.datax.service.data.market.utils.SqlBuilderUtil
;
import
cn.datax.service.data.metadata.api.entity.MetadataColumnEntity
;
import
cn.datax.service.data.metadata.api.entity.MetadataSourceEntity
;
import
cn.datax.service.data.metadata.api.entity.MetadataTableEntity
;
import
cn.hutool.core.util.StrUtil
;
import
com.aspose.words.Document
;
import
com.aspose.words.Document
;
import
com.aspose.words.MailMerge
;
import
com.aspose.words.MailMerge
;
import
com.aspose.words.net.System.Data.DataRow
;
import
com.aspose.words.net.System.Data.DataRow
;
...
@@ -77,6 +83,9 @@ public class DataApiServiceImpl extends BaseServiceImpl<DataApiDao, DataApiEntit
...
@@ -77,6 +83,9 @@ public class DataApiServiceImpl extends BaseServiceImpl<DataApiDao, DataApiEntit
@Autowired
@Autowired
private
ObjectMapper
objectMapper
;
private
ObjectMapper
objectMapper
;
@Autowired
private
RedisService
redisService
;
@Override
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
saveDataApi
(
DataApiDto
dataApiDto
)
{
public
void
saveDataApi
(
DataApiDto
dataApiDto
)
{
...
@@ -125,6 +134,7 @@ public class DataApiServiceImpl extends BaseServiceImpl<DataApiDao, DataApiEntit
...
@@ -125,6 +134,7 @@ public class DataApiServiceImpl extends BaseServiceImpl<DataApiDao, DataApiEntit
@Override
@Override
public
SqlParseVo
sqlParse
(
SqlParseDto
sqlParseDto
)
{
public
SqlParseVo
sqlParse
(
SqlParseDto
sqlParseDto
)
{
String
sourceId
=
sqlParseDto
.
getSourceId
();
String
sql
=
sqlParseDto
.
getSqlText
();
String
sql
=
sqlParseDto
.
getSqlText
();
sql
=
sql
.
replace
(
SqlBuilderUtil
.
getInstance
().
MARK_KEY_START
,
""
);
sql
=
sql
.
replace
(
SqlBuilderUtil
.
getInstance
().
MARK_KEY_START
,
""
);
sql
=
sql
.
replace
(
SqlBuilderUtil
.
getInstance
().
MARK_KEY_END
,
""
);
sql
=
sql
.
replace
(
SqlBuilderUtil
.
getInstance
().
MARK_KEY_END
,
""
);
...
@@ -157,21 +167,35 @@ public class DataApiServiceImpl extends BaseServiceImpl<DataApiDao, DataApiEntit
...
@@ -157,21 +167,35 @@ public class DataApiServiceImpl extends BaseServiceImpl<DataApiDao, DataApiEntit
return
reqParam
;
return
reqParam
;
}).
collect
(
Collectors
.
toList
());
}).
collect
(
Collectors
.
toList
());
sqlParseVo
.
setReqParams
(
reqParams
);
sqlParseVo
.
setReqParams
(
reqParams
);
Map
<
String
,
List
<
Map
<
String
,
String
>>>
map
=
cols
.
stream
().
collect
(
Collectors
.
groupingBy
(
e
->
e
.
get
(
"tableName"
).
toString
()));
List
<
ResParam
>
resParams
=
new
ArrayList
<>();
for
(
Map
.
Entry
<
String
,
List
<
Map
<
String
,
String
>>>
entry
:
map
.
entrySet
())
{
List
<
MetadataSourceEntity
>
sourceEntityList
=
(
List
<
MetadataSourceEntity
>)
redisService
.
get
(
RedisConstant
.
METADATA_SOURCE_KEY
);
String
entryKey
=
entry
.
getKey
().
toLowerCase
();
MetadataSourceEntity
sourceEntity
=
sourceEntityList
.
stream
().
filter
(
s
->
sourceId
.
equals
(
s
.
getId
())).
findFirst
().
orElse
(
null
);
// 根据entryKey找到数据库表
if
(
sourceEntity
!=
null
)
{
List
<
MetadataTableEntity
>
tableEntityList
=
(
List
<
MetadataTableEntity
>)
redisService
.
hget
(
RedisConstant
.
METADATA_TABLE_KEY
,
sourceEntity
.
getId
());
Map
<
String
,
List
<
Map
<
String
,
String
>>>
map
=
cols
.
stream
().
collect
(
Collectors
.
groupingBy
(
e
->
e
.
get
(
"tableName"
).
toString
()));
List
<
Map
<
String
,
String
>>
entryValue
=
entry
.
getValue
();
for
(
Map
.
Entry
<
String
,
List
<
Map
<
String
,
String
>>>
entry
:
map
.
entrySet
())
{
entryValue
.
stream
().
map
(
m
->
m
.
get
(
"columnName"
));
String
entryKey
=
entry
.
getKey
().
toLowerCase
();
List
<
Map
<
String
,
String
>>
entryValue
=
entry
.
getValue
();
MetadataTableEntity
tableEntity
=
tableEntityList
.
stream
().
filter
(
t
->
entryKey
.
equals
(
t
.
getTableName
().
toLowerCase
())).
findFirst
().
orElse
(
null
);
if
(
tableEntity
!=
null
)
{
List
<
MetadataColumnEntity
>
columnEntityList
=
(
List
<
MetadataColumnEntity
>)
redisService
.
hget
(
RedisConstant
.
METADATA_COLUMN_KEY
,
tableEntity
.
getId
());
entryValue
.
stream
().
forEach
(
m
->
{
String
columnName
=
m
.
get
(
"columnName"
).
toLowerCase
();
String
columnAliasName
=
m
.
get
(
"columnAliasName"
);
MetadataColumnEntity
columnEntity
=
columnEntityList
.
stream
().
filter
(
c
->
columnName
.
equals
(
c
.
getColumnName
().
toLowerCase
())).
findFirst
().
orElse
(
null
);
if
(
columnEntity
!=
null
)
{
ResParam
resParam
=
new
ResParam
();
resParam
.
setFieldName
(
columnEntity
.
getColumnName
());
resParam
.
setFieldComment
(
StrUtil
.
isNotBlank
(
columnEntity
.
getColumnComment
())
?
columnEntity
.
getColumnComment
()
:
""
);
resParam
.
setDataType
(
StrUtil
.
isNotBlank
(
columnEntity
.
getDataType
())
?
columnEntity
.
getDataType
()
:
""
);
resParam
.
setFieldAliasName
(
StrUtil
.
isNotBlank
(
columnAliasName
)
?
columnAliasName
:
""
);
resParams
.
add
(
resParam
);
}
});
}
}
}
}
// List<ResParam> resParams = cols.stream().map(s -> {
sqlParseVo
.
setResParams
(
resParams
);
// ResParam resParam = new ResParam();
// resParam.setFieldName(s);
// return resParam;
// }).collect(Collectors.toList());
// sqlParseVo.setResParams(resParams);
return
sqlParseVo
;
return
sqlParseVo
;
}
}
...
...
datax-modules/data-market-service-parent/data-market-service/src/main/resources/templates/api_1.0.0.docx
View file @
40183ee2
No preview for this file type
datax-modules/data-metadata-service-parent/data-metadata-service/src/main/java/cn/datax/service/data/metadata/config/StartedUpRunner.java
View file @
40183ee2
package
cn
.
datax
.
service
.
data
.
metadata
.
config
;
package
cn
.
datax
.
service
.
data
.
metadata
.
config
;
import
cn.datax.common.core.RedisConstant
;
import
cn.datax.common.redis.service.RedisService
;
import
cn.datax.service.data.metadata.api.entity.MetadataColumnEntity
;
import
cn.datax.service.data.metadata.api.entity.MetadataSourceEntity
;
import
cn.datax.service.data.metadata.api.entity.MetadataTableEntity
;
import
cn.datax.service.data.metadata.dao.MetadataColumnDao
;
import
cn.datax.service.data.metadata.dao.MetadataSourceDao
;
import
cn.datax.service.data.metadata.dao.MetadataTableDao
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.ApplicationArguments
;
import
org.springframework.boot.ApplicationArguments
;
import
org.springframework.boot.ApplicationRunner
;
import
org.springframework.boot.ApplicationRunner
;
import
org.springframework.context.ConfigurableApplicationContext
;
import
org.springframework.context.ConfigurableApplicationContext
;
import
org.springframework.core.env.Environment
;
import
org.springframework.core.env.Environment
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.time.format.DateTimeFormatter
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
@Component
@Component
@RequiredArgsConstructor
@RequiredArgsConstructor
...
@@ -17,6 +31,21 @@ public class StartedUpRunner implements ApplicationRunner {
...
@@ -17,6 +31,21 @@ public class StartedUpRunner implements ApplicationRunner {
private
final
ConfigurableApplicationContext
context
;
private
final
ConfigurableApplicationContext
context
;
private
final
Environment
environment
;
private
final
Environment
environment
;
@Autowired
private
MetadataSourceDao
metadataSourceDao
;
@Autowired
private
MetadataTableDao
metadataTableDao
;
@Autowired
private
MetadataColumnDao
metadataColumnDao
;
@Autowired
private
RedisService
redisService
;
@Autowired
private
RedisTemplate
<
String
,
Object
>
redisTemplate
;
@Override
@Override
public
void
run
(
ApplicationArguments
args
)
{
public
void
run
(
ApplicationArguments
args
)
{
if
(
context
.
isActive
())
{
if
(
context
.
isActive
())
{
...
@@ -26,6 +55,30 @@ public class StartedUpRunner implements ApplicationRunner {
...
@@ -26,6 +55,30 @@ public class StartedUpRunner implements ApplicationRunner {
"端口号:"
+
environment
.
getProperty
(
"server.port"
)
+
"\n"
+
"端口号:"
+
environment
.
getProperty
(
"server.port"
)
+
"\n"
+
"-----------------------------------------"
;
"-----------------------------------------"
;
System
.
out
.
println
(
banner
);
System
.
out
.
println
(
banner
);
// 项目启动时,初始化缓存
String
sourceKey
=
RedisConstant
.
METADATA_SOURCE_KEY
;
Boolean
hasSourceKey
=
redisService
.
hasKey
(
sourceKey
);
if
(!
hasSourceKey
)
{
List
<
MetadataSourceEntity
>
sourceEntityList
=
metadataSourceDao
.
selectList
(
Wrappers
.
emptyWrapper
());
redisService
.
set
(
sourceKey
,
sourceEntityList
);
}
String
tableKey
=
RedisConstant
.
METADATA_TABLE_KEY
;
Boolean
hasTableKey
=
redisService
.
hasKey
(
tableKey
);
if
(!
hasTableKey
)
{
List
<
MetadataTableEntity
>
tableEntityList
=
metadataTableDao
.
selectList
(
Wrappers
.
emptyWrapper
());
Map
<
String
,
List
<
MetadataTableEntity
>>
tableListMap
=
tableEntityList
.
stream
().
collect
(
Collectors
.
groupingBy
(
MetadataTableEntity:
:
getSourceId
));
redisTemplate
.
opsForHash
().
putAll
(
tableKey
,
tableListMap
);
}
String
columnKey
=
RedisConstant
.
METADATA_COLUMN_KEY
;
Boolean
hasColumnKey
=
redisService
.
hasKey
(
columnKey
);
if
(!
hasColumnKey
)
{
List
<
MetadataColumnEntity
>
columnEntityList
=
metadataColumnDao
.
selectList
(
Wrappers
.
emptyWrapper
());
Map
<
String
,
List
<
MetadataColumnEntity
>>
columnListMap
=
columnEntityList
.
stream
().
collect
(
Collectors
.
groupingBy
(
MetadataColumnEntity:
:
getTableId
));
redisTemplate
.
opsForHash
().
putAll
(
columnKey
,
columnListMap
);
}
}
}
}
}
}
}
datax-modules/data-metadata-service-parent/data-metadata-service/src/main/java/cn/datax/service/data/metadata/controller/MetadataSourceController.java
View file @
40183ee2
...
@@ -238,4 +238,15 @@ public class MetadataSourceController extends BaseController {
...
@@ -238,4 +238,15 @@ public class MetadataSourceController extends BaseController {
out
.
flush
();
out
.
flush
();
out
.
close
();
out
.
close
();
}
}
/**
* 刷新参数缓存
*
* @return
*/
@GetMapping
(
"/refresh"
)
public
R
refreshMetadata
()
{
metadataSourceService
.
refreshMetadata
();
return
R
.
ok
();
}
}
}
datax-modules/data-metadata-service-parent/data-metadata-service/src/main/java/cn/datax/service/data/metadata/service/MetadataSourceService.java
View file @
40183ee2
...
@@ -41,4 +41,6 @@ public interface MetadataSourceService extends BaseService<MetadataSourceEntity>
...
@@ -41,4 +41,6 @@ public interface MetadataSourceService extends BaseService<MetadataSourceEntity>
void
syncMetadata
(
String
id
);
void
syncMetadata
(
String
id
);
Document
wordMetadata
(
String
id
)
throws
Exception
;
Document
wordMetadata
(
String
id
)
throws
Exception
;
void
refreshMetadata
();
}
}
datax-modules/data-metadata-service-parent/data-metadata-service/src/main/java/cn/datax/service/data/metadata/service/impl/MetadataSourceServiceImpl.java
View file @
40183ee2
...
@@ -3,12 +3,14 @@ package cn.datax.service.data.metadata.service.impl;
...
@@ -3,12 +3,14 @@ package cn.datax.service.data.metadata.service.impl;
import
cn.datax.commo.office.word.WordUtil
;
import
cn.datax.commo.office.word.WordUtil
;
import
cn.datax.common.base.BaseServiceImpl
;
import
cn.datax.common.base.BaseServiceImpl
;
import
cn.datax.common.core.DataConstant
;
import
cn.datax.common.core.DataConstant
;
import
cn.datax.common.core.RedisConstant
;
import
cn.datax.common.database.DataSourceFactory
;
import
cn.datax.common.database.DataSourceFactory
;
import
cn.datax.common.database.DbQuery
;
import
cn.datax.common.database.DbQuery
;
import
cn.datax.common.database.constants.DbQueryProperty
;
import
cn.datax.common.database.constants.DbQueryProperty
;
import
cn.datax.common.database.core.DbColumn
;
import
cn.datax.common.database.core.DbColumn
;
import
cn.datax.common.database.core.DbTable
;
import
cn.datax.common.database.core.DbTable
;
import
cn.datax.common.exception.DataException
;
import
cn.datax.common.exception.DataException
;
import
cn.datax.common.redis.service.RedisService
;
import
cn.datax.common.utils.SecurityUtil
;
import
cn.datax.common.utils.SecurityUtil
;
import
cn.datax.service.data.metadata.api.dto.DbSchema
;
import
cn.datax.service.data.metadata.api.dto.DbSchema
;
import
cn.datax.service.data.metadata.api.dto.MetadataSourceDto
;
import
cn.datax.service.data.metadata.api.dto.MetadataSourceDto
;
...
@@ -29,14 +31,18 @@ import com.aspose.words.net.System.Data.DataRow;
...
@@ -29,14 +31,18 @@ import com.aspose.words.net.System.Data.DataRow;
import
com.aspose.words.net.System.Data.DataSet
;
import
com.aspose.words.net.System.Data.DataSet
;
import
com.aspose.words.net.System.Data.DataTable
;
import
com.aspose.words.net.System.Data.DataTable
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.core.io.ClassPathResource
;
import
org.springframework.core.io.ClassPathResource
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.io.InputStream
;
import
java.io.InputStream
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
/**
* <p>
* <p>
...
@@ -68,6 +74,12 @@ public class MetadataSourceServiceImpl extends BaseServiceImpl<MetadataSourceDao
...
@@ -68,6 +74,12 @@ public class MetadataSourceServiceImpl extends BaseServiceImpl<MetadataSourceDao
@Autowired
@Autowired
private
MetadataColumnDao
metadataColumnDao
;
private
MetadataColumnDao
metadataColumnDao
;
@Autowired
private
RedisService
redisService
;
@Autowired
private
RedisTemplate
<
String
,
Object
>
redisTemplate
;
@Override
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
saveMetadataSource
(
MetadataSourceDto
metadataSourceDto
)
{
public
void
saveMetadataSource
(
MetadataSourceDto
metadataSourceDto
)
{
...
@@ -231,4 +243,33 @@ public class MetadataSourceServiceImpl extends BaseServiceImpl<MetadataSourceDao
...
@@ -231,4 +243,33 @@ public class MetadataSourceServiceImpl extends BaseServiceImpl<MetadataSourceDao
WordUtil
.
getInstance
().
insertWatermarkText
(
doc
,
SecurityUtil
.
getUserName
());
WordUtil
.
getInstance
().
insertWatermarkText
(
doc
,
SecurityUtil
.
getUserName
());
return
doc
;
return
doc
;
}
}
@Override
public
void
refreshMetadata
()
{
String
sourceKey
=
RedisConstant
.
METADATA_SOURCE_KEY
;
Boolean
hasSourceKey
=
redisService
.
hasKey
(
sourceKey
);
if
(
hasSourceKey
)
{
redisService
.
del
(
sourceKey
);
}
List
<
MetadataSourceEntity
>
sourceEntityList
=
metadataSourceDao
.
selectList
(
Wrappers
.
emptyWrapper
());
redisService
.
set
(
sourceKey
,
sourceEntityList
);
String
tableKey
=
RedisConstant
.
METADATA_TABLE_KEY
;
Boolean
hasTableKey
=
redisService
.
hasKey
(
tableKey
);
if
(
hasTableKey
)
{
redisService
.
del
(
tableKey
);
}
List
<
MetadataTableEntity
>
tableEntityList
=
metadataTableDao
.
selectList
(
Wrappers
.
emptyWrapper
());
Map
<
String
,
List
<
MetadataTableEntity
>>
tableListMap
=
tableEntityList
.
stream
().
collect
(
Collectors
.
groupingBy
(
MetadataTableEntity:
:
getSourceId
));
redisTemplate
.
opsForHash
().
putAll
(
tableKey
,
tableListMap
);
String
columnKey
=
RedisConstant
.
METADATA_COLUMN_KEY
;
Boolean
hasColumnKey
=
redisService
.
hasKey
(
columnKey
);
if
(
hasColumnKey
)
{
redisService
.
del
(
columnKey
);
}
List
<
MetadataColumnEntity
>
columnEntityList
=
metadataColumnDao
.
selectList
(
Wrappers
.
emptyWrapper
());
Map
<
String
,
List
<
MetadataColumnEntity
>>
columnListMap
=
columnEntityList
.
stream
().
collect
(
Collectors
.
groupingBy
(
MetadataColumnEntity:
:
getTableId
));
redisTemplate
.
opsForHash
().
putAll
(
columnKey
,
columnListMap
);
}
}
}
datax-modules/system-service-parent/system-service/src/main/java/cn/datax/service/system/dao/DeptRelationDao.java
View file @
40183ee2
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
import
cn.datax.service.system.api.entity.DeptRelationEntity
;
import
cn.datax.service.system.api.entity.DeptRelationEntity
;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.common.base.BaseDao
;
import
org.apache.ibatis.annotations.Delete
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
import
java.util.List
;
...
@@ -20,6 +19,5 @@ public interface DeptRelationDao extends BaseDao<DeptRelationEntity> {
...
@@ -20,6 +19,5 @@ public interface DeptRelationDao extends BaseDao<DeptRelationEntity> {
void
insertBatch
(
List
<
DeptRelationEntity
>
list
);
void
insertBatch
(
List
<
DeptRelationEntity
>
list
);
@Delete
(
"delete from sys_dept_relation where ancestor = #{id}"
)
void
deleteByAncestor
(
String
id
);
void
deleteByAncestor
(
String
id
);
}
}
datax-modules/system-service-parent/system-service/src/main/java/cn/datax/service/system/dao/RoleDeptDao.java
View file @
40183ee2
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
import
cn.datax.service.system.api.entity.RoleDeptEntity
;
import
cn.datax.service.system.api.entity.RoleDeptEntity
;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.common.base.BaseDao
;
import
org.apache.ibatis.annotations.Delete
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
import
java.util.List
;
...
@@ -20,11 +19,7 @@ public interface RoleDeptDao extends BaseDao<RoleDeptEntity> {
...
@@ -20,11 +19,7 @@ public interface RoleDeptDao extends BaseDao<RoleDeptEntity> {
void
insertBatch
(
List
<
RoleDeptEntity
>
list
);
void
insertBatch
(
List
<
RoleDeptEntity
>
list
);
@Delete
(
"delete from sys_role_dept where role_id = #{id}"
)
void
deleteByRoleId
(
String
id
);
void
deleteByRoleId
(
String
id
);
@Delete
(
"<script>"
+
"delete from sys_role_dept where role_id in <foreach collection='list' item='id' open='(' separator=',' close=')'>#{id}</foreach>"
+
"</script>"
)
void
deleteByRoleIds
(
List
<
String
>
ids
);
void
deleteByRoleIds
(
List
<
String
>
ids
);
}
}
datax-modules/system-service-parent/system-service/src/main/java/cn/datax/service/system/dao/RoleMenuDao.java
View file @
40183ee2
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
import
cn.datax.service.system.api.entity.RoleMenuEntity
;
import
cn.datax.service.system.api.entity.RoleMenuEntity
;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.common.base.BaseDao
;
import
org.apache.ibatis.annotations.Delete
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
import
java.util.List
;
...
@@ -20,11 +19,7 @@ public interface RoleMenuDao extends BaseDao<RoleMenuEntity> {
...
@@ -20,11 +19,7 @@ public interface RoleMenuDao extends BaseDao<RoleMenuEntity> {
void
insertBatch
(
List
<
RoleMenuEntity
>
list
);
void
insertBatch
(
List
<
RoleMenuEntity
>
list
);
@Delete
(
"delete from sys_role_menu where role_id = #{id}"
)
void
deleteByRoleId
(
String
id
);
void
deleteByRoleId
(
String
id
);
@Delete
(
"<script>"
+
"delete from sys_role_menu where role_id in <foreach collection='list' item='id' open='(' separator=',' close=')'>#{id}</foreach>"
+
"</script>"
)
void
deleteByRoleIds
(
List
<
String
>
ids
);
void
deleteByRoleIds
(
List
<
String
>
ids
);
}
}
datax-modules/system-service-parent/system-service/src/main/java/cn/datax/service/system/dao/UserPostDao.java
View file @
40183ee2
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
import
cn.datax.service.system.api.entity.UserPostEntity
;
import
cn.datax.service.system.api.entity.UserPostEntity
;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.common.base.BaseDao
;
import
org.apache.ibatis.annotations.Delete
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
import
java.util.List
;
...
@@ -20,11 +19,7 @@ public interface UserPostDao extends BaseDao<UserPostEntity> {
...
@@ -20,11 +19,7 @@ public interface UserPostDao extends BaseDao<UserPostEntity> {
void
insertBatch
(
List
<
UserPostEntity
>
list
);
void
insertBatch
(
List
<
UserPostEntity
>
list
);
@Delete
(
"delete from sys_user_post where user_id = #{id}"
)
void
deleteByUserId
(
String
id
);
void
deleteByUserId
(
String
id
);
@Delete
(
"<script>"
+
"delete from sys_user_post where user_id in <foreach collection='list' item='id' open='(' separator=',' close=')'>#{id}</foreach>"
+
"</script>"
)
void
deleteByUserIds
(
List
<
String
>
ids
);
void
deleteByUserIds
(
List
<
String
>
ids
);
}
}
datax-modules/system-service-parent/system-service/src/main/java/cn/datax/service/system/dao/UserRoleDao.java
View file @
40183ee2
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
...
@@ -2,7 +2,6 @@ package cn.datax.service.system.dao;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.service.system.api.entity.UserRoleEntity
;
import
cn.datax.service.system.api.entity.UserRoleEntity
;
import
org.apache.ibatis.annotations.Delete
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
import
java.util.List
;
...
@@ -20,11 +19,7 @@ public interface UserRoleDao extends BaseDao<UserRoleEntity> {
...
@@ -20,11 +19,7 @@ public interface UserRoleDao extends BaseDao<UserRoleEntity> {
void
insertBatch
(
List
<
UserRoleEntity
>
list
);
void
insertBatch
(
List
<
UserRoleEntity
>
list
);
@Delete
(
"delete from sys_user_role where user_id = #{id}"
)
void
deleteByUserId
(
String
id
);
void
deleteByUserId
(
String
id
);
@Delete
(
"<script>"
+
"delete from sys_user_role where user_id in <foreach collection='list' item='id' open='(' separator=',' close=')'>#{id}</foreach>"
+
"</script>"
)
void
deleteByUserIds
(
List
<
String
>
ids
);
void
deleteByUserIds
(
List
<
String
>
ids
);
}
}
datax-modules/system-service-parent/system-service/src/main/resources/mapper/DeptRelationMapper.xml
View file @
40183ee2
...
@@ -17,11 +17,15 @@
...
@@ -17,11 +17,15 @@
<insert
id=
"insertBatch"
parameterType=
"java.util.List"
>
<insert
id=
"insertBatch"
parameterType=
"java.util.List"
>
INSERT INTO sys_dept_relation
INSERT INTO sys_dept_relation
(id, ancestor, descendant)
(id, ancestor, descendant)
VALUES
VALUES
<foreach
collection=
"list"
item=
"item"
separator=
","
>
<foreach
collection=
"list"
item=
"item"
separator=
","
>
(#{item.id}, #{item.ancestor}, #{item.descendant})
(#{item.id}, #{item.ancestor}, #{item.descendant})
</foreach>
</foreach>
</insert>
</insert>
<delete
id=
"deleteByAncestor"
>
DELETE FROM sys_dept_relation WHERE ancestor = #{id}
</delete>
</mapper>
</mapper>
datax-modules/system-service-parent/system-service/src/main/resources/mapper/RoleDeptMapper.xml
View file @
40183ee2
...
@@ -17,11 +17,22 @@
...
@@ -17,11 +17,22 @@
<insert
id=
"insertBatch"
parameterType=
"java.util.List"
>
<insert
id=
"insertBatch"
parameterType=
"java.util.List"
>
INSERT INTO sys_role_dept
INSERT INTO sys_role_dept
(id, role_id, dept_id)
(id, role_id, dept_id)
VALUES
VALUES
<foreach
collection=
"list"
item=
"item"
separator=
","
>
<foreach
collection=
"list"
item=
"item"
separator=
","
>
(#{item.id}, #{item.roleId}, #{item.deptId})
(#{item.id}, #{item.roleId}, #{item.deptId})
</foreach>
</foreach>
</insert>
</insert>
<delete
id=
"deleteByRoleId"
>
DELETE FROM sys_role_dept WHERE role_id = #{id}
</delete>
<delete
id=
"deleteByRoleIds"
>
DELETE FROM sys_role_dept WHERE role_id IN
<foreach
collection=
'list'
item=
'id'
open=
'('
separator=
','
close=
')'
>
#{id}
</foreach>
</delete>
</mapper>
</mapper>
datax-modules/system-service-parent/system-service/src/main/resources/mapper/RoleMenuMapper.xml
View file @
40183ee2
...
@@ -24,4 +24,15 @@
...
@@ -24,4 +24,15 @@
</foreach>
</foreach>
</insert>
</insert>
<delete
id=
"deleteByRoleId"
>
DELETE FROM sys_role_menu WHERE role_id = #{id}
</delete>
<delete
id=
"deleteByRoleIds"
>
DELETE FROM sys_role_menu WHERE role_id in
<foreach
collection=
'list'
item=
'id'
open=
'('
separator=
','
close=
')'
>
#{id}
</foreach>
</delete>
</mapper>
</mapper>
datax-modules/system-service-parent/system-service/src/main/resources/mapper/UserPostMapper.xml
View file @
40183ee2
...
@@ -24,4 +24,15 @@
...
@@ -24,4 +24,15 @@
</foreach>
</foreach>
</insert>
</insert>
<delete
id=
"deleteByUserId"
>
DELETE FROM sys_user_post WHERE user_id = #{id}
</delete>
<delete
id=
"deleteByUserIds"
>
DELETE FROM sys_user_post WHERE user_id in
<foreach
collection=
'list'
item=
'id'
open=
'('
separator=
','
close=
')'
>
#{id}
</foreach>
</delete>
</mapper>
</mapper>
datax-modules/system-service-parent/system-service/src/main/resources/mapper/UserRoleMapper.xml
View file @
40183ee2
...
@@ -24,4 +24,15 @@
...
@@ -24,4 +24,15 @@
</foreach>
</foreach>
</insert>
</insert>
<delete
id=
"deleteByUserId"
>
DELETE FROM sys_user_role WHERE user_id = #{id}
</delete>
<delete
id=
"deleteByUserIds"
>
DELETE FROM sys_user_role WHERE user_id in
<foreach
collection=
'list'
item=
'id'
open=
'('
separator=
','
close=
')'
>
#{id}
</foreach>
</delete>
</mapper>
</mapper>
datax-ui/src/layout/components/Topbar.vue
View file @
40183ee2
...
@@ -23,7 +23,9 @@
...
@@ -23,7 +23,9 @@
<div
class=
"right-menu"
>
<div
class=
"right-menu"
>
<screenfull
id=
"screenfull"
class=
"right-menu-btn"
/>
<screenfull
id=
"screenfull"
class=
"right-menu-btn"
/>
<span
class=
"right-menu-btn"
>
<span
class=
"right-menu-btn"
>
<i
class=
"el-icon-bell"
></i>
<el-badge
is-dot
class=
"badge"
>
<i
class=
"el-icon-bell"
></i>
</el-badge>
</span>
</span>
<el-dropdown>
<el-dropdown>
<span
class=
"right-menu-btn"
>
<span
class=
"right-menu-btn"
>
...
...
datax-ui/src/styles/topbar.scss
View file @
40183ee2
...
@@ -47,6 +47,11 @@
...
@@ -47,6 +47,11 @@
cursor
:
pointer
;
cursor
:
pointer
;
padding
:
0
14px
;
padding
:
0
14px
;
color
:
#fff
;
color
:
#fff
;
.badge
{
.el-badge__content
{
margin-top
:
10px
;
}
}
&
:hover
{
&
:hover
{
background-color
:
mix
(
#000
,
#0086f1
,
10%
);
background-color
:
mix
(
#000
,
#0086f1
,
10%
);
}
}
...
...
datax-ui/src/utils/request.js
View file @
40183ee2
...
@@ -48,6 +48,7 @@ service.interceptors.response.use(
...
@@ -48,6 +48,7 @@ service.interceptors.response.use(
},
},
error
=>
{
error
=>
{
loadingInstance
.
close
()
loadingInstance
.
close
()
console
.
log
(
error
.
response
)
if
(
error
.
response
.
status
)
{
if
(
error
.
response
.
status
)
{
switch
(
error
.
response
.
status
)
{
switch
(
error
.
response
.
status
)
{
// 401: 未登录
// 401: 未登录
...
...
datax-ui/src/views/market/dataapi/DataApiAdd.vue
View file @
40183ee2
...
@@ -45,7 +45,7 @@
...
@@ -45,7 +45,7 @@
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"IP黑名单"
prop=
"deny"
>
<el-form-item
label=
"IP黑名单"
prop=
"deny"
>
<el-input
v-model=
"form1.deny"
type=
"textarea"
placeholder=
"请输入IP黑名单多个用
,
隔开"
/>
<el-input
v-model=
"form1.deny"
type=
"textarea"
placeholder=
"请输入IP黑名单多个用
英文,
隔开"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"是否限流"
prop=
"rateLimit"
>
<el-form-item
label=
"是否限流"
prop=
"rateLimit"
>
<el-radio-group
v-model=
"form1.rateLimit.enable"
>
<el-radio-group
v-model=
"form1.rateLimit.enable"
>
...
@@ -56,11 +56,9 @@
...
@@ -56,11 +56,9 @@
>
{{
dict
.
itemValue
}}
</el-radio>
>
{{
dict
.
itemValue
}}
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
v-if=
"form1.rateLimit.enable === '1'"
label=
"请求次数"
prop=
"times"
>
<el-form-item
v-if=
"form1.rateLimit.enable === '1'"
label=
"限流配置"
>
<el-input-number
v-model=
"form1.rateLimit.times"
controls-position=
"right"
:min=
"1"
/>
每
<el-input-number
v-model=
"form1.rateLimit.seconds"
controls-position=
"right"
:min=
"1"
/>
秒内限制请求
</el-form-item>
<el-input-number
v-model=
"form1.rateLimit.times"
controls-position=
"right"
:min=
"1"
/>
次
<el-form-item
v-if=
"form1.rateLimit.enable === '1'"
label=
"请求时间范围"
prop=
"seconds"
>
<el-input-number
v-model=
"form1.rateLimit.seconds"
controls-position=
"right"
:min=
"1"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-radio-group
v-model=
"form1.status"
disabled
>
<el-radio-group
v-model=
"form1.status"
disabled
>
...
@@ -500,23 +498,13 @@ export default {
...
@@ -500,23 +498,13 @@ export default {
return
return
}
}
const
data
=
{}
const
data
=
{}
data
.
sourceId
=
this
.
form2
.
sourceId
data
.
sqlText
=
this
.
form2
.
sqlText
data
.
sqlText
=
this
.
form2
.
sqlText
sqlParse
(
data
).
then
(
response
=>
{
sqlParse
(
data
).
then
(
response
=>
{
if
(
response
.
success
)
{
if
(
response
.
success
)
{
const
{
data
}
=
response
const
{
data
}
=
response
const
reqParams
=
data
.
reqParams
this
.
form3
.
reqParams
=
data
.
reqParams
const
resParams
=
data
.
resParams
this
.
form3
.
resParams
=
data
.
resParams
this
.
form3
.
reqParams
=
reqParams
.
map
(
function
(
item
)
{
const
json
=
{}
json
.
paramName
=
item
.
paramName
json
.
nullable
=
'0'
return
json
})
this
.
form3
.
resParams
=
resParams
.
map
(
function
(
item
)
{
const
json
=
{}
json
.
fieldName
=
item
.
fieldName
return
json
})
this
.
$message
.
success
(
'解析成功,请进行下一步'
)
this
.
$message
.
success
(
'解析成功,请进行下一步'
)
}
}
})
})
...
...
datax-ui/src/views/market/dataapi/DataApiDetail.vue
View file @
40183ee2
This diff is collapsed.
Click to expand it.
datax-ui/src/views/market/dataapi/DataApiEdit.vue
View file @
40183ee2
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment