任务时间: 2025-06-25 17:30
任务类型: 功能开发
状态: ✅ 已完成
为URS推广模块创建合伙人分红详情的后台管理界面,并与分红记录串联起来,实现完整的分红管理功能。
基于现有的合伙人分红功能,需要:
app/Module/UrsPromotion/AdminControllers/UrsPartnerDividendController.php主要改进:
relation() 方法在详情页面显示分红详情列表app/Module/UrsPromotion/AdminControllers/UrsPartnerDividendDetailController.php/admin/urs-promotion/partner-dividend-details功能特性:
列表页面:
详情页面:
app/Module/UrsPromotion/Repositories/UrsPartnerDividendDetailRepository.phpSQL执行:
INSERT INTO kku_admin_menu (parent_id, `order`, title, icon, uri, `show`, created_at, updated_at)
VALUES (569, 195, '合伙人分红详情', 'fa-list-alt', 'urs-promotion/partner-dividend-details', 1, NOW(), NOW());
使用Dcat Admin的 relation() 方法在Show页面中显示关联数据:
$show->relation('details', '分红详情', function ($model) {
return Grid::make(UrsPartnerDividendDetail::where('dividend_record_id', $model->id)->with(['user', 'transferOrder']), function (Grid $grid) {
// 配置表格列
});
});
在Repository中支持预加载关联关系:
public function __construct(array $with = [])
{
$this->with = $with;
parent::__construct();
}
修复了Grid中达人等级显示的问题,使用正确的等级映射:
$grid->column('talent_level', '达人等级')->sortable()->display(function ($value) {
$levels = [
0 => '青铜', 1 => '白银', 2 => '黄金',
3 => '钻石', 4 => '至尊', 5 => '合伙人'
];
return $levels[$value] ?? '未知';
});
测试数据显示:
app/Module/UrsPromotion/AdminControllers/UrsPartnerDividendDetailController.phpapp/Module/UrsPromotion/Repositories/UrsPartnerDividendDetailRepository.phpapp/Module/UrsPromotion/AdminControllers/UrsPartnerDividendController.php/admin/urs-promotion/partner-dividend/admin/urs-promotion/partner-dividend-details