Przeglądaj źródła

保险单列表的展示(但查看保险单功能还没有实现)

ChenWuJie 4 lat temu
rodzic
commit
1d5c23449d

+ 19 - 0
app/Admin/Actions/backstage/Orders/PdfAction.php

xqd
@@ -0,0 +1,19 @@
+<?php
+
+namespace App\Admin\Actions\backstage\Orders;
+
+use Encore\Admin\Actions\RowAction;
+use Illuminate\Database\Eloquent\Model;
+
+class PdfAction extends RowAction
+{
+    public $name = '查看保单';
+
+    public function handle(Model $model)
+    {
+        // $model ...
+
+        return $this->response()->success('查看保单成功')->refresh();
+    }
+
+}

+ 73 - 0
app/Admin/Controllers/OrdersManagement/InsuranceListController.php

xqd
@@ -0,0 +1,73 @@
+<?php
+
+namespace App\Admin\Controllers\OrdersManagement;
+
+use App\Admin\Actions\backstage\Orders\PdfAction;
+use App\Models\Order;
+use App\Models\OrderPack;
+use Encore\Admin\Controllers\AdminController;
+use Encore\Admin\Form;
+use Encore\Admin\Grid;
+use Encore\Admin\Show;
+
+class InsuranceListController extends AdminController
+{
+    /**
+     * Title for current resource.
+     *
+     * @var string
+     */
+    protected $title = '保险信息列表';
+
+    /**
+     * Make a grid builder.
+     *
+     * @return Grid
+     */
+    protected function grid()
+    {
+        $grid = new Grid(new Order());
+        $grid->actions(function ($actions){
+           $actions->disableView();
+           $actions->disableDelete();
+           if ($actions->row->payment_status != 2)
+           {
+               $actions->disableEdit();
+           }
+           $has_pdf = OrderPack::where('order_id',$actions->row->id)->value('insurance_img_url');
+           if (!empty($has_pdf))
+           {
+               $actions->add(new PdfAction());
+           }
+        });
+        $grid->disableCreateButton();
+        $grid->model()->wherein('product_type',[6]);
+        $grid->model()->orderBy('id','desc');
+        $grid->column('id', __('订单id'))->sortable();
+        $grid->column('orderPack.pack_name', __('服务包名称'));
+        $grid->column('user.nickname', __('用户姓名'));
+        $grid->column('orderPatient.name', __('患者姓名'));
+        $grid->column('orderPatient.sex', __('性别'))->using([0=>'未知',1=>'男',2=>'女']);
+        $grid->column('orderPatient.relationship_type', __('与投保人的关系'))
+            ->using([1=>'父亲',2=>'母亲',3=>'祖父',4=>'祖母',5=>'外祖父',6=>'外祖母',7=>'叔侄',8=>'其他']);
+        $grid->column('orderPatient.patient_id', __('患者id'))->hide();
+        $grid->column('user.phone', __('用户电话'));
+        //保单信息
+        $grid->column('orderPatient.birthday', __('出生日期'));
+        $grid->column('orderPatient.card_type', __('证件类型'))->using([1=>'身份证',2=>'护照']);
+        $grid->column('orderPatient.card_number', __('证件号码'));
+        $grid->column('orderPatient.social_card_number', __('社保卡号'));
+        $grid->column('order_status', __('订单状态'))->using([1=>'未支付',2=>'待接单',3=>'进行中',4=>'已完成',5=>'已取消']);
+        $grid->column('payment_status', __('支付状态'))->using([1=>'待付款',2=>'已付款',3=>'退款中',4=>'已退款']);
+
+
+        return $grid;
+    }
+
+    protected function form()
+    {
+        $form = new Form(new Order());
+        $form->file('orderPack.insurance_img_url','保单文件')->help('请上传pdf文件')->rules('required');
+        return $form;
+    }
+}

+ 2 - 0
app/Admin/routes.php

xqd
@@ -135,6 +135,8 @@ Route::group([
     $router->resource('service_packs_datails', OrdersManagement\ServicePackDetailsController::class);
     //服务包订单中的服务包订单列表
     $router->resource('service_packs_order_list', OrdersManagement\ServicePackOrderListController::class);
+    //保险信息列表
+    $router->resource('insurance_list', OrdersManagement\InsuranceListController::class);
 
     /*
      * 优惠券管理