77 lines
2.8 KiB
PHP
77 lines
2.8 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Request;
|
|
|
|
use App\Constants\HttpEnumCode;
|
|
use Hyperf\Validation\Request\FormRequest;
|
|
use Hyperf\Validation\Rule;
|
|
|
|
class UserPatientRequest extends FormRequest
|
|
{
|
|
protected array $scenes = [
|
|
'getPatientCouponList' => [ // 获取患者优惠卷列表
|
|
'user_coupon_status',
|
|
],
|
|
'putShoppingCart' => [ // 修改购物车药品数据
|
|
'product_id',
|
|
'shopping_cart_num',
|
|
],
|
|
'getPatientBuyServiceDetail' => [ // 获取患者已购买的某医生的服务包详情
|
|
'doctor_id',
|
|
'family_id',
|
|
'service_type',
|
|
'follow_package_item_id',
|
|
],
|
|
];
|
|
|
|
/**
|
|
* 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 [
|
|
'user_coupon_status' => 'required|numeric|min:0|max:3',
|
|
'product_id' => 'required',
|
|
'shopping_cart_num' => 'required|numeric|min:0|max:999',
|
|
'doctor_id' => 'required',
|
|
'family_id' => 'required',
|
|
'service_type' => ['required','integer',Rule::in([1,2])],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* 获取已定义验证规则的错误消息.
|
|
*/
|
|
public function messages(): array
|
|
{
|
|
return [
|
|
'user_coupon_status.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'user_coupon_status.numeric' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'user_coupon_status.min' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'user_coupon_status.max' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'product_id.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
|
|
'shopping_cart_num.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'shopping_cart_num.numeric' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'shopping_cart_num.min' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'shopping_cart_num.max' => "请勿超出最大添加数量",
|
|
|
|
'doctor_id.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'family_id.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'service_type.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'service_type.numeric' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
|
|
'service_type.integer' => "服务包类型错误",
|
|
];
|
|
}
|
|
}
|