Commit 26fb0a52 authored by Michael Ngei's avatar Michael Ngei

Added passport endpoint

parent 6a29c0a7
......@@ -3,6 +3,7 @@
namespace App\Livewire\Search;
use App\Models\Docum;
use App\Models\Doi_date;
use App\Models\Human;
use App\Models\RegistrOffice;
use App\Models\User;
......@@ -34,6 +35,9 @@ class Searchform extends Component
public $records_not_found=[];
public $search_count=0;
public $passportNum;
public $passportIdNum;
public $humans=[];
protected $serial_number;
......@@ -57,7 +61,11 @@ class Searchform extends Component
}
break;
case 'Passport' :
$this->getPassportHuman();
if(!empty($this->passportNum) || !empty($this->passportIdNum)){
$this->getPassportHuman($this->passportNum,$this->passportIdNum);
}else{
session()->flash('error', 'Either Document Number or Serial Number must be provided.');
}
break;
case 'Birth' :
if(!empty($this->searchBirthEntryNum)){
......@@ -184,8 +192,22 @@ class Searchform extends Component
}
}
private function getPassportHuman(): void
{}
private function getPassportHuman($passportNum, $idnum)
{
$passport= Doi_date::where('passport_no', $passportNum)->where('identity_card_no', $idnum)->get()->toArray();
if($passport){
$this->search_count=1;
$this->doctype ='Passport';
$this->records_found[]=$passportNum;
$this->serial_number[]=$passportNum;
$this->humans = $passport;
$this->showTableResults();
}else{
session()->flash('error', 'Search parameter Not found');
}
}
/**
* Basic search birth record
......
......@@ -47,10 +47,10 @@
<div id="fieldsContainerPassport" class="d-none d-flex">
@if($role->hasPermissionTo("Basic Search Passport with Passport number"))
<input type="text" class="form-control search-element no-radius" id="searchInputPassportNo" name="pno" placeholder="Enter Passport Number" title="Enter Passport Number">
<input type="text" class="form-control search-element no-radius" id="searchInputPassportNo" name="pno" placeholder="Enter Passport Number" title="Enter Passport Number" wire:model="passportNum">
@endif
@if($role->hasPermissionTo("Basic Search Passport with ID number"))
<input type="text" class="form-control search-element no-radius" id="searchInputPassportId" name="pino" placeholder="Enter Maisha Number" title="Enter ID Number">
<input type="text" class="form-control search-element no-radius" id="searchInputPassportId" name="pino" placeholder="Enter Maisha Number" title="Enter ID Number" wire:model="passportIdNum">
@endif
</div>
<div id="fieldsContainerPassport" class="form-group col-md-12 d-none d-none mt-3 mb-3 justify-content-center">
......
......@@ -92,6 +92,22 @@
$docNumTitle='Doc Number';
}
if($doctype === 'Passport')
{
$headings = [
'Passport number',
'ID number',
'Names',
'Other names',
'Gender',
'Nationality',
'Date of Birth',
'Date of Issue',
'Date of Expiry',
'Action'
];
$count=0;
} else{
$headings = [
'ID number',
$docNumTitle,
......@@ -104,20 +120,62 @@
'Action'
];
$count=0;
}
@endphp
<x-adminlte-card>
<x-adminlte-datatable id="clients-table searchResultsCard" :heads="$headings" striped hoverable bordered>
@foreach($humans as $human)
@if($doctype === 'Passport')
<tr>
<td><h4 class="text-black">{{ $human["passport_no"] ?? '-'}}</h4></td>
<td><h4 class="text-info">{{ $human["identity_card_no"] ?? '-' }}</h4></td>
<td>{{ $human["first_names"] ?? '-' }}</td>
<td>{{ $human["last_name"] ?? '-' }}</td>
<td>{{ $human["gender"] ?? '-' }}</td>
<td>KENYAN <span class="fi fi-ke" style="font-size: 1rem;"></span></td>
<td>{{ $human["birth_day"] ?? '-' }} / {{ $human["birth_month"] ?? '-' }} / {{ $human["birth_year"] ?? '-' }}</td>
<td>{{ Carbon::parse($human["issue_date"])->format("d-m-Y") ?? '-' }}</td>
<td>{{ Carbon::parse($human['expiry_date'])->format("d-m-Y") ?? '-' }}</td>
<td>
<x-adminlte-button
label="Details"
theme="info"
id="humanbtn"
icon="fas fa-info-circle"
wire:click="triggerResultsModal({{ $human['identity_card_no'] ?? 0 }},'{{ $human['identity_card_no'] ?? 0 }}','{{ $doctype ?? 0 }}')"
data-toggle="modal"
/>
</td>
</tr>
@else
@foreach($human as $doc_human)
<tr>
<td><h4 class="text-black">{{ $doc_human['o_pid'] ?? '-' }}</h4></td>
<td><h4 class="text-info">{{ $serial_number[$count] ?? '-' }}</h4></td>
<td>{{ $doc_human['name'] ?? '-' }}</td>
<td>{{ $doc_human['last_name'] ?? '-' }}</td>
<td>{{ $doc_human['surn'] ?? '-' }}</td>
<td>
<h4 class="text-black">
{{ $doc_human['o_pid'] ?? '-' }}
</h4>
</td>
<td>
<h4 class="text-info">
{{ $serial_number[$count] ?? '-' }}
</h4>
</td>
<td>
{{ $doc_human['name'] ?? '-' }}
</td>
<td>
{{ $doc_human['last_name'] ?? '-' }}
</td>
<td>
{{ $doc_human['surn'] ?? '-' }}
</td>
<td>KENYAN <span class="fi fi-ke" style="font-size: 1rem;"></span></td>
<td>{{ $doc_human['sex'] ?? '-' }}</td>
<td>
{{ $doc_human['sex'] ?? '-' }}
</td>
<td>
{{ Carbon::parse($doc_human['date_birth'])->format("d-m-Y") ?? '-' }}
</td>
......@@ -134,7 +192,7 @@
</tr>
@php $count++; @endphp
@endforeach
@endif
@endforeach
</x-adminlte-datatable>
......
......@@ -2,6 +2,7 @@
use App\Http\Controllers\API\AuthController;
use App\Http\Controllers\API\Contracts;
use App\Http\Controllers\API\Passport;
use App\Http\Controllers\API\PaymentsAPI;
use App\Http\Controllers\API\SearchIDdocument;
use App\Http\Controllers\API\TokensAPI;
......@@ -36,10 +37,17 @@ Route::post('/login', [AuthController::class, 'login']);
//@TODO Protect this link
Route::prefix('v1')->group(function () {
//ID search
Route::prefix('verify')->group(function () {
Route::get('id/{id}/serial/{serial}', [SearchIDdocument::class, 'id_check']);
});
//passport
Route::prefix('verify')->group(function () {
Route::get('passport/{passport_num}/id/{id_num}', [Passport::class, 'passport_check']);
});
});
/**
* Search with login AUTH
*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment