ServicePacksController.php 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <?php
  2. namespace App\Admin\Controllers\ServicePacksManagment;
  3. use App\Models\ServicePack;
  4. use Encore\Admin\Controllers\AdminController;
  5. use Encore\Admin\Form;
  6. use Encore\Admin\Grid;
  7. use Encore\Admin\Show;
  8. class ServicePacksController extends AdminController
  9. {
  10. /**
  11. * Title for current resource.
  12. *
  13. * @var string
  14. */
  15. protected $title = '服务包列表';
  16. /**
  17. * Make a grid builder.
  18. *
  19. * @return Grid
  20. */
  21. protected function grid()
  22. {
  23. $grid = new Grid(new ServicePack());
  24. $grid->column('id', __('Id'));
  25. $grid->column('name', __('服务包名称'));
  26. $grid->column('intro', __('简介'));
  27. $grid->column('desc', __('详细内容'))->limit(100);
  28. $grid->column('label','服务类型')->display(function (){
  29. $tag = [1 => '图文',2 => '电话',3 => '门诊',4 => '计免',5 => '儿保'];
  30. $data = $this -> label;
  31. if($data){
  32. for ($i=0;$i<count($data);$i++){
  33. $str = $tag[$data[$i]];
  34. $label[$i]= $str;
  35. }
  36. return $label;
  37. }
  38. return 0;
  39. })->label('info');
  40. $grid->column('price', __('价格'));
  41. $grid->column('team.name', __('团队名称'));
  42. $grid->column('image','图片')->image('','50','50');
  43. $grid->column('phone_minutes', __('电话次数(分钟)'));
  44. $grid->column('chat_num', __('图文次数'));
  45. $grid->column('appoint_num', __('门诊次数'));
  46. $grid->column('vaccine_limit_amount', __('计免次数'));
  47. $grid->column('nurses_limit_amount', __('儿保次数'));
  48. $grid->column('effective_days', __('服务时长'));
  49. $grid->column('insurance_policy', __('保单名称'));
  50. $grid->column('insurance_img_url', __('保单图片链接'))->limit(100,'...');
  51. $grid->column('created_at', __('创建时间'));
  52. $grid->column('updated_at', __('更新时间'));
  53. return $grid;
  54. }
  55. /**
  56. * Make a form builder.
  57. *
  58. * @return Form
  59. */
  60. protected function form()
  61. {
  62. $form = new Form(new ServicePack());
  63. $form->text('name', __('服务包名称'))->rules('required' ,['required'=>'请填写名称!']);
  64. $form->image('image','图片')->rules('required' ,['required'=>'请选择图片!']);
  65. $form->text('intro', __('简介'))->rules('required' ,['required'=>'请填写简介!']);;
  66. $form->editor('desc', __('详情内容'))->rules('required' ,['required'=>'请填写内容!']);;
  67. $form->number('price', __('价钱'))->default(0);
  68. $form->text('team_id', __('团队ID'));
  69. //$form->multipleSelect('label','服务类型')->options([1 => '图文',2 => '电话',3 => '门诊',4 => '计免',5 => '儿保']);
  70. $form->checkbox('label','服务类型')
  71. ->options([
  72. 1 => '图文',
  73. 2 => '电话',
  74. 3 => '门诊',
  75. 4 => '计免',
  76. 5 => '儿保'
  77. ])->when('has',1,function (Form $form){
  78. $form->number('chat_num', __('图文次数'))->default(0);
  79. })->when('has',2,function (Form $form){
  80. $form->number('phone_minutes', __('电话次数(分钟)'))->default(0);
  81. })->when('has',3,function (Form $form){
  82. $form->number('appoint_num', __('门诊次数'))->default(0);
  83. })->when('has',4,function (Form $form){
  84. $form->number('vaccine_limit_amount', __('计免次数'))->default(0);
  85. })->when('has',5,function (Form $form){
  86. $form->number('nurses_limit_amount', __('儿保次数'))->default(0);
  87. });
  88. // $form->number('phone_minutes', __('电话次数(分钟)'))->default(0);
  89. // $form->number('chat_num', __('图文次数'))->default(0);
  90. // $form->number('appoint_num', __('门诊次数'))->default(0);
  91. // $form->number('vaccine_limit_amount', __('计免次数'))->default(0);
  92. // $form->number('nurses_limit_amount', __('儿保次数'))->default(0);
  93. $form->text('effective_days', __('服务时长(秒)'))->default(0);
  94. $form->text('insurance_policy', __('保单名称'))->rules('required' ,['required'=>'请填写保单名称!']);
  95. $form->text('insurance_img_url', __('保单图片链接'))->rules('required' ,['required'=>'请填写保单图片链接!']);
  96. return $form;
  97. }
  98. }