fix validate register

main
nocode 1 year ago
parent e9ba22b3ba
commit 28e7344300
  1. 18
      app/Http/Controllers/Api/AuthApiController.php
  2. 66
      app/Http/Requests/Api/RegisterApiRequest.php

@ -10,6 +10,7 @@ use Illuminate\Support\Facades\Hash;
use App\Models\User;
use App\Models\Agent;
use App\Models\AgentUser;
use App\Http\Requests\Api\RegisterApiRequest;
class AuthApiController extends BaseAuthApiController
{
@ -79,15 +80,16 @@ class AuthApiController extends BaseAuthApiController
return response()->json($data, 200);
}
public function register(Request $request)
public function register(RegisterApiRequest $request)
{
$validator = \Illuminate\Support\Facades\Validator::make($request->all(), [
'email' => 'required|email',
'fullname' => 'required'
]);
if ($validator->fails()) {
return $this->sendError('Validation Error.', $validator->errors());
}
// $validator = \Illuminate\Support\Facades\Validator::make($request->all(), [
// 'email' => 'required|email',
// 'fullname' => 'required'
// ]);
// if ($validator->fails()) {
// return $this->sendError('Validation Error.', $validator->errors());
// }
if (empty($request->agents_code)) {
return response()->json(['status' => true, 'message' => 'Đăng ký thất bại, vui lòng gửi lên mã đại lý.']);
}

@ -0,0 +1,66 @@
<?php
namespace App\Http\Requests\Api;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Contracts\Validation\Validator;
use Illuminate\Http\Exceptions\HttpResponseException;
class RegisterApiRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array<string, mixed>
*/
public function rules()
{
return [
'email' => 'required|email|unique:users',
'fullname' => 'required',
'phone' => 'required|unique:users',
];
}
/**
* Get the error messages for the defined validation rules.
*
* @return array
*/
public function messages()
{
return [
'email.unique' => 'Địa chỉ email này đã được sử dụng.',
'email.required' => 'Địa chỉ email không được trống.',
'fullname.required' => 'Họ tên không được trống.',
'phone.unique' => 'Số điện thoại này đã được sử dụng.',
'phone.required' => 'Số điện thoại không được trống.',
// Các thông báo lỗi khác
];
}
/**
* Handle a failed validation attempt.
*
* @param \Illuminate\Contracts\Validation\Validator $validator
* @return void
*
* @throws \Illuminate\Http\Exceptions\HttpResponseException
*/
protected function failedValidation(Validator $validator)
{
throw new HttpResponseException(response()->json([
'status' => false,
'errors' => $validator->errors()
], 200));
}
}
Loading…
Cancel
Save