UserServiceController.php 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  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 App\Models\Team;
  8. use Encore\Admin\Controllers\AdminController;
  9. use Encore\Admin\Form;
  10. use Encore\Admin\Grid;
  11. use Encore\Admin\Show;
  12. class UserServiceController extends AdminController
  13. {
  14. /**
  15. * Title for current resource.
  16. *
  17. * @var string
  18. */
  19. protected $title = '服务包管理';
  20. /**
  21. * Make a grid builder.
  22. *
  23. * @return Grid
  24. */
  25. protected function grid()
  26. {
  27. $grid = new Grid(new Order());
  28. $product_type = 6;
  29. $uesr_id = \request('user_id');
  30. $grid->filter(function ($filter){
  31. $filter->disableIdFilter();
  32. $filter->equal('user_id','用户id');
  33. $filter->equal('product_type','订单类型');
  34. });
  35. $grid->actions(function ($actions) {
  36. // 去掉删除
  37. $actions->disableDelete();
  38. // 去掉编辑
  39. $actions->disableEdit();
  40. });
  41. $grid->model()->orderBy('id','desc');
  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', __('医生团队'))->display(function ($team)
  54. {
  55. $team = json_decode($team);
  56. if (empty($team))
  57. {
  58. return '无';
  59. }else
  60. {
  61. $team1 =[];
  62. // if (is_array($team))
  63. // {
  64. // foreach ($team as $value)
  65. // {
  66. // $value = (int)$value;
  67. // array_push($team1,$value);
  68. // }
  69. $res = Team::whereIn('id',$team)->pluck('name')->toArray();
  70. return $res;
  71. // }
  72. }
  73. })->label('info');
  74. $grid->column('orderPack.effective_days', __('有效天数'));
  75. $grid->column('orderPack.start_time', __('开始时间'))->display(function ($start_time){
  76. return date("Y-m-d H:i",$start_time);
  77. });
  78. $grid->column('orderPack.end_time', __('结束时间'))->display(function ($end_time){
  79. return date("Y-m-d H:i",$end_time);
  80. });
  81. $grid->column('orderPack.created_at', __('创建时间'));
  82. $grid->column('orderPack.updated_at', __('更新时间'));
  83. return $grid;
  84. }
  85. /**
  86. * Make a show builder.
  87. *
  88. * @param mixed $id
  89. * @return Show
  90. */
  91. protected function detail($id)
  92. {
  93. $show = new Show(Order::findOrFail($id));
  94. $show->field('orderPack.id', __('Id'));
  95. $show->field('orderPack.order_id', __('订单ID'));
  96. $show->field('orderPack.service_pack_id', __('服务包ID'));
  97. $show->field('orderPack.pack_name', __('服务包名称'));
  98. $show->field('orderPack.pack_intro', __('服务包简介'));
  99. $show->field('orderPack.pack_price', __('服务包价格'))->as(function ($price){
  100. return $price/100;
  101. });
  102. $show->field('orderPack.insurance_policy', __('保单名称'));
  103. $show->field('orderPack.insurance_img_url', __('保单图片链接'));
  104. $show->field('orderPack.team_id', __('医生团队ID'));
  105. $show->field('orderPack.phone_minutes', __(' 电话分钟数'));
  106. $show->field('orderPack.chat_num', __('图文咨询次数'));
  107. $show->field('orderPack.appoint_num', __('门诊预约次数'));
  108. $show->field('orderPack.vaccine_limit_amount', __('疫苗总金额限制'))->as(function ($price){
  109. return $price/100;
  110. });
  111. $show->field('orderPack.nurses_limit_amount', __('儿保总金额限制'))->as(function ($price){
  112. return $price/100;
  113. });
  114. $show->field('orderPack.effective_days', __(' 有效天数'));
  115. $show->field('orderPack.start_time', __('开始时间'))->as(function ($start_time){
  116. return date("Y-m-d H:i",$start_time);
  117. });
  118. $show->field('orderPack.end_time', __('结束时间'))->as(function ($end_time){
  119. return date("Y-m-d H:i",$end_time);
  120. });
  121. $show->field('orderPack.is_security', __('宝贝是否有医保'))
  122. ->using([0=>'否',1=>'是']);
  123. $show->field('orderPack.guardian_name', __('监护人姓名'));
  124. $show->field('orderPack.relationship_type', __('与宝贝的关系'))
  125. ->using([1=>'父亲',2=>'母亲',3=>'祖父',4=>'祖母',5=>'外祖父',6=>'外祖母',7=>'叔侄']);
  126. $show->field('orderPack.created_at', __('创建时间'));
  127. $show->field('orderPack.updated_at', __('更新时间'));
  128. return $show;
  129. }
  130. /**
  131. * Make a form builder.
  132. *
  133. * @return Form
  134. */
  135. protected function form()
  136. {
  137. $form = new Form(new Order());
  138. return $form;
  139. }
  140. }