Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
operation-control-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王锦盛
operation-control-platform
Commits
17703c83
Commit
17703c83
authored
Mar 25, 2022
by
郭凡凡
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
abdd1192
704b96ee
Changes
32
Hide whitespace changes
Inline
Side-by-side
Showing
32 changed files
with
1713 additions
and
8 deletions
+1713
-8
src/main/java/com/pms/ocp/common/aspectj/WebLog.java
src/main/java/com/pms/ocp/common/aspectj/WebLog.java
+17
-0
src/main/java/com/pms/ocp/common/aspectj/WebLogAspect.java
src/main/java/com/pms/ocp/common/aspectj/WebLogAspect.java
+178
-0
src/main/java/com/pms/ocp/common/config/CreateGroups.java
src/main/java/com/pms/ocp/common/config/CreateGroups.java
+11
-0
src/main/java/com/pms/ocp/common/config/UpdateGroups.java
src/main/java/com/pms/ocp/common/config/UpdateGroups.java
+11
-0
src/main/java/com/pms/ocp/common/utils/GUIDGenerator.java
src/main/java/com/pms/ocp/common/utils/GUIDGenerator.java
+25
-0
src/main/java/com/pms/ocp/common/utils/StringBusinessUtil.java
...ain/java/com/pms/ocp/common/utils/StringBusinessUtil.java
+80
-0
src/main/java/com/pms/ocp/common/utils/UUIDGenerator.java
src/main/java/com/pms/ocp/common/utils/UUIDGenerator.java
+74
-0
src/main/java/com/pms/ocp/common/utils/UUIDHexLengthGenerator.java
...java/com/pms/ocp/common/utils/UUIDHexLengthGenerator.java
+78
-0
src/main/java/com/pms/ocp/controller/ApiProvinceController.java
...in/java/com/pms/ocp/controller/ApiProvinceController.java
+35
-0
src/main/java/com/pms/ocp/controller/ApiProvinceTreeController.java
...ava/com/pms/ocp/controller/ApiProvinceTreeController.java
+63
-0
src/main/java/com/pms/ocp/controller/AppRegisterController.java
...in/java/com/pms/ocp/controller/AppRegisterController.java
+64
-0
src/main/java/com/pms/ocp/mapper/ApiParamMapper.java
src/main/java/com/pms/ocp/mapper/ApiParamMapper.java
+10
-0
src/main/java/com/pms/ocp/mapper/ApiProvinceMapper.java
src/main/java/com/pms/ocp/mapper/ApiProvinceMapper.java
+10
-0
src/main/java/com/pms/ocp/mapper/AppRegisterMapper.java
src/main/java/com/pms/ocp/mapper/AppRegisterMapper.java
+35
-0
src/main/java/com/pms/ocp/mapper/OcpApiTreeMapper.java
src/main/java/com/pms/ocp/mapper/OcpApiTreeMapper.java
+3
-3
src/main/java/com/pms/ocp/mapper/OcpTenantIocnMapper.java
src/main/java/com/pms/ocp/mapper/OcpTenantIocnMapper.java
+10
-0
src/main/java/com/pms/ocp/model/dto/AppRegisterDTO.java
src/main/java/com/pms/ocp/model/dto/AppRegisterDTO.java
+201
-0
src/main/java/com/pms/ocp/model/dto/ImgDTO.java
src/main/java/com/pms/ocp/model/dto/ImgDTO.java
+41
-0
src/main/java/com/pms/ocp/model/dto/QueryAppDTO.java
src/main/java/com/pms/ocp/model/dto/QueryAppDTO.java
+76
-0
src/main/java/com/pms/ocp/model/dto/TreeListDto.java
src/main/java/com/pms/ocp/model/dto/TreeListDto.java
+32
-0
src/main/java/com/pms/ocp/model/entity/OcpApiParam.java
src/main/java/com/pms/ocp/model/entity/OcpApiParam.java
+132
-0
src/main/java/com/pms/ocp/model/entity/OcpTenantIocn.java
src/main/java/com/pms/ocp/model/entity/OcpTenantIocn.java
+93
-0
src/main/java/com/pms/ocp/model/vo/ApiProvinceVo.java
src/main/java/com/pms/ocp/model/vo/ApiProvinceVo.java
+55
-0
src/main/java/com/pms/ocp/model/vo/OcpApiBaseVo.java
src/main/java/com/pms/ocp/model/vo/OcpApiBaseVo.java
+85
-0
src/main/java/com/pms/ocp/model/vo/QueryAppInfoVO.java
src/main/java/com/pms/ocp/model/vo/QueryAppInfoVO.java
+32
-0
src/main/java/com/pms/ocp/service/ApiProvinceService.java
src/main/java/com/pms/ocp/service/ApiProvinceService.java
+12
-0
src/main/java/com/pms/ocp/service/AppRegisterService.java
src/main/java/com/pms/ocp/service/AppRegisterService.java
+39
-0
src/main/java/com/pms/ocp/service/impl/ApiDetailsServiceImpl.java
.../java/com/pms/ocp/service/impl/ApiDetailsServiceImpl.java
+9
-4
src/main/java/com/pms/ocp/service/impl/ApiProvinceServiceImpl.java
...java/com/pms/ocp/service/impl/ApiProvinceServiceImpl.java
+44
-0
src/main/java/com/pms/ocp/service/impl/AppRegisterServiceImpl.java
...java/com/pms/ocp/service/impl/AppRegisterServiceImpl.java
+121
-0
src/main/java/com/pms/ocp/service/impl/OcpApiTreeServiceImpl.java
.../java/com/pms/ocp/service/impl/OcpApiTreeServiceImpl.java
+1
-1
src/main/resources/mapper/AppRegisterMapper.xml
src/main/resources/mapper/AppRegisterMapper.xml
+36
-0
No files found.
src/main/java/com/pms/ocp/common/aspectj/WebLog.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.common.aspectj
;
import
java.lang.annotation.Documented
;
import
java.lang.annotation.ElementType
;
import
java.lang.annotation.Retention
;
import
java.lang.annotation.RetentionPolicy
;
import
java.lang.annotation.Target
;
/**
* @author Administrator
*/
@Retention
(
RetentionPolicy
.
RUNTIME
)
@Target
({
ElementType
.
METHOD
})
@Documented
public
@interface
WebLog
{
String
description
()
default
""
;
}
src/main/java/com/pms/ocp/common/aspectj/WebLogAspect.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.common.aspectj
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.pms.ocp.common.utils.StringBusinessUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.aspectj.lang.JoinPoint
;
import
org.aspectj.lang.ProceedingJoinPoint
;
import
org.aspectj.lang.annotation.*
;
import
org.springframework.context.annotation.Profile
;
import
org.springframework.stereotype.Component
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
org.springframework.web.context.request.ServletRequestAttributes
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpSession
;
import
java.lang.reflect.Method
;
import
java.util.HashMap
;
import
java.util.Map
;
@Aspect
@Component
@Slf4j
/**
* 根据配置可在不同环境中生效
* @Profile({"dev", "test"})
*/
//@Profile({"dev", "test"})
public
class
WebLogAspect
{
private
static
final
String
LINE_SEPARATOR
=
System
.
lineSeparator
();
@Pointcut
(
"@annotation(com.pms.ocp.common.aspectj.WebLog)"
)
public
void
webLog
()
{
}
/**
* 环绕
*
* @param proceedingJoinPoint
* @return
* @throws Throwable
*/
@Around
(
"webLog()"
)
public
Object
doAround
(
ProceedingJoinPoint
proceedingJoinPoint
)
throws
Throwable
{
long
startTime
=
System
.
currentTimeMillis
();
Object
result
=
proceedingJoinPoint
.
proceed
();
// 打印出参
log
.
info
(
"Response Args : {}"
,
JSONObject
.
toJSONString
(
result
));
// 打印耗时
log
.
info
(
"Time-Consuming : {} ms"
,
System
.
currentTimeMillis
()
-
startTime
);
return
result
;
}
/**
* 在切点前切入
*
* @param joinPoint
* @throws Throwable
*/
@Before
(
"webLog()"
)
public
void
doBefore
(
JoinPoint
joinPoint
)
throws
Throwable
{
ServletRequestAttributes
attributes
=
(
ServletRequestAttributes
)
RequestContextHolder
.
getRequestAttributes
();
HttpServletRequest
request
=
attributes
.
getRequest
();
// 获取 @WebLog 注解的描述信息
String
methodDescription
=
getAspectLogDescription
(
joinPoint
);
// 处理入参
Object
[]
args
=
joinPoint
.
getArgs
();
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
for
(
Object
arg
:
args
)
{
if
(
StringBusinessUtil
.
isNullOrEmpty
(
arg
))
{
continue
;
}
if
(
arg
instanceof
BindingResult
)
{
continue
;
}
if
(
arg
instanceof
HttpSession
)
{
continue
;
}
if
(
arg
instanceof
HttpServletRequest
)
{
continue
;
}
if
(
arg
instanceof
HttpServletResponse
)
{
continue
;
}
if
(
arg
instanceof
MultipartFile
)
{
MultipartFile
file
=
(
MultipartFile
)
arg
;
map
.
put
(
"file"
,
getFileParam
(
file
));
}
else
if
(
arg
instanceof
MultipartFile
[])
{
MultipartFile
[]
files
=
(
MultipartFile
[])
arg
;
Map
<
String
,
Object
>
t
=
new
HashMap
<>();
for
(
MultipartFile
file
:
files
)
{
t
.
put
(
"file"
,
getFileParam
(
file
));
}
map
.
put
(
"files"
,
t
);
}
else
{
try
{
map
.
put
(
arg
.
getClass
().
getSimpleName
(),
arg
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
}
// 打印请求相关参数
log
.
info
(
"============================================ 接口开始执行 =================================================="
);
try
{
// 打印请求 url
log
.
info
(
"URL : {}"
,
request
.
getRequestURL
().
toString
());
// 打印描述信息
log
.
info
(
"Description : {}"
,
methodDescription
);
// 打印 Http method
log
.
info
(
"HTTP Method : {}"
,
request
.
getMethod
());
// 打印调用 controller 的全路径以及执行方法
log
.
info
(
"Class Method : {}.{}"
,
joinPoint
.
getSignature
().
getDeclaringTypeName
(),
joinPoint
.
getSignature
().
getName
());
// 打印请求的IP
log
.
info
(
"IP : {}"
,
request
.
getRemoteAddr
());
//log.info("Request Args : {}", new Gson().toJson(joinPoint.getArgs()));
// 打印请求的入参
log
.
info
(
"Request Args : {}"
,
JSON
.
toJSONString
(
map
));
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
/**
* 处理文件,获取文件基本信息
*
* @param file
* @return
*/
private
Map
<
String
,
Object
>
getFileParam
(
MultipartFile
file
)
{
Map
<
String
,
Object
>
map
=
null
;
try
{
map
=
new
HashMap
<>();
map
.
put
(
"文件名:"
,
file
.
getOriginalFilename
());
map
.
put
(
"文件类型:"
,
file
.
getContentType
());
map
.
put
(
"文件大小:"
,
file
.
getSize
());
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
map
;
}
/**
* 在切点后切入
*
* @throws Throwable
*/
@After
(
"webLog()"
)
public
void
doAfter
()
throws
Throwable
{
log
.
info
(
"============================================ 接口执行结束 ==================================================="
+
LINE_SEPARATOR
);
}
/**
* 获取切面注解的描述
*/
private
String
getAspectLogDescription
(
JoinPoint
joinPoint
)
throws
ClassNotFoundException
{
String
targetName
=
joinPoint
.
getTarget
().
getClass
().
getName
();
String
methodName
=
joinPoint
.
getSignature
().
getName
();
Object
[]
arguments
=
joinPoint
.
getArgs
();
Class
targetClass
=
Class
.
forName
(
targetName
);
Method
[]
methods
=
targetClass
.
getMethods
();
StringBuilder
description
=
new
StringBuilder
(
""
);
for
(
Method
method
:
methods
)
{
if
(
method
.
getName
().
equals
(
methodName
))
{
Class
[]
calzzs
=
method
.
getParameterTypes
();
if
(
calzzs
.
length
==
arguments
.
length
)
{
description
.
append
(
method
.
getAnnotation
(
WebLog
.
class
).
description
());
break
;
}
}
}
return
description
.
toString
();
}
}
src/main/java/com/pms/ocp/common/config/CreateGroups.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.common.config
;
import
javax.validation.groups.Default
;
/**
* 新增校验
*
* @author Administrator
*/
public
interface
CreateGroups
extends
Default
{
}
src/main/java/com/pms/ocp/common/config/UpdateGroups.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.common.config
;
import
javax.validation.groups.Default
;
/**
* 更新校验
*
* @author Administrator
*/
public
interface
UpdateGroups
extends
Default
{
}
src/main/java/com/pms/ocp/common/utils/GUIDGenerator.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.common.utils
;
public
class
GUIDGenerator
{
private
static
final
UUIDHexLengthGenerator
GENERATOR
=
new
UUIDHexLengthGenerator
();
public
GUIDGenerator
()
{
}
private
static
String
generate
(
int
length
,
boolean
toLowerCase
)
{
setLength
(
length
);
return
toLowerCase
?
GENERATOR
.
generate
().
toString
().
toLowerCase
()
:
GENERATOR
.
generate
().
toString
().
toUpperCase
();
}
private
static
void
setLength
(
int
length
)
{
GENERATOR
.
setLength
(
length
);
}
public
static
String
generate32
(
boolean
toLowerCase
)
{
return
generate
(
32
,
toLowerCase
);
}
public
static
String
generate42
(
boolean
toLowerCase
)
{
return
generate
(
42
,
toLowerCase
);
}
}
src/main/java/com/pms/ocp/common/utils/StringBusinessUtil.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.common.utils
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.validation.ObjectError
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.Map
;
/**
* 工具类
*
* @author Administrator
*/
public
class
StringBusinessUtil
{
/**
* 判断对象或数组中每一个对象是否为空
* 判断对象是否为null
* 判断字符串长度是否为0,集合类是否为empty
*
* @param obj
* @return
*/
public
static
boolean
isNullOrEmpty
(
Object
obj
)
{
if
(
obj
==
null
)
{
return
true
;
}
if
(
obj
instanceof
CharSequence
)
{
return
((
CharSequence
)
obj
).
length
()
==
0
||
"null"
.
equalsIgnoreCase
(
obj
.
toString
());
}
if
(
obj
instanceof
Collection
)
{
return
((
Collection
<?>)
obj
).
isEmpty
();
}
if
(
obj
instanceof
Map
)
{
return
((
Map
<?,
?>)
obj
).
isEmpty
();
}
if
(
obj
instanceof
Object
[])
{
Object
[]
object
=
(
Object
[])
obj
;
if
(
object
.
length
==
0
)
{
return
true
;
}
boolean
empty
=
true
;
for
(
int
i
=
0
;
i
<
object
.
length
;
i
++)
{
if
(!
isNullOrEmpty
(
object
[
i
]))
{
empty
=
false
;
break
;
}
}
return
empty
;
}
return
false
;
}
/**
* 入参校验
*
* @param bindingResult
* @return
*/
public
static
ResponseVO
verifyDispose
(
BindingResult
bindingResult
)
{
StringBuilder
stringBuilder
=
new
StringBuilder
();
List
<
ObjectError
>
allErrors
=
bindingResult
.
getAllErrors
();
for
(
ObjectError
e
:
allErrors
)
{
String
defaultMessage
=
e
.
getDefaultMessage
();
if
(!
StringBusinessUtil
.
isNullOrEmpty
(
e
.
getDefaultMessage
()))
{
stringBuilder
.
append
(
defaultMessage
);
stringBuilder
.
append
(
","
);
}
}
return
ResponseVO
.
error
(
stringBuilder
.
toString
().
substring
(
0
,
stringBuilder
.
toString
().
length
()
-
1
));
}
}
src/main/java/com/pms/ocp/common/utils/UUIDGenerator.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.common.utils
;
import
java.io.Serializable
;
import
java.net.InetAddress
;
public
abstract
class
UUIDGenerator
{
private
static
final
int
IP
;
private
String
separator
=
""
;
private
static
short
counter
=
0
;
private
static
final
int
JVM
=
(
int
)
(
System
.
currentTimeMillis
()
>>>
8
);
public
UUIDGenerator
()
{
}
public
String
getSeparator
()
{
return
this
.
separator
;
}
public
void
setSeparator
(
String
separator
)
{
this
.
separator
=
separator
;
}
protected
int
getJVM
()
{
return
JVM
;
}
protected
short
getCount
()
{
Class
var1
=
UUIDGenerator
.
class
;
synchronized
(
UUIDGenerator
.
class
)
{
if
(
counter
<
0
)
{
counter
=
0
;
}
short
var10000
=
counter
;
counter
=
(
short
)
(
var10000
+
1
);
return
var10000
;
}
}
protected
int
getIP
()
{
return
IP
;
}
protected
short
getHiTime
()
{
return
(
short
)
((
int
)
(
System
.
currentTimeMillis
()
>>>
32
));
}
protected
int
getLoTime
()
{
return
(
int
)
System
.
currentTimeMillis
();
}
private
static
int
toInt
(
byte
[]
bytes
)
{
int
result
=
0
;
for
(
int
i
=
0
;
i
<
4
;
++
i
)
{
result
=
(
result
<<
8
)
-
-
128
+
bytes
[
i
];
}
return
result
;
}
public
abstract
Serializable
generate
();
static
{
int
ipadd
;
try
{
ipadd
=
toInt
(
InetAddress
.
getLocalHost
().
getAddress
());
}
catch
(
Exception
var2
)
{
ipadd
=
0
;
}
IP
=
ipadd
;
}
}
src/main/java/com/pms/ocp/common/utils/UUIDHexLengthGenerator.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.common.utils
;
import
java.io.Serializable
;
public
class
UUIDHexLengthGenerator
extends
UUIDGenerator
{
private
int
length
=
32
;
private
static
int
mycount
=
0
;
public
UUIDHexLengthGenerator
()
{
}
public
int
getLength
()
{
return
this
.
length
;
}
public
void
setLength
(
int
length
)
{
this
.
length
=
length
;
}
protected
String
format
(
int
intval
)
{
String
formatted
=
Integer
.
toHexString
(
intval
);
StringBuffer
buf
=
new
StringBuffer
(
"00000000"
);
buf
.
replace
(
8
-
formatted
.
length
(),
8
,
formatted
);
return
buf
.
toString
();
}
protected
String
format
(
short
shortval
)
{
String
formatted
=
Integer
.
toHexString
(
shortval
);
StringBuffer
buf
=
new
StringBuffer
(
"0000"
);
buf
.
replace
(
4
-
formatted
.
length
(),
4
,
formatted
);
return
buf
.
toString
();
}
protected
String
random
(
int
offset
)
{
long
curr
=
System
.
currentTimeMillis
();
String
formatted
=
Long
.
toHexString
((
long
)
mycount
+
curr
);
StringBuffer
buf
=
new
StringBuffer
();
for
(
int
i
=
offset
;
i
<
0
;
++
i
)
{
buf
.
append
(
"0"
);
}
if
(-
offset
<
8
)
{
buf
.
replace
(
0
,
-
offset
,
formatted
.
substring
(
formatted
.
length
()
+
offset
));
}
else
if
(-
offset
>
16
)
{
buf
.
replace
(
0
,
8
,
formatted
.
substring
(
formatted
.
length
()
-
8
));
formatted
=
Long
.
toHexString
(
curr
+
(
long
)
mycount
+
(
long
)
this
.
getCount
());
buf
.
replace
(
8
,
16
,
formatted
.
substring
(
formatted
.
length
()
-
8
));
}
else
{
buf
.
replace
(
0
,
8
,
formatted
.
substring
(
formatted
.
length
()
-
8
));
formatted
=
Long
.
toHexString
(
curr
+
(
long
)
mycount
+
(
long
)
this
.
getCount
()
+
curr
/
10000L
);
buf
.
replace
(
8
,
-
offset
,
formatted
.
substring
(
formatted
.
length
()
+
offset
+
8
));
}
return
buf
.
toString
();
}
public
Serializable
generate
()
{
++
mycount
;
StringBuffer
sb
=
new
StringBuffer
(
36
);
sb
.
append
(
this
.
format
(
this
.
getIP
())).
append
(
this
.
getSeparator
()).
append
(
this
.
format
(
this
.
getJVM
())).
append
(
this
.
getSeparator
()).
append
(
this
.
format
(
this
.
getHiTime
())).
append
(
this
.
getSeparator
()).
append
(
this
.
format
(
this
.
getLoTime
())).
append
(
this
.
getSeparator
()).
append
(
this
.
format
(
this
.
getCount
())).
toString
();
return
this
.
processLength
(
sb
);
}
private
String
processLength
(
StringBuffer
sb
)
{
if
(
this
.
getLength
()
!=
32
)
{
int
offset
=
32
-
this
.
getLength
();
if
(
offset
>
0
)
{
sb
.
delete
(
0
,
offset
);
}
else
{
sb
.
insert
(
0
,
this
.
getSeparator
());
sb
.
insert
(
0
,
this
.
random
(
offset
));
}
}
return
sb
.
toString
();
}
}
src/main/java/com/pms/ocp/controller/ApiProvinceController.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.controller
;
import
com.pms.ocp.model.vo.ApiProvinceVo
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
com.pms.ocp.service.ApiProvinceService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
@Slf4j
@RequestMapping
(
"/apiProvince"
)
@RestController
@Api
(
tags
=
"服务省侧接口"
)
public
class
ApiProvinceController
{
@Autowired
private
ApiProvinceService
apiProvinceService
;
@ApiOperation
(
"服务省侧-添加"
)
@PostMapping
(
"/create"
)
public
ResponseVO
createApiBase
(
@RequestBody
ApiProvinceVo
apiProvinceVo
)
{
boolean
isSuccess
=
apiProvinceService
.
updateOrCreate
(
apiProvinceVo
);
if
(
isSuccess
){
return
ResponseVO
.
ok
();
}
else
{
return
ResponseVO
.
error
(
"添加失败"
);
}
}
}
src/main/java/com/pms/ocp/controller/ApiProvinceTreeController.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.controller
;
import
com.github.pagehelper.PageInfo
;
import
com.pms.ocp.common.utils.ExcelUtils
;
import
com.pms.ocp.common.utils.FileExport
;
import
com.pms.ocp.common.utils.FileUtil
;
import
com.pms.ocp.model.dto.ApiBaseDto
;
import
com.pms.ocp.model.dto.OcpGroupBaseDto
;
import
com.pms.ocp.model.entity.OcpApiBase
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
com.pms.ocp.service.ApiBasicManagementService
;
import
com.pms.ocp.service.ApiDetailsService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.sql.Timestamp
;
import
java.time.LocalDate
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* @author guofanfan
*/
@Slf4j
@RequestMapping
(
"/api/province"
)
@RestController
@Api
(
tags
=
"服务库省侧管理接口"
)
public
class
ApiProvinceTreeController
{
@Autowired
private
ApiDetailsService
apiDetailsService
;
@Autowired
private
ApiBasicManagementService
apiBasicManagementService
;
@ApiOperation
(
"服务分类层级"
)
@GetMapping
(
"/apiBaseTreeOther"
)
public
ResponseVO
<
List
<
OcpGroupBaseDto
>>
apiBaseTreeOther
(
String
apiGroupCompanyCode
,
String
apiGroupCode
,
Integer
apiGroupPromotionType
,
String
apiCode
,
String
apiPromotion
)
{
List
<
OcpGroupBaseDto
>
apiTreeGroupDtos
=
apiBasicManagementService
.
apiBaseTreeOther
(
apiGroupCompanyCode
,
apiGroupCode
,
apiGroupPromotionType
,
apiCode
,
apiPromotion
);
return
ResponseVO
.
ok
(
apiTreeGroupDtos
);
}
@ApiOperation
(
"服务树列表"
)
@GetMapping
(
"/apiBaseTreeList"
)
public
ResponseVO
<
List
<
OcpApiBase
>>
apiBaseTreeList
(
String
apiGroupCompanyCode
,
String
apiGroupCode
)
{
List
<
OcpApiBase
>
apiBaseList
=
apiBasicManagementService
.
apiBaseTreeApiList
(
apiGroupCompanyCode
,
apiGroupCode
);
return
ResponseVO
.
ok
(
apiBaseList
);
}
@ApiOperation
(
"服务库服务详情-查询"
)
@GetMapping
(
"/query"
)
public
ResponseVO
<
OcpApiBaseVo
>
getApiDetails
(
String
apiCode
)
{
return
apiDetailsService
.
getApiDetails
(
apiCode
);
}
}
src/main/java/com/pms/ocp/controller/AppRegisterController.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.controller
;
import
com.pms.ocp.common.config.CreateGroups
;
import
com.pms.ocp.common.utils.StringBusinessUtil
;
import
com.pms.ocp.model.dto.AppRegisterDTO
;
import
com.pms.ocp.model.dto.ImgDTO
;
import
com.pms.ocp.model.dto.QueryAppDTO
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
com.pms.ocp.service.AppRegisterService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
/**
* 应用注册接口
*
* @author Administrator
*/
@RestController
@RequestMapping
(
"appRegister"
)
@Api
(
tags
=
"应用注册接口"
)
public
class
AppRegisterController
{
@Autowired
private
AppRegisterService
appRegisterService
;
@ApiOperation
(
"新增应用注册"
)
@PostMapping
(
"addApp"
)
public
ResponseVO
addApp
(
@RequestBody
@Validated
(
CreateGroups
.
class
)
AppRegisterDTO
appRegisterDTO
,
BindingResult
bindingResult
)
{
if
(
bindingResult
.
hasErrors
())
{
return
StringBusinessUtil
.
verifyDispose
(
bindingResult
);
}
ResponseVO
responseVO
=
appRegisterService
.
addApp
(
appRegisterDTO
);
return
responseVO
;
}
@ApiOperation
(
"查询应用目录"
)
@PostMapping
(
"getAppInfo"
)
public
ResponseVO
getAppInfo
(
@RequestBody
@Validated
QueryAppDTO
queryAppDTO
,
BindingResult
bindingResult
)
{
if
(
bindingResult
.
hasErrors
())
{
return
StringBusinessUtil
.
verifyDispose
(
bindingResult
);
}
ResponseVO
responseVO
=
appRegisterService
.
getAppInfo
(
queryAppDTO
);
return
responseVO
;
}
@ApiOperation
(
"应用预览图"
)
@PostMapping
(
"addAppImgUrl"
)
public
ResponseVO
addAppImgUrl
(
@RequestBody
@Validated
(
CreateGroups
.
class
)
List
<
ImgDTO
>
imgDTO
,
BindingResult
bindingResult
)
{
if
(
bindingResult
.
hasErrors
())
{
return
StringBusinessUtil
.
verifyDispose
(
bindingResult
);
}
ResponseVO
responseVO
=
appRegisterService
.
addAppImgUrl
(
imgDTO
);
return
responseVO
;
}
}
src/main/java/com/pms/ocp/mapper/ApiParamMapper.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.pms.ocp.model.entity.OcpApiParam
;
import
com.pms.ocp.model.vo.ApiProvinceVo
;
public
interface
ApiParamMapper
extends
BaseMapper
<
OcpApiParam
>
{
}
src/main/java/com/pms/ocp/mapper/ApiProvinceMapper.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.pms.ocp.model.vo.ApiProvinceVo
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
public
interface
ApiProvinceMapper
extends
BaseMapper
<
ApiProvinceVo
>
{
}
src/main/java/com/pms/ocp/mapper/AppRegisterMapper.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.mapper
;
import
com.pms.ocp.model.dto.QueryAppDTO
;
import
com.pms.ocp.model.entity.OcpTenantIocn
;
import
com.pms.ocp.model.vo.QueryAppInfoVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* 应用注册数据查询接口
*
* @author Administrator
*/
@Mapper
public
interface
AppRegisterMapper
{
/**
* 分页查询应用目录
*
* @param queryAppDTO
* @return
*/
List
<
QueryAppInfoVO
>
getAppInfo
(
@Param
(
"dto"
)
QueryAppDTO
queryAppDTO
);
/**
* 批量插入应用预览图
*
* @param list
* @return
*/
int
batchInsert
(
@Param
(
"list"
)
List
<
OcpTenantIocn
>
list
);
}
src/main/java/com/pms/ocp/mapper/OcpApiTreeMapper.java
View file @
17703c83
...
...
@@ -24,7 +24,7 @@ public interface OcpApiTreeMapper extends BaseMapper<OcpApiGroup> {
/**
* 二级树
* @param apiGroupPromotionType
* @return
*
/. *
@return
*/
List
<
OcpApiGroup
>
selectTwoApiGroups
(
Long
apiGroupPromotionType
);
...
...
@@ -40,6 +40,6 @@ public interface OcpApiTreeMapper extends BaseMapper<OcpApiGroup> {
//根据code查询整条数据
OcpApiGroup
selectCode
(
String
code
);
//根据code查询是否
=
含有下级服务
List
<
OcpApiGroup
>
selectGr
ou
pPcode
();
//根据code查询是否含有下级服务
List
<
OcpApiGroup
>
selectGrpPcode
();
}
src/main/java/com/pms/ocp/mapper/OcpTenantIocnMapper.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.pms.ocp.model.entity.OcpTenantIocn
;
/**
* @author Administrator
*/
public
interface
OcpTenantIocnMapper
extends
BaseMapper
<
OcpTenantIocn
>
{
}
src/main/java/com/pms/ocp/model/dto/AppRegisterDTO.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.model.dto
;
import
com.pms.ocp.common.config.CreateGroups
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
java.util.Date
;
/**
* 应用注册入参实体
*
* @author Administrator
*/
@ApiModel
(
value
=
"应用注册入参实体"
)
@Data
public
class
AppRegisterDTO
{
@ApiModelProperty
(
"用户id"
)
@NotBlank
(
message
=
"用户id不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
userId
;
@ApiModelProperty
(
"用户名称"
)
@NotBlank
(
message
=
"用户名称不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
userName
;
@ApiModelProperty
(
"应用图标"
)
@NotBlank
(
message
=
"应用图标不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
imgUrl
;
@ApiModelProperty
(
"应用名称"
)
@NotBlank
(
message
=
"应用名称不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
appName
;
@ApiModelProperty
(
"应用编码"
)
@NotBlank
(
message
=
"应用编码不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
appCode
;
@ApiModelProperty
(
"所属专业——ts:输电,t:变电,dc:直流,ds配电,tc:技术,pl计划,im综合"
)
@NotBlank
(
message
=
"所属专业不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
kind
;
// @ApiModelProperty("所属中心")
// @NotBlank(message = "所属中心不能为空", groups = CreateGroups.class)
// private String center;
@ApiModelProperty
(
"所属类别——基础管理,分析决策,作业管理,设备管理"
)
@NotBlank
(
message
=
"所属类别不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
type
;
@ApiModelProperty
(
"应用描述"
)
@NotBlank
(
message
=
"应用描述不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
desc
;
@ApiModelProperty
(
"开发厂商"
)
@NotBlank
(
message
=
"开发厂商不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
manufacturer
;
@ApiModelProperty
(
"当前版本"
)
@NotBlank
(
message
=
"当前版本不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
version
;
@ApiModelProperty
(
"所属集群"
)
@NotBlank
(
message
=
"所属集群不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
group
;
@ApiModelProperty
(
"部署名称"
)
@NotBlank
(
message
=
"部署名称不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
deploymentName
;
@ApiModelProperty
(
"注册时间"
)
private
Date
time
;
@ApiModelProperty
(
"url"
)
private
String
url
;
public
String
getAppName
()
{
return
appName
;
}
public
void
setAppName
(
String
appName
)
{
this
.
appName
=
appName
;
}
public
String
getAppCode
()
{
return
appCode
;
}
public
void
setAppCode
(
String
appCode
)
{
this
.
appCode
=
appCode
;
}
public
String
getKind
()
{
return
kind
;
}
public
void
setKind
(
String
kind
)
{
this
.
kind
=
kind
;
}
// public String getCenter() {
// return center;
// }
//
// public void setCenter(String center) {
// this.center = center;
// }
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
public
String
getDesc
()
{
return
desc
;
}
public
void
setDesc
(
String
desc
)
{
this
.
desc
=
desc
;
}
public
String
getManufacturer
()
{
return
manufacturer
;
}
public
void
setManufacturer
(
String
manufacturer
)
{
this
.
manufacturer
=
manufacturer
;
}
public
String
getVersion
()
{
return
version
;
}
public
void
setVersion
(
String
version
)
{
this
.
version
=
version
;
}
public
String
getGroup
()
{
return
group
;
}
public
void
setGroup
(
String
group
)
{
this
.
group
=
group
;
}
public
String
getDeploymentName
()
{
return
deploymentName
;
}
public
void
setDeploymentName
(
String
deploymentName
)
{
this
.
deploymentName
=
deploymentName
;
}
public
Date
getTime
()
{
return
time
;
}
public
void
setTime
(
Date
time
)
{
this
.
time
=
time
;
}
public
String
getImgUrl
()
{
return
imgUrl
;
}
public
void
setImgUrl
(
String
imgUrl
)
{
this
.
imgUrl
=
imgUrl
;
}
public
String
getUrl
()
{
return
url
;
}
public
void
setUrl
(
String
url
)
{
this
.
url
=
url
;
}
public
String
getUserId
()
{
return
userId
;
}
public
void
setUserId
(
String
userId
)
{
this
.
userId
=
userId
;
}
public
String
getUserName
()
{
return
userName
;
}
public
void
setUserName
(
String
userName
)
{
this
.
userName
=
userName
;
}
}
src/main/java/com/pms/ocp/model/dto/ImgDTO.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.model.dto
;
import
com.pms.ocp.common.config.CreateGroups
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
/**
* 应用预览图入参
*
* @author Administrator
*/
@Data
public
class
ImgDTO
{
@ApiModelProperty
(
value
=
"应用编码"
)
@NotBlank
(
message
=
"应用编码值不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
codeNo
;
@ApiModelProperty
(
value
=
"应用预览url"
)
@NotBlank
(
message
=
"应用预览url不能为空"
,
groups
=
CreateGroups
.
class
)
private
String
img
;
public
String
getCodeNo
()
{
return
codeNo
;
}
public
void
setCodeNo
(
String
codeNo
)
{
this
.
codeNo
=
codeNo
;
}
public
String
getImg
()
{
return
img
;
}
public
void
setImg
(
String
img
)
{
this
.
img
=
img
;
}
}
src/main/java/com/pms/ocp/model/dto/QueryAppDTO.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.model.dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotNull
;
/**
* 应用目录条件查询入参实体
*
* @author Administrator
*/
@ApiModel
(
value
=
"应用目录条件查询入参实体"
)
public
class
QueryAppDTO
{
@ApiModelProperty
(
"当前页码"
)
@NotNull
(
message
=
"当前页码不能为空"
)
private
Integer
currentPage
;
@ApiModelProperty
(
"页数目"
)
@NotNull
(
message
=
"页数目不能为空"
)
private
Integer
pageSize
;
@ApiModelProperty
(
"所属专业"
)
private
String
kind
;
// @ApiModelProperty("所属中心")
// private String center;
@ApiModelProperty
(
"所属类别"
)
private
String
type
;
public
Integer
getCurrentPage
()
{
return
currentPage
;
}
public
void
setCurrentPage
(
Integer
currentPage
)
{
this
.
currentPage
=
currentPage
;
}
public
Integer
getPageSize
()
{
return
pageSize
;
}
public
void
setPageSize
(
Integer
pageSize
)
{
this
.
pageSize
=
pageSize
;
}
public
String
getKind
()
{
return
kind
;
}
public
void
setKind
(
String
kind
)
{
this
.
kind
=
kind
;
}
// public String getCenter() {
// return center;
// }
//
// public void setCenter(String center) {
// this.center = center;
// }
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
}
src/main/java/com/pms/ocp/model/dto/TreeListDto.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.model.dto
;
import
com.pms.ocp.model.entity.OcpApiGroup
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.sql.Timestamp
;
import
java.util.List
;
@ApiModel
(
value
=
"应用与服务的传输参数"
)
@Data
public
class
TreeListDto
{
@ApiModelProperty
(
"主键ID"
)
private
String
objId
;
@ApiModelProperty
(
"分类编码"
)
private
String
apiGroupCode
;
@ApiModelProperty
(
"分类名称"
)
private
String
apiGroupName
;
@ApiModelProperty
(
"上级code"
)
private
String
apiGroupPcode
;
@ApiModelProperty
(
"分层树层级 1中台层 2中心层 3 服务组层 4服务层 "
)
private
long
apiGroupLevel
;
@ApiModelProperty
(
"分层树子级 "
)
private
List
<
OcpApiGroup
>
apiChildrenGroup
;
}
src/main/java/com/pms/ocp/model/entity/OcpApiParam.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.model.entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.sql.Timestamp
;
@Data
@Accessors
(
chain
=
true
)
@TableName
(
"ocp_apiParam"
)
@ApiModel
(
"服务参数表"
)
public
class
OcpApiParam
implements
Serializable
{
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@ApiModelProperty
(
"主键ID"
)
private
String
objId
;
@ApiModelProperty
(
"服务编码"
)
private
String
apiCode
;
@ApiModelProperty
(
"参数版本"
)
private
String
apiParamversion
;
@ApiModelProperty
(
"参数分类out出参 in入参 "
)
private
String
apiParamClassification
;
@ApiModelProperty
(
"参数排序"
)
private
Integer
apiParamOrderNo
;
@ApiModelProperty
(
"参数名称"
)
private
String
apiParamName
;
@ApiModelProperty
(
"参数值"
)
private
String
apiParamValue
;
@ApiModelProperty
(
"是否必须0:不必要 1必要"
)
private
Integer
isRequire
;
@ApiModelProperty
(
"参数类型"
)
private
String
apiParamType
;
@ApiModelProperty
(
"是否删除0:未删除 1已删除"
)
private
Integer
isDelete
;
public
String
getObjId
()
{
return
objId
;
}
public
void
setObjId
(
String
objId
)
{
this
.
objId
=
objId
;
}
public
String
getApiCode
()
{
return
apiCode
;
}
public
void
setApiCode
(
String
apiCode
)
{
this
.
apiCode
=
apiCode
;
}
public
String
getApiParamversion
()
{
return
apiParamversion
;
}
public
void
setApiParamversion
(
String
apiParamversion
)
{
this
.
apiParamversion
=
apiParamversion
;
}
public
String
getApiParamClassification
()
{
return
apiParamClassification
;
}
public
void
setApiParamClassification
(
String
apiParamClassification
)
{
this
.
apiParamClassification
=
apiParamClassification
;
}
public
Integer
getApiParamOrderNo
()
{
return
apiParamOrderNo
;
}
public
void
setApiParamOrderNo
(
Integer
apiParamOrderNo
)
{
this
.
apiParamOrderNo
=
apiParamOrderNo
;
}
public
String
getApiParamName
()
{
return
apiParamName
;
}
public
void
setApiParamName
(
String
apiParamName
)
{
this
.
apiParamName
=
apiParamName
;
}
public
String
getApiParamValue
()
{
return
apiParamValue
;
}
public
void
setApiParamValue
(
String
apiParamValue
)
{
this
.
apiParamValue
=
apiParamValue
;
}
public
Integer
getIsRequire
()
{
return
isRequire
;
}
public
void
setIsRequire
(
Integer
isRequire
)
{
this
.
isRequire
=
isRequire
;
}
public
String
getApiParamType
()
{
return
apiParamType
;
}
public
void
setApiParamType
(
String
apiParamType
)
{
this
.
apiParamType
=
apiParamType
;
}
public
Integer
getIsDelete
()
{
return
isDelete
;
}
public
void
setIsDelete
(
Integer
isDelete
)
{
this
.
isDelete
=
isDelete
;
}
}
src/main/java/com/pms/ocp/model/entity/OcpTenantIocn.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.model.entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serializable
;
import
lombok.Data
;
/**
* @author Administrator
*/
@ApiModel
(
value
=
"com-pms-ocp-model-entity-OcpTenantIocn"
)
@Data
@TableName
(
"ocp_tenant_iocn"
)
public
class
OcpTenantIocn
implements
Serializable
{
/**
* 主键
*/
@ApiModelProperty
(
value
=
"主键"
)
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
private
String
objId
;
/**
* 图标种类tenant:应用图标api:服务图标
*/
@ApiModelProperty
(
value
=
"图标种类——tenant:应用图标,api:服务图标"
)
private
String
iocnType
;
/**
* 编码值
*/
@ApiModelProperty
(
value
=
"编码值"
)
private
String
codeNo
;
/**
* 应用调用的服务数量图标数据
*/
@ApiModelProperty
(
value
=
"应用调用的服务数量图标数据"
)
private
Object
iocn
;
/**
* 所属公司可能会根据公司分区
*/
@ApiModelProperty
(
value
=
"所属公司可能会根据公司分区"
)
private
String
companyCode
;
private
static
final
long
serialVersionUID
=
1L
;
public
String
getObjId
()
{
return
objId
;
}
public
void
setObjId
(
String
objId
)
{
this
.
objId
=
objId
;
}
public
String
getIocnType
()
{
return
iocnType
;
}
public
void
setIocnType
(
String
iocnType
)
{
this
.
iocnType
=
iocnType
;
}
public
String
getCodeNo
()
{
return
codeNo
;
}
public
void
setCodeNo
(
String
codeNo
)
{
this
.
codeNo
=
codeNo
;
}
public
Object
getIocn
()
{
return
iocn
;
}
public
void
setIocn
(
Object
iocn
)
{
this
.
iocn
=
iocn
;
}
public
String
getCompanyCode
()
{
return
companyCode
;
}
public
void
setCompanyCode
(
String
companyCode
)
{
this
.
companyCode
=
companyCode
;
}
}
src/main/java/com/pms/ocp/model/vo/ApiProvinceVo.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.model.vo
;
import
cn.afterturn.easypoi.excel.annotation.Excel
;
import
com.pms.ocp.model.entity.OcpApiParam
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.sql.Timestamp
;
import
java.util.List
;
/**
* @author guofanfan
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"服务列表信息vo"
)
public
class
ApiProvinceVo
implements
Serializable
{
@ApiModelProperty
(
value
=
"序号"
)
@Excel
(
name
=
"序号"
)
private
String
objId
;
@ApiModelProperty
(
value
=
"服务编码"
)
@Excel
(
name
=
"服务编码"
)
private
String
apiCode
;
@ApiModelProperty
(
value
=
"服务中文名称"
)
@Excel
(
name
=
"服务中文名称"
)
private
String
apiName
;
@ApiModelProperty
(
value
=
"所属集群"
)
@Excel
(
name
=
"所属集群"
)
private
String
clusterName
;
@ApiModelProperty
(
value
=
"所属命名空间"
)
@Excel
(
name
=
"所属命名空间"
)
private
String
spaceName
;
@ApiModelProperty
(
value
=
"接口URL"
)
@Excel
(
name
=
"接口URL"
)
private
String
apiUrl
;
@ApiModelProperty
(
value
=
"状态"
)
@Excel
(
name
=
"状态"
)
private
String
apiState
;
@ApiModelProperty
(
value
=
"注册时间"
)
@Excel
(
name
=
"注册时间"
)
private
Timestamp
apiCtime
;
@ApiModelProperty
(
value
=
"建设单位"
)
@Excel
(
name
=
"建设单位"
)
private
String
apiUnit
;
/**
* 请求参数列表
*/
private
List
<
OcpApiParam
>
apiParams
;
}
src/main/java/com/pms/ocp/model/vo/OcpApiBaseVo.java
View file @
17703c83
package
com.pms.ocp.model.vo
;
import
cn.afterturn.easypoi.excel.annotation.Excel
;
import
com.pms.ocp.model.entity.OcpApiParam
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
...
...
@@ -11,6 +12,8 @@ import org.springframework.beans.factory.annotation.Value;
import
java.io.Serializable
;
import
java.sql.Timestamp
;
import
java.time.LocalDateTime
;
import
java.util.List
;
/**
* @author guofanfan
*/
...
...
@@ -46,6 +49,88 @@ public class OcpApiBaseVo implements Serializable {
@ApiModelProperty
(
value
=
"建设单位"
)
@Excel
(
name
=
"建设单位"
)
private
String
apiUnit
;
@ApiModelProperty
(
value
=
"出参入参"
)
@Excel
(
name
=
"建设单位"
)
private
List
<
OcpApiParam
>
apiParams
;
public
String
getObjId
()
{
return
objId
;
}
public
void
setObjId
(
String
objId
)
{
this
.
objId
=
objId
;
}
public
String
getApiCode
()
{
return
apiCode
;
}
public
void
setApiCode
(
String
apiCode
)
{
this
.
apiCode
=
apiCode
;
}
public
String
getApiName
()
{
return
apiName
;
}
public
void
setApiName
(
String
apiName
)
{
this
.
apiName
=
apiName
;
}
public
String
getClusterName
()
{
return
clusterName
;
}
public
void
setClusterName
(
String
clusterName
)
{
this
.
clusterName
=
clusterName
;
}
public
String
getSpaceName
()
{
return
spaceName
;
}
public
void
setSpaceName
(
String
spaceName
)
{
this
.
spaceName
=
spaceName
;
}
public
String
getApiUrl
()
{
return
apiUrl
;
}
public
void
setApiUrl
(
String
apiUrl
)
{
this
.
apiUrl
=
apiUrl
;
}
public
String
getApiState
()
{
return
apiState
;
}
public
void
setApiState
(
String
apiState
)
{
this
.
apiState
=
apiState
;
}
public
Timestamp
getApiCtime
()
{
return
apiCtime
;
}
public
void
setApiCtime
(
Timestamp
apiCtime
)
{
this
.
apiCtime
=
apiCtime
;
}
public
String
getApiUnit
()
{
return
apiUnit
;
}
public
void
setApiUnit
(
String
apiUnit
)
{
this
.
apiUnit
=
apiUnit
;
}
public
List
<
OcpApiParam
>
getApiParams
()
{
return
apiParams
;
}
public
void
setApiParams
(
List
<
OcpApiParam
>
apiParams
)
{
this
.
apiParams
=
apiParams
;
}
}
src/main/java/com/pms/ocp/model/vo/QueryAppInfoVO.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.model.vo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* 应用目录查询返回实体
*
* @author Administrator
*/
@ApiModel
(
value
=
"应用目录查询返回实体"
)
@Data
public
class
QueryAppInfoVO
{
@ApiModelProperty
(
"应用图标"
)
private
String
icon
;
@ApiModelProperty
(
"应用名称"
)
private
String
appName
;
@ApiModelProperty
(
"版本号"
)
private
String
version
;
@ApiModelProperty
(
"开发商"
)
private
String
unit
;
@ApiModelProperty
(
"应用状态"
)
private
String
state
;
}
src/main/java/com/pms/ocp/service/ApiProvinceService.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.service
;
import
com.pms.ocp.model.vo.ApiProvinceVo
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
import
com.pms.ocp.model.vo.ResponseVO
;
public
interface
ApiProvinceService
{
boolean
updateOrCreate
(
ApiProvinceVo
apiProvinceVo
);
}
src/main/java/com/pms/ocp/service/AppRegisterService.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.service
;
import
com.pms.ocp.model.dto.AppRegisterDTO
;
import
com.pms.ocp.model.dto.ImgDTO
;
import
com.pms.ocp.model.dto.QueryAppDTO
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
java.util.List
;
/**
* 应用注册业务接口
*
* @author Administrator
*/
public
interface
AppRegisterService
{
/**
* 新增应用注册
*
* @param appRegisterDTO
* @return
*/
ResponseVO
addApp
(
AppRegisterDTO
appRegisterDTO
);
/**
* 查询应用目录
*
* @param queryAppDTO
* @return
*/
ResponseVO
getAppInfo
(
QueryAppDTO
queryAppDTO
);
/**
* 应用预览图
*
* @param imgDTO
* @return
*/
ResponseVO
addAppImgUrl
(
List
<
ImgDTO
>
imgDTO
);
}
src/main/java/com/pms/ocp/service/impl/ApiDetailsServiceImpl.java
View file @
17703c83
package
com.pms.ocp.service.impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.pms.ocp.mapper.ApiDetailsMapper
;
import
com.pms.ocp.mapper.ApiParamMapper
;
import
com.pms.ocp.model.dto.ApiBaseDto
;
import
com.pms.ocp.model.entity.OcpApiBase
;
import
com.pms.ocp.model.entity.OcpApiExtent
;
import
com.pms.ocp.model.entity.OcpApiSubs
;
import
com.pms.ocp.model.entity.*
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
com.pms.ocp.service.ApiDetailsService
;
...
...
@@ -36,11 +36,16 @@ public class ApiDetailsServiceImpl implements ApiDetailsService {
@Autowired
private
ApiDetailsMapper
apiDetailsMapper
;
@Autowired
private
ApiParamMapper
apiParamMapper
;
@Override
public
ResponseVO
<
OcpApiBaseVo
>
getApiDetails
(
String
apiCode
)
{
OcpApiBaseVo
ocpApiBase
=
apiDetailsMapper
.
selectByCode
(
apiCode
);
QueryWrapper
<
OcpApiParam
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
lambda
().
eq
(
OcpApiParam:
:
getApiCode
,
apiCode
);
List
<
OcpApiParam
>
ocpApiParams
=
apiParamMapper
.
selectList
(
wrapper
);
ocpApiBase
.
setApiParams
(
ocpApiParams
);
return
ResponseVO
.
ok
(
ocpApiBase
);
}
...
...
src/main/java/com/pms/ocp/service/impl/ApiProvinceServiceImpl.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.service.impl
;
import
com.github.pagehelper.util.StringUtil
;
import
com.pms.ocp.common.utils.RandomStringUtils
;
import
com.pms.ocp.mapper.ApiDetailsMapper
;
import
com.pms.ocp.mapper.ApiParamMapper
;
import
com.pms.ocp.mapper.ApiProvinceMapper
;
import
com.pms.ocp.model.entity.OcpApiParam
;
import
com.pms.ocp.model.vo.ApiProvinceVo
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
com.pms.ocp.service.ApiDetailsService
;
import
com.pms.ocp.service.ApiProvinceService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
@Service
public
class
ApiProvinceServiceImpl
implements
ApiProvinceService
{
@Autowired
private
ApiProvinceMapper
apiProvinceMapper
;
@Autowired
private
ApiParamMapper
apiParamDao
;
@Override
public
boolean
updateOrCreate
(
ApiProvinceVo
apiProvinceVo
)
{
String
code
=
RandomStringUtils
.
getRandomString
(
32
);
apiProvinceVo
.
setApiCode
(
code
);
apiProvinceMapper
.
insert
(
apiProvinceVo
);
List
<
OcpApiParam
>
apiParams
=
apiProvinceVo
.
getApiParams
();
if
(
CollectionUtils
.
isNotEmpty
(
apiParams
))
{
//清除原有数据
apiParams
.
forEach
(
apiParam
->
{
apiParamDao
.
insert
(
apiParam
);
apiParam
.
setApiCode
(
apiProvinceVo
.
getApiCode
());
});
}
return
true
;
}
}
src/main/java/com/pms/ocp/service/impl/AppRegisterServiceImpl.java
0 → 100644
View file @
17703c83
package
com.pms.ocp.service.impl
;
import
com.pms.ocp.common.utils.GUIDGenerator
;
import
com.pms.ocp.common.utils.PageUtil
;
import
com.pms.ocp.mapper.*
;
import
com.pms.ocp.model.dto.AppRegisterDTO
;
import
com.pms.ocp.model.dto.ImgDTO
;
import
com.pms.ocp.model.dto.QueryAppDTO
;
import
com.pms.ocp.model.entity.OcpTenantBase
;
import
com.pms.ocp.model.entity.OcpTenantExtent
;
import
com.pms.ocp.model.entity.OcpTenantGroup
;
import
com.pms.ocp.model.entity.OcpTenantIocn
;
import
com.pms.ocp.model.vo.QueryAppInfoVO
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
com.pms.ocp.service.AppRegisterService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.sql.Timestamp
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
/**
* 应用注册业务接口实现
*
* @author Administrator
*/
@Service
public
class
AppRegisterServiceImpl
implements
AppRegisterService
{
@Autowired
private
AppRegisterMapper
appRegisterMapper
;
@Autowired
private
OcpTenantIocnMapper
ocpTenantIocnMapper
;
@Autowired
private
OcpTenantBaseMapper
ocpTenantBaseMapper
;
@Autowired
private
OcpTenantExtentMapper
ocpTenantExtentMapper
;
@Autowired
private
OcpTenantGroupMapper
ocpTenantGroupMapper
;
@Override
public
ResponseVO
addApp
(
AppRegisterDTO
appRegisterDTO
)
{
OcpTenantIocn
ocpTenantIocn
=
new
OcpTenantIocn
();
ocpTenantIocn
.
setIocnType
(
"tenant"
);
ocpTenantIocn
.
setCodeNo
(
appRegisterDTO
.
getAppCode
());
ocpTenantIocn
.
setIocn
(
appRegisterDTO
.
getImgUrl
());
// 加字段
int
n
=
ocpTenantIocnMapper
.
insert
(
ocpTenantIocn
);
OcpTenantExtent
ocpTenantExtent
=
new
OcpTenantExtent
();
ocpTenantExtent
.
setTenantCtime
(
new
Date
());
ocpTenantExtent
.
setTenantCode
(
appRegisterDTO
.
getAppCode
());
ocpTenantExtent
.
setClusterName
(
appRegisterDTO
.
getGroup
());
ocpTenantExtent
.
setDeploymentName
(
appRegisterDTO
.
getDeploymentName
());
int
j
=
ocpTenantExtentMapper
.
insert
(
ocpTenantExtent
);
OcpTenantGroup
ocpTenantGroup
=
new
OcpTenantGroup
();
ocpTenantGroup
.
setTenantGroupUserId
(
appRegisterDTO
.
getUserId
());
ocpTenantGroup
.
setTenantGroupUserName
(
appRegisterDTO
.
getUserName
());
ocpTenantGroup
.
setTenantGroupCtime
(
new
Timestamp
(
System
.
currentTimeMillis
()));
ocpTenantGroup
.
setTenantGroupCode
(
GUIDGenerator
.
generate32
(
true
));
ocpTenantGroup
.
setTenantGroupName
(
appRegisterDTO
.
getType
());
int
m
=
ocpTenantGroupMapper
.
insert
(
ocpTenantGroup
);
OcpTenantBase
ocpTenantBase
=
new
OcpTenantBase
();
ocpTenantBase
.
setTenantUserId
(
appRegisterDTO
.
getUserId
());
ocpTenantBase
.
setTenantName
(
appRegisterDTO
.
getAppName
());
ocpTenantBase
.
setTenantCode
(
appRegisterDTO
.
getAppCode
());
ocpTenantBase
.
setProfessionalKind
(
appRegisterDTO
.
getKind
());
ocpTenantBase
.
setTenantUrl
(
appRegisterDTO
.
getUrl
());
ocpTenantBase
.
setTenantDescription
(
appRegisterDTO
.
getDesc
());
ocpTenantBase
.
setTenantUnit
(
appRegisterDTO
.
getManufacturer
());
ocpTenantBase
.
setTenantVersion
(
appRegisterDTO
.
getVersion
());
ocpTenantBase
.
setTenantCtime
(
new
Timestamp
(
System
.
currentTimeMillis
()));
ocpTenantBase
.
setTenantGroupCode
(
ocpTenantGroup
.
getTenantGroupCode
());
int
i
=
ocpTenantBaseMapper
.
insert
(
ocpTenantBase
);
if
(
n
>
0
&&
i
>
0
&&
j
>
0
&&
m
>
0
)
{
return
ResponseVO
.
ok
();
}
return
ResponseVO
.
error
(
"新增应用注册失败"
);
}
@Override
public
ResponseVO
getAppInfo
(
QueryAppDTO
queryAppDTO
)
{
List
<
QueryAppInfoVO
>
list
=
appRegisterMapper
.
getAppInfo
(
queryAppDTO
);
PageUtil
<
QueryAppInfoVO
>
pageUtil
=
new
PageUtil
<>();
pageUtil
.
startPage
(
queryAppDTO
.
getCurrentPage
(),
queryAppDTO
.
getPageSize
(),
list
);
return
ResponseVO
.
ok
(
pageUtil
);
}
@Override
public
ResponseVO
addAppImgUrl
(
List
<
ImgDTO
>
imgDTO
)
{
List
<
OcpTenantIocn
>
list
=
new
ArrayList
<>();
for
(
ImgDTO
item
:
imgDTO
)
{
OcpTenantIocn
ocpTenantIocn
=
new
OcpTenantIocn
();
ocpTenantIocn
.
setIocnType
(
"tenant"
);
ocpTenantIocn
.
setCodeNo
(
item
.
getCodeNo
());
ocpTenantIocn
.
setIocn
(
item
.
getImg
());
list
.
add
(
ocpTenantIocn
);
}
int
count
=
appRegisterMapper
.
batchInsert
(
list
);
if
(
count
>
0
)
{
return
ResponseVO
.
ok
();
}
return
ResponseVO
.
error
(
"应用预览图插入失败"
);
}
}
src/main/java/com/pms/ocp/service/impl/OcpApiTreeServiceImpl.java
View file @
17703c83
...
...
@@ -138,7 +138,7 @@ public class OcpApiTreeServiceImpl extends ServiceImpl<OcpApiTreeMapper, OcpApiG
queryWrapper
.
eq
(
OcpApiGroup:
:
getApiGroupPcode
,
ocpApiGroup
.
getApiGroupCode
());
String
objId
=
ocpApiGroup
.
getObjId
();
List
<
OcpApiGroup
>
list
=
mapper
.
selectGr
ou
pPcode
();
List
<
OcpApiGroup
>
list
=
mapper
.
selectGrpPcode
();
if
(
list
.
size
()
>=
1
)
{
flag
=
false
;
}
...
...
src/main/resources/mapper/AppRegisterMapper.xml
0 → 100644
View file @
17703c83
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.pms.ocp.mapper.AppRegisterMapper"
>
<select
id=
"getAppInfo"
resultType=
"com.pms.ocp.model.vo.QueryAppInfoVO"
>
select
icon.iocn AS icon,
base.tenant_name AS appName,
base.tenant_version AS version,
base.tenant_unit AS unit,
extent.tenant_state AS state
from ocp_tenant_base base
INNER JOIN ocp_tenant_iocn icon ON base.tenant_code = icon.code_no
INNER JOIN ocp_tenant_extent extent ON extent.tenant_code = base.tenant_code
INNER JOIN ocp_tenant_group g ON g.tenant_group_code = base.tenant_group_code
<where>
<if
test=
"dto.kind != null and dto.kind != ''"
>
base.professional_kind like CONCAT('%', #{dto.kind}, '%')
</if>
<if
test=
"dto.type != null and dto.type != ''"
>
and g.tenant_group_name like CONCAT('%', #{dto.type}, '%')
</if>
</where>
</select>
<insert
id=
"batchInsert"
>
insert into ocp_tenant_iocn(obj_id, iocn_type, code_no, iocn, company_code)
values
<foreach
collection=
"list"
item=
"item"
separator=
","
>
(#{item.objId,jdbcType=VARCHAR},
#{item.iocnType,jdbcType=VARCHAR},
#{item.codeNo},#{item.iocn},#{item.companyCode,jdbcType=VARCHAR})
</foreach>
</insert>
</mapper>
\ No newline at end of file
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