hospital-applets-api/app/Request/UserPatientRequest.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' => "服务包类型错误",
];
}
}