创建时间: 2025年06月22日 16:26
任务类型: 功能开发
关联模块: URS推广模块
完成状态: ✅ 已完成
为URS推广模块新增图表控制器,参考app/Module/Admin/AdminControllers/MetricsController.php的实现方式,提供以下图表功能:
文件: app/Module/UrsPromotion/AdminControllers/UrsPromotionMetricsController.php
功能特点:
UCore\DcatAdmin\AdminController#[Get('urs-promotion/metrics')]文件: app/Module/UrsPromotion/AdminControllers/Metrics/UrsNewUsersChart.php
功能特点:
Dcat\Admin\Widgets\Metrics\Line数据来源:
urs_promotion_user_mappingsstatus = 1(有效状态)created_at按日期分组统计文件: app/Module/UrsPromotion/AdminControllers/Metrics/UrsActiveUsersCard.php
功能特点:
Dcat\Admin\Widgets\Metrics\Card数据来源:
urs_promotion_user_mappingsstatus = 1 AND is_active = 1文件: app/Module/UrsPromotion/AdminControllers/Metrics/UrsPromotionRankingCard.php
功能特点:
Dcat\Admin\Widgets\Metrics\Card数据来源:
urs_promotion_user_mappings LEFT JOIN usersdirect_count、indirect_count、third_count、promotion_countSQL执行:
INSERT INTO kku_admin_menu (parent_id, `order`, title, icon, uri, `show`, created_at, updated_at)
VALUES (569, 193, 'URS推广数据统计', 'fa-chart-line', 'urs-promotion/metrics', 1, NOW(), NOW());
问题: 初始路由注解使用admin/urs-promotion/metrics导致最终路由变成admin/admin/urs-promotion/metrics
原因: 配置文件中已设置admin前缀,路由注解中不应再包含admin
解决: 修改路由注解为urs-promotion/metrics
Dcat\Admin\Widgets\Metrics\LineDcat\Admin\Widgets\Metrics\Cardadmin/urs-promotion/metricsapp/Module/UrsPromotion/AdminControllers/UrsPromotionMetricsController.php - 主控制器app/Module/UrsPromotion/AdminControllers/Metrics/UrsNewUsersChart.php - 新用户折线图app/Module/UrsPromotion/AdminControllers/Metrics/UrsActiveUsersCard.php - 活跃用户卡片app/Module/UrsPromotion/AdminControllers/Metrics/UrsPromotionRankingCard.php - 推广排名卡片kku_admin_menu表中添加新菜单项/admin/urs-promotion/metrics备注: 本功能基于UCore图表框架实现,与现有后台管理系统完美集成,为URS推广模块提供了完整的数据统计和可视化功能。