deploy commit

This commit is contained in:
2026-07-15 17:23:15 +07:00
commit b94ef4a695
148 changed files with 14831 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
<?php
namespace App\Filters;
use Illuminate\Http\Request;
class ApiFilter {
protected $safeParms = [];
protected $columnMap = [];
protected $operatorMap = [];
public function transform(Request $request) {
$eloQuery = [];
foreach ($this->safeParms as $parm => $operators) {
$query = $request->query($parm);
if (!isset($query)) {
continue;
}
$column = $this->columnMap[$parm] ?? $parm;
foreach ($operators as $operator) {
if(isset($query[$operator])) {
$eloQuery[] = [$column, $this->operatorMap[$operator], $query[$operator]];
}
}
}
return $eloQuery;
}
}
+27
View File
@@ -0,0 +1,27 @@
<?php
namespace App\Filters\V1;
use App\Filters\ApiFilter;
class AccountFilter extends ApiFilter {
protected $safeParms = [
'id' => ['eq'],
'name' => ['eq'],
'email' => ['eq'],
'phone' => ['eq'],
'dob' => ['eq'],
'role' => ['eq'],
];
protected $columnMap = [
];
protected $operatorMap = [
'eq' => '=',
'ne' => '!=',
'lt' => '<',
'lte' => '<=',
'gte' => '>=',
'gt' => '>',
];
}
+33
View File
@@ -0,0 +1,33 @@
<?php
namespace App\Filters\V1;
use App\Filters\ApiFilter;
class DoctorProfileFilter extends ApiFilter
{
protected $safeParms = [
'user_id' => ['eq'],
'specialization' => ['eq'],
'license_number' => ['eq'],
'license_file_path' => ['eq'],
'diploma_file_path' => ['eq'],
'certification' => ['eq'],
'current_institution' => ['eq'],
'years_of_experience' => ['eq', 'gte', 'lte', 'gt', 'lt'],
'work_history' => ['eq'],
'publications' => ['eq']
];
protected $columnMap = [
//'user_id' => 'user_id',
];
protected $operatorMap = [
'eq' => '=',
'ne' => '!=',
'lt' => '<',
'lte' => '<=',
'gte' => '>=',
'gt' => '>',
];
}
+34
View File
@@ -0,0 +1,34 @@
<?php
namespace App\Filters\V1;
use App\Filters\ApiFilter;
class SubmissionFilter extends ApiFilter
{
protected $safeParms = [
'patient_id' => ['eq'],
'doctor_id' => ['eq'],
'image_path' => ['eq'],
'complaint' => ['eq'],
'status' => ['eq', 'ne'],
'diagnosis' => ['eq'],
'doctor_note' => ['eq'],
'submitted_at' => ['eq'],
'verified_at' => ['eq'],
];
protected $columnMap = [
//'patient_id' => 'patient_id',
//'doctor_id' => 'doctor_id',
//'verified_at' => 'verified_at',
];
protected $operatorMap = [
'eq' => '=',
'ne' => '!=',
'lt' => '<',
'lte' => '<=',
'gte' => '>=',
'gt' => '>',
];
}