InquiryAssignment.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. namespace App\Admin\Forms;
  3. use Dcat\Admin\Contracts\LazyRenderable;
  4. use Dcat\Admin\Widgets\Form;
  5. use App\Admin\Repositories\DistInquiry;
  6. use App\Admin\Renderable\DistDistributorTable;
  7. use Dcat\Admin\Models\DistAdminUser;
  8. use Dcat\Admin\Traits\LazyWidget;
  9. class InquiryAssignment extends Form
  10. {
  11. // 处理请求
  12. public function handle(array $input)
  13. {
  14. $distId = $input['distId'] ?? null;
  15. $id = $input['id'] ?? null;
  16. if (empty($id)) {
  17. return $this->response()->error('No data selected!');
  18. }
  19. //检查数据是否可分配状态
  20. $ids = explode(',', $id);
  21. if (DistInquiry::assessTheStatus($ids) == false) {
  22. return $this->response()->error('The data cannot be assigned!');
  23. }
  24. //分配数据
  25. DistInquiry::assignData($ids, $distId);
  26. return $this->response()->success('allocation successful')->refresh();
  27. }
  28. public function form()
  29. {
  30. $this->selectTable('distId', 'Select Distributor')
  31. ->title('distId')
  32. ->from(DistDistributorTable::make());
  33. // 设置隐藏表单,传递用户id
  34. $this->hidden('id')->attribute('id', 'inquiryIds');
  35. }
  36. }