110 lines
3.2 KiB
PHP
110 lines
3.2 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Request\Admin;
|
|
|
|
use Hyperf\Validation\Request\FormRequest;
|
|
|
|
class SiteRequest extends FormRequest
|
|
{
|
|
/**
|
|
* Determine if the user is authorized to make this request.
|
|
*/
|
|
public function authorize(): bool
|
|
{
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* Get the validation rules that apply to the request.
|
|
*/
|
|
public function rules(): array
|
|
{
|
|
return [
|
|
'name' => 'required|string',
|
|
'city_id' => 'required|integer|exists:system_city,id',
|
|
'driver_id' => 'required|integer|exists:admin_user,id',
|
|
'kitchen_id' => 'required|integer|exists:kitchen,id',
|
|
'status' => 'required|integer|in:1,2',
|
|
'expected_delivery_time' => 'required|string|date_format:H:i',
|
|
'remark' => 'sometimes|string',
|
|
'address' => 'required|string',
|
|
'lng' => 'required|string',
|
|
'lat' => 'required|string',
|
|
'expected_spend_time' => 'required|string',
|
|
'image_id' => 'sometimes|integer|exists:oss_object,id',
|
|
'id' => 'required|integer|exists:site,id',
|
|
'query_create_start_time' => 'sometimes|string|date|required_with:query_create_end_time',
|
|
'query_create_end_time' => 'sometimes|string|date|after:query_create_start_time|different:query_create_start_time|required_with:query_create_start_time',
|
|
'query_name' => 'sometimes|string',
|
|
'query_city_id' =>'sometimes|integer|exists:system_city,id',
|
|
'query_status' =>'sometimes|integer|in:1,2',
|
|
'query_kitchen_id' =>'sometimes|integer|exists:kitchen,id',
|
|
'query_driver_id' =>'sometimes|integer|exists:admin_user,id',
|
|
'query_id' => 'sometimes|integer|exists:site,id',
|
|
'query_driver_name' =>'sometimes|string',
|
|
'query_driver_city_id' => 'sometimes|integer|exists:system_city,id',
|
|
];
|
|
}
|
|
|
|
public function messages(): array
|
|
{
|
|
return [];
|
|
}
|
|
|
|
/**
|
|
* @var array|array[] $scenes 场景验证规则
|
|
*/
|
|
protected array $scenes = [
|
|
'add' => [
|
|
'name',
|
|
'city_id',
|
|
'driver_id',
|
|
'kitchen_id',
|
|
'status',
|
|
'expected_delivery_time',
|
|
'remark',
|
|
'address',
|
|
'lng',
|
|
'lat',
|
|
'expected_spend_time',
|
|
'image_id'
|
|
],
|
|
'edit' => [
|
|
'id',
|
|
'name',
|
|
'city_id',
|
|
'driver_id',
|
|
'kitchen_id',
|
|
'status',
|
|
'expected_delivery_time',
|
|
'remark',
|
|
'address',
|
|
'lng',
|
|
'lat',
|
|
'expected_spend_time',
|
|
'image_id'
|
|
],
|
|
'info' => ['id'],
|
|
'del' => ['id'],
|
|
'list' => [
|
|
'limit',
|
|
'query_create_start_time',
|
|
'query_create_end_time',
|
|
'query_name',
|
|
'query_city_id',
|
|
'query_status',
|
|
'query_kitchen_id',
|
|
'query_driver_id',
|
|
'query_id',
|
|
],
|
|
'driver_list' => [
|
|
'limit',
|
|
'query_driver_name',
|
|
'query_driver_city_id',
|
|
'query_driver_id'
|
|
]
|
|
];
|
|
}
|