Просмотр исходного кода

added client documents sidenav

= 3 лет назад
Родитель
Сommit
366ea8d88d

+ 12 - 0
app/Http/Controllers/NoteController.php

@@ -15,10 +15,12 @@ use Illuminate\Support\Facades\Http;
 
 use App\Models\Note;
 use App\Models\Client;
+use App\Models\CompanyPro;
 use App\Models\Section;
 use App\Models\SectionTemplate;
 use App\Models\Segment;
 use App\Models\SegmentTemplate;
+use Illuminate\Support\Facades\DB;
 
 class NoteController extends Controller
 {
@@ -67,10 +69,20 @@ class NoteController extends Controller
             ->get();
 
         $templates =  get_doc_templates();
+        
+        $companyProIDs = DB::select('SELECT company_pro_id FROM company_pro_document WHERE related_client_id  = ?', [$patient->id]);
+
+        $companyProIDInts = [];
+        foreach($companyProIDs as $cpId){
+            $companyProIDInts[] = $cpId->company_pro_id; 
+        }
+
+        $companyPros = CompanyPro::whereIn('id', $companyProIDInts)->get();
 
         return view('app.patient.note.dashboard', compact('patient', 'note',
             'allSections',
             'ticketsOnNote', 'otherOpenTickets',
+            'companyPros',
             'supplyOrdersOnNote', 'otherOpenSupplyOrders', 'templates'));
     }
 

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

@@ -9,6 +9,7 @@ use App\Models\Client;
 use App\Models\ClientBDTDevice;
 use App\Models\ClientInfoLine;
 use App\Models\ClientProAccess;
+use App\Models\CompanyPro;
 use App\Models\Erx;
 use App\Models\Facility;
 use App\Models\Handout;
@@ -637,4 +638,19 @@ class PatientController extends Controller
         $rows = ClientProAccess::where('client_id', $patient->id)->get();
         return view('app.patient.client-pro-access', compact('patient', 'rows'));
     }
+
+    public function clientDocuments(Request $request, Client $patient){
+        $templates =  get_doc_templates();
+        
+        $companyProIDs = DB::select('SELECT company_pro_id FROM company_pro_document WHERE related_client_id  = ?', [$patient->id]);
+
+        $companyProIDInts = [];
+        foreach($companyProIDs as $cpId){
+            $companyProIDInts[] = $cpId->company_pro_id; 
+        }
+        
+        $companyPros = CompanyPro::whereIn('id', $companyProIDInts)->get();
+
+        return view('app.patient.client-documents', compact('templates', 'companyPros', 'patient'));
+    }
 }

+ 7 - 0
resources/views/app/patient/client-documents.blade.php

@@ -0,0 +1,7 @@
+
+@extends ('layouts.patient')
+@section('inner-content')
+    <div class="">
+        @include('app/patient/partials/company-pro-documents')
+    </div>
+@endsection

+ 3 - 3
resources/views/app/patient/note/dashboard.blade.php

@@ -2368,14 +2368,14 @@
                     </div>
                 </div>
 
-                @if($note->hcpPro)
+                @if($pro->pro_type === 'ADMIN' && $note->hcpPro)
                 <div class="screen-only">
                     <div class="border-top p3">
-                        @include('app/patient/note/company-pro-documents')
+                        @include('app/patient/partials/company-pro-documents')
                     </div>
                 </div>
                 @endif
-                
+
                 </div>
 
                 @if($isVisitTemplateBased && !$note->is_signed_by_hcp)

+ 117 - 159
resources/views/app/patient/note/company-pro-documents.blade.php → resources/views/app/patient/partials/company-pro-documents.blade.php

@@ -1,6 +1,6 @@
 <div class="card m-0 p-0" id="company-documents">
     <div class="card-header border-bottom-0 p-2">
-        <div class="d-flex align-items-center justify-content-between">
+        <div class="d-flex align-items-center ">
             <div class="d-flex align-items-center">
                 <h6 class="my-0 font-weight-bold">Company Documents</h6>
             </div>
