generated from liutk/owl-admin-base
添加后台获奖列表查看
parent
74f018c37d
commit
54faeb2ca7
|
|
@ -44,11 +44,11 @@ class ActivityController extends AdminController
|
|||
"0"=>"<span class='label label-default'>未发布</span>",
|
||||
"1"=>"<span class='label label-danger'>进行中</span>",
|
||||
"2"=>"<span class='label label-success'>已结束</span>",
|
||||
"*"=> '其他:${gender}'
|
||||
"*"=> '其他:${state}'
|
||||
]),
|
||||
amis()->TableColumn('logs_count', __('admin.activities.user_count')),
|
||||
amis()->TableColumn('start_at', __('admin.activities.start_at')),
|
||||
amis()->TableColumn('end_at', __('admin.activities.end_at')),
|
||||
amis()->TableColumn('start_at', __('admin.activities.start_at'))->type('datetime'),
|
||||
amis()->TableColumn('end_at', __('admin.activities.end_at'))->type('datetime'),
|
||||
|
||||
amis()->TableColumn('created_at', __('admin.created_at'))->type('datetime')->sortable(true),
|
||||
Operation::make()->label(__('admin.actions'))->buttons([
|
||||
|
|
@ -156,7 +156,7 @@ class ActivityController extends AdminController
|
|||
"0"=>"<span class='label label-default'>未发布</span>",
|
||||
"1"=>"<span class='label label-info'>进行中</span>",
|
||||
"2"=>"<span class='label label-success'>已结束</span>",
|
||||
"*"=> '其他:${gender}'
|
||||
"*"=> '其他:${state}'
|
||||
]),
|
||||
amis()->TableColumn('home_field', __('admin.activity_games.home_field')),
|
||||
amis()->TableColumn('home_logo', __('admin.activity_games.home_logo'))->type('image')->height('30px')->width('30px'),
|
||||
|
|
|
|||
|
|
@ -0,0 +1,77 @@
|
|||
<?php
|
||||
|
||||
namespace App\Admin\Controllers;
|
||||
|
||||
use Slowlyo\OwlAdmin\Admin;
|
||||
use Slowlyo\OwlAdmin\Renderers\Page;
|
||||
use Slowlyo\OwlAdmin\Renderers\Form;
|
||||
use Slowlyo\OwlAdmin\Renderers\Operation;
|
||||
use Slowlyo\OwlAdmin\Controllers\AdminController;
|
||||
use App\Services\Admin\UserGiftService;
|
||||
use App\Admin\Components;
|
||||
|
||||
class UserGiftController extends AdminController
|
||||
{
|
||||
protected string $serviceName = UserGiftService::class;
|
||||
|
||||
public function list(): Page
|
||||
{
|
||||
$crud = $this->baseCRUD()->tableLayout('fixed')
|
||||
->headerToolbar([
|
||||
amis('reload')->align('right'),
|
||||
amis('filter-toggler')->align('right'),
|
||||
])
|
||||
->filter($this->baseFilter()->labelWidth('80px')->body([
|
||||
|
||||
]))
|
||||
->columns([
|
||||
amis()->TableColumn('activity.name', __('admin.activities.name')),
|
||||
amis()->TableColumn('gift.name', __('admin.activity_gifts.name')),
|
||||
amis()->TableColumn('user.nick_name', __('admin.users.nick_name')),
|
||||
amis()->TableColumn('user.phone', __('admin.users.phone')),
|
||||
amis()->TableColumn('state', __('admin.user_gifts.state'))->type('mapping')->map([
|
||||
"0"=>"<span class='label label-default'>未领取</span>",
|
||||
"1"=>"<span class='label label-danger'>未发货</span>",
|
||||
"2"=>"<span class='label label-success'>已发货</span>",
|
||||
"*"=> '其他:${state}'
|
||||
]),
|
||||
amis()->TableColumn('consignee', __('admin.user_gifts.consignee')),
|
||||
amis()->TableColumn('address', __('admin.user_gifts.address')),
|
||||
amis()->TableColumn('phone', __('admin.user_gifts.phone')),
|
||||
amis()->TableColumn('shipping_company', __('admin.user_gifts.shipping_company')),
|
||||
amis()->TableColumn('shipping_number', __('admin.user_gifts.shipping_number')),
|
||||
]);
|
||||
|
||||
return $this->baseList($crud);
|
||||
}
|
||||
|
||||
public function form($isEdit = false): Form
|
||||
{
|
||||
return $this->baseForm()->body([
|
||||
|
||||
]);
|
||||
}
|
||||
|
||||
public function detail()
|
||||
{
|
||||
$form = amisMake()->form()->title('')->panelClassName('border-r border-t-0 border-b-0 border-l-0')->mode('horizontal')
|
||||
->static(true)->actions([])
|
||||
->body([
|
||||
|
||||
]);
|
||||
|
||||
return amisMake()->Grid()->columns([
|
||||
amis()->Column()->body($form)->md(4),
|
||||
amis()->Column()->body([
|
||||
])->md(8),
|
||||
]);
|
||||
}
|
||||
|
||||
public function detailActions()
|
||||
{
|
||||
return [
|
||||
//返回
|
||||
amis()->Button()->actionType('cancel')->label(__('admin.back'))->primary()
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
@ -42,6 +42,8 @@ Route::group([
|
|||
|
||||
$router->resource('activity_gifts', \App\Admin\Controllers\ActivityGiftController::class);
|
||||
|
||||
$router->resource('user_gifts', \App\Admin\Controllers\UserGiftController::class);
|
||||
|
||||
//修改上传
|
||||
$router->post('upload_file', [\App\Admin\Controllers\IndexController::class, 'uploadFile']);
|
||||
$router->post('upload_image', [\App\Admin\Controllers\IndexController::class, 'uploadImage']);
|
||||
|
|
|
|||
|
|
@ -0,0 +1,11 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models\Filters;
|
||||
|
||||
use Illuminate\Support\Arr;
|
||||
use EloquentFilter\ModelFilter;
|
||||
|
||||
class UserGiftFilter extends ModelFilter
|
||||
{
|
||||
|
||||
}
|
||||
|
|
@ -4,16 +4,27 @@ namespace App\Models;
|
|||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use EloquentFilter\Filterable;
|
||||
|
||||
class UserGift extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
use HasFactory,Filterable;
|
||||
|
||||
public function scopeSort($q)
|
||||
{
|
||||
$q->orderBy('created_at', 'desc');
|
||||
}
|
||||
|
||||
public function user()
|
||||
{
|
||||
return $this->belongsTo(User::class, 'user_id');
|
||||
}
|
||||
|
||||
public function activity()
|
||||
{
|
||||
return $this->belongsTo(Activity::class, 'activity_id');
|
||||
}
|
||||
|
||||
public function gift()
|
||||
{
|
||||
return $this->belongsTo(ActivityGift::class, 'gift_id');
|
||||
|
|
|
|||
|
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
|
||||
namespace App\Services\Admin;
|
||||
|
||||
use App\Models\UserGift;
|
||||
use App\Models\Filters\UserGiftFilter;
|
||||
use App\Traits\UploadTrait;
|
||||
use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
|
||||
/**
|
||||
* @method UserGift getModel()
|
||||
* @method UserGift|\Illuminate\Database\Query\Builder query()
|
||||
*/
|
||||
class UserGiftService extends BaseService
|
||||
{
|
||||
use UploadTrait;
|
||||
|
||||
protected string $modelName = UserGift::class;
|
||||
|
||||
protected string $modelFilterName = UserGiftFilter::class;
|
||||
|
||||
protected array $withRelationships = ['user', 'gift', 'activity'];
|
||||
}
|
||||
|
|
@ -25,7 +25,7 @@ class AdminMenuSeeder extends Seeder
|
|||
['title' => 'activity', 'icon' => 'akar-icons:star', 'url' => '/activity', 'order' => 3,
|
||||
'children' => [
|
||||
['title'=> 'activites', 'icon'=> 'bx:football', 'url' => '/activities', 'order'=>1],
|
||||
['title'=> 'activity_gifts', 'icon'=> 'akar-icons:gift', 'url' => '/activity_gifts', 'order'=>1],
|
||||
['title'=> 'user_gifts', 'icon'=> 'akar-icons:gift', 'url' => '/user_gifts', 'order'=>1],
|
||||
]
|
||||
],
|
||||
['title' => 'web_content', 'icon' => 'ic:outline-collections-bookmark', 'url' => '', 'order'=>4,
|
||||
|
|
|
|||
|
|
@ -346,7 +346,8 @@ return [
|
|||
'away_logo' => '客场logo',
|
||||
'game_at' => '比赛时间',
|
||||
'mark' => '奖励',
|
||||
'score' => '比分'
|
||||
'score' => '比分',
|
||||
'state' => '状态'
|
||||
],
|
||||
'activity_gifts' => [
|
||||
'name' => '奖品名称',
|
||||
|
|
@ -354,4 +355,12 @@ return [
|
|||
'rank' => '奖励名次',
|
||||
'explain' => '领奖说明',
|
||||
],
|
||||
'user_gifts' => [
|
||||
'consignee' => '收货人',
|
||||
'address' => '收货地址',
|
||||
'phone' => '联系电话',
|
||||
'shipping_company' => '快递公司',
|
||||
'shipping_number' => '快递号码',
|
||||
'state' => '状态',
|
||||
]
|
||||
];
|
||||
|
|
|
|||
|
|
@ -15,6 +15,6 @@ return [
|
|||
'ads' => '广告管理',
|
||||
'activity' => '活动中心',
|
||||
'activites'=> '足彩竞猜',
|
||||
'activity_gifts' => '获奖列表',
|
||||
'user_gifts' => '获奖列表',
|
||||
'users' => '会员管理'
|
||||
];
|
||||
|
|
|
|||
Loading…
Reference in New Issue