Quellcode durchsuchen

added linked companies

= vor 2 Jahren
Ursprung
Commit
89d7d7c5d2

+ 5 - 0
app/Http/Controllers/PatientController.php

@@ -690,6 +690,11 @@ class PatientController extends Controller
         return view('app.patient.accounts', compact('patient'));
     }
 
+    public function companies(Request $request, Client $patient) {
+        $companies = Company::where('is_active', true)->get();
+        return view('app.patient.companies', compact('patient', 'companies'));
+    }
+
     public function rtm(Request $request, Client $patient) {
         return view('app.patient.rtm', compact('patient'));
     }

+ 5 - 0
app/Models/Client.php

@@ -828,6 +828,11 @@ class Client extends Model
             ->orderBy('created_at', 'desc');
     }
 
+    public function linkedCompanies()
+    {
+        return $this->hasMany(CompanyClient::class, 'client_id', 'id')
+            ->orderBy('created_at', 'desc');
+    }
     public function pages($_type, $_returnShadows, $_note) {
         return Page
             ::where('client_id', $this->id)

+ 6 - 0
app/Models/CompanyClient.php

@@ -17,4 +17,10 @@ class CompanyClient extends Model
     public function company(){
         return $this->hasOne(Company::class, 'id', 'company_id');
     }
+
+    public function documents()
+    {
+        return $this->hasMany(CompanyClientDocument::class, 'company_client_id', 'id')
+            ->orderBy('created_at', 'desc');
+    }
 }

+ 21 - 0
app/Models/CompanyClientDocument.php

@@ -0,0 +1,21 @@
+<?php
+
+namespace App\Models;
+
+use Illuminate\Database\Eloquent\Model;
+
+class CompanyClientDocument extends Model
+{
+
+    protected $table = 'company_client_document';
+
+
+    public function companyClient(){
+        return $this->hasOne(CompanyClient::class, 'id', 'company_client_id');
+    }
+
+    public function systemFile(){
+        return $this->hasOne(SystemFile::class, 'id', 'system_file_id');
+    }
+
+}

+ 143 - 0
resources/views/app/patient/companies.blade.php

