UserServiceController.php 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <?php
  2. namespace App\Admin\Controllers\UserManagement\BmUser;
  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('user_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->model()->orderBy('id','desc');
  43. $grid->column('orderPack.id', __('Id'));
  44. $grid->column('orderPack.order_id', __('订单id'));
  45. $grid->column('patient_id', __('患者姓名'))->display(function ($id){
  46. return Patient::where('id',$id)->value('name');
  47. });
  48. $grid->column('orderPack.service_pack_id', __('服务包id'));
  49. $grid->column('orderPack.pack_name', __('服务包名称'));
  50. $grid->column('orderPack.pack_intro', __('服务包简介'));
  51. $grid->column('orderPack.pack_price', __('服务包价格'))->display(function ($price){
  52. return $price/100;
  53. });
  54. $grid->column('orderPack.team_id', __('医生团队ID'));
  55. $grid->column('orderPack.effective_days', __('有效天数'));
  56. $grid->column('orderPack.start_time', __('开始时间'))->display(function ($start_time){
  57. return date("Y-m-d H:i",$start_time);
  58. });
  59. $grid->column('orderPack.end_time', __('结束时间'))->display(function ($end_time){
  60. return date("Y-m-d H:i",$end_time);
  61. });
  62. $grid->column('orderPack.created_at', __('创建时间'));
  63. $grid->column('orderPack.updated_at', __('更新时间'));
  64. return $grid;
  65. }
  66. /**
  67. * Make a show builder.
  68. *
  69. * @param mixed $id
  70. * @return Show
  71. */
  72. protected function detail($id)
  73. {
  74. $show = new Show(Order::findOrFail($id));
  75. $show->field('orderPack.id', __('Id'));
  76. $show->field('orderPack.order_id', __('订单ID'));
  77. $show->field('orderPack.service_pack_id', __('服务包ID'));
  78. $show->field('orderPack.pack_name', __('服务包名称'));
  79. $show->field('orderPack.pack_intro', __('服务包简介'));
  80. $show->field('orderPack.pack_price', __('服务包价格'))->as(function ($price){
  81. return $price/100;
  82. });
  83. $show->field('orderPack.insurance_policy', __('保单名称'));
  84. $show->field('orderPack.insurance_img_url', __('保单图片链接'));
  85. $show->field('orderPack.team_id', __('医生团队ID'));
  86. $show->field('orderPack.phone_minutes', __(' 电话分钟数'));
  87. $show->field('orderPack.chat_num', __('图文咨询次数'));
  88. $show->field('orderPack.appoint_num', __('门诊预约次数'));
  89. $show->field('orderPack.vaccine_limit_amount', __('疫苗总金额限制'))->as(function ($price){
  90. return $price/100;
  91. });
  92. $show->field('orderPack.nurses_limit_amount', __('儿保总金额限制'))->as(function ($price){
  93. return $price/100;
  94. });
  95. $show->field('orderPack.effective_days', __(' 有效天数'));
  96. $show->field('orderPack.start_time', __('开始时间'))->as(function ($start_time){
  97. return date("Y-m-d H:i",$start_time);
  98. });
  99. $show->field('orderPack.end_time', __('结束时间'))->as(function ($end_time){
  100. return date("Y-m-d H:i",$end_time);
  101. });
  102. $show->field('orderPack.is_security', __('宝贝是否有医保'))
  103. ->using([0=>'否',1=>'是']);
  104. $show->field('orderPack.guardian_name', __('监护人姓名'));
  105. $show->field('orderPack.relationship_type', __('与宝贝的关系'))
  106. ->using([1=>'父亲',2=>'母亲',3=>'祖父',4=>'祖母',5=>'外祖父',6=>'外祖母',7=>'叔侄']);
  107. $show->field('orderPack.created_at', __('创建时间'));
  108. $show->field('orderPack.updated_at', __('更新时间'));
  109. return $show;
  110. }
  111. /**
  112. * Make a form builder.
  113. *
  114. * @return Form
  115. */
  116. protected function form()
  117. {
  118. $form = new Form(new Order());
  119. return $form;
  120. }
  121. }