@@ -10,15 +10,25 @@
                 <a href="#" start show>Add</a>
                 <form url="/api/companyProDocument/create">
                     <input type="hidden" name="relatedClientUid" value="{{$patient->uid}}">
+                    @if(isset($note))
                     <input type="hidden" name="relatedNoteUid" value="{{$note->uid}}">
+                    @endif
                     
                     <div class="form-group">
                         <label>Company Pro</label>
                         <select class="form-control template-selector" name="companyProUid">
                             <option value="">(no template selected)</option>
-                            @foreach($note->hcpPro->companyPros as $cp)
-                                <option value="{{$cp->uid}}">{{$cp->displayName()}}</option>
-                            @endforeach
+                            @if(isset($note))
+                                @foreach($note->hcpPro->companyPros as $cp)
+                                    <option value="{{$cp->uid}}">{{$cp->displayName()}}</option>
+                                @endforeach
+                            @else 
+                                @if($patient->mcp)
+                                    @foreach($patient->mcp->companyPros as $cp)
+                                        <option value="{{$cp->uid}}">{{$cp->displayName()}}</option>
+                                    @endforeach
+                                @endif
+                            @endif
                         </select>
                     </div>
 
@@ -73,9 +83,6 @@
     </div>
     
     <div class="card-body p-0 m-0">
-            @php 
-                $companyPros = $note->hcpPro->companyPros;
-            @endphp 
             @foreach ($companyPros as $_companyPro)
                     
                 <div class="card m-2 p-0" id="company-documents">
@@ -102,180 +109,131 @@
 
                     <div class="card-body p-0 m-0">
                         @foreach($_companyPro->documents as $document)