@@ -0,0 +1,143 @@
+@extends ('layouts.patient')
+@section('inner-content')
+    <div class="">
+        <div class="d-flex align-items-end pb-3">
+            <h4 class="font-weight-bold m-0">
+                <i class="fa fa-link"></i>
+                Linked Companies
+            </h4>
+            <span class="mx-2 text-secondary">|</span>
+            <div moe relative class="">
+                <a href="#" start show class="col-2-button">
+                    + Add
+                </a>
+                <form url="/api/companyClient/create" class="mcp-theme-1">
+                    <input type="hidden" name="clientUid" value="{{$patient->uid}}">
+                    <div class="mb-2">
+                        <label class="text-secondary text-sm">Company</label>
+                        <select name="companyUid" class="form-control form-control-sm" required>
+                            <option value="">--select--</option>
+                            @foreach($companies as $company)
+                                <option value="{{$company->uid}}">{{$company->name}}</option>
+                            @endforeach
+                        </select>
+                    </div>
+                    <div>
+                        <button submit class="btn btn-sm btn-primary mr-2">Submit</button>
+                        <button cancel class="btn btn-sm btn-default border">Cancel</button>
+                    </div>
+                </form>
+            </div>
+        </div>
+        <table class="table table-sm table-striped table-bordered mb-0">
+            @if($patient->linkedCompanies && count($patient->linkedCompanies))
+                <thead>
+                <tr class="bg-light">
+                    <th class="text-secondary border-0">Created At</th>
+                    <th class="text-secondary border-0">Name</th>
+                    <th class="text-secondary border-0">Is Active?</th>
+                    <th class="text-secondary border-0">Status</th>
+                    <th class="text-secondary border-0">Documents</th>
+                </tr>
+                </thead>
+                <tbody>
+                @foreach($patient->linkedCompanies as $linkedCompany)
+                    <tr>
+                        <td>{{ friendlier_date_time($linkedCompany->created_at) }}</td>
+                        <td>{{$linkedCompany->company->name}}</td>
+                        <td>{{ $linkedCompany->is_active? 'Yes': 'No' }}</td>
+                        <td>
+                            {{ $linkedCompany->status }}
+                            <span moe class="ml-1" relative>
+                                <a class="" href="" show start><i class="fa fa-edit"></i></a>
+                                <form url="/api/companyClient/update-status" right>
+                                    <input type="hidden" name="uid" value="{{$linkedCompany->uid}}">
+                                    <select name="status" required>
+                                        <option {{$linkedCompany->status == 'New' ? 'selected': ''}}>New<option/>
+                                        <option {{$linkedCompany->status == 'Eligibility Verified' ? 'selected': ''}}>Eligibility Verified<option/>
+                                        <option {{$linkedCompany->status == 'Eligibility Pending' ? 'selected': ''}}>Eligibility Pending<option/>
+                                        <option {{$linkedCompany->status == 'Eligibility Denied/Not Eligibility' ? 'selected': ''}}>Eligibility Denied/Not Eligibility<option/>
+                                        <option {{$linkedCompany->status == 'Initial Consult' ? 'selected': ''}}>Initial Consult<option/>
+                                        <option {{$linkedCompany->status == 'HST Delivered' ? 'selected': ''}}>HST Delivered<option/>
+                                        <option {{$linkedCompany->status == 'Study Pending' ? 'selected': ''}}>Study Pending<option/>
+                                        <option {{$linkedCompany->status == 'Study Completed' ? 'selected': ''}}>Study Completed<option/>
+                                        <option {{$linkedCompany->status == 'Study Interpreted' ? 'selected': ''}}>Study Interpreted<option/>
+                                        <option {{$linkedCompany->status == 'Post HST Visit' ? 'selected': ''}}>Post HST Visit<option/>
+                                        <option {{$linkedCompany->status == 'CPAP Rx' ? 'selected': ''}}>CPAP Rx<option/>
+                                        <option {{$linkedCompany->status == 'Oral Appliance Rx' ? 'selected': ''}}>Oral Appliance Rx<option/>
+                                        <option {{$linkedCompany->status == 'Not Interested' ? 'selected': ''}}>Not Interested<option/>
+                                        <option {{$linkedCompany->status == 'In Lab Study' ? 'selected': ''}}>In Lab Study<option/>
+                                        <option {{$linkedCompany->status == 'Unresponsive' ? 'selected': ''}}>Unresponsive<option/>
+                                    </select>
+                                    <div class="mb-0">
+                                        <button class="btn btn-primary btn-sm" submit>Submit</button>
+                                        <button class="btn btn-default border btn-sm" cancel>Cancel</button>
+                                    </div>
+                                </form>
+                            </span>
+                        </td>
+                        <td>
+                            <h6>Documents</h6>
+                            <span moe class="ml-1" relative>
+                                <a class="" href="" show start>Upload</a>
+                                <form url="/api/companyClientDocument/create" right>
+                                    <input type="hidden" name="companyClientUid" value="{{$linkedCompany->uid}}">
+                                    <div class="m-2">
+                                        <label for="" class="control-label">File name</label>
+                                        <input type="text" class="form-control" name="name" required>
+                                    </div>
+                                    <div class="m-2">
+                                        <input type="file" class="form-control" name="file">
+                                    </div>
+                                    <div class="mb-0">
+                                        <button class="btn btn-primary btn-sm" submit>Submit</button>
+                                        <button class="btn btn-default border btn-sm" cancel>Cancel</button>
+                                    </div>
+                                </form>
+                            </span>
+                            @if(count($linkedCompany->documents))
+                                <table class="table">
+                                    @foreach($linkedCompany->documents as $document)
+                                        <tr>
+                                            <td>
+                                                <a native target="_blank" href="/api/companyClientDocument/download/{{$document->uid}}">
+                                                    {{$document->name}}
+                                                </a>
+                                            </td>
+                                            <td>
+                                               <span moe class="ml-1" relative>
+                                                    <a class="" href="" show start><i class="fa fa-edit"></i></a>
+                                                    <form url="/api/companyClientDocument/updateName" right>
+                                                        <input type="hidden" name="uid" value="{{$document->uid}}">
+                                                        <div class="m-2">
+                                                            <label for="" class="control-label">File name</label>
+                                                            <input type="text" class="form-control" name="name" value="{{$document->name}}" required>
+                                                        </div>
+
+                                                        <div class="mb-0">
+                                                            <button class="btn btn-primary btn-sm" submit>Submit</button>
+                                                            <button class="btn btn-default border btn-sm" cancel>Cancel</button>
+                                                        </div>
+                                                    </form>
+                                                </span>
+                                            </td>
+                                        </tr>
+                                    @endforeach
+                                </table>
+                            @endif
+                        </td>
+
+                    </tr>
+                @endforeach
+                </tbody>
+            @else
+                <tbody>
+                <tr>
+                    <td class="text-secondary p-3">No linked accounts</td>
+                </tr>
+                </tbody>
+            @endif
+        </table>
+
+    </div>
+@endsection

