FormHelperTrait.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?php
  2. namespace App\Module\GameItems\AdminControllers\Helper;
  3. use App\Module\GameItems\AdminControllers\LazyRenderable\ItemGroupLazyRenderable;
  4. use App\Module\GameItems\AdminControllers\LazyRenderable\ItemLazyRenderable;
  5. use App\Module\GameItems\Enums\ITEM_TYPE;
  6. use App\Module\GameItems\Models\ItemGroup;
  7. trait FormHelperTrait
  8. {
  9. /**
  10. *
  11. * @param $field
  12. * @param $label
  13. * @return \Dcat\Admin\Form\Field\SelectTable
  14. */
  15. public function selectModelItem($field, $label = '物品')
  16. {
  17. $table = ItemLazyRenderable::make();
  18. return $this->form->selectTable($field, $label)->from($table)
  19. ->title($label)
  20. ->model($table->getModel(), $table->getModelSelectId(), $table->getModelViewName()); // 设置编辑数据显示
  21. }
  22. /**
  23. * 使用select 关联模型 ,宝箱物品
  24. *
  25. * @param $field
  26. * @param $table
  27. * @return void
  28. */
  29. public function selectModelChestItem($field, $label = '宝箱')
  30. {
  31. $table = ItemLazyRenderable::make([ 'type' => ITEM_TYPE::CHEST ]);
  32. return $this->form->selectTable($field, $label)->from($table)
  33. ->title($label)
  34. ->model($table->getModel(), $table->getModelSelectId(), $table->getModelViewName()); // 设置编辑数据显示
  35. }
  36. /**
  37. * 使用select 关联模型 ,物品组
  38. *
  39. * @param $field
  40. * @param $label
  41. * @return \Dcat\Admin\Form\Field\SelectTable
  42. */
  43. public function selectModelChestItemGroup($field, $label = '物品组')
  44. {
  45. $table = ItemGroupLazyRenderable::make();
  46. return $this->form->selectTable($field, $label)->from($table)
  47. ->title($label)
  48. ->model($table->getModel(), $table->getModelSelectId(), $table->getModelViewName()); // 设置编辑数据显示
  49. }
  50. }