-                            <div class="px-2 py-1 border-top {{!$document->is_active ? 'bg-light' : ''}} d-flex align-items-baseline on-hover-aliceblue" title="{{!$document->is_active ? 'Inactive' : ''}}">
-                                @if(!$document->is_active)
-                                    <div class="text-sm text-secondary mr-1">
-                                        <i class="fa fa-ban"></i>
-                                    </div>
-                                @endif
-                                <a href="{{ route('generateDocumentPDF', $document->uid) }}" class="mr-auto max-width-50 flex-grow-1" native target="_blank" title="{{$document->internal_name}} {{!$document->is_active ? '[Inactive]' : ''}}">{{ $document->title }}</a>
-                                <div class="d-inline-flex flex-nowrap">
-                                    @if(!$document->has_client_signed)
-                                        @if($document->is_client_signature_requested)
-                                        @else
-                                            @if($document->is_active)
-                                                <div moe larger center>
-                                                    <a start show href="#" class="text-purple" title="Edit"><i class="fa fa-pencil-alt mr-2"></i></a>
-                                                    <form url="/api/companyProDocument/updateBasic" class="mt-2" right>
-                                                        <input type="hidden" name="uid" value="{{ $document->uid }}">
-
-                                                        <div class="mb-2">
-                                                            <label for="board" class="mb-1 text-secondary">Title</label>
-                                                            <input type="text" name="title" class="form-control form-control-sm" value="{{$document->title}}">
-                                                        </div>
-                                                        <div class="mb-2">
-                                                            <label for="board" class="mb-1 text-secondary">Content</label>
-                                                            <input type="hidden" name="contentHtml">
-                                                            <div class="contentHtml-display border rounded p-3 bg-light">
-                                                                {!! $document->content_html !!}
-                                                            </div>
-                                                        </div>
-                                                        @if($document->custom_fields_data)
-                                                            <?php $parsedCF = json_decode($document->custom_fields_data); ?>
-                                                            <div class="mb-2 custom-fields-container row pt-2">
-                                                                @foreach($parsedCF as $k => $v)
-                                                                    <div class="col-6 my-2">
-                                                                        <label class="mb-1 {{$k[0] === '@' ? '' : 'text-secondary'}}">{{$k[0] === '@' ? substr($k, 1) : $k}} {{$k[0] === '@' ? '*' : ''}}</label>
-                                                                        <input type="text" class="form-control form-control-sm" {{$k[0] === '@' ? 'required' : ''}} data-variable="{{$k}}" value="{{$v}}">
-                                                                    </div>
-                                                                @endforeach
-                                                            </div>
-                                                        @endif
-                                                        <div class="mt-3">
-                                                            <button type="button" class="btn btn-sm btn-primary mr-2 btn-update-document">Update</button>
-                                                            <button cancel class="btn btn-default border">Cancel</button>
-                                                        </div>
-                                                    </form>
-                                                </div>
-                                            @endif
-                                        @endif
-                                    @endif
-                                    @if($document->is_active)
-                                        <div moe large>
-                                            <a start show href="#" class="d-inline text-danger on-hover-opaque"><i class="fas fa-trash-alt"></i></a>
-                                            <form url="/api/companyProDocument/deactivate" class="mt-2" right>
-                                                <input type="hidden" name="uid" value="{{ $document->uid }}">
-                                                <div class="mb-2">
-                                                    <p>Are you sure you want to deactivate <b>{{ $document->title }}</b>?</p>
-                                                </div>
-                                                <div class="mt-3">
-                                                    <button submit class="btn btn-sm btn-danger mr-2">Deactivate</button>
-                                                    <button cancel class="btn btn-default border">Cancel</button>
-                                                </div>
-                                            </form>
-                                        </div>
-                                    @else
-                                        <div moe large>
-                                            <a start show href="#" class="d-inline text-info"><i class="fas fa-undo"></i></a>
-                                            <form url="/api/companyProDocument/reactivate" class="mt-2" right>
-                                                <input type="hidden" name="uid" value="{{ $document->uid }}">
-                                                <div class="mb-2">
-                                                    <p>Are you sure you want to reactivate <b>{{ $document->title }}</b>?</p>
-                                                </div>
-
-                                                <div class="mt-3">
-                                                    <button submit class="btn btn-sm btn-primary mr-2">Reactivate</button>
-                                                    <button cancel class="btn btn-default border">Cancel</button>
-                                                </div>
-                                            </form>
+                            @if($document->related_client_id == $patient->id)
+                                <div class="px-2 py-1 border-top {{!$document->is_active ? 'bg-light' : ''}} d-flex align-items-baseline on-hover-aliceblue" title="{{!$document->is_active ? 'Inactive' : ''}}">
+                                    @if(!$document->is_active)
+                                        <div class="text-sm text-secondary mr-1">
+                                            <i class="fa fa-ban"></i>
                                         </div>
                                     @endif
-                                    <div class="d-inline-flex align-items-baseline ml-2">
-                                        <span class="pr-1 text-secondary text-nowrap">Pro:</span>
-                                        <div class="d-inline-flex align-items-baseline">
-                                            @if($document->has_client_signed)
-                                                <span class="font-weight-bold" title="{{$document->pro_signed_at ?  friendly_date_time($document->pro_signed_at) : '-'}}">
-                                                    <i class="fas fa-check text-success text-sm"></i>
-                                                </span>
-                                            @endif
-                                            @if(!$document->has_client_signed)
-                                                @if($document->is_client_signature_requested)
-                                                    <span class="ml-1 text-secondary "><i class="fa fa-check text-secondary pr-1"></i>Requested</span>
-                                                    <div moe large="" class="ml-1">
-                                                        <a start show href="#" class="text-orange" title="Undo Request">Undo</a>
-                                                        <form url="/api/companyProDocument/undoRequestClientSignature" class="mt-2" right>
+                                    <a href="{{ route('generateDocumentPDF', $document->uid) }}" class="mr-auto max-width-50 flex-grow-1" native target="_blank" title="{{$document->internal_name}} {{!$document->is_active ? '[Inactive]' : ''}}">{{ $document->title }}</a>
+                                    <div class="d-inline-flex flex-nowrap">
+                                        @if(!$document->has_client_signed)
+                                            @if($document->is_client_signature_requested)
+                                            @else
+                                                @if($document->is_active)
+                                                    <div moe larger center>
+                                                        <a start show href="#" class="text-purple" title="Edit"><i class="fa fa-pencil-alt mr-2"></i></a>
+                                                        <form url="/api/companyProDocument/updateBasic" class="mt-2" right>
                                                             <input type="hidden" name="uid" value="{{ $document->uid }}">