BIN
resources/views/layouts/.patient.blade.php.swp


+ 5 - 0
resources/views/layouts/patient.blade.php

@@ -261,6 +261,11 @@ $isOldClient = (date_diff(date_create(config('app.point_impl_date')), date_creat
 					<li class="nav-item">
 						<a class="nav-link {{ strpos($routeName, 'patients.view.accounts') === 0 ? 'active' : '' }}" href="{{ route('patients.view.accounts', $patient) }}">Linked Accounts</a>
 					</li>
+                    @if($performer->pro->pro_type == 'ADMIN')
+                    <li class="nav-item">
+                        <a class="nav-link {{ strpos($routeName, 'patients.view.companies') === 0 ? 'active' : '' }}" href="{{ route('patients.view.companies', $patient) }}">Linked Companies</a>
+                    </li>
+                    @endif
 					<li class="nav-item">
 						<a class="nav-link {{ $routeName === 'patients.view.review-requests' ? 'active' : '' }}" href="{{ route('patients.view.review-requests', ['patient' => $patient]) }}">Review Requests</a>
 					</li>

+ 7 - 5
routes/web.php

@@ -166,7 +166,7 @@ Route::middleware('pro.auth')->group(function () {
             Route::get('my-bills', 'DnaController@myBills')->name('myBills');
             Route::get('my-clinical-teams', 'DnaController@myClinicalTeams')->name('myClinicalTeams');
             Route::get('my-clinical-teams', 'DnaController@myClinicalTeams')->name('myClinicalTeams');
-            
+
             Route::name('my-clinical-teams.view.')->prefix('my-clinical-teams/view/{team}')->group(function () {
                 Route::get('dashboard', 'DnaController@teamDashboard')->name('team-dashboard');
             });
@@ -207,10 +207,10 @@ Route::middleware('pro.auth')->group(function () {
     Route::name('ps.')->prefix('ps')->group(function () {
         Route::get('dashboard', [SupervisingPhysicianController::class, 'dashboard'])->name('dashboard');
         Route::get('client-review-requests', [SupervisingPhysicianController::class, 'clientReviewRequests'])->name('client-review-requests');
-        
+
 
     });
-    
+
 
 
     //Route::get('test-gsheet', 'GsheetController@testGsheet');
@@ -334,7 +334,7 @@ Route::middleware('pro.auth')->group(function () {
             Route::get('visit-template-access/{visitTemplate}', 'PracticeManagementController@visitTemplateAccess')->name('visitTemplateAccess');
 
             Route::get('rm-action-report', 'PracticeManagementController@rmActionReport')->name('rmActionReport');
-        	
+
 		    Route::get('remote-monitoring-report', 'PracticeManagementController@remoteMonitoringReport')->name('remoteMonitoringReport');
             Route::get('daily-treatment-services', 'PracticeManagementController@dailyTreatmentServices')->name('daily-treatment-services');
             Route::get('client-pro-changes', 'PracticeManagementController@clientProChanges')->name('client-pro-changes');
@@ -394,7 +394,7 @@ Route::middleware('pro.auth')->group(function () {
             Route::get('problems-report', 'PracticeManagementController@problemsReport')->name('problems-report');
         });
 
-        
+
 
         Route::get('supply-orders/cancelled-but-unacknowledged', 'PracticeManagementController@supplyOrdersCancelledButUnacknowledged')->name('supply-orders-cancelled-but-unacknowledged');
         Route::get('supply-orders/unsigned', 'PracticeManagementController@supplyOrdersUnsigned')->name('supply-orders-unsigned');
@@ -624,6 +624,8 @@ Route::middleware('pro.auth')->group(function () {
 
             Route::get('accounts', 'PatientController@accounts')->name('accounts');
 
+            Route::get('companies', 'PatientController@companies')->name('companies');
+
             Route::get('rtm', 'PatientController@rtm')->name('rtm');
 
         });