diff --git a/app/Http/Controllers/Api/Auth/ForgotPasswordController.php b/app/Http/Controllers/Api/Auth/ForgotPasswordController.php index 1356bb76..0f6e63d3 100644 --- a/app/Http/Controllers/Api/Auth/ForgotPasswordController.php +++ b/app/Http/Controllers/Api/Auth/ForgotPasswordController.php @@ -4,7 +4,7 @@ namespace App\Http\Controllers\Api\Auth; use App\Http\Controllers\Controller; use Illuminate\Http\Request; -use Illuminate\Foundation\Auth\SendsPasswordResetEmails; +use Packages\Auth\SendsPasswordResetEmails; class ForgotPasswordController extends Controller { diff --git a/app/Http/Controllers/Api/Auth/ResetPasswordController.php b/app/Http/Controllers/Api/Auth/ResetPasswordController.php index 6a5f3eff..f4365420 100644 --- a/app/Http/Controllers/Api/Auth/ResetPasswordController.php +++ b/app/Http/Controllers/Api/Auth/ResetPasswordController.php @@ -4,12 +4,9 @@ namespace App\Http\Controllers\Api\Auth; use App\Http\Controllers\Controller; use Illuminate\Http\Request; -use Illuminate\Support\Facades\Password; -use Illuminate\Foundation\Auth\ResetsPasswords; class ResetPasswordController extends Controller { - use ResetsPasswords; public function __construct() { @@ -24,32 +21,25 @@ class ResetPasswordController extends Controller */ public function reset(Request $request) { - $this->validate($request, $this->rules(), $this->validationErrorMessages()); + $this->validatePassword($request); - // Here we will attempt to reset the user's password. If it is successful we - // will update the password on an actual user model and persist it to the - // database. Otherwise we will parse the error and return the response. - $response = $this->broker()->reset( - $this->credentials($request), function ($user, $password) { - $this->resetPassword($user, $password); + if (auth('api')->check()) { + $user = auth('api')->user(); + $user->password = Hash::make($request->password); + $user->save(); + return \MessageResponse::success('Success Change Password'); } - ); - - // If the password was successfully reset, we will redirect the user back to - // the application's home authenticated view. If there is an error we can - // redirect them back to where they came from with their error message. - return $response == Password::PASSWORD_RESET - ? $this->sendResetResponse($request) - : $this->sendResetFailedResponse($request, $response); + return \MessageResponse::success('You Are Not Login'); } - protected function sendResetResponse($request) + /** + * Validate the email for the given request. + * + * @param \Illuminate\Http\Request $request + * @return void + */ + protected function validatePassword(Request $request) { - return (new LoginController())->login($request); - } - - protected function sendResetFailedResponse(Request $request, $response) - { - return response()->json(['status' => 401, 'email' => trans($response)]); + $request->validate(['password' => 'required|confirmed|min:8',]); } } diff --git a/app/Http/Controllers/TestResultController.php b/app/Http/Controllers/TestResultController.php index 166d89c8..5bad7e72 100644 --- a/app/Http/Controllers/TestResultController.php +++ b/app/Http/Controllers/TestResultController.php @@ -38,6 +38,7 @@ class TestResultController extends Controller public function store(StoreTestResultRequest $request) { + // dd($request->all()); try { $return_value = \DB::transaction(function () use ($request) { @@ -46,7 +47,7 @@ class TestResultController extends Controller 'autoclave_id' => $request->autoclave_id, 'test_type_id' => $request->test_type_id, 'result' => $request->result, - 'verified' => 0, + 'verified' => 'NotVerified', ]; $TestResultObj = TestResult::create($TestResult); $TestResultInfo = $request->all(); @@ -57,11 +58,17 @@ class TestResultController extends Controller foreach ($Inputs as $Input) { if ($Input['type'] != 'Form') { $Value = $TestResultInfo[$Input->name]; + if ($Input['type'] == 'Checkbox') { + $Value = json_encode($Value); + } $InputValueObj = InputValue::create(['test_result_id' => $TestResultObj->id , 'input_id' => $Input->id , 'value' => $Value]); } else { foreach ($Input->children as $InputChild) { - $Value = $TestResultInfo[$Input->name][$InputChild->name]; + $Value = $TestResultInfo[$InputChild->name]; + if ($InputChild['type'] == 'Checkbox') { + $Value = json_encode($Value); + } $InputValueObj = InputValue::create(['test_result_id' => $TestResultObj->id , 'input_id' => $InputChild->id , 'value' => $Value]); } //------------------------------------------------------- @@ -107,9 +114,13 @@ class TestResultController extends Controller // } - //Todo:: pass Inputs + //Todo:: pass Inputs public function edit(TestResult $TestResult) { + foreach ($TestResult->input_values as $key => $value) { + $input = $value->input; + $TestResult[$input->name] = $value->value; + } return \MessageResponse::data($TestResult); } @@ -120,7 +131,7 @@ class TestResultController extends Controller 'autoclave_id' => $request->autoclave_id, 'test_type_id' => $request->test_type_id, 'result' => $request->result, - 'verified' => 0, + 'verified' => 'NotVerified', ]; $TestResult->update($TestResultData); $TestResultInfo = $request->all(); @@ -130,20 +141,46 @@ class TestResultController extends Controller foreach ($Inputs as $Input) { if ($Input['type'] != 'Form') { $Value = $TestResultInfo[$Input->name]; - $InputValueObj = InputValue::where('test_result_id',$TestResult)->update(['test_result_id' => $TestResultObj->id , 'input_id' => $Input->id , 'value' => $Value]); + if ($Input['type'] == 'Checkbox') { + $Value = json_encode($Value); + } + + $InputValueObj = InputValue::where('test_result_id',$TestResult->id)->where('input_id', $Input['id'])->update(['value' => $Value]); } else { foreach ($Input->children as $InputChild) { - $Value = $TestResultInfo[$Input->name][$InputChild->name]; - $InputValueObj = InputValue::where('test_result_id',$TestResult)->update(['test_result_id' => $TestResultObj->id , 'input_id' => $InputChild->id , 'value' => $Value]); + $Value = $TestResultInfo[$InputChild->name]; + if ($InputChild['type'] == 'Checkbox') { + $Value = json_encode($Value); + } + $InputValueObj = InputValue::where('test_result_id',$TestResult->id)->where('input_id', $Input['id'])->update(['value' => $Value]); } } } return \MessageResponse::success(null,trans('messages.update')); } - public function destroy($id) + public function destroy(TestResult $TestResult) { - // + if (auth('api')->user()->can('delete', $TestResult)) { + return \MessageResponse::error(trans('messages.failed')); + } + $TestResult->delete(); + return \MessageResponse::success(null, trans('messages.failed')); } + + public function verifyTestResult(TestResult $TestResult) + { + if (auth('api')->user()->can('verifyTestResult', $TestResult)) { + return \MessageResponse::error(trans('messages.failed')); + } + if ($TestResult->verified == 'Verified') { + $TestResult->verified = 'NotVerified'; + } else { + $TestResult->verified = 'Verified'; + } + $TestResult->save(); + return \MessageResponse::data($TestResult); + } + } diff --git a/app/Http/Controllers/TestTypeController.php b/app/Http/Controllers/TestTypeController.php index b5d05737..1a5323c5 100644 --- a/app/Http/Controllers/TestTypeController.php +++ b/app/Http/Controllers/TestTypeController.php @@ -338,15 +338,16 @@ class TestTypeController extends Controller $testType = TestType::where('name', $request->name)->orWhere('unique_code', $request->unique_code)->select('id', 'name', 'unique_code')->first(); } if (isset($testType) && $testType) { - $inputs = Input::select('id','name','type','size','parent_id')->with( + + $inputs = Input::select('id', 'name', 'type', 'size', 'parent_id')->with( ['options' => function ($query) { $query->select('id', 'title','input_id'); - }], - ['children' => function ($query) { - $query->select('id','name','type','size','parent_id'); - }], - ['children.options' => function ($query) { - $query->select('id', 'title','input_id'); + }, + 'children' => function ($query) { + $query->select('id', 'name', 'type', 'size', 'parent_id', 'test_type_id'); + }, + 'children.options' => function ($query) { + $query->select('id', 'title', 'input_id'); }] )->whereNull('parent_id')->where('test_type_id',$testType->id)->get(); @@ -360,8 +361,15 @@ class TestTypeController extends Controller $testType = TestType::pluck('name'); return \MessageResponse::data($testType); } - public function destroy($id) - { + public function destroy(TestType $TestType) + { + // if (auth('api')->user()->can('delete', $TestType)) { + // return \MessageResponse::error(trans('messages.failed')); + // } + // dd($TestType); + $TestType->delete(); + return \MessageResponse::success(trans('messages.success')); } + } diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index e884226f..9d89aebc 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -1,111 +1,111 @@ -paginate(10); - return \MessageResponse::data($Users); - } - - public function store(StoreUserRequest $request) - { - $UserData = [ - 'name' => $request->name , - 'cell_number' => $request->cell_number , - 'medical_center_id' => $request->medical_center_id , - 'status' => 'PreRegister', - 'verified' => 1, - 'password' => bcrypt($request->password), - ]; - $User = User::create($UserData); - return \MessageResponse::success(trans('messages.success')); - } - - public function edit(User $User) - { - return \MessageResponse::data($User); - } - - public function update(StoreUserRequest $request, User $User) - { - $UserData = [ - 'name' => $request->name , - 'cell_number' => $request->cell_number , - 'medical_center_id' => $request->medical_center_id , - 'status' => 'PreRegister', - 'verified' => 1, - 'password' => bcrypt($request->password), - ]; - $User->update($UserData); - return \MessageResponse::success(trans('messages.success')); - } - - public function destroy(User $User) - { - if (auth('api')->user()->can('delete', $User)) { - return \MessageResponse::error(trans('messages.failed')); - } - $User->delete(); - return \MessageResponse::success(trans('messages.success')); - } - - - - public function getByMedicalCenter(MedicalCenter $MedicalCenter) - { - $MedicalCenter = $MedicalCenter->load(['users' => function ($query) { - return $query->select(['id', 'medical_center_id', 'name', 'cell_number', 'status']); - }, 'users.roles']); - return \MessageResponse::data($MedicalCenter); - } - - - - public function changeStatus(User $User) - { - if ($User->status == 'Active') { - $User->status = 'Suspended'; - } else { - $User->status = 'Active'; - } - $User->save(); - return \MessageResponse::data($User); - } - - - - public function changeRole(User $User, Request $request) - { - $User->syncRoles($request->roles); - return \MessageResponse::data($User); - } - - public function updateInfo(Request $request) - { - auth('api')->user()->update($request->all()); - return \MessageResponse::success(trans('messages.success')); - } - - public function getInfo() - { - return \MessageResponse::data([ 'user' => auth('api')->user(), 'roles' => auth('api')->user()->getRoleNames() ]); - } - -} +paginate(10); + return \MessageResponse::data($Users); + } + + public function store(StoreUserRequest $request) + { + $UserData = [ + 'name' => $request->name , + 'cell_number' => $request->cell_number , + 'medical_center_id' => $request->medical_center_id , + 'status' => 'PreRegister', + 'verified' => 1, + 'password' => bcrypt($request->password), + ]; + $User = User::create($UserData); + return \MessageResponse::success(trans('messages.success')); + } + + public function edit(User $User) + { + return \MessageResponse::data($User); + } + + public function update(StoreUserRequest $request, User $User) + { + $UserData = [ + 'name' => $request->name , + 'cell_number' => $request->cell_number , + 'medical_center_id' => $request->medical_center_id , + 'status' => 'PreRegister', + 'verified' => 1, + 'password' => bcrypt($request->password), + ]; + $User->update($UserData); + return \MessageResponse::success(trans('messages.success')); + } + + public function destroy(User $User) + { + if (auth('api')->user()->can('delete', $User)) { + return \MessageResponse::error(trans('messages.failed')); + } + $User->delete(); + return \MessageResponse::success(trans('messages.success')); + } + + + + public function getByMedicalCenter(MedicalCenter $MedicalCenter) + { + $MedicalCenter = $MedicalCenter->load(['users' => function ($query) { + return $query->select(['id', 'medical_center_id', 'name', 'cell_number', 'status']); + }, 'users.roles']); + return \MessageResponse::data($MedicalCenter); + } + + + + public function changeStatus(User $User) + { + if ($User->status == 'Active') { + $User->status = 'Suspended'; + } else { + $User->status = 'Active'; + } + $User->save(); + return \MessageResponse::data($User); + } + + + + public function changeRole(User $User, Request $request) + { + $User->syncRoles($request->roles); + return \MessageResponse::data($User); + } + + public function updateInfo(Request $request) + { + auth('api')->user()->update($request->all()); + return \MessageResponse::success(trans('messages.success')); + } + + public function getInfo() + { + return \MessageResponse::data([ 'user' => auth('api')->user(), 'roles' => auth('api')->user()->getRoleNames() ]); + } + +}