feat: 通用授权后台、离线证、Waffo 支付页与仪表盘加强
支持多产品计划展示、LICOFF 离线签发、支付独立配置与调试,以及分析看板;同步更新 README 与集成文档。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
1 parent
0966375076
commit
8cc2c83f9d
41 files changed
+3177
-332
No files matched your search
@@ -90,3 +90,33 @@ func (ctrl *AnalyticsController) GetProductDistribution(c *gin.Context) {
|
||||
}
|
||||
c.JSON(http.StatusOK, gin.H{"code": 0, "data": stats})
|
||||
}
|
||||
|
||||
// GetGeoDistribution 地理分布 // Logan.Li
|
||||
func (ctrl *AnalyticsController) GetGeoDistribution(c *gin.Context) {
|
||||
stats, err := ctrl.svc.GetGeoDistribution()
|
||||
if err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"code": 500, "message": err.Error()})
|
||||
return
|
||||
}
|
||||
c.JSON(http.StatusOK, gin.H{"code": 0, "data": stats})
|
||||
}
|
||||
|
||||
// GetPlatformDistribution 客户端形态分布 // Logan.Li
|
||||
func (ctrl *AnalyticsController) GetPlatformDistribution(c *gin.Context) {
|
||||
stats, err := ctrl.svc.GetPlatformDistribution()
|
||||
if err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"code": 500, "message": err.Error()})
|
||||
return
|
||||
}
|
||||
c.JSON(http.StatusOK, gin.H{"code": 0, "data": stats})
|
||||
}
|
||||
|
||||
// GetLicenseGrowthDetail 增长明细(累计+新增) // Logan.Li
|
||||
func (ctrl *AnalyticsController) GetLicenseGrowthDetail(c *gin.Context) {
|
||||
stats, err := ctrl.svc.GetLicenseGrowthDetail()
|
||||
if err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"code": 500, "message": err.Error()})
|
||||
return
|
||||
}
|
||||
c.JSON(http.StatusOK, gin.H{"code": 0, "data": stats})
|
||||
}
|
||||
Reference in new issue
Block a user