+
                                                             <div class="mb-2">
-                                                                <p>Undo request for Client signature?</p>
+                                                                <label for="board" class="mb-1 text-secondary">Title</label>
+                                                                <input type="text" name="title" class="form-control form-control-sm" value="{{$document->title}}">
                                                             </div>
-                                                            <div class="mt-3">
-                                                                <button submit class="btn btn-sm btn-danger mr-2">Undo Request Signature</button>
-                                                                <button cancel class="btn btn-default border">Cancel</button>
-                                                            </div>
-                                                        </form>
-                                                    </div>
-                                                @else
-                                                    <div moe large="" class="ml-0">
-                                                        <a start show href="#" class="text-purple" title="Request Signature">Request</a>
-                                                        <form url="/api/companyProDocument/requestClientSignature" class="mt-2" right>
-                                                            <input type="hidden" name="uid" value="{{ $document->uid }}">
                                                             <div class="mb-2">
-                                                                <p>Request for Client signature?</p>
+                                                                <label for="board" class="mb-1 text-secondary">Content</label>
+                                                                <input type="hidden" name="contentHtml">
+                                                                <div class="contentHtml-display border rounded p-3 bg-light">
+                                                                    {!! $document->content_html !!}
+                                                                </div>
                                                             </div>
+                                                            @if($document->custom_fields_data)
+                                                                <?php $parsedCF = json_decode($document->custom_fields_data); ?>
+                                                                <div class="mb-2 custom-fields-container row pt-2">
+                                                                    @foreach($parsedCF as $k => $v)
+                                                                        <div class="col-6 my-2">
+                                                                            <label class="mb-1 {{$k[0] === '@' ? '' : 'text-secondary'}}">{{$k[0] === '@' ? substr($k, 1) : $k}} {{$k[0] === '@' ? '*' : ''}}</label>
+                                                                            <input type="text" class="form-control form-control-sm" {{$k[0] === '@' ? 'required' : ''}} data-variable="{{$k}}" value="{{$v}}">
+                                                                        </div>
+                                                                    @endforeach
+                                                                </div>
+                                                            @endif
                                                             <div class="mt-3">
-                                                                <button submit class="btn btn-sm btn-primary mr-2">Request Signature</button>
+                                                                <button type="button" class="btn btn-sm btn-primary mr-2 btn-update-document">Update</button>
                                                                 <button cancel class="btn btn-default border">Cancel</button>
                                                             </div>
                                                         </form>
                                                     </div>
                                                 @endif
                                             @endif
