hospital-applets-api/app/Request/DoctorInquiryConfigRequest.php

109 lines
4.4 KiB
PHP

<?php
declare(strict_types=1);
namespace App\Request;
use App\Constants\HttpEnumCode;
use Hyperf\Validation\Request\FormRequest;
use Hyperf\Validation\Rule;
class DoctorInquiryConfigRequest extends FormRequest
{
protected array $scenes = [
'getInquiryConfig' => [ // 获取医生问诊配置
'inquiry_type',
'inquiry_mode',
],
'putInquiryOpen' => [ // 医生问诊开关
'inquiry_type',
'inquiry_mode',
'is_open',
],
'putInquiryConfig' => [ // 修改医生问诊配置
'inquiry_type',
'inquiry_mode',
'inquiry_price',
'work_num_day',
],
'getInquiryServiceConfig' => [ // 获取医生问诊配置-服务设置
'inquiry_type',
'inquiry_mode',
],
'addInquiryServiceConfig' => [ // 新增医生问诊配置-服务设置
'service_content',
'service_process',
'service_period',
'service_rounds',
],
'putInquiryServiceConfig' => [ // 修改医生问诊配置-服务设置
'service_content',
'service_process',
'service_period',
'service_rounds',
],
];
/**
* 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 [
'inquiry_type' => 'required|integer|min:1|max:3',
'inquiry_mode' => 'required|integer|min:1|max:6',
'is_open' => "required|boolean",
'inquiry_price' => "required|min:0|numeric",
'work_num_day' => "required|min:0|numeric",
'service_content' => "required",
'service_process' => "required",
'service_period' => "required|min:2|max:30|numeric",
'service_rounds' => "required|min:0|max:300|numeric",
];
}
/**
* 获取已定义验证规则的错误消息.
*/
public function messages(): array
{
return [
'inquiry_type.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'inquiry_type.integer' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'inquiry_type.min' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'inquiry_type.max' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'inquiry_mode.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'inquiry_mode.integer' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'inquiry_mode.min' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'inquiry_mode.max' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'is_open.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'is_open.boolean' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'inquiry_price.required' => "请填写价格",
'inquiry_price.min' => "价格填写错误",
'inquiry_price.numeric' => "价格填写错误",
'inquiry_mode.numeric' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'work_num_day.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'work_num_day.min' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'work_num_day.numeric' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'service_content.required' => "请填写服务内容",
'service_process.required' => "请填写服务流程",
'service_period.required' => "请填写服务周期",
'service_period.min' => "服务周期最小值不可低于2",
'service_period.max' => "服务周期最大值不可超过30",
'service_period.numeric' => "服务周期填写错误",
'service_rounds.required' => "请填写服务回合数",
'service_rounds.min' => "服务回合数最小值不可低于0",
'service_rounds.max' => "服务回合数最大值不可超过300",
'service_rounds.numeric' => "服务回合数填写错误",
];
}
}