DischargeTaskRequest.php 3.7 KB

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