-                                        </div>
-                                        <span class="mx-2 text-secondary">|</span>
-                                        <span class="pr-1 text-secondary text-nowrap">Mgr:</span>
-                                        <div class="flex-grow-1">
-                                            @if(true || $document->has_client_signed)
-                                                @if(!$document->has_hrm_pro_counter_signed)
-                                                    @if($document->company->authorized_signer_signature_base64)
-                                                        <a class="pointer" preview-and-sign data-uid="{{$document->uid}}" data-signature="{{$document->company->authorized_signer_signature_base64}}" data-pdf="{{ route('generateDocumentPDF', $document->uid) }}" data-company="{{ $document->company->name }}" data-title="{{ $document->title }}">
-                                                            Sign
-                                                        </a>
+                                        @endif
+                                        @if($document->is_active)
+                                            <div moe large>
+                                                <a start show href="#" class="d-inline text-danger on-hover-opaque"><i class="fas fa-trash-alt"></i></a>
+                                                <form url="/api/companyProDocument/deactivate" class="mt-2" right>
+                                                    <input type="hidden" name="uid" value="{{ $document->uid }}">
+                                                    <div class="mb-2">
+                                                        <p>Are you sure you want to deactivate <b>{{ $document->title }}</b>?</p>
+                                                    </div>
+                                                    <div class="mt-3">
+                                                        <button submit class="btn btn-sm btn-danger mr-2">Deactivate</button>
+                                                        <button cancel class="btn btn-default border">Cancel</button>
+                                                    </div>
+                                                </form>
+                                            </div>
+                                        @else
+                                            <div moe large>
+                                                <a start show href="#" class="d-inline text-info"><i class="fas fa-undo"></i></a>
+                                                <form url="/api/companyProDocument/reactivate" class="mt-2" right>
+                                                    <input type="hidden" name="uid" value="{{ $document->uid }}">
+                                                    <div class="mb-2">
+                                                        <p>Are you sure you want to reactivate <b>{{ $document->title }}</b>?</p>
+                                                    </div>
+
+                                                    <div class="mt-3">
+                                                        <button submit class="btn btn-sm btn-primary mr-2">Reactivate</button>
+                                                        <button cancel class="btn btn-default border">Cancel</button>
+                                                    </div>
+                                                </form>
+                                            </div>
+                                        @endif
+                                        <div class="d-inline-flex align-items-baseline ml-2">
+                                            <span class="pr-1 text-secondary text-nowrap">Client:</span>
+                                            <div class="d-inline-flex align-items-baseline">
+                                                @if($document->has_client_signed)
+                                                    <span class="font-weight-bold" title="{{$document->pro_signed_at ?  friendly_date_time($document->pro_signed_at) : '-'}}">
+                                                        <i class="fas fa-check text-success text-sm"></i>
+                                                    </span>
+                                                @endif
+                                                @if(!$document->has_client_signed)
+                                                    @if($document->is_client_signature_requested)
+                                                        <span class="ml-1 text-secondary "><i class="fa fa-check text-secondary pr-1"></i>Requested</span>
+                                                        <div moe large="" class="ml-1">
+                                                            <a start show href="#" class="text-orange" title="Undo Request">Undo</a>
+                                                            <form url="/api/companyProDocument/undoRequestClientSignature" class="mt-2" right>
+                                                                <input type="hidden" name="uid" value="{{ $document->uid }}">
+                                                                <div class="mb-2">
+                                                                    <p>Undo request for Client signature?</p>
+                                                                </div>
+                                                                <div class="mt-3">
+                                                                    <button submit class="btn btn-sm btn-danger mr-2">Undo Request Signature</button>
+                                                                    <button cancel class="btn btn-default border">Cancel</button>
+                                                                </div>
+                                                            </form>
+                                                        </div>
                                                     @else
