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
a922654e
Commit
a922654e
authored
Apr 21, 2020
by
yuwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
2.0.0项目初始化
parent
a8ee3197
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
57 additions
and
21 deletions
+57
-21
DataUserDetailService.java
...ain/java/cn/datax/auth/service/DataUserDetailService.java
+11
-2
pom.xml
datax-common/datax-common-core/pom.xml
+0
-5
ResponseUtil.java
...ore/src/main/java/cn/datax/common/utils/ResponseUtil.java
+3
-2
ApiInterceptor.java
...x/service/data/market/api/call/config/ApiInterceptor.java
+18
-5
ApiCallServiceImpl.java
...data/market/api/call/service/impl/ApiCallServiceImpl.java
+25
-5
RedisCacheConfig.java
...cn/datax/service/data/market/config/RedisCacheConfig.java
+0
-1
pom.xml
pom.xml
+0
-1
No files found.
datax-auth/src/main/java/cn/datax/auth/service/DataUserDetailService.java
View file @
a922654e
...
...
@@ -10,7 +10,8 @@ import cn.hutool.core.collection.CollUtil;
import
cn.hutool.core.util.ArrayUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.security.core.GrantedAuthority
;
...
...
@@ -30,6 +31,9 @@ public class DataUserDetailService implements UserDetailsService {
@Autowired
private
UserServiceFeign
userServiceFeign
;
@Autowired
private
ObjectMapper
objectMapper
;
@Override
public
UserDetails
loadUserByUsername
(
String
s
)
throws
UsernameNotFoundException
{
//远程获取用户
...
...
@@ -37,7 +41,12 @@ public class DataUserDetailService implements UserDetailsService {
if
(
result
==
null
||
!
result
.
isSuccess
()
||
ObjectUtil
.
isEmpty
(
result
.
getData
())){
throw
new
UsernameNotFoundException
(
StrUtil
.
format
(
"{}用户不存在"
,
s
));
}
UserInfo
userInfo
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
result
.
getData
()),
UserInfo
.
class
);
UserInfo
userInfo
;
try
{
userInfo
=
objectMapper
.
readValue
(
objectMapper
.
writeValueAsString
(
result
.
getData
()),
UserInfo
.
class
);
}
catch
(
JsonProcessingException
e
)
{
throw
new
UsernameNotFoundException
(
StrUtil
.
format
(
"{}用户解析出错"
,
s
));
}
// 可用性 :true:可用 false:不可用
boolean
enabled
=
true
;
// 过期性 :true:没过期 false:过期
...
...
datax-common/datax-common-core/pom.xml
View file @
a922654e
...
...
@@ -49,11 +49,6 @@
<version>
${hutool.version}
</version>
</dependency>
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
fastjson
</artifactId>
<version>
${fastjson.version}
</version>
</dependency>
<dependency>
<groupId>
com.baomidou
</groupId>
<artifactId>
mybatis-plus-extension
</artifactId>
<version>
${mybatis-plus.version}
</version>
...
...
datax-common/datax-common-core/src/main/java/cn/datax/common/utils/ResponseUtil.java
View file @
a922654e
package
cn
.
datax
.
common
.
utils
;
import
com.
alibaba.fastjson.JSON
;
import
com.
fasterxml.jackson.databind.ObjectMapper
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
...
...
@@ -20,7 +20,8 @@ public class ResponseUtil {
int
status
,
Object
value
)
throws
IOException
{
response
.
setContentType
(
contentType
);
response
.
setStatus
(
status
);
response
.
getOutputStream
().
write
(
JSON
.
toJSONString
(
value
).
getBytes
());
ObjectMapper
objectMapper
=
new
ObjectMapper
();
response
.
getOutputStream
().
write
(
objectMapper
.
writeValueAsBytes
(
value
));
}
}
datax-modules/data-market-service-parent/data-market-service-api-call/src/main/java/cn/datax/service/data/market/api/call/config/ApiInterceptor.java
View file @
a922654e
...
...
@@ -15,7 +15,8 @@ import cn.datax.service.data.market.api.feign.DataApiServiceFeign;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.RedisTemplate
;
...
...
@@ -44,6 +45,9 @@ public class ApiInterceptor implements HandlerInterceptor {
@Autowired
private
ApiLogService
apiLogService
;
@Autowired
private
ObjectMapper
objectMapper
;
@Override
public
boolean
preHandle
(
HttpServletRequest
request
,
HttpServletResponse
response
,
Object
handler
)
throws
Exception
{
System
.
out
.
println
(
"************ApiInterceptor preHandle executed**********"
);
...
...
@@ -67,7 +71,11 @@ public class ApiInterceptor implements HandlerInterceptor {
HttpServletResponse
.
SC_FORBIDDEN
,
R
.
error
(
"查询API{"
+
apiId
+
"}出错"
));
return
false
;
}
DataApiEntity
dataApiEntity
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
apiResult
.
getData
()),
DataApiEntity
.
class
);
DataApiEntity
dataApiEntity
=
null
;
try
{
dataApiEntity
=
objectMapper
.
readValue
(
objectMapper
.
writeValueAsString
(
apiResult
.
getData
()),
DataApiEntity
.
class
);
}
catch
(
JsonProcessingException
e
)
{
}
if
(
dataApiEntity
==
null
)
{
ResponseUtil
.
makeResponse
(
response
,
MediaType
.
APPLICATION_JSON_VALUE
,
HttpServletResponse
.
SC_FORBIDDEN
,
R
.
error
(
"API不存在"
));
...
...
@@ -92,12 +100,17 @@ public class ApiInterceptor implements HandlerInterceptor {
}
// 接收参数
String
bodyString
=
HttpUtil
.
getBodyString
(
request
);
Map
<
String
,
Object
>
params
=
JSON
.
parseObject
(
bodyString
);
Map
<
String
,
Object
>
params
=
null
;
try
{
params
=
objectMapper
.
readValue
(
bodyString
,
Map
.
class
);
}
catch
(
JsonProcessingException
e
)
{
}
Map
<
String
,
Object
>
finalParams
=
params
;
dataApiEntity
.
getReqParams
().
stream
().
forEach
(
param
->
{
if
(
p
arams
.
containsKey
(
param
.
getParamName
()))
{
if
(
finalP
arams
.
containsKey
(
param
.
getParamName
()))
{
Integer
dataType
=
param
.
getDataType
();
// 数据类型是否正确
DataType
.
parse
(
DataType
.
getDataType
(
dataType
),
p
arams
.
get
(
param
.
getParamName
()));
DataType
.
parse
(
DataType
.
getDataType
(
dataType
),
finalP
arams
.
get
(
param
.
getParamName
()));
}
});
String
apiName
=
dataApiEntity
.
getApiName
();
...
...
datax-modules/data-market-service-parent/data-market-service-api-call/src/main/java/cn/datax/service/data/market/api/call/service/impl/ApiCallServiceImpl.java
View file @
a922654e
...
...
@@ -24,7 +24,8 @@ import cn.datax.service.data.market.api.feign.ApiMaskServiceFeign;
import
cn.datax.service.data.market.api.feign.DataApiServiceFeign
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -49,6 +50,9 @@ public class ApiCallServiceImpl implements ApiCallService {
@Autowired
private
ApiMaskServiceFeign
apiMaskServiceFeign
;
@Autowired
private
ObjectMapper
objectMapper
;
@Override
public
PageResult
<
Map
<
String
,
Object
>>
v1
()
{
R
apiResult
=
dataApiServiceFeign
.
getDataApiById
(
ThreadUtil
.
getInstance
().
get
().
getApiId
());
...
...
@@ -57,20 +61,32 @@ public class ApiCallServiceImpl implements ApiCallService {
ThreadUtil
.
getInstance
().
get
().
setMsg
(
"API调用查询数据API{"
+
ThreadUtil
.
getInstance
().
get
().
getApiId
()
+
"}出错"
);
throw
new
DataException
(
"API调用查询数据API出错"
);
}
DataApiEntity
dataApiEntity
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
apiResult
.
getData
()),
DataApiEntity
.
class
);
DataApiEntity
dataApiEntity
=
null
;
try
{
dataApiEntity
=
objectMapper
.
readValue
(
objectMapper
.
writeValueAsString
(
apiResult
.
getData
()),
DataApiEntity
.
class
);
}
catch
(
JsonProcessingException
e
)
{
}
R
sourceResult
=
dataSourceServiceFeign
.
getDataSourceById
(
dataApiEntity
.
getExecuteConfig
().
getSourceId
());
if
(
sourceResult
==
null
||
!
sourceResult
.
isSuccess
()
||
ObjectUtil
.
isEmpty
(
sourceResult
.
getData
())){
ThreadUtil
.
getInstance
().
get
().
setStatus
(
0
);
ThreadUtil
.
getInstance
().
get
().
setMsg
(
"API调用查询数据源{"
+
dataApiEntity
.
getExecuteConfig
().
getSourceId
()+
"}出错"
);
throw
new
DataException
(
"API调用查询数据源出错"
);
}
DataSourceEntity
dataSource
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
sourceResult
.
getData
()),
DataSourceEntity
.
class
);
DataSourceEntity
dataSource
=
null
;
try
{
dataSource
=
objectMapper
.
readValue
(
objectMapper
.
writeValueAsString
(
sourceResult
.
getData
()),
DataSourceEntity
.
class
);
}
catch
(
JsonProcessingException
e
)
{
}
DbSchema
dbSchema
=
dataSource
.
getDbSchema
();
DbQueryProperty
dbQueryProperty
=
new
DbQueryProperty
(
dataSource
.
getDbType
(),
dbSchema
.
getHost
(),
dbSchema
.
getUsername
(),
dbSchema
.
getPassword
(),
dbSchema
.
getPort
(),
dbSchema
.
getDbName
());
DbQuery
dbQuery
=
dataSourceFactory
.
createDbQuery
(
dbQueryProperty
);
// 接收参数
Map
<
String
,
Object
>
params
=
JSON
.
parseObject
(
ThreadUtil
.
getInstance
().
get
().
getCallerParams
());
Map
<
String
,
Object
>
params
=
null
;
try
{
params
=
objectMapper
.
readValue
(
ThreadUtil
.
getInstance
().
get
().
getCallerParams
(),
Map
.
class
);
}
catch
(
JsonProcessingException
e
)
{
}
// 分页参数
Integer
pageNum
=
(
Integer
)
Optional
.
ofNullable
(
params
.
get
(
"pageNum"
)).
orElse
(
1
);
Integer
pageSize
=
(
Integer
)
Optional
.
ofNullable
(
params
.
get
(
"pageSize"
)).
orElse
(
20
);
...
...
@@ -90,7 +106,11 @@ public class ApiCallServiceImpl implements ApiCallService {
List
<
FieldRule
>
rules
=
null
;
R
maskResult
=
apiMaskServiceFeign
.
getApiMaskByApiId
(
ThreadUtil
.
getInstance
().
get
().
getApiId
());
if
(
maskResult
!=
null
&&
maskResult
.
isSuccess
()
&&
ObjectUtil
.
isNotEmpty
(
maskResult
.
getData
())){
ApiMaskEntity
apiMask
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
maskResult
.
getData
()),
ApiMaskEntity
.
class
);
ApiMaskEntity
apiMask
=
null
;
try
{
apiMask
=
objectMapper
.
readValue
(
objectMapper
.
writeValueAsString
(
maskResult
.
getData
()),
ApiMaskEntity
.
class
);
}
catch
(
JsonProcessingException
e
)
{
}
rules
=
apiMask
.
getRules
();
}
PageResult
<
Map
<
String
,
Object
>>
pageResult
;
...
...
datax-modules/data-market-service-parent/data-market-service/src/main/java/cn/datax/service/data/market/config/RedisCacheConfig.java
View file @
a922654e
package
cn
.
datax
.
service
.
data
.
market
.
config
;
import
cn.datax.common.redis.serializer.DataRedisSerializer
;
import
com.alibaba.fastjson.support.spring.GenericFastJsonRedisSerializer
;
import
org.springframework.cache.CacheManager
;
import
org.springframework.cache.annotation.CachingConfigurerSupport
;
import
org.springframework.cache.annotation.EnableCaching
;
...
...
pom.xml
View file @
a922654e
...
...
@@ -23,7 +23,6 @@
<spring-cloud.version>
Hoxton.SR3
</spring-cloud.version>
<spring-boot-admin.version>
2.2.1
</spring-boot-admin.version>
<fastjson.version>
1.2.66
</fastjson.version>
<hutool.version>
5.2.3
</hutool.version>
<mybatis-plus.version>
3.3.1
</mybatis-plus.version>
<dynamic-datasource.version>
2.5.7
</dynamic-datasource.version>
...
...
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