diff --git a/app/Admin/Controllers/DealerPurchaseLogController.php b/app/Admin/Controllers/DealerPurchaseLogController.php new file mode 100644 index 00000000..0c3d4ff3 --- /dev/null +++ b/app/Admin/Controllers/DealerPurchaseLogController.php @@ -0,0 +1,83 @@ +column('id')->sortable(); + $grid->column('user.phone', '手机号'); + $grid->column('lvl', '等级')->display(function () { + return $this->lvl->text(); + }); + $grid->column('order.sn', '订单编号'); + $grid->column('total_amount'); + $grid->column('remark'); + $grid->column('order_completed_at'); + $grid->column('created_at')->sortable(); + + $grid->filter(function (Grid\Filter $filter) { + $filter->panel(false); + $filter->equal('user.phone', '手机号')->width(3); + $filter->between('order_completed_at', '结算时间')->dateTime()->width(7); + }); + }); + } + + /** + * Make a show builder. + * + * @param mixed $id + * + * @return Show + */ + protected function detail($id) + { + return Show::make($id, new DealerPurchaseLog(), function (Show $show) { + $show->field('id'); + $show->field('user_id'); + $show->field('order_id'); + $show->field('lvl'); + $show->field('total_amount'); + $show->field('remark'); + $show->field('order_completed_at'); + $show->field('created_at'); + $show->field('updated_at'); + }); + } + + /** + * Make a form builder. + * + * @return Form + */ + protected function form() + { + return Form::make(new DealerPurchaseLog(), function (Form $form) { + $form->display('id'); + $form->text('user_id'); + $form->text('order_id'); + $form->text('lvl'); + $form->text('total_amount'); + $form->text('remark'); + $form->text('order_completed_at'); + + $form->display('created_at'); + $form->display('updated_at'); + }); + } +} diff --git a/app/Admin/Repositories/DealerPurchaseLog.php b/app/Admin/Repositories/DealerPurchaseLog.php new file mode 100644 index 00000000..df7d7fe1 --- /dev/null +++ b/app/Admin/Repositories/DealerPurchaseLog.php @@ -0,0 +1,16 @@ +get('dealer-manager-sales-logs', 'DealerManagerSalesLogController@index')->name('dealer_manager_sales_logs.index'); $router->get('dealer-manage-subsidy-logs', 'DealerManageSubsidyLogController@index')->name('dealer_manage_subsidy_logs.index'); + $router->get('dealer-purchase-logs', 'DealerPurchaseLogController@index')->name('dealer_purchase_logs.index'); /** api接口 **/ $router->get('api/product-categories', 'ProductCategoryController@categories')->name('api.product_categories'); diff --git a/app/Models/DealerPurchaseLog.php b/app/Models/DealerPurchaseLog.php index 6c0b1f3d..549d26c0 100644 --- a/app/Models/DealerPurchaseLog.php +++ b/app/Models/DealerPurchaseLog.php @@ -3,10 +3,13 @@ namespace App\Models; use App\Enums\DealerLvl; +use Dcat\Admin\Traits\HasDateTimeFormatter; use Illuminate\Database\Eloquent\Model; class DealerPurchaseLog extends Model { + use HasDateTimeFormatter; + protected $casts = [ 'lvl' => DealerLvl::class, 'order_completed_at' => 'datetime', @@ -21,4 +24,14 @@ class DealerPurchaseLog extends Model 'remark', 'order_completed_at', ]; + + public function user() + { + return $this->belongsTo(User::class, 'user_id'); + } + + public function order() + { + return $this->belongsTo(DealerOrder::class, 'order_id'); + } } diff --git a/database/seeders/AdminMenuSeeder.php b/database/seeders/AdminMenuSeeder.php index 9b60d872..957a4399 100644 --- a/database/seeders/AdminMenuSeeder.php +++ b/database/seeders/AdminMenuSeeder.php @@ -324,6 +324,11 @@ class AdminMenuSeeder extends Seeder 'icon' => '', 'uri' => 'dealer-earnings-purchase?filter-earningable_type[]=dealer_purchase_subsidy', ], + [ + 'title' =>'进货补贴明细', + 'icon' => '', + 'uri' => 'dealer-purchase-logs', + ], [ 'title'=>'管理津贴', 'icon' => '', diff --git a/resources/lang/zh_CN/dealer-purchase-log.php b/resources/lang/zh_CN/dealer-purchase-log.php new file mode 100644 index 00000000..e12ca0b2 --- /dev/null +++ b/resources/lang/zh_CN/dealer-purchase-log.php @@ -0,0 +1,18 @@ + [ + 'DealerPurchaseLog' => '进货补贴明细', + 'dealer-purchase-logs' => '进货补贴明细', + ], + 'fields' => [ + 'user_id' => '用户', + 'order_id' => '订单', + 'lvl' => '经销商等级', + 'total_amount' => '订单金额', + 'remark' => '备注', + 'order_completed_at' => '订单完成时间', + ], + 'options' => [ + ], +];