-                                                        <div class="d-flex align-items-center">
-                                                            <span class="text-danger">
-                                                                <i class="fa fa-exclamation-triangle"></i>
-                                                                Company signer not set
-                                                            </span>
-                                                            @if($pro->pro_type === 'ADMIN')
-                                                                <span class="mx-2 text-secondary">|</span>
-                                                                <div moe center med>
-                                                                    <a href="#" start show class="font-weight-bold">Set</a>
-                                                                    <form url="/api/company/putAuthorizedSigner">
-                                                                        <p><b>Authorized Signer for {{$document->company->name}}</b></p>
-                                                                        <input type="hidden" name="uid" value="{{$document->company->uid}}">
-                                                                        <div class="mb-2">
-                                                                            <label class="mb-1 text-secondary">Name</label>
-                                                                            <input type="text" name="authorizedSignerName" class="form-control form-control-sm">
-                                                                        </div>
-                                                                        <div class="mb-2">
-                                                                            <label class="mb-1 text-secondary">Title</label>
-                                                                            <input type="text" name="authorizedSignerTitle" class="form-control form-control-sm">
-                                                                        </div>
-                                                                        <div class="mb-2">
-                                                                            <input type="hidden" name="authorizedSignerSignatureBase64">
-                                                                            <p class="mb-2 text-secondary">Draw the signature below:</p>
-                                                                            <canvas id="signature-pad" height="150" width="350" class="signature-pad d-block border rounded" data-target-input="authorizedSignerSignatureBase64"></canvas>
-                                                                            <p class="mt-1"><small><a href="#" id="btn-clear-signature" class="btn-clear-signature text-muted"><i class="fas fa-times mr-2 text-red"></i>Clear Signature</a></small> </p>
-                                                                        </div>
-                                                                        <div class="mt-3">
-                                                                            <button submit class="btn btn-sm btn-primary mr-2">Submit</button>
-                                                                            <button cancel class="btn btn-default border">Cancel</button>
-                                                                        </div>
-                                                                    </form>
+                                                        <div moe large="" class="ml-0">
+                                                            <a start show href="#" class="text-purple" title="Request Signature">Request</a>
+                                                            <form url="/api/companyProDocument/requestClientSignature" class="mt-2" right>
+                                                                <input type="hidden" name="uid" value="{{ $document->uid }}">
+                                                                <div class="mb-2">
+                                                                    <p>Request for Client signature?</p>
                                                                 </div>
-                                                            @endif
+                                                                <div class="mt-3">
+                                                                    <button submit class="btn btn-sm btn-primary mr-2">Request Signature</button>
+                                                                    <button cancel class="btn btn-default border">Cancel</button>
+                                                                </div>
+                                                            </form>
                                                         </div>
                                                     @endif
-                                                @else
-                                                    <i class="fas fa-check text-success text-sm" title="{{friendlier_date_time($document->hrm_pro_counter_signed_at)}}"></i>
                                                 @endif
-                                            @else
-                                                -
-                                            @endif
+                                            </div>
+                                           
                                         </div>
                                     </div>
                                 </div>
-                            </div>
+                            @endif
                         @endforeach
                     </div>
                 </div>

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

@@ -260,6 +260,10 @@ $isOldClient = (date_diff(date_create(config('app.point_impl_date')), date_creat
 							<a class="nav-link {{ strpos($routeName, 'patients.view.client-pro-access') === 0 ? 'active' : '' }}"
 							   href="{{ route('patients.view.client-pro-access', ['patient' => $patient]) }}">Client Pro Access</a>
 						</li>
+						<li class="nav-item">
+							<a class="nav-link {{ strpos($routeName, 'patients.view.client-documents') === 0 ? 'active' : '' }}"
+							   href="{{ route('patients.view.client-documents', ['patient' => $patient]) }}">Client Documents</a>
+						</li>
 						@endif
 						<li class="nav-item">
 							<a class="nav-link" href="/patients/view/{{ $patient->uid }}/intake">Intake</a>

+ 2 - 0
routes/web.php

@@ -438,6 +438,8 @@ Route::middleware('pro.auth')->group(function () {
         Route::get('patients/view/primary-coverage/{patient}', 'PatientController@primaryCoverage')->name('patients.view.primary-coverage');
         Route::get('patients/view/client-pro-access/{patient}', 'PatientController@clientProAccess')->name('patients.view.client-pro-access');
 
+        Route::get('patients/view/client-documents/{patient}', 'PatientController@clientDocuments')->name('patients.view.client-documents');
+
         Route::get('patients/view/primary-coverage-form/{patient}', 'PatientController@primaryCoverageForm')->name('patients.view.primary-coverage-form');
         Route::get('patients/view/primary-coverage-manual-determination-modal/{patient}', 'PatientController@primaryCoverageManualDeterminationModal')->name('patients.view.primary-coverage-manual-determination-modal');
     // });