DischargeTaskRequest.php 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. <?php
  2. namespace App\Http\Requests\DischargeTask;
  3. use App\Traits\RequestApiFormValidation;
  4. use Illuminate\Foundation\Http\FormRequest;
  5. use Illuminate\Support\Facades\Request;
  6. use Illuminate\Support\Facades\Route;
  7. class DischargeTaskRequest extends FormRequest
  8. {
  9. use RequestApiFormValidation;
  10. protected $deleteApiRules =[
  11. 'id' => 'required'
  12. ];
  13. protected $deleteApiMessage =[
  14. 'id.required' => '参数错误'
  15. ];
  16. protected $storeApiRules =[
  17. 'owner_id' => 'required',
  18. 'type' => 'required',
  19. 'numbers' => 'required',
  20. 'warehouse_id' => 'required',
  21. 'income_unit' => 'required',
  22. 'income_amount' => 'required',
  23. 'income_unit_price' => 'required',
  24. ];
  25. protected $storeApiMessage =[
  26. 'owner_id.required' => '货物为必选项',
  27. 'type.required' => '任务类型为必选项',
  28. 'numbers.required' => '入库单号为必填项',
  29. 'warehouse_id.required' => '仓库未必须选项',
  30. 'income_amount.required' => '数量为必填项',
  31. 'income_unit.required' => '单位为必选项',
  32. 'income_unit_price.required'=> '单价为必填项',
  33. ];
  34. protected $updateApiRules =[
  35. 'owner_id' => 'required',
  36. 'type' => 'required',
  37. 'numbers' => 'required',
  38. 'warehouse_id' => 'required',
  39. 'income_unit' => 'required',
  40. 'income_amount' => 'required',
  41. 'income_unit_price' => 'required',
  42. ];
  43. protected $updateApiMessage =[
  44. 'owner_id.required' => '货物为必选项',
  45. 'type.required' => '任务类型为必选项',
  46. 'numbers.required' => '入库单号为必填项',
  47. 'warehouse_id.required' => '仓库未必须选项',
  48. 'income_amount.required' => '数量为必填项',
  49. 'income_unit.required' => '单位为必选项',
  50. 'income_unit_price.required'=> '单价为必填项',
  51. ];
  52. protected $updateTaskFacilitatorApiRules =[
  53. 'id' => 'required',
  54. 'facilitator_id' => 'required',
  55. 'expenditure_amount' => 'required',
  56. 'expenditure_unit' => 'required',
  57. 'expenditure_unit_price' => 'required',
  58. ];
  59. protected $updateTaskFacilitatorApiMessage =[
  60. 'id.required'=>'未选中卸货任务',
  61. 'facilitator_id.required' => '服务商为必选项',
  62. 'expenditure_amount.required' => '数量为必填项',
  63. 'expenditure_unit.required' => '单位为必选项',
  64. 'expenditure_unit_price.required' => '单价为必填项',
  65. ];
  66. public function authorize(): bool
  67. {
  68. return true;
  69. }
  70. public function rules(): array
  71. {
  72. $currentRoute = Route::getCurrentRoute();
  73. $routeName = $currentRoute->getName();
  74. switch ($routeName){
  75. case 'discharge.deleteApi':
  76. return $this->deleteApiRules;
  77. case 'discharge.storeApi':
  78. return $this->storeApiRules;
  79. case 'discharge.updateApi':
  80. return $this->updateApiRules;
  81. case 'discharge.updateTaskFacilitatorApi':
  82. return $this->updateTaskFacilitatorApiRules;
  83. default :
  84. return [];
  85. }
  86. }
  87. public function messages(): array
  88. {
  89. $currentRoute = Route::getCurrentRoute();
  90. $routeName = $currentRoute->getName();
  91. switch ($routeName){
  92. case 'discharge.deleteApi':
  93. return $this->deleteApiMessage;
  94. case 'discharge.storeApi':
  95. return $this->storeApiMessage;
  96. case 'discharge.updateApi':
  97. return $this->updateApiMessage;
  98. case 'discharge.updateTaskFacilitatorApi':
  99. return $this->updateTaskFacilitatorApiMessage;
  100. default :
  101. return [];
  102. }
  103. }
  104. }