Jelajahi Sumber

评价管理

ChenWuJie 4 tahun lalu
induk
melakukan
d142b29e61

+ 20 - 0
app/Admin/Actions/backstage/Evaluate/Ignore.php

xqd
@@ -0,0 +1,20 @@
+<?php
+
+namespace App\Admin\Actions\backstage\Evaluate;
+
+use App\Models\Evaluate;
+use Encore\Admin\Actions\RowAction;
+use Illuminate\Database\Eloquent\Model;
+
+class Ignore extends RowAction
+{
+    public $name = '忽略';
+
+    public function handle(Model $model)
+    {
+        // $model ...
+        Evaluate::where('order_id',$model->order_id)->update(['status'=>3]);
+        return $this->response()->success('忽略成功')->refresh();
+    }
+
+}

+ 20 - 0
app/Admin/Actions/backstage/Evaluate/Pass.php

xqd
@@ -0,0 +1,20 @@
+<?php
+
+namespace App\Admin\Actions\backstage\Evaluate;
+
+use App\Models\Evaluate;
+use Encore\Admin\Actions\RowAction;
+use Illuminate\Database\Eloquent\Model;
+
+class Pass extends RowAction
+{
+    public $name = '审核通过';
+
+    public function handle(Model $model)
+    {
+        // $model ...
+        Evaluate::where('order_id',$model->order_id)->update(['status'=>2]);
+        return $this->response()->success('审核通过.')->refresh();
+    }
+
+}

+ 114 - 0
app/Admin/Controllers/UserEvaluatesController.php

xqd
@@ -0,0 +1,114 @@
+<?php
+
+namespace App\Admin\Controllers;
+
+use App\Admin\Actions\backstage\Evaluate\Ignore;
+use App\Admin\Actions\backstage\Evaluate\Pass;
+use App\Models\Evaluate;
+use Encore\Admin\Controllers\AdminController;
+use Encore\Admin\Form;
+use Encore\Admin\Grid;
+use Encore\Admin\Show;
+
+class UserEvaluatesController extends AdminController
+{
+    /**
+     * Title for current resource.
+     *
+     * @var string
+     */
+    protected $title = '评价管理';
+
+    /**
+     * Make a grid builder.
+     *
+     * @return Grid
+     */
+    protected function grid()
+    {
+        $grid = new Grid(new Evaluate());
+        $grid->actions(function ($actions) {
+            // 去掉删除
+            $actions->disableDelete();
+            // 去掉编辑
+            $actions->disableEdit();
+            //去掉查看
+            $actions->disableView();
+            //审核通过
+            $actions->add(new Pass());
+            //忽略
+            $actions->add(new Ignore());
+        });
+
+        $grid->filter(function ($filter){
+            $filter->disableIdFilter();
+            $filter->like('user.nickname','用户名字');
+            $filter->like('docter.name','医生名字');
+            $filter->like('content','评价内容');
+            $filter->equal('status','审核状态')->select([
+                1   => '待审核',
+                2    => '审核通过',
+                3    => '忽略',
+            ]);
+        });
+
+        $grid->column('id', __('Id'));
+        $grid->column('order_id', __('订单ID'));
+        $grid->column('user.nickname', __('用户姓名'));
+        $grid->column('docter.name', __('医生名称'));
+        $grid->column('content', __('评价内容'));
+        $grid->column('score', __('评分'));
+        $grid->column('status', __('状态'))->using([1=>'待审核',2=>'审核通过',3=>'忽略']);
+        $grid->column('audit_time', __('审核时间'))->display(function ($time){
+            return date('Y-m-d H:i:s',$time);
+        });
+        $grid->column('created_at', __('创建时间'));
+        $grid->column('updated_at', __('更新时间'));
+
+        return $grid;
+    }
+
+    /**
+     * Make a show builder.
+     *
+     * @param mixed $id
+     * @return Show
+     */
+    protected function detail($id)
+    {
+        $show = new Show(Evaluate::findOrFail($id));
+
+        $show->field('id', __('Id'));
+        $show->field('user_id', __('User id'));
+        $show->field('order_id', __('Order id'));
+        $show->field('docter_id', __('Docter id'));
+        $show->field('status', __('Status'));
+        $show->field('audit_time', __('Audit time'));
+        $show->field('content', __('Content'));
+        $show->field('score', __('Score'));
+        $show->field('created_at', __('Created at'));
+        $show->field('updated_at', __('Updated at'));
+
+        return $show;
+    }
+
+    /**
+     * Make a form builder.
+     *
+     * @return Form
+     */
+    protected function form()
+    {
+        $form = new Form(new Evaluate());
+
+        $form->number('user_id', __('User id'));
+        $form->number('order_id', __('Order id'));
+        $form->number('docter_id', __('Docter id'));
+        $form->switch('status', __('Status'))->default(1);
+        $form->number('audit_time', __('Audit time'));
+        $form->text('content', __('Content'));
+        $form->switch('score', __('Score'));
+
+        return $form;
+    }
+}

+ 2 - 0
app/Admin/routes.php

xqd
@@ -41,5 +41,7 @@ Route::group([
     $router->resource('user_coupons', UserCouponsController::class);
     //用户管理->病例意见单
     $router->resource('user_suggests', UserSuggestsController::class);
+    //评价管理
+    $router->resource('evaluates', UserEvaluatesController::class);
 });