dev
Jing Li 2023-10-26 14:48:37 +08:00
parent 00c7ef9de8
commit a3cd26602f
2 changed files with 26 additions and 40 deletions

View File

@ -2,9 +2,9 @@
namespace App\Http\Requestes; namespace App\Http\Requestes;
use Illuminate\Contracts\Validation\Validator; use App\Rules\Quarter;
use App\Rules\Year;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Http\Exceptions\HttpResponseException;
class CropYieldRequest extends FormRequest class CropYieldRequest extends FormRequest
{ {
@ -16,8 +16,8 @@ class CropYieldRequest extends FormRequest
public function rules() public function rules()
{ {
return [ return [
'time_year' => 'required|date_format:Y', 'time_year' => ['bail', 'required', new Year()],
'quarter' => 'required|integer|min:1|max:4', 'quarter' => ['bail', 'required', new Quarter()],
'crop_id' => 'required|integer|min:0', 'crop_id' => 'required|integer|min:0',
'base_id' => 'required|integer|min:0', 'base_id' => 'required|integer|min:0',
'yield' => ['bail', 'required', 'numeric', 'min:0', 'max:9999999999.99', 'regex:/^([1-9]\d*|0)(\.\d{1,2})?$/'], 'yield' => ['bail', 'required', 'numeric', 'min:0', 'max:9999999999.99', 'regex:/^([1-9]\d*|0)(\.\d{1,2})?$/'],
@ -26,24 +26,16 @@ class CropYieldRequest extends FormRequest
]; ];
} }
public function messages() public function attributes()
{ {
$messages = [ return [
'time_year' => '请选择正确年份', 'time_year' => '年份',
'quarter' => '请选择正确季度', 'quarter' => '季度',
'crop_id' => '请选择农作物', 'crop_id' => '农作物',
'base_id' => '请选择地区', 'base_id' => '地区',
'yield' => '请填写产量', 'yield' => '产量',
'cultivated' => '请填写种养殖面积', 'cultivated' => '耕种面积',
'output' => '请填写产值', 'output' => '产值',
]; ];
return $messages;
}
protected function failedValidation(Validator $validator)
{
$error = $validator->errors()->all();
throw new HttpResponseException(response()->json(['data' => [], 'code' => 400, 'message' => $error[0]]));
} }
} }

View File

@ -2,9 +2,9 @@
namespace App\Http\Requestes; namespace App\Http\Requestes;
use Illuminate\Contracts\Validation\Validator; use App\Rules\Quarter;
use App\Rules\Year;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Http\Exceptions\HttpResponseException;
class CropYieldUpdateRequest extends FormRequest class CropYieldUpdateRequest extends FormRequest
{ {
@ -16,7 +16,8 @@ class CropYieldUpdateRequest extends FormRequest
public function rules() public function rules()
{ {
return [ return [
'time_year' => 'required|date_format:Y', 'time_year' => ['bail', 'required', new Year()],
'quarter' => ['bail', 'required', new Quarter()],
'crop_id' => 'required|integer|min:0', 'crop_id' => 'required|integer|min:0',
'base_id' => 'required|integer|min:0', 'base_id' => 'required|integer|min:0',
'yield' => ['bail', 'required', 'numeric', 'min:0', 'max:9999999999.99', 'regex:/^([1-9]\d*|0)(\.\d{1,2})?$/'], 'yield' => ['bail', 'required', 'numeric', 'min:0', 'max:9999999999.99', 'regex:/^([1-9]\d*|0)(\.\d{1,2})?$/'],
@ -25,23 +26,16 @@ class CropYieldUpdateRequest extends FormRequest
]; ];
} }
public function messages() public function attributes()
{ {
$messages = [ return [
'time_year' => '请选择年份', 'time_year' => '年份',
'crop_id' => '请选择农作物', 'quarter' => '季度',
'base_id' => '请选择基地', 'crop_id' => '农作物',
'yield' => '请填写产量', 'base_id' => '地区',
'cultivated' => '请填写耕地面积', 'yield' => '产量',
'output' => '请填写产值', 'cultivated' => '耕种面积',
'output' => '产值',
]; ];
return $messages;
}
protected function failedValidation(Validator $validator)
{
$error = $validator->errors()->all();
throw new HttpResponseException(response()->json(['data' => [], 'code' => 400, 'message' => $error[0]]));
} }
} }