UserServiceController.php 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <?php
  2. namespace App\Admin\Controllers;
  3. use App\Models\Order;
  4. use App\Models\OrderPack;
  5. use App\Models\Patient;
  6. use App\Admin\Actions\backstage\User\Insurance ;
  7. use Encore\Admin\Controllers\AdminController;
  8. use Encore\Admin\Form;
  9. use Encore\Admin\Grid;
  10. use Encore\Admin\Show;
  11. class UserServiceController extends AdminController
  12. {
  13. /**
  14. * Title for current resource.
  15. *
  16. * @var string
  17. */
  18. protected $title = '服务包-保单';
  19. /**
  20. * Make a grid builder.
  21. *
  22. * @return Grid
  23. */
  24. protected function grid()
  25. {
  26. $grid = new Grid(new Order());
  27. $product_type = 6;
  28. $uesr_id = \request('user_id');
  29. $grid->filter(function ($filter){
  30. $filter->disableIdFilter();
  31. $filter->equal('patient_id','档案id');
  32. $filter->equal('product_type','订单类型');
  33. });
  34. $grid->actions(function ($actions) {
  35. // 去掉删除
  36. $actions->disableDelete();
  37. // 去掉编辑
  38. $actions->disableEdit();
  39. //保险单链接
  40. $actions->add(new Insurance());
  41. });
  42. $grid->column('orderPack.id', __('Id'));
  43. $grid->column('orderPack.order_id', __('订单id'));
  44. $grid->column('patient_id', __('患者姓名'))->display(function ($id){
  45. return Patient::where('id',$id)->value('name');
  46. });
  47. $grid->column('orderPack.service_pack_id', __('服务包id'));
  48. $grid->column('orderPack.pack_name', __('服务包名称'));
  49. $grid->column('orderPack.pack_intro', __('服务包简介'));
  50. $grid->column('orderPack.pack_price', __('服务包价格'))->display(function ($price){
  51. return $price/100;
  52. });
  53. $grid->column('orderPack.team_id', __('医生团队ID'));
  54. $grid->column('orderPack.effective_days', __('有效天数'));
  55. $grid->column('orderPack.start_time', __('开始时间'))->display(function ($start_time){
  56. return date("Y-m-d H:i",$start_time);
  57. });
  58. $grid->column('orderPack.end_time', __('结束时间'))->display(function ($end_time){
  59. return date("Y-m-d H:i",$end_time);
  60. });
  61. $grid->column('orderPack.created_at', __('创建时间'));
  62. $grid->column('orderPack.updated_at', __('更新时间'));
  63. return $grid;
  64. }
  65. /**
  66. * Make a show builder.
  67. *
  68. * @param mixed $id
  69. * @return Show
  70. */
  71. protected function detail($id)
  72. {
  73. $show = new Show(Order::findOrFail($id));
  74. $show->field('orderPack.id', __('Id'));
  75. $show->field('orderPack.order_id', __('订单ID'));
  76. $show->field('orderPack.service_pack_id', __('服务包ID'));
  77. $show->field('orderPack.pack_name', __('服务包名称'));
  78. $show->field('orderPack.pack_intro', __('服务包简介'));
  79. $show->field('orderPack.pack_price', __('服务包价格'))->as(function ($price){
  80. return $price/100;
  81. });
  82. $show->field('orderPack.insurance_policy', __('保单名称'));
  83. $show->field('orderPack.insurance_img_url', __('保单图片链接'));
  84. $show->field('orderPack.team_id', __('医生团队ID'));
  85. $show->field('orderPack.phone_minutes', __(' 电话分钟数'));
  86. $show->field('orderPack.chat_num', __('图文咨询次数'));
  87. $show->field('orderPack.appoint_num', __('门诊预约次数'));
  88. $show->field('orderPack.vaccine_limit_amount', __('疫苗总金额限制'))->as(function ($price){
  89. return $price/100;
  90. });
  91. $show->field('orderPack.nurses_limit_amount', __('儿保总金额限制'))->as(function ($price){
  92. return $price/100;
  93. });
  94. $show->field('orderPack.effective_days', __(' 有效天数'));
  95. $show->field('orderPack.start_time', __('开始时间'))->as(function ($start_time){
  96. return date("Y-m-d H:i",$start_time);
  97. });
  98. $show->field('orderPack.end_time', __('结束时间'))->as(function ($end_time){
  99. return date("Y-m-d H:i",$end_time);
  100. });
  101. $show->field('orderPack.is_security', __('宝贝是否有医保'))
  102. ->using([0=>'否',1=>'是']);
  103. $show->field('orderPack.guardian_name', __('监护人姓名'));
  104. $show->field('orderPack.relationship_type', __('与宝贝的关系'))
  105. ->using([1=>'父亲',2=>'母亲',3=>'祖父',4=>'祖母',5=>'外祖父',6=>'外祖母',7=>'叔侄']);
  106. $show->field('orderPack.created_at', __('创建时间'));
  107. $show->field('orderPack.updated_at', __('更新时间'));
  108. return $show;
  109. }
  110. /**
  111. * Make a form builder.
  112. *
  113. * @return Form
  114. */
  115. protected function form()
  116. {
  117. $form = new Form(new Order());
  118. return $form;
  119. }
  120. }