From 263ef246fd97d9e0101b15fb3cb4a4977e72760f Mon Sep 17 00:00:00 2001 From: "ehsan.moradi" Date: Mon, 5 May 2025 16:25:37 +0330 Subject: [PATCH 1/9] fix: verify password --- packages/Auth/SendsPasswordResetEmails.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/packages/Auth/SendsPasswordResetEmails.php b/packages/Auth/SendsPasswordResetEmails.php index 83a4eb65..71aeaf02 100644 --- a/packages/Auth/SendsPasswordResetEmails.php +++ b/packages/Auth/SendsPasswordResetEmails.php @@ -22,7 +22,7 @@ trait SendsPasswordResetEmails public function sendDisposablePassword(Request $request) { $this->validatePhone($request); - + // We will send the Disposable Password // to send the Disposable Password , we will examine the response then see the message we // need to show to the user. Finally, we'll send out a proper response. @@ -38,15 +38,14 @@ trait SendsPasswordResetEmails */ public function checkDisposablePassword(Request $request) { - if ( \Cache::has($request->code) ) { - $userid = \Cache::pull($request->code); + $userid = \Cache::pull($request->code); + if ( !is_null($userid) ) { $user = User::findOrFail($userid); if($user) { - $user->password = \Hash::make($request->code); $user->save(); - $request->merge([ 'cell_number' => $user->cell_number ]); + $request->merge([ 'cell_number' => $user->cell_number, 'password' => $request->code ]); return (new LoginController())->login($request); } return MessageResponse::error('User Not Found'); From dd85f7f5e2c552b53f53feed3710e554b0b7cd52 Mon Sep 17 00:00:00 2001 From: "ehsan.moradi" Date: Mon, 5 May 2025 17:26:36 +0330 Subject: [PATCH 2/9] change GetInputs api --- app/Http/Controllers/TestTypeController.php | 17 ++++++----------- routes/api.php | 2 +- 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/app/Http/Controllers/TestTypeController.php b/app/Http/Controllers/TestTypeController.php index 09dd6241..0d5c4e26 100644 --- a/app/Http/Controllers/TestTypeController.php +++ b/app/Http/Controllers/TestTypeController.php @@ -7,6 +7,7 @@ use App\Models\Input; use App\Models\Option; use App\Models\TestResult; use App\Models\TestType; +use Exception; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; use Milon\Barcode\Facades\DNS1DFacade; @@ -380,20 +381,13 @@ class TestTypeController extends Controller ///////////////////////////////////////////////////////////////////////////////////// - public function getInputs(Request $request) + public function getInputs(int $testTypeId) { if (auth('api')->user()->can('getInputs')) { return MessageResponse::error(trans('messages.failed')); } - if ($request->test_result_id !== '') { - $testTypeId = TestResult::find($request->test_result_id); - } - if (isset($testTypeId) && $testTypeId) { - $testType = TestType::select('id', 'name', 'unique_code', 'device_label')->find($testTypeId->test_type_id); - } else { - $testType = TestType::where('name', $request->name)->orWhere('unique_code', $request->unique_code)->select('id', 'name', 'unique_code', 'device_label')->first(); - } - if (isset($testType) && $testType) { + try { + $testType = TestType::select('id', 'name', 'unique_code', 'device_label')->findOrFail($testTypeId); $inputs = Input::select('id', 'name', 'type', 'size', 'parent_id', 'require_scanner')->with( ['options' => function ($query) { @@ -408,8 +402,9 @@ class TestTypeController extends Controller )->whereNull('parent_id')->where('test_type_id', $testType->id)->get(); return MessageResponse::data(['testType' => $testType, 'inputs' => $inputs]); + } catch(Exception $e) { + return MessageResponse::error(); } - return MessageResponse::error(); } public function list() diff --git a/routes/api.php b/routes/api.php index 8721deed..27953f21 100644 --- a/routes/api.php +++ b/routes/api.php @@ -35,7 +35,7 @@ Route::middleware('auth:api')->group(function () { Route::post('/TestTypes/Barcode/{TestType}', [TestTypeController::class, 'generateBarcode']); Route::resource('TestTypes', TestTypeController::class); Route::resource('MedicalCenters', MedicalCenterController::class); - Route::post('/GetInputs', [TestTypeController::class, 'getInputs']); + Route::get('/GetInputs/{id}', [TestTypeController::class, 'getInputs']); // Route::post('/GetInputs', [TestTypeController::class, 'getInputs']) این بود قبلا Route::get('/GetInfo', [UserController::class, 'getInfo']); Route::get('Users/MedicalCenter/{MedicalCenter}', [UserController::class, 'getByMedicalCenter']); From bcba3b7a8dcbfd3d80e7497843c20a7f47180ddc Mon Sep 17 00:00:00 2001 From: "ehsan.moradi" Date: Tue, 6 May 2025 11:06:52 +0330 Subject: [PATCH 3/9] verify password change --- packages/Auth/SendsPasswordResetEmails.php | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/Auth/SendsPasswordResetEmails.php b/packages/Auth/SendsPasswordResetEmails.php index 71aeaf02..dc7be86a 100644 --- a/packages/Auth/SendsPasswordResetEmails.php +++ b/packages/Auth/SendsPasswordResetEmails.php @@ -7,6 +7,7 @@ use App\Models\User; use App\Services\Notification\SmsNotification; use Carbon\Carbon; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Auth; use Packages\Messaging\src\Facades\MessageResponse; // use Packages\SMSSender\SMSSender; @@ -22,7 +23,7 @@ trait SendsPasswordResetEmails public function sendDisposablePassword(Request $request) { $this->validatePhone($request); - + // We will send the Disposable Password // to send the Disposable Password , we will examine the response then see the message we // need to show to the user. Finally, we'll send out a proper response. @@ -42,11 +43,9 @@ trait SendsPasswordResetEmails if ( !is_null($userid) ) { $user = User::findOrFail($userid); if($user) { - $user->password = \Hash::make($request->code); - $user->save(); - - $request->merge([ 'cell_number' => $user->cell_number, 'password' => $request->code ]); - return (new LoginController())->login($request); + Auth::login($user); + $token = $user->createToken('auth-token')->accessToken; + return MessageResponse::success('logged in successfully','verify password',$token); } return MessageResponse::error('User Not Found'); } From 0bd017360cae4f4ac7d7c0919d3ed6129172ab85 Mon Sep 17 00:00:00 2001 From: "ehsan.moradi" Date: Tue, 6 May 2025 11:31:05 +0330 Subject: [PATCH 4/9] add package name filter to label index --- app/Repositories/LabelRepository.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/app/Repositories/LabelRepository.php b/app/Repositories/LabelRepository.php index 22f58313..dac2da31 100644 --- a/app/Repositories/LabelRepository.php +++ b/app/Repositories/LabelRepository.php @@ -12,6 +12,9 @@ class LabelRepository implements LabelRepositoryInterface return Label::when($request->has('sterilizer_id') && $request->sterilizer_id != '', function ($query) use ($request) { $query->where('sterilizer_id', $request->sterilizer_id); }) + ->when($request->has('package_name') && $request->package_name != '', function ($query) use ($request) { + $this->applyPackageNameFilter($query,$request); + }) ->when($request->has('cycle_number') && $request->cycle_number != '', function ($query) use ($request) { $query->where('cycle_number', $request->cycle_number); }) @@ -49,6 +52,9 @@ class LabelRepository implements LabelRepositoryInterface return Label::when($request->has('sterilizer_id') && $request->sterilizer_id != '', function ($query) use ($request) { $query->where('sterilizer_id', $request->sterilizer_id); }) + ->when($request->has('package_name') && $request->package_name != '', function ($query) use ($request) { + $this->applyPackageNameFilter($query,$request); + }) ->when($request->has('cycle_number') && $request->cycle_number != '', function ($query) use ($request) { $query->where('cycle_number', $request->cycle_number); }) @@ -86,6 +92,9 @@ class LabelRepository implements LabelRepositoryInterface return Label::when($request->has('sterilizer_id') && $request->sterilizer_id != '', function ($query) use ($request) { $query->where('sterilizer_id', $request->sterilizer_id); }) + ->when($request->has('package_name') && $request->package_name != '', function ($query) use ($request) { + $this->applyPackageNameFilter($query,$request); + }) ->when($request->has('cycle_number') && $request->cycle_number != '', function ($query) use ($request) { $query->where('cycle_number', $request->cycle_number); }) @@ -114,4 +123,11 @@ class LabelRepository implements LabelRepositoryInterface ->orderByDesc('id') ->paginate(10); } + + public function applyPackageNameFilter($q,$request) + { + return $q->whereHas('package', function ($query) use ($request) { + $query->where('packages.name', 'like', "%{$request->package_name}%"); + }); + } } From b7694a92a42d4afd24c6bc10e0c060c867a4b8fe Mon Sep 17 00:00:00 2001 From: "saeid.khakbazan" Date: Wed, 7 May 2025 06:28:26 +0000 Subject: [PATCH 5/9] Update Dockerfile.nginx --- Dockerfile.nginx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile.nginx b/Dockerfile.nginx index 2d306a05..d29f93b6 100644 --- a/Dockerfile.nginx +++ b/Dockerfile.nginx @@ -1,4 +1,4 @@ -FROM node:14-alpine AS builder +FROM docker.meshkee.com/repository/docker-hosted/node:14-alpine AS builder WORKDIR /var/www/html From 7ce5e0262bdc25d5a9628c7a24be8b768998b3d4 Mon Sep 17 00:00:00 2001 From: "ehsan.moradi" Date: Wed, 7 May 2025 12:53:52 +0330 Subject: [PATCH 6/9] fix verify password --- packages/Auth/SendsPasswordResetEmails.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/Auth/SendsPasswordResetEmails.php b/packages/Auth/SendsPasswordResetEmails.php index dc7be86a..aaed7b64 100644 --- a/packages/Auth/SendsPasswordResetEmails.php +++ b/packages/Auth/SendsPasswordResetEmails.php @@ -43,9 +43,11 @@ trait SendsPasswordResetEmails if ( !is_null($userid) ) { $user = User::findOrFail($userid); if($user) { - Auth::login($user); - $token = $user->createToken('auth-token')->accessToken; - return MessageResponse::success('logged in successfully','verify password',$token); + $user->password = \Hash::make($request->code); + $user->save(); + + $request->merge([ 'cell_number' => $user->cell_number, 'password' => $request->code ]); + return (new LoginController())->login($request); } return MessageResponse::error('User Not Found'); } From 4c48b13646215f78d9e3daa74cccb9da54575917 Mon Sep 17 00:00:00 2001 From: "ehsan.moradi" Date: Sat, 10 May 2025 12:44:16 +0330 Subject: [PATCH 7/9] add test_type_name to test result index --- app/Http/Controllers/TestResultController.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/Http/Controllers/TestResultController.php b/app/Http/Controllers/TestResultController.php index fa8d2527..16931e14 100644 --- a/app/Http/Controllers/TestResultController.php +++ b/app/Http/Controllers/TestResultController.php @@ -48,6 +48,11 @@ class TestResultController extends Controller ->when($request->has('testType_id') && $request->testType_id, function ($query) use ($request) { $query->where('test_type_id', $request->testType_id); }) + ->when($request->has('test_type_name') && $request->test_type_name, function ($q) use ($request) { + $q->whereHas('test_type', function ($query) use ($request) { + $query->where('name', 'like', "%{$request->test_type_name}%"); + }); + }) ->when(($request->has('device_id') && $request->device_id) && ($request->has('device_label') && $request->device_label && $request->device_label != "undefined"), function ($query) use ($request) { if ($request->device_label != 'undefined') { $query->whereHas('input_values', function ($query) use ($request) { From 2e59726bceefbe26bb951c85bbf17f8b48be77ed Mon Sep 17 00:00:00 2001 From: "ehsan.moradi" Date: Sat, 10 May 2025 13:07:58 +0330 Subject: [PATCH 8/9] fix --- packages/Auth/SendsPasswordResetEmails.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/Auth/SendsPasswordResetEmails.php b/packages/Auth/SendsPasswordResetEmails.php index aaed7b64..b05de687 100644 --- a/packages/Auth/SendsPasswordResetEmails.php +++ b/packages/Auth/SendsPasswordResetEmails.php @@ -60,7 +60,7 @@ trait SendsPasswordResetEmails $userModel = User::where('cell_number', $request->cell_number)->where('status', 'Active'); $user = $userModel->first(); if ($user) { - $code = rand(100000, 999999); + $code = rand(10000000, 99999999); \Cache::put($code, $user->id, Carbon::now()->addMinutes(30)); SmsNotification::to( $userModel )->isSystematic()->send( trans( 'sms.reset_password' , [ From 4a3b8fe5c08d29de2ba5039c213b24207a2f9792 Mon Sep 17 00:00:00 2001 From: "ehsan.moradi" Date: Sun, 11 May 2025 17:31:08 +0330 Subject: [PATCH 9/9] fix --- packages/Auth/SendsPasswordResetEmails.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/Auth/SendsPasswordResetEmails.php b/packages/Auth/SendsPasswordResetEmails.php index b05de687..aaed7b64 100644 --- a/packages/Auth/SendsPasswordResetEmails.php +++ b/packages/Auth/SendsPasswordResetEmails.php @@ -60,7 +60,7 @@ trait SendsPasswordResetEmails $userModel = User::where('cell_number', $request->cell_number)->where('status', 'Active'); $user = $userModel->first(); if ($user) { - $code = rand(10000000, 99999999); + $code = rand(100000, 999999); \Cache::put($code, $user->id, Carbon::now()->addMinutes(30)); SmsNotification::to( $userModel )->isSystematic()->send( trans( 'sms.reset_password' , [