Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
phsl
/
api
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
401032c1
authored
Sep 09, 2025
by
lijinqi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
api新增 关联接口
parent
77fc37db
Hide whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
1467 additions
and
4 deletions
+1467
-4
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/api/ApiController.java
+34
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/api/vo/ApiRespVO.java
+5
-1
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/api/vo/ApiSaveReqVO.java
+8
-2
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpoint/ApiEndpointController.java
+115
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpoint/vo/ApiEndpointPageReqVO.java
+45
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpoint/vo/ApiEndpointRespVO.java
+56
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpoint/vo/ApiEndpointSaveReqVO.java
+43
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpointrel/ApiEndpointRelController.java
+105
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpointrel/vo/ApiEndpointRelPageReqVO.java
+27
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpointrel/vo/ApiEndpointRelRespVO.java
+32
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpointrel/vo/ApiEndpointRelSaveReqVO.java
+24
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/appcredential/AppCredentialController.java
+105
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/appcredential/vo/AppCredentialPageReqVO.java
+30
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/appcredential/vo/AppCredentialRespVO.java
+36
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/appcredential/vo/AppCredentialSaveReqVO.java
+28
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/dataobject/apiendpoint/ApiEndpointDO.java
+65
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/dataobject/apiendpointrel/ApiEndpointRelDO.java
+41
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/dataobject/appcredential/AppCredentialDO.java
+45
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/mysql/apiendpoint/ApiEndpointMapper.java
+43
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/mysql/apiendpointrel/ApiEndpointRelMapper.java
+50
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/mysql/appcredential/AppCredentialMapper.java
+30
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/enums/ErrorCodeConstants.java
+3
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/apiendpoint/ApiEndpointService.java
+74
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/apiendpoint/ApiEndpointServiceImpl.java
+94
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/apiendpointrel/ApiEndpointRelService.java
+78
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/apiendpointrel/ApiEndpointRelServiceImpl.java
+101
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/appcredential/AppCredentialService.java
+63
-0
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/appcredential/AppCredentialServiceImpl.java
+86
-0
computility-module-external/src/main/java/com/luhu/computility/module/external/controller/openapi/OpenApiController.java
+1
-1
No files found.
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/api/ApiController.java
View file @
401032c1
...
@@ -2,9 +2,16 @@ package com.luhu.computility.module.apihub.controller.admin.api;
...
@@ -2,9 +2,16 @@ package com.luhu.computility.module.apihub.controller.admin.api;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.ApiEndpointRespVO
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.ApiEndpointSaveReqVO
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpointrel.vo.ApiEndpointRelPageReqVO
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpointrel.vo.ApiEndpointRelSaveReqVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageRespVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageRespVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageSaveReqVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageSaveReqVO
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpointrel.ApiEndpointRelDO
;
import
com.luhu.computility.module.apihub.dal.dataobject.apipackage.ApiPackageDO
;
import
com.luhu.computility.module.apihub.dal.dataobject.apipackage.ApiPackageDO
;
import
com.luhu.computility.module.apihub.service.apiendpoint.ApiEndpointService
;
import
com.luhu.computility.module.apihub.service.apiendpointrel.ApiEndpointRelService
;
import
com.luhu.computility.module.apihub.service.apipackage.ApiPackageService
;
import
com.luhu.computility.module.apihub.service.apipackage.ApiPackageService
;
import
org.checkerframework.checker.units.qual.A
;
import
org.checkerframework.checker.units.qual.A
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
...
@@ -47,19 +54,32 @@ public class ApiController {
...
@@ -47,19 +54,32 @@ public class ApiController {
private
ApiService
apiService
;
private
ApiService
apiService
;
@Resource
@Resource
private
ApiEndpointRelService
apiEndpointRelService
;
@Resource
private
ApiPackageService
apiPackageService
;
private
ApiPackageService
apiPackageService
;
@PostMapping
(
"/create"
)
@PostMapping
(
"/create"
)
@Operation
(
summary
=
"创建API信息"
)
@Operation
(
summary
=
"创建API信息"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
CommonResult
<
Long
>
createApi
(
@Valid
@RequestBody
ApiSaveReqVO
createReqVO
)
{
public
CommonResult
<
Long
>
createApi
(
@Valid
@RequestBody
ApiSaveReqVO
createReqVO
)
{
Long
apiId
=
apiService
.
createApi
(
createReqVO
);
Long
apiId
=
apiService
.
createApi
(
createReqVO
);
//创建套餐包
if
(!
CollectionUtil
.
isEmpty
(
createReqVO
.
getApiPackages
()))
{
if
(!
CollectionUtil
.
isEmpty
(
createReqVO
.
getApiPackages
()))
{
for
(
ApiPackageSaveReqVO
apiPackageSaveReqVO
:
createReqVO
.
getApiPackages
())
{
for
(
ApiPackageSaveReqVO
apiPackageSaveReqVO
:
createReqVO
.
getApiPackages
())
{
apiPackageSaveReqVO
.
setApiId
(
apiId
);
apiPackageSaveReqVO
.
setApiId
(
apiId
);
apiPackageService
.
createApiPackage
(
apiPackageSaveReqVO
);
apiPackageService
.
createApiPackage
(
apiPackageSaveReqVO
);
}
}
}
}
//api应用+api接口关联
if
(!
CollectionUtil
.
isEmpty
(
createReqVO
.
getApiEndPoints
()))
{
for
(
ApiEndpointSaveReqVO
apiEndpointSaveReqVO
:
createReqVO
.
getApiEndPoints
())
{
apiEndpointRelService
.
createApiEndpointRel
(
new
ApiEndpointRelSaveReqVO
()
.
setApiEndpointId
(
apiEndpointSaveReqVO
.
getId
())
.
setApiId
(
apiId
));
}
}
return
success
(
apiId
);
return
success
(
apiId
);
}
}
...
@@ -79,6 +99,16 @@ public class ApiController {
...
@@ -79,6 +99,16 @@ public class ApiController {
}
}
}
}
}
}
if
(!
CollectionUtil
.
isEmpty
(
updateReqVO
.
getApiEndPoints
()))
{
//删除已经关联的
apiEndpointRelService
.
deleteByApiId
(
updateReqVO
.
getId
());
for
(
ApiEndpointSaveReqVO
apiEndpointSaveReqVO
:
updateReqVO
.
getApiEndPoints
())
{
apiEndpointRelService
.
createApiEndpointRel
(
new
ApiEndpointRelSaveReqVO
()
.
setApiEndpointId
(
apiEndpointSaveReqVO
.
getId
())
.
setApiId
(
updateReqVO
.
getId
()));
}
}
apiService
.
updateApi
(
updateReqVO
);
apiService
.
updateApi
(
updateReqVO
);
return
success
(
true
);
return
success
(
true
);
}
}
...
@@ -110,6 +140,10 @@ public class ApiController {
...
@@ -110,6 +140,10 @@ public class ApiController {
ApiRespVO
apiRespVO
=
BeanUtils
.
toBean
(
api
,
ApiRespVO
.
class
);
ApiRespVO
apiRespVO
=
BeanUtils
.
toBean
(
api
,
ApiRespVO
.
class
);
List
<
ApiPackageDO
>
apiPackageDOS
=
apiPackageService
.
selectByApiId
(
id
);
List
<
ApiPackageDO
>
apiPackageDOS
=
apiPackageService
.
selectByApiId
(
id
);
apiRespVO
.
setApiPackages
(
BeanUtils
.
toBean
(
apiPackageDOS
,
ApiPackageRespVO
.
class
));
apiRespVO
.
setApiPackages
(
BeanUtils
.
toBean
(
apiPackageDOS
,
ApiPackageRespVO
.
class
));
List
<
ApiEndpointRespVO
>
apiEndpointRespVOS
=
apiEndpointRelService
.
getApiEndpointByApiId
(
id
);
apiRespVO
.
setApiEndPoints
(
apiEndpointRespVOS
);
return
success
(
apiRespVO
);
return
success
(
apiRespVO
);
}
}
...
...
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/api/vo/ApiRespVO.java
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
api
.
vo
;
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
api
.
vo
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.ApiEndpointRespVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageRespVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageRespVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageSaveReqVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageSaveReqVO
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
io.swagger.v3.oas.annotations.media.Schema
;
...
@@ -59,9 +60,12 @@ public class ApiRespVO {
...
@@ -59,9 +60,12 @@ public class ApiRespVO {
@ExcelProperty
(
"备注"
)
@ExcelProperty
(
"备注"
)
private
String
remark
;
private
String
remark
;
@Schema
(
description
=
"
套餐
包"
,
example
=
"[{}]"
)
@Schema
(
description
=
"
资源
包"
,
example
=
"[{}]"
)
private
List
<
ApiPackageRespVO
>
apiPackages
;
private
List
<
ApiPackageRespVO
>
apiPackages
;
@Schema
(
description
=
""
,
example
=
"[{}]"
)
private
List
<
ApiEndpointRespVO
>
apiEndPoints
;
@Schema
(
description
=
"创建时间"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@Schema
(
description
=
"创建时间"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@ExcelProperty
(
"创建时间"
)
@ExcelProperty
(
"创建时间"
)
private
LocalDateTime
createTime
;
private
LocalDateTime
createTime
;
...
...
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/api/vo/ApiSaveReqVO.java
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
api
.
vo
;
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
api
.
vo
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.ApiEndpointSaveReqVO
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpointrel.vo.ApiEndpointRelRespVO
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpointrel.vo.ApiEndpointRelSaveReqVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageSaveReqVO
;
import
com.luhu.computility.module.apihub.controller.admin.apipackage.vo.ApiPackageSaveReqVO
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.*
;
import
lombok.*
;
...
@@ -42,8 +45,10 @@ public class ApiSaveReqVO {
...
@@ -42,8 +45,10 @@ public class ApiSaveReqVO {
@Schema
(
description
=
"备注"
,
example
=
"随便"
)
@Schema
(
description
=
"备注"
,
example
=
"随便"
)
private
String
remark
;
private
String
remark
;
@Schema
(
description
=
"资源包"
,
example
=
"随便"
)
@Schema
(
description
=
"套餐包"
,
example
=
"随便"
)
private
List
<
ApiPackageSaveReqVO
>
apiPackages
;
private
List
<
ApiPackageSaveReqVO
>
apiPackages
;
@Schema
(
description
=
"api接口"
,
example
=
"随便"
)
private
List
<
ApiEndpointSaveReqVO
>
apiEndPoints
;
}
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpoint/ApiEndpointController.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
apiendpoint
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
io.swagger.v3.oas.annotations.Parameter
;
import
io.swagger.v3.oas.annotations.Operation
;
import
javax.validation.constraints.*
;
import
javax.validation.*
;
import
javax.servlet.http.*
;
import
java.util.*
;
import
java.io.IOException
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.common.pojo.CommonResult
;
import
com.luhu.computility.framework.common.util.object.BeanUtils
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
pojo
.
CommonResult
.
success
;
import
com.luhu.computility.framework.excel.core.util.ExcelUtils
;
import
com.luhu.computility.framework.apilog.core.annotation.ApiAccessLog
;
import
static
com
.
luhu
.
computility
.
framework
.
apilog
.
core
.
enums
.
OperateTypeEnum
.*;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.*
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpoint.ApiEndpointDO
;
import
com.luhu.computility.module.apihub.service.apiendpoint.ApiEndpointService
;
@Tag
(
name
=
"管理后台 - API 接口"
)
@RestController
@RequestMapping
(
"/apihub/api-endpoint"
)
@Validated
public
class
ApiEndpointController
{
@Resource
private
ApiEndpointService
apiEndpointService
;
@PostMapping
(
"/create"
)
@Operation
(
summary
=
"创建API 接口"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint:create')"
)
public
CommonResult
<
Long
>
createApiEndpoint
(
@Valid
@RequestBody
ApiEndpointSaveReqVO
createReqVO
)
{
return
success
(
apiEndpointService
.
createApiEndpoint
(
createReqVO
));
}
@PutMapping
(
"/update"
)
@Operation
(
summary
=
"更新API 接口"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint:update')"
)
public
CommonResult
<
Boolean
>
updateApiEndpoint
(
@Valid
@RequestBody
ApiEndpointSaveReqVO
updateReqVO
)
{
apiEndpointService
.
updateApiEndpoint
(
updateReqVO
);
return
success
(
true
);
}
@DeleteMapping
(
"/delete"
)
@Operation
(
summary
=
"删除API 接口"
)
@Parameter
(
name
=
"id"
,
description
=
"编号"
,
required
=
true
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint:delete')"
)
public
CommonResult
<
Boolean
>
deleteApiEndpoint
(
@RequestParam
(
"id"
)
Long
id
)
{
apiEndpointService
.
deleteApiEndpoint
(
id
);
return
success
(
true
);
}
@DeleteMapping
(
"/delete-list"
)
@Parameter
(
name
=
"ids"
,
description
=
"编号"
,
required
=
true
)
@Operation
(
summary
=
"批量删除API 接口"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint:delete')"
)
public
CommonResult
<
Boolean
>
deleteApiEndpointList
(
@RequestParam
(
"ids"
)
List
<
Long
>
ids
)
{
apiEndpointService
.
deleteApiEndpointListByIds
(
ids
);
return
success
(
true
);
}
@GetMapping
(
"/get"
)
@Operation
(
summary
=
"获得API 接口"
)
@Parameter
(
name
=
"id"
,
description
=
"编号"
,
required
=
true
,
example
=
"1024"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint:query')"
)
public
CommonResult
<
ApiEndpointRespVO
>
getApiEndpoint
(
@RequestParam
(
"id"
)
Long
id
)
{
ApiEndpointDO
apiEndpoint
=
apiEndpointService
.
getApiEndpoint
(
id
);
return
success
(
BeanUtils
.
toBean
(
apiEndpoint
,
ApiEndpointRespVO
.
class
));
}
@GetMapping
(
"/page"
)
@Operation
(
summary
=
"获得API 接口分页"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint:query')"
)
public
CommonResult
<
PageResult
<
ApiEndpointRespVO
>>
getApiEndpointPage
(
@Valid
ApiEndpointPageReqVO
pageReqVO
)
{
PageResult
<
ApiEndpointDO
>
pageResult
=
apiEndpointService
.
getApiEndpointPage
(
pageReqVO
);
return
success
(
BeanUtils
.
toBean
(
pageResult
,
ApiEndpointRespVO
.
class
));
}
@GetMapping
(
"/list"
)
@Operation
(
summary
=
"获得API 接口"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint:query')"
)
public
CommonResult
<
List
<
ApiEndpointRespVO
>>
getApiEndpointPage
()
{
List
<
ApiEndpointDO
>
pageResult
=
apiEndpointService
.
getApiEndpointList
();
return
success
(
BeanUtils
.
toBean
(
pageResult
,
ApiEndpointRespVO
.
class
));
}
@GetMapping
(
"/export-excel"
)
@Operation
(
summary
=
"导出API 接口 Excel"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint:export')"
)
@ApiAccessLog
(
operateType
=
EXPORT
)
public
void
exportApiEndpointExcel
(
@Valid
ApiEndpointPageReqVO
pageReqVO
,
HttpServletResponse
response
)
throws
IOException
{
pageReqVO
.
setPageSize
(
PageParam
.
PAGE_SIZE_NONE
);
List
<
ApiEndpointDO
>
list
=
apiEndpointService
.
getApiEndpointPage
(
pageReqVO
).
getList
();
// 导出 Excel
ExcelUtils
.
write
(
response
,
"API 接口.xls"
,
"数据"
,
ApiEndpointRespVO
.
class
,
BeanUtils
.
toBean
(
list
,
ApiEndpointRespVO
.
class
));
}
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpoint/vo/ApiEndpointPageReqVO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
apiendpoint
.
vo
;
import
lombok.*
;
import
java.util.*
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.time.LocalDateTime
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
util
.
date
.
DateUtils
.
FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND
;
@Schema
(
description
=
"管理后台 - API 接口分页 Request VO"
)
@Data
public
class
ApiEndpointPageReqVO
extends
PageParam
{
@Schema
(
description
=
"接口名称"
,
example
=
"王五"
)
private
String
name
;
@Schema
(
description
=
"接口路径,全路径例如 https://phsl.lijinqi.com/openn_ip/xxx"
)
private
String
path
;
@Schema
(
description
=
"请求方式: GET/POST/PUT/DELETE"
)
private
String
method
;
@Schema
(
description
=
"参数定义(JSON)"
)
private
String
params
;
@Schema
(
description
=
"返回结果示例"
)
private
String
response
;
@Schema
(
description
=
"鉴权方式,例如 API_KEY/OAUTH"
,
example
=
"2"
)
private
String
authType
;
@Schema
(
description
=
"接口级限流规则,例如 100 QPS"
)
private
String
rateLimit
;
@Schema
(
description
=
"备注"
,
example
=
"你说的对"
)
private
String
remark
;
@Schema
(
description
=
"创建时间"
)
@DateTimeFormat
(
pattern
=
FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND
)
private
LocalDateTime
[]
createTime
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpoint/vo/ApiEndpointRespVO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
apiendpoint
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.*
;
import
java.util.*
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.time.LocalDateTime
;
import
com.alibaba.excel.annotation.*
;
@Schema
(
description
=
"管理后台 - API 接口 Response VO"
)
@Data
@ExcelIgnoreUnannotated
public
class
ApiEndpointRespVO
{
@Schema
(
description
=
"接口ID"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"30761"
)
@ExcelProperty
(
"接口ID"
)
private
Long
id
;
@Schema
(
description
=
"接口名称"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"王五"
)
@ExcelProperty
(
"接口名称"
)
private
String
name
;
@Schema
(
description
=
"接口路径,全路径例如 https://phsl.lijinqi.com/openn_ip/xxx"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@ExcelProperty
(
"接口路径,全路径例如 https://phsl.lijinqi.com/openn_ip/xxx"
)
private
String
path
;
@Schema
(
description
=
"请求方式: GET/POST/PUT/DELETE"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@ExcelProperty
(
"请求方式: GET/POST/PUT/DELETE"
)
private
String
method
;
@Schema
(
description
=
"参数定义(JSON)"
)
@ExcelProperty
(
"参数定义(JSON)"
)
private
String
params
;
@Schema
(
description
=
"返回结果示例"
)
@ExcelProperty
(
"返回结果示例"
)
private
String
response
;
@Schema
(
description
=
"鉴权方式,例如 API_KEY/OAUTH"
,
example
=
"2"
)
@ExcelProperty
(
"鉴权方式,例如 API_KEY/OAUTH"
)
private
String
authType
;
@Schema
(
description
=
"接口级限流规则,例如 100 QPS"
)
@ExcelProperty
(
"接口级限流规则,例如 100 QPS"
)
private
String
rateLimit
;
@Schema
(
description
=
"备注"
,
example
=
"你说的对"
)
@ExcelProperty
(
"备注"
)
private
String
remark
;
@Schema
(
description
=
"创建时间"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@ExcelProperty
(
"创建时间"
)
private
LocalDateTime
createTime
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpoint/vo/ApiEndpointSaveReqVO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
apiendpoint
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.*
;
import
java.util.*
;
import
javax.validation.constraints.*
;
@Schema
(
description
=
"管理后台 - API 接口新增/修改 Request VO"
)
@Data
public
class
ApiEndpointSaveReqVO
{
@Schema
(
description
=
"接口ID"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"30761"
)
private
Long
id
;
@Schema
(
description
=
"接口名称"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"王五"
)
@NotEmpty
(
message
=
"接口名称不能为空"
)
private
String
name
;
@Schema
(
description
=
"接口路径,全路径例如 https://phsl.lijinqi.com/openn_ip/xxx"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@NotEmpty
(
message
=
"接口路径,全路径例如 https://phsl.lijinqi.com/openn_ip/xxx不能为空"
)
private
String
path
;
@Schema
(
description
=
"请求方式: GET/POST/PUT/DELETE"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@NotEmpty
(
message
=
"请求方式: GET/POST/PUT/DELETE不能为空"
)
private
String
method
;
@Schema
(
description
=
"参数定义(JSON)"
)
private
String
params
;
@Schema
(
description
=
"返回结果示例"
)
private
String
response
;
@Schema
(
description
=
"鉴权方式,例如 API_KEY/OAUTH"
,
example
=
"2"
)
private
String
authType
;
@Schema
(
description
=
"接口级限流规则,例如 100 QPS"
)
private
String
rateLimit
;
@Schema
(
description
=
"备注"
,
example
=
"你说的对"
)
private
String
remark
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpointrel/ApiEndpointRelController.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
apiendpointrel
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
io.swagger.v3.oas.annotations.Parameter
;
import
io.swagger.v3.oas.annotations.Operation
;
import
javax.validation.constraints.*
;
import
javax.validation.*
;
import
javax.servlet.http.*
;
import
java.util.*
;
import
java.io.IOException
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.common.pojo.CommonResult
;
import
com.luhu.computility.framework.common.util.object.BeanUtils
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
pojo
.
CommonResult
.
success
;
import
com.luhu.computility.framework.excel.core.util.ExcelUtils
;
import
com.luhu.computility.framework.apilog.core.annotation.ApiAccessLog
;
import
static
com
.
luhu
.
computility
.
framework
.
apilog
.
core
.
enums
.
OperateTypeEnum
.*;
import
com.luhu.computility.module.apihub.controller.admin.apiendpointrel.vo.*
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpointrel.ApiEndpointRelDO
;
import
com.luhu.computility.module.apihub.service.apiendpointrel.ApiEndpointRelService
;
@Tag
(
name
=
"管理后台 - API 应用与接口关系"
)
@RestController
@RequestMapping
(
"/apihub/api-endpoint-rel"
)
@Validated
public
class
ApiEndpointRelController
{
@Resource
private
ApiEndpointRelService
apiEndpointRelService
;
@PostMapping
(
"/create"
)
@Operation
(
summary
=
"创建API 应用与接口关系"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint-rel:create')"
)
public
CommonResult
<
Long
>
createApiEndpointRel
(
@Valid
@RequestBody
ApiEndpointRelSaveReqVO
createReqVO
)
{
return
success
(
apiEndpointRelService
.
createApiEndpointRel
(
createReqVO
));
}
@PutMapping
(
"/update"
)
@Operation
(
summary
=
"更新API 应用与接口关系"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint-rel:update')"
)
public
CommonResult
<
Boolean
>
updateApiEndpointRel
(
@Valid
@RequestBody
ApiEndpointRelSaveReqVO
updateReqVO
)
{
apiEndpointRelService
.
updateApiEndpointRel
(
updateReqVO
);
return
success
(
true
);
}
@DeleteMapping
(
"/delete"
)
@Operation
(
summary
=
"删除API 应用与接口关系"
)
@Parameter
(
name
=
"id"
,
description
=
"编号"
,
required
=
true
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint-rel:delete')"
)
public
CommonResult
<
Boolean
>
deleteApiEndpointRel
(
@RequestParam
(
"id"
)
Long
id
)
{
apiEndpointRelService
.
deleteApiEndpointRel
(
id
);
return
success
(
true
);
}
@DeleteMapping
(
"/delete-list"
)
@Parameter
(
name
=
"ids"
,
description
=
"编号"
,
required
=
true
)
@Operation
(
summary
=
"批量删除API 应用与接口关系"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint-rel:delete')"
)
public
CommonResult
<
Boolean
>
deleteApiEndpointRelList
(
@RequestParam
(
"ids"
)
List
<
Long
>
ids
)
{
apiEndpointRelService
.
deleteApiEndpointRelListByIds
(
ids
);
return
success
(
true
);
}
@GetMapping
(
"/get"
)
@Operation
(
summary
=
"获得API 应用与接口关系"
)
@Parameter
(
name
=
"id"
,
description
=
"编号"
,
required
=
true
,
example
=
"1024"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint-rel:query')"
)
public
CommonResult
<
ApiEndpointRelRespVO
>
getApiEndpointRel
(
@RequestParam
(
"id"
)
Long
id
)
{
ApiEndpointRelDO
apiEndpointRel
=
apiEndpointRelService
.
getApiEndpointRel
(
id
);
return
success
(
BeanUtils
.
toBean
(
apiEndpointRel
,
ApiEndpointRelRespVO
.
class
));
}
@GetMapping
(
"/page"
)
@Operation
(
summary
=
"获得API 应用与接口关系分页"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint-rel:query')"
)
public
CommonResult
<
PageResult
<
ApiEndpointRelRespVO
>>
getApiEndpointRelPage
(
@Valid
ApiEndpointRelPageReqVO
pageReqVO
)
{
PageResult
<
ApiEndpointRelDO
>
pageResult
=
apiEndpointRelService
.
getApiEndpointRelPage
(
pageReqVO
);
return
success
(
BeanUtils
.
toBean
(
pageResult
,
ApiEndpointRelRespVO
.
class
));
}
@GetMapping
(
"/export-excel"
)
@Operation
(
summary
=
"导出API 应用与接口关系 Excel"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:api-endpoint-rel:export')"
)
@ApiAccessLog
(
operateType
=
EXPORT
)
public
void
exportApiEndpointRelExcel
(
@Valid
ApiEndpointRelPageReqVO
pageReqVO
,
HttpServletResponse
response
)
throws
IOException
{
pageReqVO
.
setPageSize
(
PageParam
.
PAGE_SIZE_NONE
);
List
<
ApiEndpointRelDO
>
list
=
apiEndpointRelService
.
getApiEndpointRelPage
(
pageReqVO
).
getList
();
// 导出 Excel
ExcelUtils
.
write
(
response
,
"API 应用与接口关系.xls"
,
"数据"
,
ApiEndpointRelRespVO
.
class
,
BeanUtils
.
toBean
(
list
,
ApiEndpointRelRespVO
.
class
));
}
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpointrel/vo/ApiEndpointRelPageReqVO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
apiendpointrel
.
vo
;
import
lombok.*
;
import
java.util.*
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.time.LocalDateTime
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
util
.
date
.
DateUtils
.
FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND
;
@Schema
(
description
=
"管理后台 - API 应用与接口关系分页 Request VO"
)
@Data
public
class
ApiEndpointRelPageReqVO
extends
PageParam
{
@Schema
(
description
=
"API 应用ID,关联 apihub_api.id"
,
example
=
"15662"
)
private
Long
apiId
;
@Schema
(
description
=
"接口ID,关联 apihub_api_endpoint.id"
,
example
=
"14690"
)
private
Long
apiEndpointId
;
@Schema
(
description
=
"创建时间"
)
@DateTimeFormat
(
pattern
=
FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND
)
private
LocalDateTime
[]
createTime
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpointrel/vo/ApiEndpointRelRespVO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
apiendpointrel
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.*
;
import
java.util.*
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.time.LocalDateTime
;
import
com.alibaba.excel.annotation.*
;
@Schema
(
description
=
"管理后台 - API 应用与接口关系 Response VO"
)
@Data
@ExcelIgnoreUnannotated
public
class
ApiEndpointRelRespVO
{
@Schema
(
description
=
"主键"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"30202"
)
@ExcelProperty
(
"主键"
)
private
Long
id
;
@Schema
(
description
=
"API 应用ID,关联 apihub_api.id"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"15662"
)
@ExcelProperty
(
"API 应用ID,关联 apihub_api.id"
)
private
Long
apiId
;
@Schema
(
description
=
"接口ID,关联 apihub_api_endpoint.id"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"14690"
)
@ExcelProperty
(
"接口ID,关联 apihub_api_endpoint.id"
)
private
Long
apiEndpointId
;
@Schema
(
description
=
"创建时间"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@ExcelProperty
(
"创建时间"
)
private
LocalDateTime
createTime
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/apiendpointrel/vo/ApiEndpointRelSaveReqVO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
apiendpointrel
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.*
;
import
java.util.*
;
import
javax.validation.constraints.*
;
@Schema
(
description
=
"管理后台 - API 应用与接口关系新增/修改 Request VO"
)
@Data
public
class
ApiEndpointRelSaveReqVO
{
@Schema
(
description
=
"主键"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"30202"
)
private
Long
id
;
@Schema
(
description
=
"API 应用ID,关联 apihub_api.id"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"15662"
)
@NotNull
(
message
=
"API 应用ID,关联 apihub_api.id不能为空"
)
private
Long
apiId
;
@Schema
(
description
=
"接口ID,关联 apihub_api_endpoint.id"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"14690"
)
@NotNull
(
message
=
"接口ID,关联 apihub_api_endpoint.id不能为空"
)
private
Long
apiEndpointId
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/appcredential/AppCredentialController.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
appcredential
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
io.swagger.v3.oas.annotations.Parameter
;
import
io.swagger.v3.oas.annotations.Operation
;
import
javax.validation.constraints.*
;
import
javax.validation.*
;
import
javax.servlet.http.*
;
import
java.util.*
;
import
java.io.IOException
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.common.pojo.CommonResult
;
import
com.luhu.computility.framework.common.util.object.BeanUtils
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
pojo
.
CommonResult
.
success
;
import
com.luhu.computility.framework.excel.core.util.ExcelUtils
;
import
com.luhu.computility.framework.apilog.core.annotation.ApiAccessLog
;
import
static
com
.
luhu
.
computility
.
framework
.
apilog
.
core
.
enums
.
OperateTypeEnum
.*;
import
com.luhu.computility.module.apihub.controller.admin.appcredential.vo.*
;
import
com.luhu.computility.module.apihub.dal.dataobject.appcredential.AppCredentialDO
;
import
com.luhu.computility.module.apihub.service.appcredential.AppCredentialService
;
@Tag
(
name
=
"管理后台 - 用户密钥信息"
)
@RestController
@RequestMapping
(
"/apihub/app-credential"
)
@Validated
public
class
AppCredentialController
{
@Resource
private
AppCredentialService
appCredentialService
;
@PostMapping
(
"/create"
)
@Operation
(
summary
=
"创建用户密钥信息"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:app-credential:create')"
)
public
CommonResult
<
Long
>
createAppCredential
(
@Valid
@RequestBody
AppCredentialSaveReqVO
createReqVO
)
{
return
success
(
appCredentialService
.
createAppCredential
(
createReqVO
));
}
@PutMapping
(
"/update"
)
@Operation
(
summary
=
"更新用户密钥信息"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:app-credential:update')"
)
public
CommonResult
<
Boolean
>
updateAppCredential
(
@Valid
@RequestBody
AppCredentialSaveReqVO
updateReqVO
)
{
appCredentialService
.
updateAppCredential
(
updateReqVO
);
return
success
(
true
);
}
@DeleteMapping
(
"/delete"
)
@Operation
(
summary
=
"删除用户密钥信息"
)
@Parameter
(
name
=
"id"
,
description
=
"编号"
,
required
=
true
)
@PreAuthorize
(
"@ss.hasPermission('apihub:app-credential:delete')"
)
public
CommonResult
<
Boolean
>
deleteAppCredential
(
@RequestParam
(
"id"
)
Long
id
)
{
appCredentialService
.
deleteAppCredential
(
id
);
return
success
(
true
);
}
@DeleteMapping
(
"/delete-list"
)
@Parameter
(
name
=
"ids"
,
description
=
"编号"
,
required
=
true
)
@Operation
(
summary
=
"批量删除用户密钥信息"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:app-credential:delete')"
)
public
CommonResult
<
Boolean
>
deleteAppCredentialList
(
@RequestParam
(
"ids"
)
List
<
Long
>
ids
)
{
appCredentialService
.
deleteAppCredentialListByIds
(
ids
);
return
success
(
true
);
}
@GetMapping
(
"/get"
)
@Operation
(
summary
=
"获得用户密钥信息"
)
@Parameter
(
name
=
"id"
,
description
=
"编号"
,
required
=
true
,
example
=
"1024"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:app-credential:query')"
)
public
CommonResult
<
AppCredentialRespVO
>
getAppCredential
(
@RequestParam
(
"id"
)
Long
id
)
{
AppCredentialDO
appCredential
=
appCredentialService
.
getAppCredential
(
id
);
return
success
(
BeanUtils
.
toBean
(
appCredential
,
AppCredentialRespVO
.
class
));
}
@GetMapping
(
"/page"
)
@Operation
(
summary
=
"获得用户密钥信息分页"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:app-credential:query')"
)
public
CommonResult
<
PageResult
<
AppCredentialRespVO
>>
getAppCredentialPage
(
@Valid
AppCredentialPageReqVO
pageReqVO
)
{
PageResult
<
AppCredentialDO
>
pageResult
=
appCredentialService
.
getAppCredentialPage
(
pageReqVO
);
return
success
(
BeanUtils
.
toBean
(
pageResult
,
AppCredentialRespVO
.
class
));
}
@GetMapping
(
"/export-excel"
)
@Operation
(
summary
=
"导出用户密钥信息 Excel"
)
@PreAuthorize
(
"@ss.hasPermission('apihub:app-credential:export')"
)
@ApiAccessLog
(
operateType
=
EXPORT
)
public
void
exportAppCredentialExcel
(
@Valid
AppCredentialPageReqVO
pageReqVO
,
HttpServletResponse
response
)
throws
IOException
{
pageReqVO
.
setPageSize
(
PageParam
.
PAGE_SIZE_NONE
);
List
<
AppCredentialDO
>
list
=
appCredentialService
.
getAppCredentialPage
(
pageReqVO
).
getList
();
// 导出 Excel
ExcelUtils
.
write
(
response
,
"用户密钥信息.xls"
,
"数据"
,
AppCredentialRespVO
.
class
,
BeanUtils
.
toBean
(
list
,
AppCredentialRespVO
.
class
));
}
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/appcredential/vo/AppCredentialPageReqVO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
appcredential
.
vo
;
import
lombok.*
;
import
java.util.*
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.time.LocalDateTime
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
util
.
date
.
DateUtils
.
FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND
;
@Schema
(
description
=
"管理后台 - 用户密钥信息分页 Request VO"
)
@Data
public
class
AppCredentialPageReqVO
extends
PageParam
{
@Schema
(
description
=
"应用ID,唯一"
,
example
=
"23068"
)
private
String
appId
;
@Schema
(
description
=
"AES加密后的应用密钥"
)
private
String
appSecret
;
@Schema
(
description
=
"所属用户ID"
,
example
=
"11786"
)
private
Long
userId
;
@Schema
(
description
=
"创建时间"
)
@DateTimeFormat
(
pattern
=
FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND
)
private
LocalDateTime
[]
createTime
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/appcredential/vo/AppCredentialRespVO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
appcredential
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.*
;
import
java.util.*
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.time.LocalDateTime
;
import
com.alibaba.excel.annotation.*
;
@Schema
(
description
=
"管理后台 - 用户密钥信息 Response VO"
)
@Data
@ExcelIgnoreUnannotated
public
class
AppCredentialRespVO
{
@Schema
(
description
=
"主键ID"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"8721"
)
@ExcelProperty
(
"主键ID"
)
private
Long
id
;
@Schema
(
description
=
"应用ID,唯一"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"23068"
)
@ExcelProperty
(
"应用ID,唯一"
)
private
String
appId
;
@Schema
(
description
=
"AES加密后的应用密钥"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@ExcelProperty
(
"AES加密后的应用密钥"
)
private
String
appSecret
;
@Schema
(
description
=
"所属用户ID"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"11786"
)
@ExcelProperty
(
"所属用户ID"
)
private
Long
userId
;
@Schema
(
description
=
"创建时间"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@ExcelProperty
(
"创建时间"
)
private
LocalDateTime
createTime
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/controller/admin/appcredential/vo/AppCredentialSaveReqVO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
appcredential
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.*
;
import
java.util.*
;
import
javax.validation.constraints.*
;
@Schema
(
description
=
"管理后台 - 用户密钥信息新增/修改 Request VO"
)
@Data
public
class
AppCredentialSaveReqVO
{
@Schema
(
description
=
"主键ID"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"8721"
)
private
Long
id
;
@Schema
(
description
=
"应用ID,唯一"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"23068"
)
@NotEmpty
(
message
=
"应用ID,唯一不能为空"
)
private
String
appId
;
@Schema
(
description
=
"AES加密后的应用密钥"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@NotEmpty
(
message
=
"AES加密后的应用密钥不能为空"
)
private
String
appSecret
;
@Schema
(
description
=
"所属用户ID"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
,
example
=
"11786"
)
@NotNull
(
message
=
"所属用户ID不能为空"
)
private
Long
userId
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/dataobject/apiendpoint/ApiEndpointDO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
dal
.
dataobject
.
apiendpoint
;
import
lombok.*
;
import
java.util.*
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
com.baomidou.mybatisplus.annotation.*
;
import
com.luhu.computility.framework.mybatis.core.dataobject.BaseDO
;
/**
* API 接口 DO
*
* @author ljq
*/
@TableName
(
"apihub_api_endpoint"
)
@KeySequence
(
"apihub_api_endpoint_seq"
)
// 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ToString
(
callSuper
=
true
)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
ApiEndpointDO
extends
BaseDO
{
/**
* 接口ID
*/
@TableId
private
Long
id
;
/**
* 接口名称
*/
private
String
name
;
/**
* 接口路径,全路径例如 https://phsl.lijinqi.com/openn_ip/xxx
*/
private
String
path
;
/**
* 请求方式: GET/POST/PUT/DELETE
*/
private
String
method
;
/**
* 参数定义(JSON)
*/
private
String
params
;
/**
* 返回结果示例
*/
private
String
response
;
/**
* 鉴权方式,例如 API_KEY/OAUTH
*/
private
String
authType
;
/**
* 接口级限流规则,例如 100 QPS
*/
private
String
rateLimit
;
/**
* 备注
*/
private
String
remark
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/dataobject/apiendpointrel/ApiEndpointRelDO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
dal
.
dataobject
.
apiendpointrel
;
import
lombok.*
;
import
java.util.*
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
com.baomidou.mybatisplus.annotation.*
;
import
com.luhu.computility.framework.mybatis.core.dataobject.BaseDO
;
/**
* API 应用与接口关系 DO
*
* @author ljq
*/
@TableName
(
"apihub_api_endpoint_rel"
)
@KeySequence
(
"apihub_api_endpoint_rel_seq"
)
// 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ToString
(
callSuper
=
true
)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
ApiEndpointRelDO
extends
BaseDO
{
/**
* 主键
*/
@TableId
private
Long
id
;
/**
* API 应用ID,关联 apihub_api.id
*/
private
Long
apiId
;
/**
* 接口ID,关联 apihub_api_endpoint.id
*/
private
Long
apiEndpointId
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/dataobject/appcredential/AppCredentialDO.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
dal
.
dataobject
.
appcredential
;
import
lombok.*
;
import
java.util.*
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
com.baomidou.mybatisplus.annotation.*
;
import
com.luhu.computility.framework.mybatis.core.dataobject.BaseDO
;
/**
* 用户密钥信息 DO
*
* @author ljq
*/
@TableName
(
"apihub_app_credential"
)
@KeySequence
(
"apihub_app_credential_seq"
)
// 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ToString
(
callSuper
=
true
)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
AppCredentialDO
extends
BaseDO
{
/**
* 主键ID
*/
@TableId
private
Long
id
;
/**
* 应用ID,唯一
*/
private
String
appId
;
/**
* AES加密后的应用密钥
*/
private
String
appSecret
;
/**
* 所属用户ID
*/
private
Long
userId
;
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/mysql/apiendpoint/ApiEndpointMapper.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
dal
.
mysql
.
apiendpoint
;
import
java.util.*
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.mybatis.core.query.LambdaQueryWrapperX
;
import
com.luhu.computility.framework.mybatis.core.mapper.BaseMapperX
;
import
com.luhu.computility.framework.mybatis.core.query.MPJLambdaWrapperX
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpoint.ApiEndpointDO
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpointrel.ApiEndpointRelDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.*
;
/**
* API 接口 Mapper
*
* @author ljq
*/
@Mapper
public
interface
ApiEndpointMapper
extends
BaseMapperX
<
ApiEndpointDO
>
{
default
PageResult
<
ApiEndpointDO
>
selectPage
(
ApiEndpointPageReqVO
reqVO
)
{
return
selectPage
(
reqVO
,
new
LambdaQueryWrapperX
<
ApiEndpointDO
>()
.
likeIfPresent
(
ApiEndpointDO:
:
getName
,
reqVO
.
getName
())
.
eqIfPresent
(
ApiEndpointDO:
:
getPath
,
reqVO
.
getPath
())
.
eqIfPresent
(
ApiEndpointDO:
:
getMethod
,
reqVO
.
getMethod
())
.
eqIfPresent
(
ApiEndpointDO:
:
getParams
,
reqVO
.
getParams
())
.
eqIfPresent
(
ApiEndpointDO:
:
getResponse
,
reqVO
.
getResponse
())
.
eqIfPresent
(
ApiEndpointDO:
:
getAuthType
,
reqVO
.
getAuthType
())
.
eqIfPresent
(
ApiEndpointDO:
:
getRateLimit
,
reqVO
.
getRateLimit
())
.
eqIfPresent
(
ApiEndpointDO:
:
getRemark
,
reqVO
.
getRemark
())
.
betweenIfPresent
(
ApiEndpointDO:
:
getCreateTime
,
reqVO
.
getCreateTime
())
.
orderByDesc
(
ApiEndpointDO:
:
getId
));
}
default
List
<
ApiEndpointDO
>
selectAll
()
{
return
selectList
();
}
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/mysql/apiendpointrel/ApiEndpointRelMapper.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
dal
.
mysql
.
apiendpointrel
;
import
java.util.*
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.mybatis.core.query.LambdaQueryWrapperX
;
import
com.luhu.computility.framework.mybatis.core.mapper.BaseMapperX
;
import
com.luhu.computility.framework.mybatis.core.query.MPJLambdaWrapperX
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.ApiEndpointRespVO
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpoint.ApiEndpointDO
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpointrel.ApiEndpointRelDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpointrel.vo.*
;
/**
* API 应用与接口关系 Mapper
*
* @author ljq
*/
@Mapper
public
interface
ApiEndpointRelMapper
extends
BaseMapperX
<
ApiEndpointRelDO
>
{
default
PageResult
<
ApiEndpointRelDO
>
selectPage
(
ApiEndpointRelPageReqVO
reqVO
)
{
return
selectPage
(
reqVO
,
new
LambdaQueryWrapperX
<
ApiEndpointRelDO
>()
.
eqIfPresent
(
ApiEndpointRelDO:
:
getApiId
,
reqVO
.
getApiId
())
.
eqIfPresent
(
ApiEndpointRelDO:
:
getApiEndpointId
,
reqVO
.
getApiEndpointId
())
.
betweenIfPresent
(
ApiEndpointRelDO:
:
getCreateTime
,
reqVO
.
getCreateTime
())
.
orderByDesc
(
ApiEndpointRelDO:
:
getId
));
}
default
int
deleteByApiId
(
Long
apiId
)
{
return
delete
(
new
LambdaQueryWrapperX
<
ApiEndpointRelDO
>()
.
eqIfPresent
(
ApiEndpointRelDO:
:
getApiId
,
apiId
));
}
default
List
<
ApiEndpointRespVO
>
getApiEndpointByApiId
(
Long
apiId
)
{
return
selectJoinList
(
ApiEndpointRespVO
.
class
,
new
MPJLambdaWrapperX
<
ApiEndpointRelDO
>()
.
selectAs
(
ApiEndpointDO:
:
getName
,
ApiEndpointRespVO:
:
getName
)
.
selectAs
(
ApiEndpointDO:
:
getMethod
,
ApiEndpointRespVO:
:
getMethod
)
.
selectAs
(
ApiEndpointDO:
:
getPath
,
ApiEndpointRespVO:
:
getPath
)
.
selectAs
(
ApiEndpointRelDO:
:
getApiEndpointId
,
ApiEndpointRespVO:
:
getId
)
.
leftJoin
(
ApiEndpointDO
.
class
,
ApiEndpointDO:
:
getId
,
ApiEndpointRelDO:
:
getApiEndpointId
)
.
eqIfPresent
(
ApiEndpointRelDO:
:
getApiId
,
apiId
)
);
}
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/dal/mysql/appcredential/AppCredentialMapper.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
dal
.
mysql
.
appcredential
;
import
java.util.*
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.mybatis.core.query.LambdaQueryWrapperX
;
import
com.luhu.computility.framework.mybatis.core.mapper.BaseMapperX
;
import
com.luhu.computility.module.apihub.dal.dataobject.appcredential.AppCredentialDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
com.luhu.computility.module.apihub.controller.admin.appcredential.vo.*
;
/**
* 用户密钥信息 Mapper
*
* @author ljq
*/
@Mapper
public
interface
AppCredentialMapper
extends
BaseMapperX
<
AppCredentialDO
>
{
default
PageResult
<
AppCredentialDO
>
selectPage
(
AppCredentialPageReqVO
reqVO
)
{
return
selectPage
(
reqVO
,
new
LambdaQueryWrapperX
<
AppCredentialDO
>()
.
eqIfPresent
(
AppCredentialDO:
:
getAppId
,
reqVO
.
getAppId
())
.
eqIfPresent
(
AppCredentialDO:
:
getAppSecret
,
reqVO
.
getAppSecret
())
.
eqIfPresent
(
AppCredentialDO:
:
getUserId
,
reqVO
.
getUserId
())
.
betweenIfPresent
(
AppCredentialDO:
:
getCreateTime
,
reqVO
.
getCreateTime
())
.
orderByDesc
(
AppCredentialDO:
:
getId
));
}
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/enums/ErrorCodeConstants.java
View file @
401032c1
...
@@ -19,4 +19,7 @@ public interface ErrorCodeConstants {
...
@@ -19,4 +19,7 @@ public interface ErrorCodeConstants {
ErrorCode
API_ORDER_UPDATE_PAID_FAIL_PAY_ORDER_ID_ERROR
=
new
ErrorCode
(
1_010_001_014
,
"API订单更新支付状态失败,支付单编号不匹配"
);
ErrorCode
API_ORDER_UPDATE_PAID_FAIL_PAY_ORDER_ID_ERROR
=
new
ErrorCode
(
1_010_001_014
,
"API订单更新支付状态失败,支付单编号不匹配"
);
ErrorCode
API_ORDER_UPDATE_PAID_FAIL_PAY_ORDER_STATUS_NOT_SUCCESS
=
new
ErrorCode
(
1_010_001_015
,
"API订单更新支付状态失败,支付单状态不是【支付成功】状态"
);
ErrorCode
API_ORDER_UPDATE_PAID_FAIL_PAY_ORDER_STATUS_NOT_SUCCESS
=
new
ErrorCode
(
1_010_001_015
,
"API订单更新支付状态失败,支付单状态不是【支付成功】状态"
);
ErrorCode
API_ORDER_UPDATE_PAID_FAIL_PAY_PRICE_NOT_MATCH
=
new
ErrorCode
(
1_010_001_016
,
"API订单更新支付状态失败,支付单金额不匹配"
);
ErrorCode
API_ORDER_UPDATE_PAID_FAIL_PAY_PRICE_NOT_MATCH
=
new
ErrorCode
(
1_010_001_016
,
"API订单更新支付状态失败,支付单金额不匹配"
);
ErrorCode
API_ENDPOINT_NOT_EXISTS
=
new
ErrorCode
(
1_010_001_017
,
"API 接口不存在"
);
ErrorCode
API_ENDPOINT_REL_NOT_EXISTS
=
new
ErrorCode
(
1_010_001_018
,
"API 应用与接口关系不存在"
);
ErrorCode
APP_CREDENTIAL_NOT_EXISTS
=
new
ErrorCode
(
1_010_001_019
,
"用户密钥信息不存在"
);
}
}
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/apiendpoint/ApiEndpointService.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
service
.
apiendpoint
;
import
java.util.*
;
import
javax.validation.*
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.*
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpoint.ApiEndpointDO
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
/**
* API 接口 Service 接口
*
* @author ljq
*/
public
interface
ApiEndpointService
{
/**
* 创建API 接口
*
* @param createReqVO 创建信息
* @return 编号
*/
Long
createApiEndpoint
(
@Valid
ApiEndpointSaveReqVO
createReqVO
);
/**
* 更新API 接口
*
* @param updateReqVO 更新信息
*/
void
updateApiEndpoint
(
@Valid
ApiEndpointSaveReqVO
updateReqVO
);
/**
* 删除API 接口
*
* @param id 编号
*/
void
deleteApiEndpoint
(
Long
id
);
/**
* 批量删除API 接口
*
* @param ids 编号
*/
void
deleteApiEndpointListByIds
(
List
<
Long
>
ids
);
/**
* 获得API 接口
*
* @param id 编号
* @return API 接口
*/
ApiEndpointDO
getApiEndpoint
(
Long
id
);
/**
* 获得API 接口分页
*
* @param pageReqVO 分页查询
* @return API 接口分页
*/
PageResult
<
ApiEndpointDO
>
getApiEndpointPage
(
ApiEndpointPageReqVO
pageReqVO
);
/**
* 获得API所有接口
*
* @return API 接口
*/
List
<
ApiEndpointDO
>
getApiEndpointList
();
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/apiendpoint/ApiEndpointServiceImpl.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
service
.
apiendpoint
;
import
cn.hutool.core.collection.CollUtil
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.*
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.*
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpoint.ApiEndpointDO
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
import
com.luhu.computility.framework.common.util.object.BeanUtils
;
import
com.luhu.computility.module.apihub.dal.mysql.apiendpoint.ApiEndpointMapper
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
exception
.
util
.
ServiceExceptionUtil
.
exception
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
util
.
collection
.
CollectionUtils
.
convertList
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
util
.
collection
.
CollectionUtils
.
diffList
;
import
static
com
.
luhu
.
computility
.
module
.
apihub
.
enums
.
ErrorCodeConstants
.*;
/**
* API 接口 Service 实现类
*
* @author ljq
*/
@Service
@Validated
public
class
ApiEndpointServiceImpl
implements
ApiEndpointService
{
@Resource
private
ApiEndpointMapper
apiEndpointMapper
;
@Override
public
Long
createApiEndpoint
(
ApiEndpointSaveReqVO
createReqVO
)
{
// 插入
ApiEndpointDO
apiEndpoint
=
BeanUtils
.
toBean
(
createReqVO
,
ApiEndpointDO
.
class
);
apiEndpointMapper
.
insert
(
apiEndpoint
);
// 返回
return
apiEndpoint
.
getId
();
}
@Override
public
void
updateApiEndpoint
(
ApiEndpointSaveReqVO
updateReqVO
)
{
// 校验存在
validateApiEndpointExists
(
updateReqVO
.
getId
());
// 更新
ApiEndpointDO
updateObj
=
BeanUtils
.
toBean
(
updateReqVO
,
ApiEndpointDO
.
class
);
apiEndpointMapper
.
updateById
(
updateObj
);
}
@Override
public
void
deleteApiEndpoint
(
Long
id
)
{
// 校验存在
validateApiEndpointExists
(
id
);
// 删除
apiEndpointMapper
.
deleteById
(
id
);
}
@Override
public
void
deleteApiEndpointListByIds
(
List
<
Long
>
ids
)
{
// 删除
apiEndpointMapper
.
deleteByIds
(
ids
);
}
private
void
validateApiEndpointExists
(
Long
id
)
{
if
(
apiEndpointMapper
.
selectById
(
id
)
==
null
)
{
throw
exception
(
API_ENDPOINT_NOT_EXISTS
);
}
}
@Override
public
ApiEndpointDO
getApiEndpoint
(
Long
id
)
{
return
apiEndpointMapper
.
selectById
(
id
);
}
@Override
public
PageResult
<
ApiEndpointDO
>
getApiEndpointPage
(
ApiEndpointPageReqVO
pageReqVO
)
{
return
apiEndpointMapper
.
selectPage
(
pageReqVO
);
}
@Override
public
List
<
ApiEndpointDO
>
getApiEndpointList
()
{
return
apiEndpointMapper
.
selectAll
();
}
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/apiendpointrel/ApiEndpointRelService.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
service
.
apiendpointrel
;
import
java.util.*
;
import
javax.validation.*
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.ApiEndpointRespVO
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpointrel.vo.*
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpointrel.ApiEndpointRelDO
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
/**
* API 应用与接口关系 Service 接口
*
* @author ljq
*/
public
interface
ApiEndpointRelService
{
/**
* 创建API 应用与接口关系
*
* @param createReqVO 创建信息
* @return 编号
*/
Long
createApiEndpointRel
(
@Valid
ApiEndpointRelSaveReqVO
createReqVO
);
/**
* 更新API 应用与接口关系
*
* @param updateReqVO 更新信息
*/
void
updateApiEndpointRel
(
@Valid
ApiEndpointRelSaveReqVO
updateReqVO
);
/**
* 删除API 应用与接口关系
*
* @param id 编号
*/
void
deleteApiEndpointRel
(
Long
id
);
/**
* 批量删除API 应用与接口关系
*
* @param ids 编号
*/
void
deleteApiEndpointRelListByIds
(
List
<
Long
>
ids
);
/**
* 获得API 应用与接口关系
*
* @param id 编号
* @return API 应用与接口关系
*/
ApiEndpointRelDO
getApiEndpointRel
(
Long
id
);
/**
* 获得API 应用与接口关系分页
*
* @param pageReqVO 分页查询
* @return API 应用与接口关系分页
*/
PageResult
<
ApiEndpointRelDO
>
getApiEndpointRelPage
(
ApiEndpointRelPageReqVO
pageReqVO
);
/**
* 获得API 应用与接口关系
*
* @param apiId 分页查询
* @return API 应用与接口关系分页
*/
List
<
ApiEndpointRespVO
>
getApiEndpointByApiId
(
Long
apiId
);
/**
* 根据apiId删除关联的ApiEndpoint
*/
Integer
deleteByApiId
(
Long
apiId
);
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/apiendpointrel/ApiEndpointRelServiceImpl.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
service
.
apiendpointrel
;
import
cn.hutool.core.collection.CollUtil
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpoint.vo.ApiEndpointRespVO
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpoint.ApiEndpointDO
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.*
;
import
com.luhu.computility.module.apihub.controller.admin.apiendpointrel.vo.*
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpointrel.ApiEndpointRelDO
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
import
com.luhu.computility.framework.common.util.object.BeanUtils
;
import
com.luhu.computility.module.apihub.dal.mysql.apiendpointrel.ApiEndpointRelMapper
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
exception
.
util
.
ServiceExceptionUtil
.
exception
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
util
.
collection
.
CollectionUtils
.
convertList
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
util
.
collection
.
CollectionUtils
.
diffList
;
import
static
com
.
luhu
.
computility
.
module
.
apihub
.
enums
.
ErrorCodeConstants
.*;
/**
* API 应用与接口关系 Service 实现类
*
* @author ljq
*/
@Service
@Validated
public
class
ApiEndpointRelServiceImpl
implements
ApiEndpointRelService
{
@Resource
private
ApiEndpointRelMapper
apiEndpointRelMapper
;
@Override
public
Long
createApiEndpointRel
(
ApiEndpointRelSaveReqVO
createReqVO
)
{
// 插入
ApiEndpointRelDO
apiEndpointRel
=
BeanUtils
.
toBean
(
createReqVO
,
ApiEndpointRelDO
.
class
);
apiEndpointRelMapper
.
insert
(
apiEndpointRel
);
// 返回
return
apiEndpointRel
.
getId
();
}
@Override
public
void
updateApiEndpointRel
(
ApiEndpointRelSaveReqVO
updateReqVO
)
{
// 校验存在
validateApiEndpointRelExists
(
updateReqVO
.
getId
());
// 更新
ApiEndpointRelDO
updateObj
=
BeanUtils
.
toBean
(
updateReqVO
,
ApiEndpointRelDO
.
class
);
apiEndpointRelMapper
.
updateById
(
updateObj
);
}
@Override
public
void
deleteApiEndpointRel
(
Long
id
)
{
// 校验存在
validateApiEndpointRelExists
(
id
);
// 删除
apiEndpointRelMapper
.
deleteById
(
id
);
}
@Override
public
void
deleteApiEndpointRelListByIds
(
List
<
Long
>
ids
)
{
// 删除
apiEndpointRelMapper
.
deleteByIds
(
ids
);
}
private
void
validateApiEndpointRelExists
(
Long
id
)
{
if
(
apiEndpointRelMapper
.
selectById
(
id
)
==
null
)
{
throw
exception
(
API_ENDPOINT_REL_NOT_EXISTS
);
}
}
@Override
public
ApiEndpointRelDO
getApiEndpointRel
(
Long
id
)
{
return
apiEndpointRelMapper
.
selectById
(
id
);
}
@Override
public
PageResult
<
ApiEndpointRelDO
>
getApiEndpointRelPage
(
ApiEndpointRelPageReqVO
pageReqVO
)
{
return
apiEndpointRelMapper
.
selectPage
(
pageReqVO
);
}
@Override
public
List
<
ApiEndpointRespVO
>
getApiEndpointByApiId
(
Long
apiId
)
{
return
apiEndpointRelMapper
.
getApiEndpointByApiId
(
apiId
);
}
@Override
public
Integer
deleteByApiId
(
Long
apiId
)
{
return
apiEndpointRelMapper
.
deleteByApiId
(
apiId
);
}
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/appcredential/AppCredentialService.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
service
.
appcredential
;
import
java.util.*
;
import
javax.validation.*
;
import
com.luhu.computility.module.apihub.controller.admin.appcredential.vo.*
;
import
com.luhu.computility.module.apihub.dal.dataobject.appcredential.AppCredentialDO
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
/**
* 用户密钥信息 Service 接口
*
* @author ljq
*/
public
interface
AppCredentialService
{
/**
* 创建用户密钥信息
*
* @param createReqVO 创建信息
* @return 编号
*/
Long
createAppCredential
(
@Valid
AppCredentialSaveReqVO
createReqVO
);
/**
* 更新用户密钥信息
*
* @param updateReqVO 更新信息
*/
void
updateAppCredential
(
@Valid
AppCredentialSaveReqVO
updateReqVO
);
/**
* 删除用户密钥信息
*
* @param id 编号
*/
void
deleteAppCredential
(
Long
id
);
/**
* 批量删除用户密钥信息
*
* @param ids 编号
*/
void
deleteAppCredentialListByIds
(
List
<
Long
>
ids
);
/**
* 获得用户密钥信息
*
* @param id 编号
* @return 用户密钥信息
*/
AppCredentialDO
getAppCredential
(
Long
id
);
/**
* 获得用户密钥信息分页
*
* @param pageReqVO 分页查询
* @return 用户密钥信息分页
*/
PageResult
<
AppCredentialDO
>
getAppCredentialPage
(
AppCredentialPageReqVO
pageReqVO
);
}
\ No newline at end of file
computility-module-apihub/src/main/java/com/luhu/computility/module/apihub/service/appcredential/AppCredentialServiceImpl.java
0 → 100644
View file @
401032c1
package
com
.
luhu
.
computility
.
module
.
apihub
.
service
.
appcredential
;
import
cn.hutool.core.collection.CollUtil
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.*
;
import
com.luhu.computility.module.apihub.controller.admin.appcredential.vo.*
;
import
com.luhu.computility.module.apihub.dal.dataobject.appcredential.AppCredentialDO
;
import
com.luhu.computility.framework.common.pojo.PageResult
;
import
com.luhu.computility.framework.common.pojo.PageParam
;
import
com.luhu.computility.framework.common.util.object.BeanUtils
;
import
com.luhu.computility.module.apihub.dal.mysql.appcredential.AppCredentialMapper
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
exception
.
util
.
ServiceExceptionUtil
.
exception
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
util
.
collection
.
CollectionUtils
.
convertList
;
import
static
com
.
luhu
.
computility
.
framework
.
common
.
util
.
collection
.
CollectionUtils
.
diffList
;
import
static
com
.
luhu
.
computility
.
module
.
apihub
.
enums
.
ErrorCodeConstants
.*;
/**
* 用户密钥信息 Service 实现类
*
* @author ljq
*/
@Service
@Validated
public
class
AppCredentialServiceImpl
implements
AppCredentialService
{
@Resource
private
AppCredentialMapper
appCredentialMapper
;
@Override
public
Long
createAppCredential
(
AppCredentialSaveReqVO
createReqVO
)
{
// 插入
AppCredentialDO
appCredential
=
BeanUtils
.
toBean
(
createReqVO
,
AppCredentialDO
.
class
);
appCredentialMapper
.
insert
(
appCredential
);
// 返回
return
appCredential
.
getId
();
}
@Override
public
void
updateAppCredential
(
AppCredentialSaveReqVO
updateReqVO
)
{
// 校验存在
validateAppCredentialExists
(
updateReqVO
.
getId
());
// 更新
AppCredentialDO
updateObj
=
BeanUtils
.
toBean
(
updateReqVO
,
AppCredentialDO
.
class
);
appCredentialMapper
.
updateById
(
updateObj
);
}
@Override
public
void
deleteAppCredential
(
Long
id
)
{
// 校验存在
validateAppCredentialExists
(
id
);
// 删除
appCredentialMapper
.
deleteById
(
id
);
}
@Override
public
void
deleteAppCredentialListByIds
(
List
<
Long
>
ids
)
{
// 删除
appCredentialMapper
.
deleteByIds
(
ids
);
}
private
void
validateAppCredentialExists
(
Long
id
)
{
if
(
appCredentialMapper
.
selectById
(
id
)
==
null
)
{
throw
exception
(
APP_CREDENTIAL_NOT_EXISTS
);
}
}
@Override
public
AppCredentialDO
getAppCredential
(
Long
id
)
{
return
appCredentialMapper
.
selectById
(
id
);
}
@Override
public
PageResult
<
AppCredentialDO
>
getAppCredentialPage
(
AppCredentialPageReqVO
pageReqVO
)
{
return
appCredentialMapper
.
selectPage
(
pageReqVO
);
}
}
\ No newline at end of file
computility-module-external/src/main/java/com/luhu/computility/module/external/controller/openapi/OpenApiController.java
View file @
401032c1
...
@@ -64,7 +64,7 @@ public class OpenApiController {
...
@@ -64,7 +64,7 @@ public class OpenApiController {
@ApiAccessLog
@ApiAccessLog
@PostMapping
(
value
=
"/digital-human-conversation"
)
@PostMapping
(
value
=
"/digital-human-conversation"
)
@Operation
(
summary
=
"数字人对话"
,
description
=
"和数字人朱熹进行一问一答的对话"
)
@Operation
(
summary
=
"数字人对话"
,
description
=
"和数字人朱熹进行一问一答的对话"
)
//
@ApiSignature
@ApiSignature
public
CommonResult
<
ConversationRespDTO
>
digitalHumanConversation
(
@RequestBody
ConversationReqDTO
conversationReqDTO
){
public
CommonResult
<
ConversationRespDTO
>
digitalHumanConversation
(
@RequestBody
ConversationReqDTO
conversationReqDTO
){
return
openApiService
.
digitalHumanConversation
(
conversationReqDTO
);
return
openApiService
.
digitalHumanConversation
(
conversationReqDTO
);
}
}
...
...
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