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
ced9d38e
Commit
ced9d38e
authored
Mar 09, 2022
by
itcast
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
服务库服务基础管理接口
parent
3fc311df
Changes
29
Hide whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
998 additions
and
22 deletions
+998
-22
pom.xml
pom.xml
+4
-0
src/main/java/com/pms/ocp/OcpApplication.java
src/main/java/com/pms/ocp/OcpApplication.java
+3
-3
src/main/java/com/pms/ocp/common/utils/ExcelUtils.java
src/main/java/com/pms/ocp/common/utils/ExcelUtils.java
+2
-2
src/main/java/com/pms/ocp/common/utils/FileExport.java
src/main/java/com/pms/ocp/common/utils/FileExport.java
+209
-0
src/main/java/com/pms/ocp/common/utils/FileUtil.java
src/main/java/com/pms/ocp/common/utils/FileUtil.java
+34
-0
src/main/java/com/pms/ocp/controller/ApiBasicManagementController.java
.../com/pms/ocp/controller/ApiBasicManagementController.java
+196
-0
src/main/java/com/pms/ocp/mapper/ApiBasicManagementMapper.java
...ain/java/com/pms/ocp/mapper/ApiBasicManagementMapper.java
+18
-0
src/main/java/com/pms/ocp/mapper/ApiDetailsMapper.java
src/main/java/com/pms/ocp/mapper/ApiDetailsMapper.java
+6
-0
src/main/java/com/pms/ocp/mapper/OcpApiExtentMapper.java
src/main/java/com/pms/ocp/mapper/OcpApiExtentMapper.java
+9
-0
src/main/java/com/pms/ocp/mapper/OcpApiSubsMapper.java
src/main/java/com/pms/ocp/mapper/OcpApiSubsMapper.java
+9
-0
src/main/java/com/pms/ocp/model/dto/ApiBaseDto.java
src/main/java/com/pms/ocp/model/dto/ApiBaseDto.java
+40
-0
src/main/java/com/pms/ocp/model/dto/OcpApiBaseDto.java
src/main/java/com/pms/ocp/model/dto/OcpApiBaseDto.java
+24
-0
src/main/java/com/pms/ocp/model/dto/OcpTenantBaseDto.java
src/main/java/com/pms/ocp/model/dto/OcpTenantBaseDto.java
+23
-0
src/main/java/com/pms/ocp/model/entity/ModelProperty.java
src/main/java/com/pms/ocp/model/entity/ModelProperty.java
+2
-0
src/main/java/com/pms/ocp/model/entity/OcpApiBase.java
src/main/java/com/pms/ocp/model/entity/OcpApiBase.java
+1
-1
src/main/java/com/pms/ocp/model/entity/OcpTenantBase.java
src/main/java/com/pms/ocp/model/entity/OcpTenantBase.java
+5
-4
src/main/java/com/pms/ocp/model/entity/OcpTenantSubs.java
src/main/java/com/pms/ocp/model/entity/OcpTenantSubs.java
+7
-6
src/main/java/com/pms/ocp/model/vo/OcpApiBaseVo.java
src/main/java/com/pms/ocp/model/vo/OcpApiBaseVo.java
+49
-0
src/main/java/com/pms/ocp/service/ApiBasicManagementService.java
...n/java/com/pms/ocp/service/ApiBasicManagementService.java
+57
-0
src/main/java/com/pms/ocp/service/ApiDetailsService.java
src/main/java/com/pms/ocp/service/ApiDetailsService.java
+8
-0
src/main/java/com/pms/ocp/service/OcpApiExtentService.java
src/main/java/com/pms/ocp/service/OcpApiExtentService.java
+7
-0
src/main/java/com/pms/ocp/service/OcpApiSubsService.java
src/main/java/com/pms/ocp/service/OcpApiSubsService.java
+7
-0
src/main/java/com/pms/ocp/service/impl/ApiBasicManagementServiceImpl.java
...m/pms/ocp/service/impl/ApiBasicManagementServiceImpl.java
+157
-0
src/main/java/com/pms/ocp/service/impl/ApiDetailsServiceImpl.java
.../java/com/pms/ocp/service/impl/ApiDetailsServiceImpl.java
+28
-0
src/main/java/com/pms/ocp/service/impl/OcpApiExtentServiceImpl.java
...ava/com/pms/ocp/service/impl/OcpApiExtentServiceImpl.java
+11
-0
src/main/java/com/pms/ocp/service/impl/OcpApiSubsServiceImpl.java
.../java/com/pms/ocp/service/impl/OcpApiSubsServiceImpl.java
+11
-0
src/main/resources/application-local.yml
src/main/resources/application-local.yml
+4
-6
src/main/resources/mapper/ApiBasicManagementMapper.xml
src/main/resources/mapper/ApiBasicManagementMapper.xml
+60
-0
src/main/resources/mapper/ApiDetailsMapper.xml
src/main/resources/mapper/ApiDetailsMapper.xml
+7
-0
No files found.
pom.xml
View file @
ced9d38e
...
...
@@ -77,6 +77,10 @@
<version>
1.2.62
</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>io.jsonwebtoken</groupId>-->
<!-- <artifactId>jjwt</artifactId>-->
...
...
src/main/java/com/pms/ocp/OcpApplication.java
View file @
ced9d38e
...
...
@@ -20,11 +20,11 @@ import java.util.TimeZone;
@SpringBootApplication
@MapperScan
(
basePackages
=
{
"com.pms.ocp.mapper"
})
//
@ConfigurationPropertiesScan
//
@EnableOpenApi
@ConfigurationPropertiesScan
@EnableOpenApi
public
class
OcpApplication
{
public
static
void
main
(
String
[]
args
)
{
//
TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
TimeZone
.
setDefault
(
TimeZone
.
getTimeZone
(
"GMT+8"
));
SpringApplication
.
run
(
OcpApplication
.
class
,
args
);
}
...
...
src/main/java/com/pms/ocp/common/utils/ExcelUtils.java
View file @
ced9d38e
...
...
@@ -76,9 +76,11 @@ public class ExcelUtils {
//当前日期
SimpleDateFormat
df
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
fileName
=
df
.
format
(
new
Date
());
}
Workbook
workbook
=
ExcelExportUtil
.
exportExcel
(
new
ExportParams
(
fileName
,
fileName
,
ExcelType
.
XSSF
),
pojoClass
,
list
);
response
.
setCharacterEncoding
(
"UTF-8"
);
response
.
setHeader
(
"content-Type"
,
"application/vnd.ms-excel"
);
response
.
setHeader
(
"Content-Disposition"
,
"attachment;filename="
+
URLEncoder
.
encode
(
fileName
,
"UTF-8"
)
+
".xls"
);
ServletOutputStream
out
=
response
.
getOutputStream
();
...
...
@@ -104,7 +106,6 @@ public class ExcelUtils {
exportExcel
(
response
,
fileName
,
targetList
,
targetClass
);
}
/**
* Excel导出----设置title---sheetName---要求Collection<?> list是Class<?> pojoClass类型的
*
...
...
@@ -128,5 +129,4 @@ public class ExcelUtils {
out
.
flush
();
}
}
src/main/java/com/pms/ocp/common/utils/FileExport.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.common.utils
;
import
org.apache.poi.hssf.usermodel.HSSFCell
;
import
org.apache.poi.hssf.usermodel.HSSFCellStyle
;
import
org.apache.poi.hssf.usermodel.HSSFRow
;
import
org.apache.poi.hssf.usermodel.HSSFSheet
;
import
org.apache.poi.hssf.usermodel.HSSFWorkbook
;
import
org.apache.poi.ss.formula.functions.T
;
import
org.apache.poi.ss.usermodel.BorderStyle
;
import
org.apache.poi.ss.usermodel.Font
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.OutputStream
;
import
java.io.UnsupportedEncodingException
;
import
java.net.URLEncoder
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
/**
* 文件导出工具
* @author abc
* @date 2019/01/08
*/
public
class
FileExport
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
FileExport
.
class
);
/** CSV文件列分隔符 */
private
static
final
String
CSV_COLUMN_SEPARATOR
=
","
;
private
static
final
String
CSV_COLUM_TABLE
=
"\t"
;
/** CSV文件列分隔符 */
private
static
final
String
CSV_RN
=
"\r\n"
;
/**
* 导出Excel文件
*
* @param excelHeader
* 导出文件中表格头
* @param list
* 导出的内容
* @param response
* HttpServletResponse对象,用来获得输出流向客户端写导出的文件
* @param sheetName
* Excel的sheet名称,加上时间戳作为导出文件的名称
*/
public
static
void
exportExcel
(
String
[]
excelHeader
,
List
<
Object
>
list
,
String
sheetName
,
HttpServletResponse
response
,
HttpServletRequest
request
)
{
HSSFWorkbook
wb
=
new
HSSFWorkbook
();
HSSFSheet
sheet
=
wb
.
createSheet
(
sheetName
);
HSSFRow
row
=
sheet
.
createRow
((
int
)
0
);
/******设置单元格是否显示网格线******/
sheet
.
setDisplayGridlines
(
true
);
/******设置头单元格样式******/
HSSFCellStyle
style
=
wb
.
createCellStyle
();
style
.
setAlignment
(
HorizontalAlignment
.
CENTER
);
Font
fontHeader
=
wb
.
createFont
();
fontHeader
.
setBold
(
true
);
fontHeader
.
setFontHeight
((
short
)
240
);
style
.
setFont
(
fontHeader
);
style
.
setBorderBottom
(
BorderStyle
.
THIN
);
style
.
setBorderLeft
(
BorderStyle
.
THIN
);
style
.
setBorderRight
(
BorderStyle
.
THIN
);
style
.
setBorderTop
(
BorderStyle
.
THIN
);
/******设置头内容******/
for
(
int
i
=
0
;
i
<
excelHeader
.
length
;
i
++)
{
HSSFCell
cell
=
row
.
createCell
(
i
);
cell
.
setCellValue
(
" "
+
excelHeader
[
i
]
+
" "
);
cell
.
setCellStyle
(
style
);
}
/******设置内容单元格样式******/
HSSFCellStyle
styleCell
=
wb
.
createCellStyle
();
Font
fontCell
=
wb
.
createFont
();
// fontCell.setColor(HSSFColor.BLACK.index);
// fontCell.setColor(HSSFColor.B);
styleCell
.
setAlignment
(
HorizontalAlignment
.
CENTER
);
styleCell
.
setFont
(
fontCell
);
styleCell
.
setBorderBottom
(
BorderStyle
.
THIN
);
styleCell
.
setBorderLeft
(
BorderStyle
.
THIN
);
styleCell
.
setBorderRight
(
BorderStyle
.
THIN
);
styleCell
.
setBorderTop
(
BorderStyle
.
THIN
);
/******设置单元格内容******/
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
row
=
sheet
.
createRow
(
i
+
1
);
/******设置行高******/
row
.
setHeightInPoints
(
20
);
Object
[]
obj
=
(
Object
[])
list
.
get
(
i
);
for
(
int
j
=
0
;
j
<
excelHeader
.
length
;
j
++)
{
styleCell
.
setWrapText
(
false
);
HSSFCell
cell
=
row
.
createCell
(
j
);
if
(
obj
[
j
]
!=
null
){
cell
.
setCellValue
(
obj
[
j
].
toString
());
}
else
{
cell
.
setCellValue
(
""
);
}
// if(obj[j].toString().length()>20)
// styleCell.setWrapText(true);
cell
.
setCellStyle
(
styleCell
);
sheet
.
autoSizeColumn
(
j
);
}
}
OutputStream
ouputStream
=
null
;
try
{
String
encoding
=
"UTF-8"
;
/** 获取浏览器相关的信息 */
String
userAgent
=
request
.
getHeader
(
"user-agent"
);
/** 判断是否为msie浏览器 */
if
(
userAgent
.
toLowerCase
().
indexOf
(
"msie"
)
!=
-
1
){
encoding
=
"gbk"
;
}
response
.
setCharacterEncoding
(
encoding
);
response
.
setContentType
(
"application/vnd.ms-excel"
);
String
fileName
=
sheetName
;
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyyMMddHHMMSS"
);
fileName
+=
(
dateFormat
.
format
(
new
Date
())).
toString
()+
".xls"
;
response
.
setHeader
(
"Content-disposition"
,
"attachment;filename="
+
URLEncoder
.
encode
(
fileName
,
encoding
));
ouputStream
=
response
.
getOutputStream
();
wb
.
write
(
ouputStream
);
ouputStream
.
flush
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
finally
{
try
{
if
(
ouputStream
!=
null
)
{
ouputStream
.
close
();
}
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
}
/**
* 导出CSV文件
* @param dataList 集合数据
* @param colNames 表头部数据
* @param mapKey 查找的对应数据
*/
public
static
boolean
doExport
(
List
<
Map
<
String
,
Object
>>
dataList
,
String
colNames
,
String
mapKey
,
OutputStream
os
)
{
try
{
StringBuffer
buf
=
new
StringBuffer
();
String
[]
colNamesArr
=
null
;
String
[]
mapKeyArr
=
null
;
colNamesArr
=
colNames
.
split
(
","
);
mapKeyArr
=
mapKey
.
split
(
","
);
/******完成数据csv文件的封装******/
/******输出列头******/
for
(
int
i
=
0
;
i
<
colNamesArr
.
length
;
i
++)
{
buf
.
append
(
colNamesArr
[
i
]).
append
(
CSV_COLUMN_SEPARATOR
);
}
buf
.
append
(
CSV_RN
);
if
(
null
!=
dataList
)
{
/******输出数据******/
for
(
int
i
=
0
;
i
<
dataList
.
size
();
i
++)
{
for
(
int
j
=
0
;
j
<
mapKeyArr
.
length
;
j
++)
{
buf
.
append
(
dataList
.
get
(
i
).
get
(
mapKeyArr
[
j
])).
append
(
CSV_COLUM_TABLE
).
append
(
CSV_COLUMN_SEPARATOR
);
}
buf
.
append
(
CSV_RN
);
}
}
/******写出响应******/
os
.
write
(
buf
.
toString
().
getBytes
(
"GBK"
));
os
.
flush
();
return
true
;
}
catch
(
Exception
e
)
{
logger
.
error
(
"doExport错误..."
,
e
);
}
return
false
;
}
/**
* 设置响应格式
* @param fileName
* @param response
* @throws UnsupportedEncodingException
*/
public
static
void
responseSetProperties
(
String
fileName
,
HttpServletResponse
response
)
throws
UnsupportedEncodingException
{
/******设置文件后缀******/
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyyMMddHHmmss"
);
String
fn
=
fileName
+
sdf
.
format
(
new
Date
()).
toString
()
+
".csv"
;
/******读取字符编码******/
String
utf
=
"UTF-8"
;
/******设置响应******/
response
.
setContentType
(
"application/ms-txt.numberformat:@"
);
response
.
setCharacterEncoding
(
utf
);
response
.
setHeader
(
"Pragma"
,
"public"
);
response
.
setHeader
(
"Cache-Control"
,
"max-age=30"
);
response
.
setHeader
(
"Content-Disposition"
,
"attachment; filename="
+
URLEncoder
.
encode
(
fn
,
utf
));
}
}
src/main/java/com/pms/ocp/common/utils/FileUtil.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.common.utils
;
import
cn.afterturn.easypoi.excel.ExcelImportUtil
;
import
cn.afterturn.easypoi.excel.entity.ImportParams
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.util.List
;
import
java.util.NoSuchElementException
;
/**
* 导入工具类
*/
public
class
FileUtil
{
public
static
<
T
>
List
<
T
>
importExcel
(
MultipartFile
file
,
Integer
titleRows
,
Integer
headerRows
,
Class
<
T
>
pojoClass
)
throws
Exception
{
if
(
file
==
null
)
{
return
null
;
}
ImportParams
params
=
new
ImportParams
();
params
.
setTitleRows
(
titleRows
);
params
.
setHeadRows
(
headerRows
);
List
<
T
>
list
=
null
;
try
{
list
=
ExcelImportUtil
.
importExcel
(
file
.
getInputStream
(),
pojoClass
,
params
);
}
catch
(
NoSuchElementException
e
)
{
throw
new
Exception
(
"excel文件不能为空"
);
}
catch
(
Exception
e
)
{
throw
new
Exception
(
e
.
getMessage
());
}
return
list
;
}
}
src/main/java/com/pms/ocp/controller/ApiBasicManagementController.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.controller
;
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.OcpApiBaseDto
;
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.io.*
;
import
java.net.URLEncoder
;
import
java.sql.Timestamp
;
import
java.time.LocalDate
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.List
;
@Slf4j
@RequestMapping
(
"/api/basic"
)
@RestController
@Api
(
tags
=
"服务库服务基础管理接口"
)
public
class
ApiBasicManagementController
{
@Autowired
private
ApiDetailsService
apiDetailsService
;
@Autowired
private
ApiBasicManagementService
apiBasicManagementService
;
@ApiOperation
(
"条件查询"
)
@GetMapping
(
"/queryOcpApiBaseDto"
)
public
ResponseVO
queryOcpApiBaseDto
(
@RequestParam
(
required
=
false
)
String
apiCode
,
@RequestParam
(
required
=
false
)
String
keyword
,
@RequestParam
(
required
=
false
)
String
apiUnits
,
@RequestParam
(
required
=
false
)
Timestamp
startTime
,
@RequestParam
(
required
=
false
)
Timestamp
endTime
,
@RequestParam
(
required
=
false
)
int
pageSize
,
@RequestParam
(
required
=
false
)
int
pageNum
)
{
OcpApiBaseDto
ocpApiBaseDto
=
apiBasicManagementService
.
queryOcpApiBaseDto
(
apiCode
,
keyword
,
apiUnits
,
startTime
,
endTime
,
pageSize
,
pageNum
);
return
ResponseVO
.
ok
(
ocpApiBaseDto
);
}
@ApiOperation
(
"导入功能"
)
@PostMapping
(
"/import"
)
public
ResponseVO
ApiImport
(
@RequestParam
(
required
=
false
)
MultipartFile
file
,
HttpServletRequest
request
)
throws
Exception
{
if
(
file
==
null
)
{
return
ResponseVO
.
ok
(
"导入数据不能为空"
);
}
System
.
out
.
println
(
file
);
//用来检查前端是否把文件传过来
//解析excel,
List
<
OcpApiBaseVo
>
personList
=
FileUtil
.
importExcel
(
file
,
0
,
1
,
OcpApiBaseVo
.
class
);
//也可以使用FileUtil.importExcel(filePath,1,1,FileEntity.class) 导入
System
.
out
.
println
(
"导入数据一共【"
+
personList
.
size
()
+
"】行"
);
apiBasicManagementService
.
apiImport
(
personList
);
return
ResponseVO
.
ok
();
}
@ApiOperation
(
"导出功能"
)
@GetMapping
(
"/export"
)
public
ResponseVO
ApiExport
(
HttpServletResponse
response
,
@RequestParam
(
required
=
false
)
String
apiCodes
,
@RequestParam
(
required
=
false
)
String
excelFileName
)
throws
Exception
{
if
(
StringUtils
.
isEmpty
(
apiCodes
))
{
return
ResponseVO
.
ok
(
"请选择你要导出的数据"
);
}
List
<
OcpApiBaseVo
>
ocpApiBaseVoList
=
apiBasicManagementService
.
selectApiExport
(
apiCodes
);
if
(
StringUtils
.
isEmpty
(
excelFileName
))
{
excelFileName
=
"服务列表-"
;
}
//导出excel
ExcelUtils
.
exportExcel
(
response
,
excelFileName
+
LocalDate
.
now
(),
ocpApiBaseVoList
,
OcpApiBaseVo
.
class
);
return
ResponseVO
.
ok
();
}
// @ApiOperation("下载模板")
//// @GetMapping("/download")
// @GetMapping(value = "/download", produces = "text/plain;charset=UTF-8")
// public void ApiDownload(HttpServletResponse response) throws IOException {
// String filePate = getClass().getResource("/template/233.xls").getPath();
// InputStream bis = new BufferedInputStream(new FileInputStream(new File(filePate)));
// //假如以中文名下载的话,设置下载文件名称
// String filename = "导入模板.xls";
// //转码,免得文件中文名中文乱码
// filename = URLEncoder.encode(filename, "UTF-8");
// //设置文件下载头
// response.addHeader("Content-Disposition", "attachment;filename=" + filename);
//// response.setHeader("Content-Length",bis.available()+"");
// //1.设置文件ContentType类型,这样设置.会自动判断下载文件类型
// response.setContentType("multipart/form-data");
// response.setCharacterEncoding("UTF-8");
//// response.setContentType("application/x-download");
// BufferedOutputStream out = new BufferedOutputStream(response.getOutputStream());
// int len = 0;
// byte[] bytes = new byte[65536];
//// bytes=bytes.toString().getBytes("GBK");
// while ((len = bis.read(bytes)) != -1) {
// out.write(bytes,0,len);
// out.flush();
// }
// out.close();
//
// }
//@GetMapping("/downloadExcel")
//public void downloadExcel(HttpServletResponse response,HttpServletRequest request){
// try {
// String filename="233.xls";
// String encoding = "UTF-8";
// /** 获取浏览器相关的信息 */
// String userAgent = request.getHeader("user-agent");
// /** 判断是否为msie浏览器 */
// if (userAgent.toLowerCase().indexOf("msie") != -1){
// encoding = "gbk";
// }
// response.setHeader("Content-disposition", "attachment;filename=" + filename);
// response.setContentType("application/vnd.ms-excel;charset=UTF-8");
// String filePath = getClass().getResource("/template/" + filename).getPath();
// FileInputStream input = new FileInputStream(filePath);
// OutputStream outputStream = response.getOutputStream();
// byte[] b = new byte[2048];
// int len;
// while ((len=input.read(b))!=-1){
// outputStream.write(b,0,len);
// }
// response.setHeader("Content-Length",String.valueOf(input.getChannel().size()));
// input.close();
// }catch (Exception ex){
// log.error("xx:",ex);
// }
//}
@ApiOperation
(
"下载模块"
)
@GetMapping
(
"/downloadExcel"
)
public
void
downloadExcel
(
HttpServletResponse
response
,
HttpServletRequest
request
)
{
String
[]
excelHeader
=
{
"序号"
,
"服务编码"
,
"服务中文名称"
,
"所属集群"
,
"所属命名空间"
,
"接口URL"
,
"状态"
,
"注册时间"
,
"建设单位"
};
List
<
Object
>
list
=
new
ArrayList
<>();
FileExport
.
exportExcel
(
excelHeader
,
list
,
"XXX模板"
,
response
,
request
);
}
@ApiOperation
(
"服务注册"
)
@PostMapping
(
"/add"
)
public
ResponseVO
addOcpApiBase
(
@RequestBody
OcpApiBase
ocpApiBase
)
{
apiBasicManagementService
.
addOcpApiBase
(
ocpApiBase
);
return
ResponseVO
.
ok
();
}
@ApiOperation
(
"服务订阅"
)
@PostMapping
(
"/login"
)
public
ResponseVO
ApiLogin
(
@RequestParam
(
required
=
false
)
String
apiPromotion
,
@RequestParam
(
required
=
false
)
String
apiCodes
)
{
if
(
StringUtils
.
isEmpty
(
apiPromotion
)
||
apiPromotion
.
equals
(
"0"
))
{
return
ResponseVO
.
error
(
"统招"
);
}
else
{
apiBasicManagementService
.
apiLogin
(
apiCodes
);
return
ResponseVO
.
ok
();
}
}
@ApiOperation
(
"服务发布"
)
@PostMapping
(
"/issue"
)
public
ResponseVO
ApiIssue
(
@RequestParam
(
required
=
false
)
String
apiPromotion
,
@RequestParam
(
required
=
false
)
String
apiCodes
)
{
if
(
StringUtils
.
isEmpty
(
apiPromotion
)
||
apiPromotion
.
equals
(
"0"
))
{
return
ResponseVO
.
error
(
"统招"
);
}
else
{
apiBasicManagementService
.
apiIssue
(
apiCodes
);
return
ResponseVO
.
ok
();
}
}
}
src/main/java/com/pms/ocp/mapper/ApiBasicManagementMapper.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.pms.ocp.model.dto.OcpApiBaseDto
;
import
com.pms.ocp.model.entity.OcpApiBase
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.sql.Timestamp
;
import
java.util.List
;
@Mapper
public
interface
ApiBasicManagementMapper
extends
BaseMapper
<
OcpApiBase
>
{
List
<
OcpApiBaseVo
>
selectApiExport
(
List
<
String
>
list
);
OcpApiBaseDto
queryOcpApiBaseDto
(
@Param
(
"keyword"
)
String
keyword
,
@Param
(
"list"
)
List
<
String
>
list
,
@Param
(
"startTime"
)
Timestamp
startTime
,
@Param
(
"endTime"
)
Timestamp
endTime
,
@Param
(
"apiCode"
)
String
apiCode
,
@Param
(
"pageSize"
)
int
pageSize
,
@Param
(
"pageNum"
)
int
pageNum
);
}
src/main/java/com/pms/ocp/mapper/ApiDetailsMapper.java
View file @
ced9d38e
...
...
@@ -2,9 +2,15 @@ package com.pms.ocp.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.pms.ocp.model.entity.OcpApiBase
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
@Mapper
public
interface
ApiDetailsMapper
extends
BaseMapper
<
OcpApiBase
>
{
}
src/main/java/com/pms/ocp/mapper/OcpApiExtentMapper.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.pms.ocp.model.entity.OcpApiExtent
;
import
org.apache.ibatis.annotations.Mapper
;
@Mapper
public
interface
OcpApiExtentMapper
extends
BaseMapper
<
OcpApiExtent
>
{
}
src/main/java/com/pms/ocp/mapper/OcpApiSubsMapper.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.pms.ocp.model.entity.OcpApiSubs
;
import
org.apache.ibatis.annotations.Mapper
;
@Mapper
public
interface
OcpApiSubsMapper
extends
BaseMapper
<
OcpApiSubs
>
{
}
src/main/java/com/pms/ocp/model/dto/ApiBaseDto.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.model.dto
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.io.Serializable
;
import
java.sql.Timestamp
;
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
ApiBaseDto
implements
Serializable
{
/**
* 服务编码
*/
private
String
ApiCode
;
/**
* 建设单位
*/
private
String
apiUnit
;
/**
* 注册时段-开始
*/
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Timestamp
startTime
;
/**
* 注册时段-结束
*/
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Timestamp
endTime
;
/**
* 关键字
*/
private
String
keyword
;
}
src/main/java/com/pms/ocp/model/dto/OcpApiBaseDto.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.model.dto
;
import
cn.afterturn.easypoi.excel.annotation.Excel
;
import
com.pms.ocp.model.entity.OcpApiBase
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"服务基础信息表dto"
)
public
class
OcpApiBaseDto
extends
OcpApiBase
implements
Serializable
{
@ApiModelProperty
(
"所属集群"
)
private
String
clusterName
;
@ApiModelProperty
(
"所属命名空间"
)
private
String
spaceName
;
@ApiModelProperty
(
"状态"
)
private
String
apiState
;
}
src/main/java/com/pms/ocp/model/dto/OcpTenantBaseDto.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.model.dto
;
import
com.pms.ocp.model.entity.OcpTenantBase
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"应用信息表dto"
)
public
class
OcpTenantBaseDto
extends
OcpTenantBase
implements
Serializable
{
@ApiModelProperty
(
"应用分类名称"
)
private
String
tenantGroupName
;
@ApiModelProperty
(
"集群名称"
)
private
String
clusterName
;
@ApiModelProperty
(
"命名空间"
)
private
String
spaceName
;
}
src/main/java/com/pms/ocp/model/entity/ModelProperty.java
View file @
ced9d38e
...
...
@@ -3,7 +3,9 @@ package com.pms.ocp.model.entity;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Auther: wangjian
...
...
src/main/java/com/pms/ocp/model/entity/OcpApiBase.java
View file @
ced9d38e
...
...
@@ -24,7 +24,7 @@ public class OcpApiBase {
private
String
apiCode
;
@ApiModelProperty
(
"服务接口中文名称"
)
private
String
apiName
;
private
String
apiName
;
@ApiModelProperty
(
"服务分类代码"
)
private
String
apiGroupCode
;
...
...
src/main/java/com/pms/ocp/model/entity/OcpTenantBase.java
View file @
ced9d38e
...
...
@@ -9,6 +9,7 @@ import lombok.Data;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.sql.Timestamp
;
import
java.util.Date
;
/**
...
...
@@ -79,13 +80,13 @@ public class OcpTenantBase implements Serializable {
* 创建时间
*/
@ApiModelProperty
(
"创建时间"
)
private
Date
tenantCtime
;
private
Timestamp
tenantCtime
;
/**
* 最后更新时间
*/
@ApiModelProperty
(
"最后更新时间"
)
private
Date
tenantMtime
;
private
Timestamp
tenantMtime
;
/**
* 部署名称
...
...
@@ -285,7 +286,7 @@ public class OcpTenantBase implements Serializable {
/**
* 创建时间
*/
public
void
setTenantCtime
(
Date
tenantCtime
)
{
public
void
setTenantCtime
(
Timestamp
tenantCtime
)
{
this
.
tenantCtime
=
tenantCtime
;
}
...
...
@@ -299,7 +300,7 @@ public class OcpTenantBase implements Serializable {
/**
* 最后更新时间
*/
public
void
setTenantMtime
(
Date
tenantMtime
)
{
public
void
setTenantMtime
(
Timestamp
tenantMtime
)
{
this
.
tenantMtime
=
tenantMtime
;
}
...
...
src/main/java/com/pms/ocp/model/entity/OcpTenantSubs.java
View file @
ced9d38e
...
...
@@ -9,6 +9,7 @@ import lombok.Data;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.sql.Timestamp
;
import
java.util.Date
;
/**
...
...
@@ -43,13 +44,13 @@ public class OcpTenantSubs implements Serializable {
* 服务订阅创建时间
*/
@ApiModelProperty
(
"服务订阅创建时间"
)
private
Date
subsLogTenantCtime
;
private
Timestamp
subsLogTenantCtime
;
/**
* 服务订阅修改时间
*/
@ApiModelProperty
(
"服务订阅修改时间"
)
private
Date
subsLogTenantMtime
;
private
Timestamp
subsLogTenantMtime
;
/**
* 服务订阅创建用户ID
...
...
@@ -61,7 +62,7 @@ public class OcpTenantSubs implements Serializable {
* 服务订阅添加时间
*/
@ApiModelProperty
(
"服务订阅添加时间"
)
private
Date
subsLogTenantAtime
;
private
Timestamp
subsLogTenantAtime
;
/**
* 是否删除0-否,1-是
...
...
@@ -123,7 +124,7 @@ public class OcpTenantSubs implements Serializable {
/**
* 服务订阅创建时间
*/
public
void
setSubsLogTenantCtime
(
Date
subsLogTenantCtime
)
{
public
void
setSubsLogTenantCtime
(
Timestamp
subsLogTenantCtime
)
{
this
.
subsLogTenantCtime
=
subsLogTenantCtime
;
}
...
...
@@ -137,7 +138,7 @@ public class OcpTenantSubs implements Serializable {
/**
* 服务订阅修改时间
*/
public
void
setSubsLogTenantMtime
(
Date
subsLogTenantMtime
)
{
public
void
setSubsLogTenantMtime
(
Timestamp
subsLogTenantMtime
)
{
this
.
subsLogTenantMtime
=
subsLogTenantMtime
;
}
...
...
@@ -165,7 +166,7 @@ public class OcpTenantSubs implements Serializable {
/**
* 服务订阅添加时间
*/
public
void
setSubsLogTenantAtime
(
Date
subsLogTenantAtime
)
{
public
void
setSubsLogTenantAtime
(
Timestamp
subsLogTenantAtime
)
{
this
.
subsLogTenantAtime
=
subsLogTenantAtime
;
}
...
...
src/main/java/com/pms/ocp/model/vo/OcpApiBaseVo.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.model.vo
;
import
cn.afterturn.easypoi.excel.annotation.Excel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.beans.factory.annotation.Value
;
import
java.io.Serializable
;
import
java.sql.Timestamp
;
import
java.time.LocalDateTime
;
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"服务列表信息vo"
)
public
class
OcpApiBaseVo
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
;
}
src/main/java/com/pms/ocp/service/ApiBasicManagementService.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.pms.ocp.model.dto.ApiBaseDto
;
import
com.pms.ocp.model.dto.OcpApiBaseDto
;
import
com.pms.ocp.model.entity.OcpApiBase
;
import
com.pms.ocp.model.entity.OcpApiExtent
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
import
java.sql.Timestamp
;
import
java.util.List
;
public
interface
ApiBasicManagementService
extends
IService
<
OcpApiBase
>
{
/**
* 导出的查询
* @param apiCode
* @return
*/
List
<
OcpApiBaseVo
>
selectApiExport
(
String
apiCodes
);
/**
* 服务注册
* @param ocpApiBase
*/
void
addOcpApiBase
(
OcpApiBase
ocpApiBase
);
/**
* 服务订阅
* @param apiCodes
*/
void
apiLogin
(
String
apiCodes
);
/**
* 条件查询
* @param apiCode
* @param keyword
* @param apiUnit
* @param startTime
* @param endTime
* @return
*/
// OcpApiBaseDto queryOcpApiBaseDto(ApiBaseDto apiBaseDto);
OcpApiBaseDto
queryOcpApiBaseDto
(
String
apiCode
,
String
keyword
,
String
apiUnits
,
Timestamp
startTime
,
Timestamp
endTime
,
int
pageSize
,
int
pageNum
);
/**
* 导入的添加到数据库
* @param personList
*/
void
apiImport
(
List
<
OcpApiBaseVo
>
personList
);
/**
* 服务发布
* @param apiCodes
*/
void
apiIssue
(
String
apiCodes
);
}
src/main/java/com/pms/ocp/service/ApiDetailsService.java
View file @
ced9d38e
package
com.pms.ocp.service
;
import
com.pms.ocp.model.entity.OcpApiBase
;
import
com.pms.ocp.model.vo.OcpApiBaseVo
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.io.IOException
;
import
java.util.List
;
public
interface
ApiDetailsService
{
/**
...
...
@@ -10,4 +16,6 @@ public interface ApiDetailsService{
* @return
*/
ResponseVO
getApiDetails
(
String
objId
);
}
src/main/java/com/pms/ocp/service/OcpApiExtentService.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.pms.ocp.model.entity.OcpApiExtent
;
public
interface
OcpApiExtentService
extends
IService
<
OcpApiExtent
>
{
}
src/main/java/com/pms/ocp/service/OcpApiSubsService.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.pms.ocp.model.entity.OcpApiSubs
;
public
interface
OcpApiSubsService
extends
IService
<
OcpApiSubs
>
{
}
src/main/java/com/pms/ocp/service/impl/ApiBasicManagementServiceImpl.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.service.impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.pms.ocp.common.exception.BeagleException
;
import
com.pms.ocp.mapper.ApiBasicManagementMapper
;
import
com.pms.ocp.mapper.OcpApiExtentMapper
;
import
com.pms.ocp.model.dto.ApiBaseDto
;
import
com.pms.ocp.model.dto.OcpApiBaseDto
;
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.vo.OcpApiBaseVo
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
com.pms.ocp.service.ApiBasicManagementService
;
import
com.pms.ocp.service.OcpApiExtentService
;
import
com.pms.ocp.service.OcpApiSubsService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.sql.Timestamp
;
import
java.time.LocalDateTime
;
import
java.util.Arrays
;
import
java.util.List
;
@Service
public
class
ApiBasicManagementServiceImpl
extends
ServiceImpl
<
ApiBasicManagementMapper
,
OcpApiBase
>
implements
ApiBasicManagementService
{
@Autowired
private
ApiBasicManagementMapper
apiBasicManagementMapper
;
@Autowired
private
OcpApiSubsService
ocpApiSubsService
;
@Autowired
private
OcpApiExtentService
ocpApiExtentService
;
@Autowired
private
OcpApiExtentMapper
ocpApiExtentMapper
;
/**
* 导出查询
*
* @param apiCodes
* @return
*/
public
List
<
OcpApiBaseVo
>
selectApiExport
(
String
apiCodes
)
{
String
[]
split
=
apiCodes
.
split
(
","
);
List
<
String
>
list
=
Arrays
.
asList
(
split
);
return
apiBasicManagementMapper
.
selectApiExport
(
list
);
}
/**
* 服务注册
*
* @param ocpApiBase
*/
public
void
addOcpApiBase
(
OcpApiBase
ocpApiBase
)
{
apiBasicManagementMapper
.
insert
(
ocpApiBase
);
}
/**
* 服务订阅
*
* @param apiCodes
*/
public
void
apiLogin
(
String
apiCodes
)
{
String
[]
split
=
apiCodes
.
split
(
","
);
List
<
String
>
apiCode
=
Arrays
.
asList
(
split
);
for
(
String
s
:
apiCode
)
{
OcpApiSubs
ocpApiSubs
=
new
OcpApiSubs
();
ocpApiSubs
.
setApiCode
(
s
);
ocpApiSubs
.
setSubsLogApiCtime
(
Timestamp
.
valueOf
(
LocalDateTime
.
now
()));
ocpApiSubs
.
setSubsLogApiMtime
(
Timestamp
.
valueOf
(
LocalDateTime
.
now
()));
ocpApiSubs
.
setSubsLogApiUserId
(
null
);
ocpApiSubs
.
setSubsLogApiAtime
(
Timestamp
.
valueOf
(
LocalDateTime
.
now
()));
ocpApiSubs
.
setSubsCompanyCode
(
null
);
ocpApiSubsService
.
save
(
ocpApiSubs
);
}
}
/**
* 条件查询
*
* @param apiCode
* @param keyword
* @param apiUnits
* @param startTime
* @param endTime
* @return
*/
public
OcpApiBaseDto
queryOcpApiBaseDto
(
String
apiCode
,
String
keyword
,
String
apiUnits
,
Timestamp
startTime
,
Timestamp
endTime
,
int
pageSize
,
int
pageNum
)
{
String
[]
split
=
apiUnits
.
split
(
","
);
List
<
String
>
list
=
Arrays
.
asList
(
split
);
pageSize
=
(
pageSize
-
1
)
*
pageNum
;
OcpApiBaseDto
ocpApiBaseDto
=
apiBasicManagementMapper
.
queryOcpApiBaseDto
(
keyword
,
list
,
startTime
,
endTime
,
apiCode
,
pageSize
,
pageNum
);
return
ocpApiBaseDto
;
}
/**
* 导入添加到数据库
*
* @param personList
*/
public
void
apiImport
(
List
<
OcpApiBaseVo
>
personList
)
{
for
(
OcpApiBaseVo
ocpApiBaseVo
:
personList
)
{
String
apiCode
=
ocpApiBaseVo
.
getApiCode
();
Timestamp
apiCtime
=
ocpApiBaseVo
.
getApiCtime
();
String
apiName
=
ocpApiBaseVo
.
getApiName
();
String
apiUnit
=
ocpApiBaseVo
.
getApiUnit
();
String
apiUrl
=
ocpApiBaseVo
.
getApiUrl
();
String
apiState
=
ocpApiBaseVo
.
getApiState
();
String
spaceName
=
ocpApiBaseVo
.
getSpaceName
();
String
clusterName
=
ocpApiBaseVo
.
getClusterName
();
OcpApiBase
ocpApiBase
=
new
OcpApiBase
();
ocpApiBase
.
setApiCode
(
apiCode
);
ocpApiBase
.
setApiGroupCode
(
"1"
);
ocpApiBase
.
setApiCtime
(
apiCtime
);
ocpApiBase
.
setApiName
(
apiName
);
ocpApiBase
.
setApiUnit
(
apiUnit
);
ocpApiBase
.
setApiUrl
(
apiUrl
);
this
.
save
(
ocpApiBase
);
OcpApiExtent
ocpApiExtent
=
new
OcpApiExtent
();
ocpApiExtent
.
setApiCode
(
apiCode
);
ocpApiExtent
.
setApiState
(
apiState
);
ocpApiExtent
.
setSpaceName
(
spaceName
);
ocpApiExtent
.
setClusterName
(
clusterName
);
ocpApiExtentService
.
save
(
ocpApiExtent
);
}
}
/**
* 服务发布
*
* @param apiCodes
*/
public
void
apiIssue
(
String
apiCodes
)
{
String
[]
split
=
apiCodes
.
split
(
","
);
List
<
String
>
list
=
Arrays
.
asList
(
split
);
LambdaQueryWrapper
<
OcpApiExtent
>
lambdaQueryWrapper
=
new
LambdaQueryWrapper
<>();
lambdaQueryWrapper
.
in
(
OcpApiExtent:
:
getApiCode
,
list
);
List
<
OcpApiExtent
>
ocpApiExtents
=
ocpApiExtentMapper
.
selectList
(
lambdaQueryWrapper
);
for
(
OcpApiExtent
ocpApiExtent
:
ocpApiExtents
)
{
if
(
ocpApiExtent
.
getApiState
().
equals
(
"1"
))
{
throw
new
BeagleException
(
"已发布"
);
}
else
{
ocpApiExtent
.
setApiState
(
"1"
);
ocpApiExtentMapper
.
updateById
(
ocpApiExtent
);
}
}
}
}
src/main/java/com/pms/ocp/service/impl/ApiDetailsServiceImpl.java
View file @
ced9d38e
package
com.pms.ocp.service.impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.pms.ocp.mapper.ApiDetailsMapper
;
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.vo.OcpApiBaseVo
;
import
com.pms.ocp.model.vo.ResponseVO
;
import
com.pms.ocp.service.ApiDetailsService
;
import
com.pms.ocp.service.OcpApiExtentService
;
import
com.pms.ocp.service.OcpApiSubsService
;
import
org.apache.poi.ss.usermodel.Cell
;
import
org.apache.poi.ss.usermodel.Row
;
import
org.apache.poi.xssf.usermodel.XSSFRow
;
import
org.apache.poi.xssf.usermodel.XSSFSheet
;
import
org.apache.poi.xssf.usermodel.XSSFWorkbook
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.io.IOException
;
import
java.sql.Timestamp
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
@Service
public
class
ApiDetailsServiceImpl
implements
ApiDetailsService
{
@Autowired
private
ApiDetailsMapper
apiDetailsMapper
;
@Override
public
ResponseVO
getApiDetails
(
String
objId
)
{
OcpApiBase
ocpApiBase
=
apiDetailsMapper
.
selectById
(
objId
);
return
ResponseVO
.
ok
(
ocpApiBase
);
}
}
src/main/java/com/pms/ocp/service/impl/OcpApiExtentServiceImpl.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.service.impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.pms.ocp.mapper.OcpApiExtentMapper
;
import
com.pms.ocp.model.entity.OcpApiExtent
;
import
com.pms.ocp.service.OcpApiExtentService
;
import
org.springframework.stereotype.Service
;
@Service
public
class
OcpApiExtentServiceImpl
extends
ServiceImpl
<
OcpApiExtentMapper
,
OcpApiExtent
>
implements
OcpApiExtentService
{
}
src/main/java/com/pms/ocp/service/impl/OcpApiSubsServiceImpl.java
0 → 100644
View file @
ced9d38e
package
com.pms.ocp.service.impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.pms.ocp.mapper.OcpApiSubsMapper
;
import
com.pms.ocp.model.entity.OcpApiSubs
;
import
com.pms.ocp.service.OcpApiSubsService
;
import
org.springframework.stereotype.Service
;
@Service
public
class
OcpApiSubsServiceImpl
extends
ServiceImpl
<
OcpApiSubsMapper
,
OcpApiSubs
>
implements
OcpApiSubsService
{
}
src/main/resources/application-local.yml
View file @
ced9d38e
spring
:
datasource
:
driver-class-name
:
org.postgresql.Driver
# jdbc-url: jdbc:postgresql://192.168.43.20:33072/pms3?currentSchema=public&stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true
# jdbc-url: jdbc:postgresql://172.20.10.9:33072/pms3?currentSchema=public&stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true
url
:
jdbc:postgresql://localhost:5432/pms3?stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true
username
:
postgres
password
:
1234qwer
password
:
root
type
:
com.zaxxer.hikari.HikariDataSource
# jdbc-url: jdbc:postgresql://192.168.43.20:33072/pms3?currentSchema=public&stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true
# jdbc-url: jdbc:postgresql://172.20.10.9:33072/pms3?currentSchema=public&stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true
url
:
jdbc:postgresql://localhost:5432/server?currentSchema=operating_platform&stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true
knife4j
:
enable
:
true
...
...
src/main/resources/mapper/ApiBasicManagementMapper.xml
0 → 100644
View file @
ced9d38e
<?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.ApiBasicManagementMapper"
>
<select
id=
"selectApiExport"
resultType=
"com.pms.ocp.model.vo.OcpApiBaseVo"
>
SELECT oab.obj_id,
oab.api_code,oab.api_name,oab.api_ctime,oab.api_unit
,oab.api_url,oab.api_unit,oab.api_ctime,oae.cluster_name cluster_name ,oae.space_name space_name,
oae.api_state api_state
FROM ocp_api_base oab JOIN ocp_api_extent oae ON oae.api_code = oab.api_code
where oab.api_code in
<foreach
collection=
"list"
index=
"index"
item=
"apiCode"
open=
"("
separator=
","
close=
")"
>
#{apiCode}
</foreach>
</select>
<select
id=
"queryOcpApiBaseDto"
resultType=
"com.pms.ocp.model.dto.OcpApiBaseDto"
>
select oab.obj_id,oab.api_code,oae.api_code,oab.api_name,oae.cluster_name,
oae.space_name,oab.api_url,oae.api_state ,oab.api_unit ,oab.api_ctime from ocp_api_base oab
join ocp_api_extent oae ON oae.api_code = oab.api_code
<where>
<if
test=
"apiCode!=null and apiCode!=''"
>
and oab.api_code=#{apiCode}
</if>
<if
test=
"apiCode!=null and apiCode!=''"
>
and oae.api_code=#{apiCode}
</if>
<!-- <if test="apiUnit !=null and apiUnit!=''">-->
<!-- and oab.api_unit=#{apiUnit}-->
<!-- </if>-->
<if
test=
"startTime !=null "
>
<![CDATA[
and oab.api_ctime >
= #{startTime}
]]>
</if>
<if
test=
"endTime !=null "
>
<![CDATA[
and oab.api_ctime <= #{endTime}
]]>
</if>
<if
test=
"keyword !=null and keyword != '' "
>
and oab.api_code like CONCAT('%', #{keyword}::text,'%')
</if>
<if
test=
"keyword !=null and keyword != '' "
>
and oab.api_name like CONCAT('%', #{keyword}::text,'%')
</if>
<if
test=
"list!=null"
>
and oab.api_unit in
<foreach
collection=
"list"
index=
"index"
item=
"apiUnit"
open=
"("
separator=
","
close=
")"
>
#{apiUnit}
</foreach>
</if>
</where>
limit #{pageNum} offset #{pageSize}
</select>
</mapper>
\ No newline at end of file
src/main/resources/mapper/ApiDetailsMapper.xml
0 → 100644
View file @
ced9d38e
<?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.ApiDetailsMapper"
>
</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