Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-tool
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张帅
amos-tool
Commits
4a01f1a3
Commit
4a01f1a3
authored
Jul 26, 2023
by
Code-KingTT
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/develop' into develop
parents
d0928246
7b7e92a3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
701 additions
and
225 deletions
+701
-225
AgencyTreeResource.java
.../yeejoin/amos/api/tool/controller/AgencyTreeResource.java
+0
-50
ApiSourceResource.java
...m/yeejoin/amos/api/tool/controller/ApiSourceResource.java
+0
-2
DataApiResource.java
...com/yeejoin/amos/api/tool/controller/DataApiResource.java
+2
-1
DataBaseLinkResource.java
...eejoin/amos/api/tool/controller/DataBaseLinkResource.java
+81
-17
DataBaseNameListResource.java
...in/amos/api/tool/controller/DataBaseNameListResource.java
+58
-0
RelationResource.java
...om/yeejoin/amos/api/tool/controller/RelationResource.java
+17
-15
TemplateResource.java
...om/yeejoin/amos/api/tool/controller/TemplateResource.java
+1
-1
TransferDataResource.java
...eejoin/amos/api/tool/controller/TransferDataResource.java
+30
-0
AgencyModel.java
...ava/com/yeejoin/amos/api/tool/face/model/AgencyModel.java
+3
-3
DataBaseLinkModel.java
...m/yeejoin/amos/api/tool/face/model/DataBaseLinkModel.java
+4
-5
DataBaseNameListModel.java
...ejoin/amos/api/tool/face/model/DataBaseNameListModel.java
+24
-0
RelationTreeModel.java
...m/yeejoin/amos/api/tool/face/model/RelationTreeModel.java
+2
-2
AgencyTreeMapper.java
.../yeejoin/amos/api/tool/face/orm/dao/AgencyTreeMapper.java
+0
-13
DataBaseNameListMapper.java
...in/amos/api/tool/face/orm/dao/DataBaseNameListMapper.java
+11
-0
DataBaseLink.java
...m/yeejoin/amos/api/tool/face/orm/entity/DataBaseLink.java
+5
-11
DataBaseNameList.java
...ejoin/amos/api/tool/face/orm/entity/DataBaseNameList.java
+10
-19
AgencyTreeService.java
...yeejoin/amos/api/tool/face/service/AgencyTreeService.java
+0
-29
DataBaseLinkService.java
...ejoin/amos/api/tool/face/service/DataBaseLinkService.java
+109
-40
DataBaseNameListService.java
...n/amos/api/tool/face/service/DataBaseNameListService.java
+55
-0
RelationService.java
...m/yeejoin/amos/api/tool/face/service/RelationService.java
+0
-0
TemplateService.java
...m/yeejoin/amos/api/tool/face/service/TemplateService.java
+38
-10
TransferDataService.java
...ejoin/amos/api/tool/face/service/TransferDataService.java
+59
-0
DataBaseUtils.java
...n/java/com/yeejoin/amos/api/tool/utils/DataBaseUtils.java
+190
-0
application.properties
src/main/resources/application.properties
+2
-7
No files found.
src/main/java/com/yeejoin/amos/api/tool/controller/AgencyTreeResource.java
deleted
100644 → 0
View file @
d0928246
package
com
.
yeejoin
.
amos
.
api
.
tool
.
controller
;
import
com.yeejoin.amos.api.tool.face.model.AgencyTreeModel
;
import
com.yeejoin.amos.api.tool.face.service.AgencyTreeService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
java.util.List
;
/**
* @author r
*/
@RestController
@Api
(
tags
=
"机构树"
)
@RequestMapping
(
value
=
"/privilege_agency"
)
public
class
AgencyTreeResource
{
@Autowired
private
AgencyTreeService
agencyTreeService
;
/**
* 根据sequenceNbr删除
* @param sequenceNbr 主键
* @return Boolean
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@DeleteMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"DELETE"
,
value
=
"根据sequenceNbr删除"
,
notes
=
"根据sequenceNbr删除"
)
public
ResponseModel
<
Boolean
>
deleteBySequenceNbr
(
@PathVariable
(
value
=
"sequenceNbr"
)
Long
sequenceNbr
){
return
ResponseHelper
.
buildResponse
(
agencyTreeService
.
removeById
(
sequenceNbr
));
}
/**
*列表全部数据查询
* @return List<AgencyTreeModel>
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"列表全部数据查询"
,
notes
=
"列表全部数据查询"
)
@GetMapping
(
value
=
"/list"
)
public
ResponseModel
<
List
<
AgencyTreeModel
>>
selectForList
()
{
return
ResponseHelper
.
buildResponse
(
agencyTreeService
.
queryForAgencyTreeList
());
}
}
src/main/java/com/yeejoin/amos/api/tool/controller/ApiSourceResource.java
View file @
4a01f1a3
...
...
@@ -25,8 +25,6 @@ public class ApiSourceResource {
@Autowired
private
ApiSourceService
apiSourceService
;
@Autowired
private
ApiInfoService
apiInfoService
;
/**
* 新增
...
...
src/main/java/com/yeejoin/amos/api/tool/controller/DataApiResource.java
View file @
4a01f1a3
...
...
@@ -36,7 +36,8 @@ import java.util.Map;
@TycloudResource
(
module
=
"atl"
,
value
=
"dataApi"
)
@RequestMapping
(
value
=
"/v1/dataApi"
)
@Api
(
tags
=
"atl-导出"
)
public
class
DataApiResource
{
public
class
DataApiResource
{
private
final
Logger
logger
=
LogManager
.
getLogger
(
DataApiResource
.
class
);
...
...
src/main/java/com/yeejoin/amos/api/tool/controller/DataBaseLinkResource.java
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
controller
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.api.tool.face.model.AgencyModel
;
import
com.yeejoin.amos.api.tool.face.model.DataBaseLinkModel
;
import
com.yeejoin.amos.api.tool.face.model.TemplateVoModel
;
import
com.yeejoin.amos.api.tool.face.service.DataBaseLinkService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
...
...
@@ -12,6 +14,9 @@ import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.sql.SQLException
;
import
java.util.List
;
...
...
@@ -20,45 +25,89 @@ import java.util.List;
*/
@RestController
@Api
(
tags
=
"数据库信息"
)
@RequestMapping
(
value
=
"/database_
join_record
"
)
@RequestMapping
(
value
=
"/database_
link
"
)
public
class
DataBaseLinkResource
{
@Autowired
private
DataBaseLinkService
dataBaseLinkService
;
/**
* 数据库初始化
* @param dataBaseLinkModel 数据库连接信息
* @return List<DataBaseLinkModel>
* 新增
*
* @param dataBaseLinkModel 数据库连接
* @return DataBaseLinkModel
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@PostMapping
(
value
=
"/save"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"新增"
,
notes
=
"新增"
)
public
ResponseModel
<
DataBaseLinkModel
>
save
(
@RequestBody
DataBaseLinkModel
dataBaseLinkModel
)
throws
Exception
{
return
ResponseHelper
.
buildResponse
(
dataBaseLinkService
.
save
(
dataBaseLinkModel
));
}
/**
* 根据sequenceNbr更新
*
* @param model 数据库连接
* @return DataBaseLinkModel
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@PutMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"PUT"
,
value
=
"根据sequenceNbr更新"
,
notes
=
"根据sequenceNbr更新"
)
public
ResponseModel
<
DataBaseLinkModel
>
updateBySeq
(
@RequestBody
DataBaseLinkModel
model
,
@PathVariable
(
value
=
"sequenceNbr"
)
Long
sequenceNbr
)
throws
Exception
{
model
.
setSequenceNbr
(
sequenceNbr
);
return
ResponseHelper
.
buildResponse
(
dataBaseLinkService
.
update
(
model
));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return Boolean
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@DeleteMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"DELETE"
,
value
=
"根据sequenceNbr删除"
,
notes
=
"根据sequenceNbr删除"
)
public
ResponseModel
<
Boolean
>
deleteBySequenceNbr
(
@PathVariable
(
value
=
"sequenceNbr"
)
Long
sequenceNbr
)
{
return
ResponseHelper
.
buildResponse
(
dataBaseLinkService
.
removeById
(
sequenceNbr
));
}
/**
* 根据sequenceNbr查询
* @param sequenceNbr 主键
* @return TemplateVoModel
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@PostMapping
(
value
=
"/refresh"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"数据库初始化"
,
notes
=
"数据库初始化"
)
public
ResponseModel
<
List
<
DataBaseLinkModel
>>
save
(
@RequestBody
DataBaseLinkModel
dataBaseLinkModel
)
throws
Exception
{
return
ResponseHelper
.
buildResponse
(
dataBaseLinkService
.
refreshDataBase
(
dataBaseLinkService
.
encryptPwd
(
dataBaseLinkModel
)));
@GetMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"根据sequenceNbr查询单个"
,
notes
=
"根据sequenceNbr查询单个"
)
public
ResponseModel
<
DataBaseLinkModel
>
selectOne
(
@PathVariable
Long
sequenceNbr
)
{
return
ResponseHelper
.
buildResponse
(
dataBaseLinkService
.
queryBySeq
(
sequenceNbr
));
}
/**
* 列表分页查询
* 机构分页查询
*
* @param current 当前分页
* @param size 分页大小
* @return Page<
DataBaseLink
Model>
* @param size
分页大小
* @return Page<
Agency
Model>
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@GetMapping
(
value
=
"/page"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"分页查询"
,
notes
=
"分页查询"
)
public
ResponseModel
<
Page
<
DataBaseLink
Model
>>
queryForPage
(
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"
机构
分页查询"
,
notes
=
"分页查询"
)
public
ResponseModel
<
Page
<
Agency
Model
>>
queryForPage
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
)
{
Page
<
DataBaseLinkModel
>
page
=
new
Page
<
DataBaseLinkModel
>();
@RequestParam
(
value
=
"size"
)
int
size
,
@RequestParam
Long
ipSeq
)
throws
SQLException
{
Page
<
AgencyModel
>
page
=
new
Page
<>();
page
.
setCurrent
(
current
);
page
.
setSize
(
size
);
return
ResponseHelper
.
buildResponse
(
dataBaseLinkService
.
queryFor
DataBasePage
(
page
));
return
ResponseHelper
.
buildResponse
(
dataBaseLinkService
.
queryFor
AgencyPage
(
page
,
ipSeq
));
}
/**
* 列表全部数据查询
*
* @return List<DataBaseLinkModel>
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
...
...
@@ -67,4 +116,19 @@ public class DataBaseLinkResource {
public
ResponseModel
<
List
<
DataBaseLinkModel
>>
selectForList
()
{
return
ResponseHelper
.
buildResponse
(
dataBaseLinkService
.
queryForDataBaseList
());
}
/**
* 机构列表查询
*
* @return Page<AgencyModel>
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@GetMapping
(
value
=
"/agency/list"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"机构列表查询"
,
notes
=
"列表查询"
)
public
ResponseModel
<
List
<
AgencyModel
>>
queryForList
(
HttpServletRequest
request
)
throws
SQLException
,
IOException
{
return
ResponseHelper
.
buildResponse
(
dataBaseLinkService
.
queryForAgencyList
(
request
));
}
}
src/main/java/com/yeejoin/amos/api/tool/controller/DataBaseNameListResource.java
0 → 100644
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
controller
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.api.tool.face.model.DataBaseNameListModel
;
import
com.yeejoin.amos.api.tool.face.service.DataBaseNameListService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
java.util.List
;
@RestController
@Api
(
tags
=
"数据库名称表"
)
@RequestMapping
(
value
=
"/database_name"
)
public
class
DataBaseNameListResource
{
@Autowired
private
DataBaseNameListService
dataBaseNameListService
;
/**
* 数据库初始化
*
* @param ipSeq 数据库连接seq
* @return List<DataBaseLinkModel>
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@PostMapping
(
value
=
"/refresh/{ipSeq}"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"数据库初始化"
,
notes
=
"数据库初始化"
)
public
ResponseModel
<
List
<
String
>>
refresh
(
@PathVariable
Long
ipSeq
)
throws
Exception
{
return
ResponseHelper
.
buildResponse
(
dataBaseNameListService
.
refreshDataBase
(
ipSeq
));
}
/**
* 分页查询
*
* @param current 当前分页
* @param size 分页大小
* @return Page<DataBaseNameListModel>
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@GetMapping
(
value
=
"/page"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"分页查询"
,
notes
=
"分页查询"
)
public
ResponseModel
<
Page
<
DataBaseNameListModel
>>
queryForPage
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
,
@RequestParam
Long
ipSeq
)
{
Page
<
DataBaseNameListModel
>
page
=
new
Page
<>();
page
.
setCurrent
(
current
);
page
.
setSize
(
size
);
return
ResponseHelper
.
buildResponse
(
dataBaseNameListService
.
queryForDataBasePage
(
page
,
ipSeq
));
}
}
src/main/java/com/yeejoin/amos/api/tool/controller/RelationResource.java
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
controller
;
import
com.yeejoin.amos.api.tool.face.model.DataBaseLinkModel
;
import
com.yeejoin.amos.api.tool.face.service.DataBaseLinkService
;
import
com.yeejoin.amos.api.tool.face.service.RelationService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Configurable
;
import
org.springframework.web.bind.annotation.*
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
javax.xml.crypto.Data
;
import
java.sql.Connection
;
import
java.util.ArrayList
;
import
java.util.List
;
import
javax.servlet.http.HttpServletResponse
;
@CrossOrigin
...
...
@@ -31,29 +26,35 @@ public class RelationResource {
/**
* 根据机构ID和数据库sequenceNbr批量删除数据库
*
* @param agencyCodeId 机构ID
* @param sequenceNbrs 多个主键
* @return String
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@DeleteMapping
(
value
=
"/relation/{agencyCode
Id
}/{sequenceNbrs}"
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@DeleteMapping
(
value
=
"/relation/{agencyCode}/{sequenceNbrs}"
)
@ApiOperation
(
httpMethod
=
"DELETE"
,
value
=
"机构删除"
,
notes
=
"机构删除"
)
public
ResponseModel
<
String
>
deleteDataBase
(
@PathVariable
Long
agencyCodeId
,
@PathVariable
String
agencyCode
,
@PathVariable
String
sequenceNbrs
)
throws
Exception
{
relationService
.
deleteAgency
(
agencyCode
Id
,
sequenceNbrs
);
relationService
.
deleteAgency
(
agencyCode
,
sequenceNbrs
);
return
ResponseHelper
.
buildResponse
(
"The data has been deleted !"
);
}
/**
* 导出SQL脚本
*
* @return String
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@GetMapping
(
value
=
"/output/{agencyCode
Id
}/{sequenceNbrs}"
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@GetMapping
(
value
=
"/output/{agencyCode}/{sequenceNbrs}"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"导出"
,
notes
=
"导出"
)
public
ResponseModel
<
String
>
genereteSQL
(
@PathVariable
Long
agencyCodeId
,
@PathVariable
String
sequenceNbrs
)
throws
Exception
{
relationService
.
outputAgency
(
agencyCodeId
,
sequenceNbrs
);
public
ResponseModel
<
String
>
generateSQL
(
@PathVariable
String
agencyCode
,
@PathVariable
String
sequenceNbrs
,
HttpServletResponse
response
)
throws
Exception
{
relationService
.
outputAgency
(
agencyCode
,
sequenceNbrs
,
response
);
return
ResponseHelper
.
buildResponse
(
"yes"
);
}
}
}
\ No newline at end of file
src/main/java/com/yeejoin/amos/api/tool/controller/TemplateResource.java
View file @
4a01f1a3
...
...
@@ -133,9 +133,9 @@ public class TemplateResource {
* @return TemplateModel
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@CrossOrigin
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"根据sequenceNbr导入content"
,
notes
=
"根据sequenceNbr导入content"
)
@PostMapping
(
value
=
"/import"
)
@CrossOrigin
(
methods
=
RequestMethod
.
POST
)
public
ResponseModel
<
TemplateModel
>
importTpl
(
@RequestParam
(
"file"
)
MultipartFile
multipartFile
)
throws
IOException
{
return
ResponseHelper
.
buildResponse
(
templateService
.
createWithModel
(
templateService
.
fileToTpl
(
multipartFile
)));
}
...
...
src/main/java/com/yeejoin/amos/api/tool/controller/TransferDataResource.java
0 → 100644
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
controller
;
import
com.yeejoin.amos.api.tool.face.service.TransferDataService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
java.sql.SQLException
;
@CrossOrigin
@RestController
@Api
(
tags
=
"数据迁移"
)
@RequestMapping
(
value
=
"/transfer_data"
)
public
class
TransferDataResource
{
@Autowired
private
TransferDataService
transferDataService
;
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@PutMapping
(
value
=
"/relation/"
)
@ApiOperation
(
httpMethod
=
"Put"
,
value
=
"数据迁移"
,
notes
=
"数据迁移"
)
public
ResponseModel
<
String
>
transferData
(
)
throws
SQLException
,
ClassNotFoundException
{
transferDataService
.
transferData
();
return
ResponseHelper
.
buildResponse
(
"The data has been transferred !"
);
}
}
src/main/java/com/yeejoin/amos/api/tool/face/model/Agency
Tree
Model.java
→
src/main/java/com/yeejoin/amos/api/tool/face/model/AgencyModel.java
View file @
4a01f1a3
...
...
@@ -2,6 +2,7 @@ package com.yeejoin.amos.api.tool.face.model;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.typroject.tyboot.core.rdbms.model.BaseModel
;
...
...
@@ -10,9 +11,8 @@ import org.typroject.tyboot.core.rdbms.model.BaseModel;
* @author r
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"DataBaseLinkModel"
,
description
=
""
)
public
class
AgencyTreeModel
extends
BaseModel
{
@ApiModel
(
value
=
"AgencyModel"
,
description
=
""
)
public
class
AgencyModel
{
@ApiModelProperty
(
value
=
"机构名称"
)
private
String
agencyName
;
...
...
src/main/java/com/yeejoin/amos/api/tool/face/model/DataBaseLinkModel.java
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
model
;
import
com.yeejoin.amos.api.tool.face.orm.entity.DataBaseLink
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -16,9 +17,6 @@ import org.typroject.tyboot.core.rdbms.model.BaseModel;
@ApiModel
(
value
=
"DataBaseLinkModel"
,
description
=
""
)
public
class
DataBaseLinkModel
extends
BaseModel
{
@ApiModelProperty
(
value
=
"数据名称"
)
private
String
dataName
=
""
;
@ApiModelProperty
(
value
=
"主机IP"
)
private
String
ip
;
...
...
@@ -34,12 +32,13 @@ public class DataBaseLinkModel extends BaseModel {
@ApiModelProperty
(
value
=
"密码"
)
private
String
passWord
;
public
DataBaseLinkModel
(
String
dataName
,
String
ip
,
String
port
,
String
dbName
,
String
userName
,
String
passWord
)
{
this
.
dataName
=
dataName
;
public
DataBaseLinkModel
(
String
ip
,
String
port
,
String
dbName
,
String
userName
,
String
passWord
)
{
this
.
ip
=
ip
;
this
.
port
=
port
;
this
.
dbName
=
dbName
;
this
.
userName
=
userName
;
this
.
passWord
=
passWord
;
}
}
src/main/java/com/yeejoin/amos/api/tool/face/model/DataBaseNameListModel.java
0 → 100644
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
model
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.NoArgsConstructor
;
import
org.typroject.tyboot.core.rdbms.model.BaseModel
;
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel
(
value
=
"DataBaseNameListModel"
,
description
=
""
)
public
class
DataBaseNameListModel
extends
BaseModel
{
@ApiModelProperty
(
value
=
"数据库名"
)
private
String
dbName
;
@ApiModelProperty
(
value
=
"连接id"
)
private
Long
parentId
;
}
src/main/java/com/yeejoin/amos/api/tool/face/model/RelationTreeModel.java
View file @
4a01f1a3
...
...
@@ -4,11 +4,11 @@ import io.swagger.annotations.ApiModel;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
sun.reflect.generics.tree.Tree
;
//
import sun.reflect.generics.tree.Tree;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.TreeMap
;
//
import java.util.TreeMap;
@Data
@NoArgsConstructor
...
...
src/main/java/com/yeejoin/amos/api/tool/face/orm/dao/AgencyTreeMapper.java
deleted
100644 → 0
View file @
d0928246
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
orm
.
dao
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.yeejoin.amos.api.tool.face.orm.entity.AgencyTree
;
/**
* Mapper 接口
*
* @author r
*/
public
interface
AgencyTreeMapper
extends
BaseMapper
<
AgencyTree
>
{
}
src/main/java/com/yeejoin/amos/api/tool/face/orm/dao/DataBaseNameListMapper.java
0 → 100644
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
orm
.
dao
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.yeejoin.amos.api.tool.face.orm.entity.DataBaseNameList
;
import
org.mapstruct.Mapper
;
import
org.springframework.stereotype.Repository
;
@Mapper
@Repository
public
interface
DataBaseNameListMapper
extends
BaseMapper
<
DataBaseNameList
>
{
}
src/main/java/com/yeejoin/amos/api/tool/face/orm/entity/DataBaseLink.java
View file @
4a01f1a3
...
...
@@ -20,39 +20,33 @@ import lombok.experimental.Accessors;
public
class
DataBaseLink
extends
BaseEntity
{
/**
*数据名称
*/
@TableField
(
"dataName"
)
private
String
dataName
;
/**
*主机IP
*/
@TableField
(
"
ip
"
)
@TableField
(
"
IP
"
)
private
String
ip
;
/**
*端口
*/
@TableField
(
"
port
"
)
@TableField
(
"
PORT
"
)
private
String
port
;
/**
*数据库名
*/
@TableField
(
"
dbName
"
)
@TableField
(
"
DATABASE_NAME
"
)
private
String
dbName
;
/**
*用户名
*/
@TableField
(
"
userName
"
)
@TableField
(
"
USER_NAME
"
)
private
String
userName
;
/**
*密码
*/
@TableField
(
"
passWord
"
)
@TableField
(
"
PASSWORD
"
)
private
String
passWord
;
}
src/main/java/com/yeejoin/amos/api/tool/face/orm/entity/
AgencyTree
.java
→
src/main/java/com/yeejoin/amos/api/tool/face/orm/entity/
DataBaseNameList
.java
View file @
4a01f1a3
...
...
@@ -2,35 +2,26 @@ package com.yeejoin.amos.api.tool.face.orm.entity;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
/**
* @author r
*/
import
org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity
;
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@Accessors
(
chain
=
true
)
@TableName
(
"
privilege_agency
"
)
public
class
AgencyTree
extends
BaseEntity
{
@TableName
(
"
database_name_list
"
)
public
class
DataBaseNameList
extends
BaseEntity
{
/**
*
机构名称
*
数据库名
*/
@TableField
(
"
AGENCY
_NAME"
)
private
String
agency
Name
;
@TableField
(
"
DATABASE
_NAME"
)
private
String
db
Name
;
/**
*
机构编码
*
连接id
*/
@TableField
(
"AGENCY_CODE"
)
private
String
agencyCode
;
/**
*机构描述
*/
@TableField
(
"AGENCY_DESC"
)
private
String
agencyDesc
;
@TableField
(
"PARENT_ID"
)
private
Long
parentId
;
}
src/main/java/com/yeejoin/amos/api/tool/face/service/AgencyTreeService.java
deleted
100644 → 0
View file @
d0928246
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
service
;
import
com.yeejoin.amos.api.tool.face.model.AgencyTreeModel
;
import
com.yeejoin.amos.api.tool.face.orm.dao.AgencyTreeMapper
;
import
com.yeejoin.amos.api.tool.face.orm.entity.AgencyTree
;
import
org.springframework.stereotype.Service
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
java.util.List
;
/**
* 服务实现类
*
* @author r
*/
@Service
public
class
AgencyTreeService
extends
BaseService
<
AgencyTreeModel
,
AgencyTree
,
AgencyTreeMapper
>
{
/**
* 列表查询
*/
public
List
<
AgencyTreeModel
>
queryForAgencyTreeList
()
{
return
this
.
queryForList
(
""
,
false
);
}
public
String
queryForAgencyCodeById
(
Long
id
){
return
queryBySeq
(
id
).
getAgencyCode
();
}
}
src/main/java/com/yeejoin/amos/api/tool/face/service/DataBaseLinkService.java
View file @
4a01f1a3
...
...
@@ -2,19 +2,26 @@ package com.yeejoin.amos.api.tool.face.service;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.api.tool.face.model.AgencyModel
;
import
com.yeejoin.amos.api.tool.face.model.DataBaseLinkModel
;
import
com.yeejoin.amos.api.tool.face.orm.dao.DataBaseLinkMapper
;
import
com.yeejoin.amos.api.tool.face.orm.entity.DataBaseLink
;
import
com.yeejoin.amos.api.tool.utils.AESUtils
;
import
org.apache.commons.beanutils.Bean
Utils
;
import
com.yeejoin.amos.api.tool.utils.DataBase
Utils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.sql.*
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.Map
;
/**
* 服务实现类
...
...
@@ -22,17 +29,85 @@ import java.util.List;
* @author r
*/
@Service
public
class
DataBaseLinkService
extends
BaseService
<
DataBaseLinkModel
,
DataBaseLink
,
DataBaseLinkMapper
>
{
@Autowired
private
DataBaseLinkMapper
dataBaseLinkMapper
;
DataBaseLinkMapper
dataBaseLinkMapper
;
/**
* 新增
*/
public
DataBaseLinkModel
save
(
DataBaseLinkModel
dataBaseLinkModel
)
throws
Exception
{
DataBaseLinkModel
model
=
this
.
encryptPwd
(
dataBaseLinkModel
);
if
(
this
.
testConnection
(
model
))
{
return
this
.
createWithModel
(
model
);
}
else
{
return
new
DataBaseLinkModel
();
}
}
/**
* 编辑
*/
public
DataBaseLinkModel
update
(
DataBaseLinkModel
dataBaseLinkModel
)
throws
Exception
{
DataBaseLinkModel
model
=
this
.
encryptPwd
(
dataBaseLinkModel
);
if
(
this
.
testConnection
(
model
))
{
return
this
.
updateWithModel
(
model
);
}
else
{
return
new
DataBaseLinkModel
();
}
}
/**
* 机构分页查询
*/
public
Page
<
AgencyModel
>
queryForAgencyPage
(
Page
<
AgencyModel
>
page
,
Long
ipSeq
)
throws
SQLException
{
Connection
connection
=
this
.
connectNewDatabase
(
this
.
queryBySeq
(
ipSeq
));
List
<
Map
<
String
,
Object
>>
maps
=
DataBaseUtils
.
getMaps
(
"SELECT AGENCY_NAME, AGENCY_CODE, AGENCY_DESC FROM privilege_agency;"
,
connection
);
connection
.
close
();
List
<
AgencyModel
>
records
=
new
ArrayList
<>();
for
(
Map
<
String
,
Object
>
map
:
maps
)
{
AgencyModel
model
=
new
AgencyModel
();
model
.
setAgencyName
(
map
.
get
(
"AGENCY_NAME"
).
toString
());
model
.
setAgencyCode
(
map
.
get
(
"AGENCY_CODE"
).
toString
());
if
((
map
.
get
(
"AGENCY_DESC"
)
!=
null
))
model
.
setAgencyDesc
(
map
.
get
(
"AGENCY_DESC"
).
toString
());
records
.
add
(
model
);
}
Page
<
AgencyModel
>
entiryPage
=
new
Page
(
page
.
getCurrent
(),
page
.
getSize
());
if
(!
ValidationUtil
.
isEmpty
(
records
))
{
page
.
setTotal
(
records
.
size
());
page
.
setPages
(
entiryPage
.
getPages
());
page
.
setCurrent
(
entiryPage
.
getCurrent
());
page
.
setSize
(
entiryPage
.
getSize
());
page
.
setRecords
(
records
);
}
return
page
;
}
/**
*
分页
查询
*
机构列表
查询
*/
public
Page
<
DataBaseLinkModel
>
queryForDataBasePage
(
Page
<
DataBaseLinkModel
>
page
)
{
return
this
.
queryForPage
(
page
,
null
,
false
);
public
List
<
AgencyModel
>
queryForAgencyList
(
HttpServletRequest
request
)
throws
SQLException
,
IOException
{
// URL url = new URL(request.getRequestURL().toString());
DataBaseLink
dataBaseLink
=
getOne
(
new
QueryWrapper
<
DataBaseLink
>().
eq
(
"IP"
,
DataBaseUtils
.
getIp
()));
DataBaseLinkModel
dataBaseLinkModel
=
new
DataBaseLinkModel
();
Bean
.
toModel
(
dataBaseLink
,
dataBaseLinkModel
);
Connection
connection
=
this
.
connectNewDatabase
(
dataBaseLinkModel
);
List
<
Map
<
String
,
Object
>>
maps
=
DataBaseUtils
.
getMaps
(
"SELECT AGENCY_NAME, AGENCY_CODE, AGENCY_DESC FROM privilege_agency;"
,
connection
);
connection
.
close
();
List
<
AgencyModel
>
records
=
new
ArrayList
<>();
for
(
Map
<
String
,
Object
>
map
:
maps
)
{
AgencyModel
model
=
new
AgencyModel
();
model
.
setAgencyName
(
map
.
get
(
"AGENCY_NAME"
).
toString
());
model
.
setAgencyCode
(
map
.
get
(
"AGENCY_CODE"
).
toString
());
if
((
map
.
get
(
"AGENCY_DESC"
)
!=
null
))
model
.
setAgencyDesc
(
map
.
get
(
"AGENCY_DESC"
).
toString
());
records
.
add
(
model
);
}
return
records
;
}
/**
...
...
@@ -57,51 +132,45 @@ public class DataBaseLinkService extends BaseService<DataBaseLinkModel, DataBase
}
/**
*
初始化数据库连接表
*
连接数据库
*/
public
List
<
DataBaseLinkModel
>
refreshDataBase
(
DataBaseLinkModel
dataBaseLinkModel
)
throws
Exception
{
//清空表单
this
.
remove
(
new
QueryWrapper
<>());
//连接数据库
Connection
connection
=
this
.
connectNewDatabase
(
dataBaseLinkModel
);
if
(
connection
==
null
)
return
null
;
List
<
DataBaseLinkModel
>
dataBaseLinkModels
=
new
ArrayList
<>();
Collection
<
DataBaseLink
>
dataBaseLinks
=
new
ArrayList
<>();
for
(
String
name
:
this
.
getDataBaseName
(
connection
))
{
if
(
name
==
null
)
break
;
DataBaseLinkModel
model
=
new
DataBaseLinkModel
();
BeanUtils
.
copyProperties
(
model
,
dataBaseLinkModel
);
model
.
setDbName
(
name
);
model
.
setDataName
(
name
);
dataBaseLinkModels
.
add
(
model
);
dataBaseLinks
.
add
(
this
.
prepareEntity
(
model
));
public
Connection
connectNewDatabase
(
DataBaseLinkModel
model
)
{
try
{
// 加载数据库驱动
Class
.
forName
(
"com.mysql.cj.jdbc.Driver"
);
// 连接新增的数据库
String
dbUrl
=
"jdbc:mysql://"
+
model
.
getIp
()
+
":"
+
model
.
getPort
()
+
"/"
+
model
.
getDbName
();
// 解密pwd,并连接
return
DriverManager
.
getConnection
(
dbUrl
,
model
.
getUserName
(),
AESUtils
.
decrypt
(
model
.
getPassWord
()));
}
catch
(
SQLException
|
ClassNotFoundException
e
)
{
e
.
printStackTrace
();
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
e
);
}
this
.
saveBatch
(
dataBaseLinks
);
connection
.
close
();
return
dataBaseLinkModels
;
return
null
;
}
/**
* 连接数据库
*
测试
连接数据库
*/
public
Connection
connectNewDatabase
(
DataBaseLinkModel
model
)
throws
Exception
{
// 加载数据库驱动
Class
.
forName
(
"com.mysql.cj.jdbc.Driver"
);
// 连接新增的数据库
String
dbUrl
=
"jdbc:mysql://"
+
model
.
getIp
()
+
":"
+
model
.
getPort
()
+
"/"
+
model
.
getDbName
()
;
// 解密pwd,并连接
return
DriverManager
.
getConnection
(
dbUrl
,
model
.
getUserName
(),
AESUtils
.
decrypt
(
model
.
getPassWord
()))
;
public
boolean
testConnection
(
DataBaseLinkModel
model
)
throws
Exception
{
Connection
connection
=
this
.
connectNewDatabase
(
model
);
if
(
connection
!=
null
)
{
connection
.
close
();
return
true
;
}
return
false
;
}
/**
* 加密model里的密码
*/
public
DataBaseLinkModel
encryptPwd
(
DataBaseLinkModel
model
)
throws
Exception
{
model
.
setPassWord
(
AESUtils
.
encrypt
(
model
.
getPassWord
()));
return
model
;
model
.
setPassWord
(
AESUtils
.
encrypt
(
model
.
getPassWord
()));
return
model
;
}
}
src/main/java/com/yeejoin/amos/api/tool/face/service/DataBaseNameListService.java
0 → 100644
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
service
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.api.tool.face.model.DataBaseLinkModel
;
import
com.yeejoin.amos.api.tool.face.model.DataBaseNameListModel
;
import
com.yeejoin.amos.api.tool.face.orm.dao.DataBaseNameListMapper
;
import
com.yeejoin.amos.api.tool.face.orm.entity.DataBaseNameList
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
java.sql.Connection
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.List
;
@Service
public
class
DataBaseNameListService
extends
BaseService
<
DataBaseNameListModel
,
DataBaseNameList
,
DataBaseNameListMapper
>
{
@Autowired
private
DataBaseLinkService
dataBaseLinkService
;
/**
* 分页查询
*/
public
Page
<
DataBaseNameListModel
>
queryForDataBasePage
(
Page
<
DataBaseNameListModel
>
page
,
Long
parentId
)
{
return
this
.
queryForPage
(
page
,
null
,
false
,
parentId
);
}
/**
* 初始化数据库名表
*/
public
List
<
String
>
refreshDataBase
(
Long
ipSeq
)
throws
Exception
{
DataBaseLinkModel
dataBaseLinkModel
=
dataBaseLinkService
.
queryBySeq
(
ipSeq
);
//清空表单
this
.
remove
(
new
QueryWrapper
<
DataBaseNameList
>().
eq
(
"PARENT_ID"
,
ipSeq
));
//连接数据库
Connection
connection
=
dataBaseLinkService
.
connectNewDatabase
(
dataBaseLinkModel
);
if
(
connection
==
null
)
return
null
;
List
<
String
>
strings
=
new
ArrayList
<>();
Collection
<
DataBaseNameList
>
dataBaseNameLists
=
new
ArrayList
<>();
for
(
String
name
:
dataBaseLinkService
.
getDataBaseName
(
connection
))
{
if
(
name
==
null
)
break
;
DataBaseNameListModel
model
=
new
DataBaseNameListModel
(
name
,
ipSeq
);
strings
.
add
(
name
);
dataBaseNameLists
.
add
(
this
.
prepareEntity
(
model
));
}
this
.
saveBatch
(
dataBaseNameLists
);
connection
.
close
();
return
strings
;
}
}
src/main/java/com/yeejoin/amos/api/tool/face/service/RelationService.java
View file @
4a01f1a3
This diff is collapsed.
Click to expand it.
src/main/java/com/yeejoin/amos/api/tool/face/service/TemplateService.java
View file @
4a01f1a3
...
...
@@ -4,34 +4,62 @@ import com.alibaba.fastjson.JSON;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.api.tool.face.model.PictureModel
;
import
com.yeejoin.amos.api.tool.face.model.TemplateCategoryTreeModel
;
import
com.yeejoin.amos.api.tool.face.model.TemplateModel
;
import
com.yeejoin.amos.api.tool.face.model.TemplateVoModel
;
import
com.yeejoin.amos.api.tool.face.orm.dao.TemplateMapper
;
import
com.yeejoin.amos.api.tool.face.orm.entity.Template
;
import
com.yeejoin.amos.api.tool.utils.ConvertUtil
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.typroject.tyboot.core.foundation.utils.
String
Util
;
import
org.typroject.tyboot.core.foundation.utils.
Validation
Util
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
java.io.IOException
;
import
java.io.InputStreamReader
;
import
java.io.Reader
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.UUID
;
@Service
public
class
TemplateService
extends
BaseService
<
TemplateModel
,
Template
,
TemplateMapper
>
{
@Autowired
private
TemplateCategoryService
templateCategoryService
;
/**
* 分页查询
*/
public
Page
<
TemplateModel
>
queryForTplPage
(
Page
<
TemplateModel
>
page
,
Long
categorySeq
,
String
displayName
)
{
List
<
TemplateCategoryTreeModel
>
modelList
=
templateCategoryService
.
getTree
();
List
<
TemplateModel
>
records
=
new
ArrayList
<>();
for
(
TemplateCategoryTreeModel
visualDesigner
:
modelList
)
{
if
(
Objects
.
equals
(
categorySeq
,
visualDesigner
.
getSequenceNbr
()))
{
for
(
TemplateCategoryTreeModel
category
:
visualDesigner
.
getChildren
())
{
records
.
addAll
(
this
.
queryForTplListByCategorySeq
(
category
.
getSequenceNbr
()));
}
return
this
.
queryForPages
(
records
,
page
);
}
}
return
this
.
queryForPage
(
page
,
null
,
false
,
categorySeq
,
displayName
);
}
public
Page
<
TemplateModel
>
queryForPages
(
List
<
TemplateModel
>
records
,
Page
<
TemplateModel
>
page
)
{
Page
<
TemplateModel
>
entiryPage
=
new
Page
(
page
.
getCurrent
(),
page
.
getSize
());
if
(!
ValidationUtil
.
isEmpty
(
records
))
{
page
.
setTotal
(
records
.
size
());
page
.
setPages
(
entiryPage
.
getPages
());
page
.
setCurrent
(
entiryPage
.
getCurrent
());
page
.
setSize
(
entiryPage
.
getSize
());
page
.
setRecords
(
records
);
}
return
page
;
}
/**
* 列表查询
*/
...
...
@@ -42,9 +70,9 @@ public class TemplateService extends BaseService<TemplateModel, Template, Templa
/**
* 根据模板分类ID获取模板sequenceNb's
*/
public
List
<
String
>
selectSeqsByCategorySeq
(
Long
categorySeq
){
public
List
<
String
>
selectSeqsByCategorySeq
(
Long
categorySeq
)
{
List
<
String
>
strings
=
new
ArrayList
<>();
for
(
TemplateModel
model
:
this
.
queryForTplListByCategorySeq
(
categorySeq
)){
for
(
TemplateModel
model
:
this
.
queryForTplListByCategorySeq
(
categorySeq
))
{
strings
.
add
(
Long
.
toString
(
model
.
getSequenceNbr
()));
}
return
strings
;
...
...
@@ -61,7 +89,7 @@ public class TemplateService extends BaseService<TemplateModel, Template, Templa
/**
* 根据sequenceNbr获取模板并转化为VO
*/
public
TemplateVoModel
queryForTplVo
(
Long
sequenceNbr
){
public
TemplateVoModel
queryForTplVo
(
Long
sequenceNbr
)
{
TemplateModel
templateModel
=
this
.
queryBySeq
(
sequenceNbr
);
TemplateVoModel
templateVoModel
=
this
.
convertVoModel
(
templateModel
);
if
(
templateModel
.
getContent
()
!=
null
)
{
...
...
@@ -114,10 +142,10 @@ public class TemplateService extends BaseService<TemplateModel, Template, Templa
/**
* model转化VO
*/
public
TemplateVoModel
convertVoModel
(
TemplateModel
templateModel
){
public
TemplateVoModel
convertVoModel
(
TemplateModel
templateModel
)
{
TemplateVoModel
tplVoModel
=
new
TemplateVoModel
();
BeanUtils
.
copyProperties
(
templateModel
,
tplVoModel
);
if
(
templateModel
.
getSketch
()
!=
null
)
if
(
templateModel
.
getSketch
()
!=
null
)
tplVoModel
.
setSketches
(
this
.
urlToPicModel
(
templateModel
.
getSketch
()));
if
(
templateModel
.
getThumb
()
!=
null
)
tplVoModel
.
setThumbs
(
this
.
urlToPicModel
(
templateModel
.
getThumb
()));
...
...
@@ -128,8 +156,8 @@ public class TemplateService extends BaseService<TemplateModel, Template, Templa
/**
* 生成随机UID
*/
public
String
getUid
(){
UUID
uuid
=
UUID
.
randomUUID
();
public
String
getUid
()
{
UUID
uuid
=
UUID
.
randomUUID
();
String
str
=
uuid
.
toString
();
return
str
.
replace
(
"-"
,
""
);
}
...
...
@@ -137,7 +165,7 @@ public class TemplateService extends BaseService<TemplateModel, Template, Templa
/**
* url转化图片
*/
public
List
<
PictureModel
>
urlToPicModel
(
String
url
){
public
List
<
PictureModel
>
urlToPicModel
(
String
url
)
{
List
<
PictureModel
>
pictureModels
=
new
ArrayList
<>();
PictureModel
pictureModel
=
new
PictureModel
(
""
,
this
.
getUid
(),
url
,
"done"
);
pictureModels
.
add
(
pictureModel
);
...
...
src/main/java/com/yeejoin/amos/api/tool/face/service/TransferDataService.java
0 → 100644
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
service
;
import
com.yeejoin.amos.api.tool.face.orm.entity.TableColumn
;
import
com.yeejoin.amos.api.tool.utils.DataBaseUtils
;
import
org.springframework.stereotype.Service
;
import
java.sql.Connection
;
import
java.sql.DriverManager
;
import
java.sql.SQLException
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Service
public
class
TransferDataService
{
private
static
String
TABLE_DES
=
"mcb_warning_base_source_attribution"
;
private
static
String
TABLE_ORI
=
"qms_explorer"
;
private
static
String
DBNAME_DES
=
"amos_mcb"
;
private
static
String
DBNAME_ORI
=
"amos_studio"
;
public
Connection
connectDataBase
(
String
dataBaseName
)
throws
ClassNotFoundException
,
SQLException
{
// 加载数据库驱动
Class
.
forName
(
"com.mysql.cj.jdbc.Driver"
);
// 生成url
String
dbUrl
=
"jdbc:mysql://172.16.3.18:3306/"
+
dataBaseName
;
// 连接数据库
return
DriverManager
.
getConnection
(
dbUrl
,
"root"
,
"Yeejoin@2020"
);
}
public
void
transferData
()
throws
SQLException
,
ClassNotFoundException
{
Connection
connection
=
this
.
connectDataBase
(
DBNAME_ORI
);
List
<
Map
<
String
,
Object
>>
maps
=
DataBaseUtils
.
getMaps
(
"SELECT * FROM "
+
TABLE_ORI
+
" ;"
,
connection
);
connection
.
close
();
connection
=
this
.
connectDataBase
(
DBNAME_DES
);
List
<
TableColumn
>
columns
=
DataBaseUtils
.
getTableColumn
(
TABLE_DES
,
connection
);
List
<
Map
<
String
,
Object
>>
dataList
=
this
.
convertDataMap
(
maps
,
columns
);
System
.
out
.
println
(
DataBaseUtils
.
getInsertSQL
(
dataList
,
columns
,
TABLE_DES
));
}
public
List
<
Map
<
String
,
Object
>>
convertDataMap
(
List
<
Map
<
String
,
Object
>>
maps
,
List
<
TableColumn
>
columns
)
{
List
<
Map
<
String
,
Object
>>
dataList
=
new
ArrayList
<>();
for
(
Map
<
String
,
Object
>
map
:
maps
)
{
Map
<
String
,
Object
>
data
=
new
HashMap
<>();
for
(
TableColumn
column
:
columns
)
{
data
.
put
(
column
.
getColumnName
(),
null
);
}
data
.
replace
(
"SEQUENCE_NBR"
,
map
.
get
(
"SEQUENCE_NBR"
));
data
.
replace
(
"NAME"
,
map
.
get
(
"RESOURCE_NAME"
));
data
.
replace
(
"PARENT_ID"
,
map
.
get
(
"PARENT_ID"
));
data
.
replace
(
"CODE"
,
map
.
get
(
"AGENCY_CODE"
));
data
.
replace
(
"REC_USER_ID"
,
map
.
get
(
"REC_USER_ID"
));
data
.
replace
(
"REC_DATE"
,
map
.
get
(
"REC_DATE"
));
dataList
.
add
(
data
);
}
return
dataList
;
}
}
src/main/java/com/yeejoin/amos/api/tool/utils/DataBaseUtils.java
0 → 100644
View file @
4a01f1a3
package
com
.
yeejoin
.
amos
.
api
.
tool
.
utils
;
import
com.alibaba.fastjson.JSON
;
import
com.yeejoin.amos.api.tool.face.orm.entity.TableColumn
;
import
org.springframework.util.ObjectUtils
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.*
;
import
java.net.Inet4Address
;
import
java.net.InetAddress
;
import
java.net.NetworkInterface
;
import
java.net.SocketException
;
import
java.nio.file.Files
;
import
java.nio.file.Paths
;
import
java.sql.*
;
import
java.util.*
;
public
class
DataBaseUtils
{
/**
* 数据库备份路径
*/
public
static
final
String
BACKUP_PATH
=
"/db/"
;
/**
* 数据库备份文本前缀
*/
public
static
String
ONESQL_PREFIX
=
""
;
public
static
String
SUFFIX
=
"sql"
;
public
static
String
BR
=
"\r\n"
;
public
static
String
SLASH
=
"/"
;
public
static
String
BRANCH
=
";"
;
private
static
String
SPLIT
=
"`"
;
private
static
String
SPACE
=
" "
;
private
static
String
INSERT_INTO
=
" INSERT INTO "
;
private
static
String
CREATE_INTO
=
" CREATE TABLE "
;
private
static
String
VALUES
=
"VALUES"
;
private
static
String
LEFTBRACE
=
"("
;
private
static
String
RIGHTBRACE
=
")"
;
private
static
String
QUOTES
=
"'"
;
private
static
String
COMMA
=
","
;
private
static
String
DISABLEFOREIGN
=
"SET FOREIGN_KEY_CHECKS = 0;\r\n"
;
private
static
String
ABLEFOREIGN
=
"SET FOREIGN_KEY_CHECKS = 1;\r\n"
;
public
static
String
DELIMITER
=
"###################################"
;
/**
* 获取maps
*/
public
static
List
<
Map
<
String
,
Object
>>
getMaps
(
String
sql
,
Connection
connection
)
throws
SQLException
{
Statement
statement
=
connection
.
createStatement
();
ResultSet
rs
=
statement
.
executeQuery
(
sql
);
List
<
Map
<
String
,
Object
>>
list
=
new
ArrayList
<
Map
<
String
,
Object
>>();
try
{
ResultSetMetaData
md
=
rs
.
getMetaData
();
int
columnCount
=
md
.
getColumnCount
();
while
(
rs
.
next
())
{
Map
<
String
,
Object
>
rowData
=
new
HashMap
<
String
,
Object
>();
for
(
int
i
=
1
;
i
<=
columnCount
;
i
++)
{
rowData
.
put
(
md
.
getColumnName
(
i
),
rs
.
getObject
(
i
));
}
list
.
add
(
rowData
);
}
}
catch
(
SQLException
e
)
{
e
.
printStackTrace
();
}
finally
{
try
{
if
(
rs
!=
null
)
rs
.
close
();
rs
=
null
;
}
catch
(
SQLException
e
)
{
e
.
printStackTrace
();
}
}
return
list
;
}
/**
* 获取表单列名
*/
public
static
List
<
TableColumn
>
getTableColumn
(
String
tableName
,
Connection
connection
)
throws
SQLException
{
String
columnSql
=
""
+
"\t\t SELECT\n"
+
"\t\t table_name as table_name,\n"
+
"\t\t\tcolumn_name as columnName,\n"
+
"\t\t\t( CASE WHEN ( is_nullable = 'no' && column_key != 'PRI' ) THEN '1' ELSE NULL END ) AS isRequired,\n"
+
"\t\t\t( CASE WHEN column_key = 'PRI' THEN '1' ELSE '0' END ) AS isPk,\n"
+
"\t\t\tordinal_position AS sort,\n"
+
"\t\t\tcolumn_comment as columnComment,\n"
+
"\t\t\t( CASE WHEN extra = 'auto_increment' THEN '1' ELSE '0' END ) AS isIncrement,\n"
+
"\t\t\tcolumn_type as columnType \n"
+
"\t\tFROM\n"
+
"\t\t\tinformation_schema.COLUMNS \n"
+
"\t\tWHERE\n"
+
"\t\t\ttable_schema = database()\n"
+
"\t\t\tAND table_name = \""
+
tableName
+
"\"\n"
+
"\t\tORDER BY\n"
+
"\t\t\tordinal_position\t"
;
List
<
Map
<
String
,
Object
>>
columnList
=
DataBaseUtils
.
getMaps
(
columnSql
,
connection
);
List
<
TableColumn
>
columns
=
new
ArrayList
<>();
for
(
Map
<
String
,
Object
>
map
:
columnList
)
{
TableColumn
column
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
map
),
TableColumn
.
class
);
if
(!
column
.
getColumnName
().
equals
(
"content"
))
columns
.
add
(
column
);
}
return
columns
;
}
/**
* 获取insert语句
*/
public
static
StringBuffer
getInsertSQL
(
List
<
Map
<
String
,
Object
>>
dataList
,
List
<
TableColumn
>
columns
,
String
tableName
)
{
StringBuffer
sql
=
new
StringBuffer
();
for
(
Map
<
String
,
Object
>
map
:
dataList
)
{
sql
.
append
(
INSERT_INTO
);
sql
.
append
(
SPACE
).
append
(
tableName
).
append
(
SPACE
);
sql
.
append
(
LEFTBRACE
);
for
(
TableColumn
column
:
columns
)
{
sql
.
append
(
SPLIT
);
sql
.
append
(
column
.
getColumnName
());
sql
.
append
(
SPLIT
);
sql
.
append
(
COMMA
);
}
sql
.
deleteCharAt
(
sql
.
length
()
-
1
);
sql
.
append
(
RIGHTBRACE
);
sql
.
append
(
VALUES
);
sql
.
append
(
LEFTBRACE
);
for
(
TableColumn
column
:
columns
)
{
if
(
column
.
getColumnType
().
contains
(
"bigint"
)
||
column
.
getColumnType
().
contains
(
"int"
)
||
column
.
getColumnType
().
contains
(
"bit(1)"
))
{
if
(!
ObjectUtils
.
isEmpty
(
map
.
get
(
column
.
getColumnName
())))
{
sql
.
append
(
map
.
get
(
column
.
getColumnName
()));
}
else
{
sql
.
append
(
"0"
);
}
}
else
{
if
(!
ObjectUtils
.
isEmpty
(
map
.
get
(
column
.
getColumnName
())))
{
sql
.
append
(
"'"
).
append
(
map
.
get
(
column
.
getColumnName
())).
append
(
"'"
);
}
else
{
sql
.
append
(
"null"
);
}
}
sql
.
append
(
COMMA
);
}
sql
.
deleteCharAt
(
sql
.
length
()
-
1
);
sql
.
append
(
RIGHTBRACE
);
sql
.
append
(
BRANCH
).
append
(
BR
);
}
return
sql
;
}
public
static
String
getIp
()
throws
IOException
{
// InetAddress inetAddress = null;
// boolean isFind = false; // 返回标识
// Enumeration<NetworkInterface> networkInterfaceLists = null;
// try {
// // 获取网络接口
// networkInterfaceLists = (Enumeration<NetworkInterface>) NetworkInterface.getNetworkInterfaces();
// } catch (SocketException e) {
// e.printStackTrace();
// }
// while (networkInterfaceLists.hasMoreElements()) {
// NetworkInterface networkInterface = (NetworkInterface) networkInterfaceLists.nextElement();
// Enumeration<InetAddress> ips = networkInterface.getInetAddresses();
// // 遍历所有ip,获取本地地址中不是回环地址的ipv4地址
// while (ips.hasMoreElements()) {
// inetAddress = (InetAddress) ips.nextElement();
// if (inetAddress instanceof Inet4Address && inetAddress.isSiteLocalAddress()
// && !inetAddress.isLoopbackAddress()) {
// isFind = true;
// break;
// }
// }
// if (isFind) {
// break;
// }
// }
// return inetAddress == null ? "" : inetAddress.getHostAddress();
//获取jar包同级目录
String
filePath
=
System
.
getProperty
(
"user.dir"
)
+
"/config/application-dev.properties"
;
InputStream
in
=
new
BufferedInputStream
(
Files
.
newInputStream
(
Paths
.
get
(
filePath
)));
Properties
properties
=
new
Properties
();
properties
.
load
(
in
);
//获取配置文件数据
return
properties
.
getProperty
(
"eureka.instance.hostname"
);
}
}
src/main/resources/application.properties
View file @
4a01f1a3
spring.application.name
=
AMOS-ATL
server.servlet.context-path
=
/atl
<<<<<<<
HEAD
#server.servlet.context-path=/jcs
server.port
=
30002
#server.port=20000
=======
server.port
=
30201
>>>>>>>
56d4a0ab360f8ce8f2fa01e2ecf68e745d42bc24
#server.port=30201
server.port
=
20000
spring.profiles.active
=
dev
management.health.elasticsearch.enabled
=
false
...
...
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