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
49e2ad4f
authored
Mar 02, 2026
by
Jony.L
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
大屏数据:API请求趋势、订单管理、服务能力、用户管理真实数据
parent
afae711f
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
159 additions
and
4 deletions
+159
-4
computility-module-apihub/computility-module-apihub-api/src/main/java/com/luhu/computility/module/apihub/api/statistics/ApiHubStatisticsApi.java
+16
-0
computility-module-apihub/computility-module-apihub-api/src/main/java/com/luhu/computility/module/apihub/api/statistics/dto/ServiceCapabilityDTO.java
+29
-0
computility-module-apihub/computility-module-apihub-api/src/main/java/com/luhu/computility/module/apihub/enums/ApiStatusEnum.java
+29
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/service/impl/ApiHubStatisticsApiImpl.java
+72
-0
computility-module-biz/computility-module-biz-biz/src/main/java/com/luhu/computility/module/biz/service/home/HomeIndexServiceImpl.java
+13
-4
No files found.
computility-module-apihub/computility-module-apihub-api/src/main/java/com/luhu/computility/module/apihub/api/statistics/ApiHubStatisticsApi.java
0 → 100644
View file @
49e2ad4f
package
com
.
luhu
.
computility
.
module
.
apihub
.
api
.
statistics
;
import
com.luhu.computility.module.apihub.api.statistics.dto.ServiceCapabilityDTO
;
/**
* API hub 统计 API 接口
*
* @author jony
*/
public
interface
ApiHubStatisticsApi
{
/**
* 获取服务能力统计数据(历年上线应用数和 API 数量)
*/
ServiceCapabilityDTO
getServiceCapability
();
}
computility-module-apihub/computility-module-apihub-api/src/main/java/com/luhu/computility/module/apihub/api/statistics/dto/ServiceCapabilityDTO.java
0 → 100644
View file @
49e2ad4f
package
com
.
luhu
.
computility
.
module
.
apihub
.
api
.
statistics
.
dto
;
import
lombok.Data
;
import
java.util.List
;
/**
* 服务能力统计 DTO
*
* @author jony
*/
@Data
public
class
ServiceCapabilityDTO
{
/**
* 年份列表
*/
private
List
<
String
>
years
;
/**
* 上线应用数列表(与 years 一一对应)
*/
private
List
<
Long
>
appOnline
;
/**
* 上线 API 数量列表(与 years 一一对应)
*/
private
List
<
Long
>
apiOnline
;
}
computility-module-apihub/computility-module-apihub-api/src/main/java/com/luhu/computility/module/apihub/enums/ApiStatusEnum.java
0 → 100644
View file @
49e2ad4f
package
com
.
luhu
.
computility
.
module
.
apihub
.
enums
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
/**
* API 上架状态枚举
*
* @author jony
*/
@Getter
@AllArgsConstructor
public
enum
ApiStatusEnum
{
OFFLINE
(
0
,
"下架"
),
ONLINE
(
1
,
"上架"
);
/**
* 状态值
*/
private
final
Integer
value
;
/**
* 状态名
*/
private
final
String
name
;
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/service/impl/ApiHubStatisticsApiImpl.java
0 → 100644
View file @
49e2ad4f
package
com
.
luhu
.
computility
.
module
.
apihub
.
service
.
impl
;
import
com.luhu.computility.module.apihub.api.statistics.ApiHubStatisticsApi
;
import
com.luhu.computility.module.apihub.api.statistics.dto.ServiceCapabilityDTO
;
import
com.luhu.computility.module.apihub.dal.dataobject.api.ApiDO
;
import
com.luhu.computility.module.apihub.dal.dataobject.apiendpoint.ApiEndpointDO
;
import
com.luhu.computility.module.apihub.dal.mysql.api.ApiMapper
;
import
com.luhu.computility.module.apihub.dal.mysql.apiendpoint.ApiEndpointMapper
;
import
com.luhu.computility.module.apihub.enums.ApiStatusEnum
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.CollectionUtils
;
import
javax.annotation.Resource
;
import
java.util.*
;
import
java.util.stream.Collectors
;
import
static
com
.
luhu
.
computility
.
module
.
apihub
.
enums
.
ApiStatusEnum
.
ONLINE
;
@Service
public
class
ApiHubStatisticsApiImpl
implements
ApiHubStatisticsApi
{
@Resource
private
ApiMapper
apiMapper
;
@Resource
private
ApiEndpointMapper
apiEndpointMapper
;
@Override
public
ServiceCapabilityDTO
getServiceCapability
()
{
ServiceCapabilityDTO
result
=
new
ServiceCapabilityDTO
();
// 查询已上架的 API 和 API 接口(selectList 会自动过滤 deleted=true)
List
<
ApiDO
>
apiList
=
apiMapper
.
selectList
(
ApiDO:
:
getStatus
,
ONLINE
.
getValue
());
List
<
ApiEndpointDO
>
endpointList
=
apiEndpointMapper
.
selectList
(
ApiEndpointDO:
:
getIsShelf
,
true
);
if
(
CollectionUtils
.
isEmpty
(
apiList
)
&&
CollectionUtils
.
isEmpty
(
endpointList
))
{
result
.
setYears
(
new
ArrayList
<>());
result
.
setAppOnline
(
new
ArrayList
<>());
result
.
setApiOnline
(
new
ArrayList
<>());
return
result
;
}
Map
<
String
,
Long
>
apiCountByYear
=
apiList
.
stream
()
.
filter
(
api
->
api
.
getCreateTime
()
!=
null
)
.
collect
(
Collectors
.
groupingBy
(
api
->
String
.
valueOf
(
api
.
getCreateTime
().
getYear
()),
Collectors
.
counting
()
));
Map
<
String
,
Long
>
endpointCountByYear
=
endpointList
.
stream
()
.
filter
(
endpoint
->
endpoint
.
getCreateTime
()
!=
null
)
.
collect
(
Collectors
.
groupingBy
(
endpoint
->
String
.
valueOf
(
endpoint
.
getCreateTime
().
getYear
()),
Collectors
.
counting
()
));
Set
<
String
>
allYears
=
new
HashSet
<>();
allYears
.
addAll
(
apiCountByYear
.
keySet
());
allYears
.
addAll
(
endpointCountByYear
.
keySet
());
List
<
String
>
sortedYears
=
allYears
.
stream
().
sorted
().
collect
(
Collectors
.
toList
());
result
.
setYears
(
sortedYears
);
result
.
setAppOnline
(
sortedYears
.
stream
()
.
map
(
year
->
apiCountByYear
.
getOrDefault
(
year
,
0L
))
.
collect
(
Collectors
.
toList
()));
result
.
setApiOnline
(
sortedYears
.
stream
()
.
map
(
year
->
endpointCountByYear
.
getOrDefault
(
year
,
0L
))
.
collect
(
Collectors
.
toList
()));
return
result
;
}
}
computility-module-biz/computility-module-biz-biz/src/main/java/com/luhu/computility/module/biz/service/home/HomeIndexServiceImpl.java
View file @
49e2ad4f
...
@@ -10,6 +10,8 @@ import com.luhu.computility.module.apihub.api.apiorder.ApiOrderApi;
...
@@ -10,6 +10,8 @@ import com.luhu.computility.module.apihub.api.apiorder.ApiOrderApi;
import
com.luhu.computility.module.apihub.api.apiorder.dto.ApiOrderRespDTO
;
import
com.luhu.computility.module.apihub.api.apiorder.dto.ApiOrderRespDTO
;
import
com.luhu.computility.module.apihub.api.order.ApiHubOrderStatisticsApi
;
import
com.luhu.computility.module.apihub.api.order.ApiHubOrderStatisticsApi
;
import
com.luhu.computility.module.apihub.api.order.dto.ApiOrderStatisticsDTO
;
import
com.luhu.computility.module.apihub.api.order.dto.ApiOrderStatisticsDTO
;
import
com.luhu.computility.module.apihub.api.statistics.ApiHubStatisticsApi
;
import
com.luhu.computility.module.apihub.api.statistics.dto.ServiceCapabilityDTO
;
import
com.luhu.computility.module.biz.controller.admin.home.vo.HomeIndexApiCallsRespVO
;
import
com.luhu.computility.module.biz.controller.admin.home.vo.HomeIndexApiCallsRespVO
;
import
com.luhu.computility.module.biz.controller.admin.home.vo.HomeIndexComputeDistributionRespVO
;
import
com.luhu.computility.module.biz.controller.admin.home.vo.HomeIndexComputeDistributionRespVO
;
import
com.luhu.computility.module.biz.controller.admin.home.vo.HomeIndexOrdersCountRespVO
;
import
com.luhu.computility.module.biz.controller.admin.home.vo.HomeIndexOrdersCountRespVO
;
...
@@ -64,6 +66,8 @@ public class HomeIndexServiceImpl implements HomeIndexService {
...
@@ -64,6 +66,8 @@ public class HomeIndexServiceImpl implements HomeIndexService {
ApiCallLogApi
apiCallLogApi
;
ApiCallLogApi
apiCallLogApi
;
@Resource
@Resource
ComputeStatisticsApi
computeStatisticsApi
;
ComputeStatisticsApi
computeStatisticsApi
;
@Resource
ApiHubStatisticsApi
apiHubStatisticsApi
;
@Override
@Override
public
List
<
HomeIndexUsersCountRespVO
>
getRegisterUsersCount
()
{
public
List
<
HomeIndexUsersCountRespVO
>
getRegisterUsersCount
()
{
...
@@ -567,11 +571,16 @@ public class HomeIndexServiceImpl implements HomeIndexService {
...
@@ -567,11 +571,16 @@ public class HomeIndexServiceImpl implements HomeIndexService {
usersMap
.
put
(
"y"
,
convertUsers
(
getUsersData
(
"y"
)));
usersMap
.
put
(
"y"
,
convertUsers
(
getUsersData
(
"y"
)));
result
.
setUsers
(
usersMap
);
result
.
setUsers
(
usersMap
);
// 6. 服务能力数据(上线应用数和API数量的历年统计,暂时返回空数据)
// 6. 服务能力数据(上线应用数和 API 数量的历年统计)
ServiceCapabilityDTO
serviceCapabilityDTO
=
apiHubStatisticsApi
.
getServiceCapability
();
HomeDashboardRespVO
.
ServiceCapabilityVO
serviceCapabilityVO
=
new
HomeDashboardRespVO
.
ServiceCapabilityVO
();
HomeDashboardRespVO
.
ServiceCapabilityVO
serviceCapabilityVO
=
new
HomeDashboardRespVO
.
ServiceCapabilityVO
();
serviceCapabilityVO
.
setYears
(
new
ArrayList
<>());
serviceCapabilityVO
.
setYears
(
serviceCapabilityDTO
.
getYears
());
serviceCapabilityVO
.
setAppOnline
(
new
ArrayList
<>());
serviceCapabilityVO
.
setAppOnline
(
serviceCapabilityDTO
.
getAppOnline
().
stream
()
serviceCapabilityVO
.
setApiOnline
(
new
ArrayList
<>());
.
map
(
Long:
:
doubleValue
)
.
collect
(
Collectors
.
toList
()));
serviceCapabilityVO
.
setApiOnline
(
serviceCapabilityDTO
.
getApiOnline
().
stream
()
.
map
(
Long:
:
doubleValue
)
.
collect
(
Collectors
.
toList
()));
result
.
setServiceCapability
(
serviceCapabilityVO
);
result
.
setServiceCapability
(
serviceCapabilityVO
);
// 7. 轮播数据(月度应用和模型服务数据,暂时返回空列表)
// 7. 轮播数据(月度应用和模型服务数据,暂时返回空列表)
...
...
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