소스 검색

Merge branch 'dev' into dev-vj

Vijayakrishnan 3 년 전
부모
커밋
9ca333e01a
30개의 변경된 파일503개의 추가작업 그리고 198개의 파일을 삭제
  1. 15 1
      app/Helpers/helpers.php
  2. 6 1
      app/Http/Controllers/PatientController.php
  3. 12 1
      app/Http/Controllers/PracticeManagementController.php
  4. 3 0
      app/Models/ClientPrimaryCoverage.php
  5. 1 1
      app/Models/Pro.php
  6. 14 0
      resources/views/app/dashboard-dna.blade.php
  7. 13 0
      resources/views/app/dashboard-hcp.blade.php
  8. 13 0
      resources/views/app/dashboard-mcp.blade.php
  9. 10 2
      resources/views/app/patient/dashboard.blade.php
  10. 50 0
      resources/views/app/patient/insurance-coverage-history.blade.php
  11. 1 34
      resources/views/app/patient/insurance-coverage.blade.php
  12. 3 2
      resources/views/app/patient/note/partials/flag-note-by-supervisor.blade.php
  13. 7 4
      resources/views/app/patient/notes.blade.php
  14. 4 3
      resources/views/app/patient/partials/coverage-information.blade.php
  15. 91 0
      resources/views/app/patient/prescriptions/pdf/DRUG-old.blade.php
  16. 53 51
      resources/views/app/patient/prescriptions/pdf/DRUG.blade.php
  17. 85 0
      resources/views/app/patient/prescriptions/pdf/pdf-preview-old.blade.php
  18. 35 37
      resources/views/app/patient/prescriptions/pdf/pdf-preview.blade.php
  19. 10 22
      resources/views/app/patient/primary-coverage-manual-determination-view-commercial.blade.php
  20. 7 8
      resources/views/app/patient/primary-coverage-manual-determination-view-medicaid.blade.php
  21. 12 20
      resources/views/app/patient/primary-coverage-manual-determination-view-medicare.blade.php
  22. 21 3
      resources/views/app/patient/primary-coverage-view.blade.php
  23. 2 1
      resources/views/app/patient/primary-coverage.blade.php
  24. 19 0
      resources/views/app/patient/review-requests/partials/physician-submit-client-review-bill.blade.php
  25. 2 3
      resources/views/app/patient/review-requests/partials/physician-update-status.blade.php
  26. 2 1
      resources/views/app/ps/review-requests/list.blade.php
  27. 6 2
      resources/views/layouts/patient-header.blade.php
  28. 1 1
      resources/views/layouts/patient.blade.php
  29. 3 0
      resources/views/layouts/template.blade.php
  30. 2 0
      routes/web.php

+ 15 - 1
app/Helpers/helpers.php

@@ -999,4 +999,18 @@ if(!function_exists('parseRender')) {
             }
         }
     }
-}
+}
+
+if(!function_exists('mask_string')) {
+    function mask_string($string, $mask = "*", $lengthFromLastCharacter = null) {
+        if(!$lengthFromLastCharacter){
+        return str_repeat($mask, strlen($string));            
+        } 
+        $firstCharacters = substr($string, ($lengthFromLastCharacter));
+        $lastCharacters = substr($string, -$lengthFromLastCharacter);
+
+        $maskedFirstCharacters = str_repeat($mask, strlen($firstCharacters));  
+        
+        return $maskedFirstCharacters . $lastCharacters;
+    }
+}

+ 6 - 1
app/Http/Controllers/PatientController.php

@@ -299,7 +299,7 @@ class PatientController extends Controller
 
         $reviewRequests = ClientReviewRequest::where('client_id', $patient->id);
         if($pro->pro_type !== 'ADMIN'){
-            $reviewRequests = $reviewRequests->where('pro_id', $pro->id);
+            $reviewRequests = $reviewRequests->where('pro_id', $pro->id)->where('is_active', true);
         }
         $reviewRequests = $reviewRequests->orderBy('created_at', 'DESC')->paginate(50);
         return view('app.patient.review-requests.list', compact('patient', 'reviewRequests'));
@@ -671,4 +671,9 @@ class PatientController extends Controller
 
         return view('app.patient.client-documents', compact('templates', 'companyPros', 'patient'));
     }
+
+    public function insuranceCoverageHistory(Request $request, Client $patient){
+        $insuranceCoverageHistory = ClientPrimaryCoverage::where('client_id', $patient->id)->orderBy('created_at', 'DESC')->get();
+        return view('app.patient.insurance-coverage-history', compact('patient', 'insuranceCoverageHistory'));
+    }
 }

+ 12 - 1
app/Http/Controllers/PracticeManagementController.php

@@ -49,7 +49,7 @@ use App\Models\SegmentTemplate;
 use App\Models\VisitTemplate;
 use App\Models\VisitTemplateSegmentTemplate;
 use App\Models\VisitTemplateAccess;
-
+use App\Models\ClientReviewRequest;
 class PracticeManagementController extends Controller
 {
 
@@ -4076,5 +4076,16 @@ ORDER BY c.name_last, c.name_first
         return view('app.practice-management.coverages', compact('rows', 'paginator'));
     }
 
+    public function clientReviewRequests(Request $request){
+        $pro = $this->performer->pro;
+
+        $reviewRequests = ClientReviewRequest::where('status', '!=', 'DONE');
+        if($pro->pro_type !== 'ADMIN'){
+            $reviewRequests = $reviewRequests->where('pro_id', $pro->id);
+        }
+        $reviewRequests = $reviewRequests->orderBy('created_at', 'DESC')->paginate(50);
+        return view('app.ps.review-requests.list', compact('reviewRequests'));
+    }
+
    
 }

+ 3 - 0
app/Models/ClientPrimaryCoverage.php

@@ -86,4 +86,7 @@ class ClientPrimaryCoverage extends Model
     public function autoCommercialMoreSpecificPayer(){
         return $this->hasOne(Payer::class, 'id', 'auto_commercial_more_specific_payer_id');
     }
+    public function createdByPro(){
+        return $this->hasOne(Pro::class, 'id', 'created_by_pro_id');
+    }
 }

+ 1 - 1
app/Models/Pro.php

@@ -842,7 +842,7 @@ WHERE
                     ->orWhereRaw('id IN (SELECT mcp_pro_id FROM client_program WHERE client_id = client.id AND is_active = TRUE)')
                     ->orWhereRaw('id IN (SELECT manager_pro_id FROM client_program WHERE client_id = client.id AND is_active = TRUE)')
                     ->orWhereRaw('id IN (SELECT client_id FROM note WHERE ally_pro_id = ? AND is_cancelled = FALSE)', [$proID])
-                    ->orWhereRaw('id IN (SELECT client_id FROM client_review_request WHERE pro_id = ? AND access_start_date <= NOW() AND access_end_date >= NOW())', [$proID]);
+                    ->orWhereRaw('id IN (SELECT client_id FROM client_review_request WHERE pro_id = ? AND access_start_date <= NOW() AND access_end_date >= NOW() AND client_review_request.is_active IS true)', [$proID]);
             })->count();
         return !!$canAccess;
     }

+ 14 - 0
resources/views/app/dashboard-dna.blade.php

@@ -189,6 +189,20 @@
                                 </div>
                             </div>
 
+                            @if($pro->is_considered_for_supervising_physician)
+                            <!-- ENCOUNTERS PENDING MY REVIEW -->
+                            <div class="card mb-4">
+                                <div class="card-header pl-2">
+                                    <strong>
+                                        Charts Pending My Review
+                                    </strong>
+                                </div>
+                                <div class="card-body p-0">
+                                    @include('app.ps.dashboard.client-charts-pending-my-review')
+                                </div>
+                            </div>
+                            @endif
+
                         </div>
                         <div class="col-md-6 mcp-theme-1">
                             <div class="card mb-4">

+ 13 - 0
resources/views/app/dashboard-hcp.blade.php

@@ -311,6 +311,19 @@
                                     @include('app.mcp.dashboard.measurements-pending-stamping')
                                 </div>
                             </div>
+                            @if($pro->is_considered_for_supervising_physician)
+                            <!-- ENCOUNTERS PENDING MY REVIEW -->
+                            <div class="card mb-4">
+                                <div class="card-header pl-2">
+                                    <strong>
+                                        Charts Pending My Review
+                                    </strong>
+                                </div>
+                                <div class="card-body p-0">
+                                    @include('app.ps.dashboard.client-charts-pending-my-review')
+                                </div>
+                            </div>
+                            @endif
                         </div>
                         <div class="col-md-6 mcp-theme-1 pl-1">
                             <div class="card mb-4">

+ 13 - 0
resources/views/app/dashboard-mcp.blade.php

@@ -414,6 +414,19 @@
                                     @include('app.mcp.dashboard.measurements-pending-stamping')
                                 </div>
                             </div>
+                            @if($pro->is_considered_for_supervising_physician)
+                            <!-- ENCOUNTERS PENDING MY REVIEW -->
+                            <div class="card mb-4">
+                                <div class="card-header pl-2">
+                                    <strong>
+                                        Charts Pending My Review
+                                    </strong>
+                                </div>
+                                <div class="card-body p-0">
+                                    @include('app.ps.dashboard.client-charts-pending-my-review')
+                                </div>
+                            </div>
+                            @endif
                         </div>
                         <div class="col-md-6 mcp-theme-1 pl-1">
                             <div class="card mb-4">

+ 10 - 2
resources/views/app/patient/dashboard.blade.php

@@ -60,13 +60,21 @@ foreach ($pro->allShortcuts() as $shortcut) {
                             @if($myCurrentClientReviewRequest->status_memo)
                             <div class="d-flex align-items-start">
                                 <span class="mr-3"><i class="fas fa-calendar"></i> {{ friendly_date_time($myCurrentClientReviewRequest->status_updated_at) }}</span>
-                                <small class="text-muted">{{ $myCurrentClientReviewRequest->status_memo }}</small>
+                                <small class="text-muted">{{ $myCurrentClientReviewRequest->status_memo }}
+                                    @if(!$myCurrentClientReviewRequest->generic_bill_id)
+                                        @include('app.patient.review-requests.partials.physician-update-status', ['record' =>$myCurrentClientReviewRequest, 'updateMemo' => true ])
+                                    @endif
+                                </small>
                             </div>
 
                             @endif
                         </div>
                         <div>
-                            @include('app.patient.review-requests.partials.physician-update-status', ['record' =>$myCurrentClientReviewRequest, 'updateMemo' => true ])
+                            @if($myCurrentClientReviewRequest->generic_bill_id)
+                            <button class="btn btn-sm btn-success"><i class="fas fa-check-circle"></i> Bill Submitted</button>
+                            @else
+                                @include('app.patient.review-requests.partials.physician-submit-client-review-bill', ['record' =>$myCurrentClientReviewRequest ])
+                            @endif
                         </div>
                     </div>
                 </div>

+ 50 - 0
resources/views/app/patient/insurance-coverage-history.blade.php

@@ -0,0 +1,50 @@
+@extends ('layouts.patient')
+
+@section('inner-content')
+
+<style>
+    .eligible-table td {
+        white-space: nowrap;
+    }
+</style>
+
+<div>
+    <div class="d-flex align-items-center">
+        <h4 class="font-weight-bold m-0 font-size-16">Insurance Coverage History</h4>
+    </div>
+
+    <table class="table table-sm table-striped table-bordered mt-3 mb-0">
+        <thead>
+            <tr>
+                <th class="border-0">Created At</th>
+                <th class="border-0">Plan Type</th>
+                <th class="border-0">Creation Strategy</th>
+                <th class="border-0">Is Covered</th>
+                <th class="border-0">Is Manually Determined</th>
+                <th class="border-0"></th>
+            </tr>
+        </thead>
+        <tbody>
+            @foreach($insuranceCoverageHistory as $coverage)
+            <tr>
+                <td>{{ friendly_date($coverage->created_at) }}</td>
+                <td>{{ $coverage->plan_type }}</td>
+                <td>{{ $coverage->creation_strategy }}</td>
+                <td>{{ $coverage->is_covered ? 'YES':'NO' }}</td>
+                <td>{{ $coverage->is_manually_determined ? 'YES':'NO' }}</td>
+                <td>
+                    <div moe relative wide class="ml-2 hide-inside-popup">
+                        <a start show>
+                        <i class="fa fa-info-circle on-hover-opaque"></i>
+                        </a>
+                        <form url="" class="mcp-theme-1" right>
+                        @include('app.patient.partials.display-coverage-details', ['displayCoverage' => $coverage ])
+                        </form>
+                    </div>
+                </td>
+            </tr>
+            @endforeach
+        </tbody>
+    </table>
+</div>
+@endsection

+ 1 - 34
resources/views/app/patient/insurance-coverage.blade.php

@@ -1,40 +1,7 @@
 @extends ('layouts.patient')
 
 @section('inner-content')
-<?php
-function toHumanReadable($name)
-{
-    return ucwords(preg_replace("/[^0-9a-z]/i", " ", $name));
-}
-function parseRender($_data)
-{
-    if ($_data) {
-        $type = gettype($_data);
-        if (is_string($_data) || is_numeric($_data)) {
-            echo $_data;
-        } else {
-            echo "<table class='table table-sm border w-100'>";
-            foreach ($_data as $k => $v) {
-                echo "<tr>";
-                echo "<td><b class='text-secondary'>" . toHumanReadable($k) . "</b></td>";
-                echo "<td>";
-                if (is_object($v)) {
-                    parseRender($v);
-                } elseif (is_array($v)) {
-                    foreach ($v as $k2 => $v2) {
-                        parseRender($v2);
-                    }
-                } else {
-                    echo $v;
-                }
-                echo "</td>";
-                echo "</tr>";
-            }
-            echo "</table>";
-        }
-    }
-}
-?>
+
 <style>
     .eligible-table td {
         white-space: nowrap;

+ 3 - 2
resources/views/app/patient/note/partials/flag-note-by-supervisor.blade.php

@@ -5,7 +5,7 @@
             <span class="text-success mr-2"><i class="fas fa-badge-check"></i> Stamped</span>
             <span class="mr-1">by {{ $note->stampedBySupervisingPhysicianBySession->pro->displayName() }}</span>
             <span class="mr-1">at {{ friendlier_date($note->stamped_by_supervising_physician_at) }} <i class="fas fa-info-circle" title="{{ $note->stamping_note_by_supervising_physician }}"></i></span>
-            @if($note->isProPhysicianSupervisor($pro->id))
+            @if($pro->currentMonthClientReviewRequest($patient->id))
             <div moe class="ml-2">
                 <a href="#" start show class="text-danger"><i class="fas fa-stamp"></i> Undo Stamp</a>
                 <form url="/api/note/undoStampAsSupervisingPhysician">
@@ -42,7 +42,8 @@
                     </div>
                 </div>
             @endif
-            @if($note->isProPhysicianSupervisor($performer->pro->id)) 
+            
+            @if($pro->currentMonthClientReviewRequest($patient->id)) 
                 <div moe class="ml-2">
                     <a href="#" start show class="text-success"><i class="fas fa-stamp"></i> Stamp Note</a>
                     <form url="/api/note/stampAsSupervisingPhysician">

+ 7 - 4
resources/views/app/patient/notes.blade.php

@@ -134,10 +134,10 @@
                     @if($pro->isDefaultNA())
                     <input type="hidden" name="naProUid" value="{{$pro->uid}}">
                     @endif
-                  
+
                     <input type="hidden" class="form-control form-control-sm" placeholder="title"
                            name="title" id="note-create-title" value="{{count($proVisitTemplates) === 1 ? $proVisitTemplates->first()->title : 'Note'}}">
-                    
+
                     <div class="form-group mb-2">
                         <label for="" class="text-secondary text-sm mb-1">Effective Date *</label>
                         <input type="date" name="effectiveDate" class="form-control" value="{{get_current_date($pro->display_timezone)}}">
@@ -264,6 +264,9 @@
                 $records = $patient->notes;
                 break;
         }
+        if($performer->pro->is_considered_for_supervising_physician){
+            $records = $records->where('is_flagged_for_supervising_physician_review', true);
+        }
         ?>
         @foreach ($records as $note)
             <tr class="{{ $note->is_cancelled ? 'cancelled-item always-clickable' : '' }}">
@@ -275,7 +278,7 @@
                         <span class="text-info font-weight-bold">*</span>
                     @endif
                     @if($note->was_cm_setup_performed)
-                        <i class="fas fa-clipboard-check text-success" title="Care plan was setup on this note."></i> 
+                        <i class="fas fa-clipboard-check text-success" title="Care plan was setup on this note."></i>
                     @endif
                     <span class="ml-1">{{ $note->is_cancelled ? '[cancelled]' : '' }}</span>
                 </td>
@@ -307,7 +310,7 @@
                         -
                     @endif
                 </td>
-               
+
                 @if($pro->pro_type == 'ADMIN')
                     <td>{{ $note->is_bill_closed ? 'YES':'NO' }}</td>
                 @endif

+ 4 - 3
resources/views/app/patient/partials/coverage-information.blade.php

@@ -24,10 +24,11 @@
             }
         ?>
         <div class="d-flex align-items-center mb-2">
-            <span class="mr-2">Plan Type: <b>{{ $latestCpc->plan_type }}</b></span>
+            <span class="">Plan Type: <b>{{ $latestCpc->plan_type }}</b></span>
+            <span class="mx-1 text-muted text-sm">|</span>
             @if($cpc->is_manually_determined)
                 <div>
-                    <span class="d-inline bg-warning px-2 rounded mr-1"><i class="fas fa-map-pin"></i> Manually Determined</span> 
+                    <span class="d-inline bg-warning px-2 py-1 rounded mr-1"><i class="fas fa-map-pin"></i> Manually Determined</span> 
                     @if($cpc->is_cancelled)
                     <span class="mr-1 text-danger text-sm">Cancelled</span>
                     @else
@@ -75,7 +76,7 @@
                     </a>
                 @endif
             @endif
-            <span class="mx-2">Created At: {{ friendly_date_time($cpc->created_at) }}</span>
+            <span class="mx-2">Created At: {{ friendly_date_time($cpc->created_at) }} by {{ $cpc->createdByPro->displayName() }}</span>
         </div>
 
         <div class="mt-4 {{ $cpc->is_cancelled ? 'cpc-cancelled':'' }}">

+ 91 - 0
resources/views/app/patient/prescriptions/pdf/DRUG-old.blade.php

@@ -0,0 +1,91 @@
+<section style="padding-top: 0.1rem;">
+
+    <div style="margin: 0 0 1rem; font-weight: bold; "><span style="font-size: 16px">Specimen/Physician Information</span></div>
+
+    <table cellpadding="0" cellspacing="0" border="0" style="width: 100%; font-size: 14px; margin-bottom: 1rem;">
+        <tr>
+            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Order Date:</td>
+            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">{{date('Y-m-d h:i a')}}</td>
+            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">NPI:</td>
+            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">{{$prescription->hcpPro->hcp_npi}}</td>
+        </tr>
+        <tr>
+            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Test Date:</td>
+            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">-</td>
+            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Practice Phone:</td>
+            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">202-935-1033</td>
+        </tr>
+        <tr>
+            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Ordering Physician:</td>
+            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">{{$prescription->hcpPro->displayName()}}</td>
+            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Practice Fax:</td>
+            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">202-935-1033</td>
+        </tr>
+    </table>
+
+    <table cellpadding="0" cellspacing="0" border="0" style="width: 100%">
+        <tr>
+            <td style="width: 70%">
+                <b>Patient Information</b>
+            </td>
+            <td style="">
+
+            </td>
+        </tr>
+    </table>
+
+    <div style="font-size: 14px; margin-top: 0.6rem; line-height: 1.4; opacity: 0.6">
+        <span>{{ $patient->displayName() }}, {{$patient->sex}}, {{$patient->age_in_years}} years old</span><br>
+        <?php
+        $addressParts = [];
+        if (!!$patient->mailing_address_line1) $addressParts[] = $patient->mailing_address_line1;
+        if (!!$patient->mailing_address_line2) $addressParts[] = $patient->mailing_address_line2;
+        $addressParts = implode(", ", $addressParts) . ", ";
+        $addressPart2 = [];
+        if (!!$patient->mailing_address_city) $addressPart2[] = $patient->mailing_address_city;
+        if (!!$patient->mailing_address_state) $addressPart2[] = $patient->mailing_address_state;
+        $addressParts .= implode(", ", $addressPart2);
+        ?>
+        <span>{!! $addressParts !!}</span>
+    </div>
+</section>
+
+<?php $clinical = json_decode($prescription->clinical_detail_json); ?>
+<?php if($clinical && @$clinical->items): ?>
+    <div style="margin: 1.5rem 0 1rem; font-weight: bold; opacity: 0.5"><span style="font-size: 24px">R</span><span style="font-size: 16px">x</span></div>
+    <section style="font-size: 15px;">
+        <?php $count = 0; ?>
+        <?php foreach ($clinical->items as $item): ?>
+        <table cellpadding="0" cellspacing="0" border="0" style="width: 100%; margin-bottom: 5pt">
+            <tr>
+                <td style="width: 20px; vertical-align: top; opacity: 0.75; font-size: 14px">
+                    <span>{{ ++$count }}. </span>
+                </td>
+                <td style="vertical-align: top">
+                    <div>
+                        <p style="margin: 0">
+                            <b>{{ $item->medication }}</b>
+                        </p>
+                        <div style="">
+                            @if(@$item->frequency)
+                                <p style="margin: 0.5rem 0;">Frequency: {{ $item->frequency }}</p>
+                            @endif
+                            @if(@$item->instructions)
+                                <p style="margin: 0.5rem 0;">Instructions: {{ $item->instructions }}</p>
+                            @endif
+                            @if(@$item->dispense)
+                                <p style="margin: 0.5rem 0;">Dispense: {{ $item->dispense }}</p>
+                            @endif
+                            @if(@$item->refills)
+                                <p style="margin: 0.5rem 0;">Refills: {{ $item->refills }}</p>
+                            @endif
+                        </div>
+                    </div>
+                </td>
+            </tr>
+        </table>
+        <?php endforeach; ?>
+    </section>
+<?php endif; ?>
+
+

+ 53 - 51
resources/views/app/patient/prescriptions/pdf/DRUG.blade.php

@@ -1,58 +1,62 @@
-<section style="padding-top: 0.1rem;">
-
-    <div style="margin: 0 0 1rem; font-weight: bold; "><span style="font-size: 16px">Specimen/Physician Information</span></div>
-
-    <table cellpadding="0" cellspacing="0" border="0" style="width: 100%; font-size: 14px; margin-bottom: 1rem;">
-        <tr>
-            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Order Date:</td>
-            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">{{date('Y-m-d h:i a')}}</td>
-            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">NPI:</td>
-            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">{{$prescription->hcpPro->hcp_npi}}</td>
-        </tr>
-        <tr>
-            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Test Date:</td>
-            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">-</td>
-            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Practice Phone:</td>
-            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">202-935-1033</td>
-        </tr>
-        <tr>
-            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Ordering Physician:</td>
-            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">{{$prescription->hcpPro->displayName()}}</td>
-            <td style="padding-bottom: 0.25rem; width: 20%; opacity: 0.75;">Practice Fax:</td>
-            <td style="padding-bottom: 0.25rem; width: 30%; opacity: 0.75; font-weight: bold;">202-935-1033</td>
-        </tr>
-    </table>
-
-    <table cellpadding="0" cellspacing="0" border="0" style="width: 100%">
-        <tr>
-            <td style="width: 70%">
-                <b>Patient Information</b>
-            </td>
-            <td style="">
+<?php
+$addressParts = [];
+if (!!$patient->mailing_address_line1) $addressParts[] = $patient->mailing_address_line1;
+if (!!$patient->mailing_address_line2) $addressParts[] = $patient->mailing_address_line2;
+$addressParts = implode(", ", $addressParts) . ", ";
+$addressPart2 = [];
+if (!!$patient->mailing_address_city) $addressPart2[] = $patient->mailing_address_city;
+if (!!$patient->mailing_address_state) $addressPart2[] = $patient->mailing_address_state;
+$addressPart2 = implode(", ", $addressPart2);
 
-            </td>
-        </tr>
+$coverage = $patient->effectiveClientPrimaryCoverage;
+$payerName = null;
+$memberID = null;
+if($coverage) {
+  if ($coverage->plan_type == 'MEDICARE') {
+      $payerName = 'Medicare';
+      $memberID = $coverage->mcr_number;
+  };
+  if ($coverage->plan_type == 'MEDICAID') {
+      $payerName = $coverage->mcd_payer_name;
+      $memberID = $coverage->mcd_number;
+  };
+  if ($coverage->plan_type == 'COMMERCIAL') {
+      $payerName = $coverage->commercial_payer_name;
+      $memberID = $coverage->commercial_member_identifier;
+  }
+}
+?>
+<section style="padding-top: 0.1rem;">
+    <table style="width:100%;font-size:14px; margin-bottom:1rem;border-collapse: collapse;table-layout:fixed;">
+      <tr>
+        <td style="vertical-align:top;padding: 5px;">
+          <h4 style="line-height:20px;margin:0;text-transform:uppercase;">{{ $patient->displayName() }}</h4>
+          <span style="font-size:13px;line-height:20px;display:block">{{$addressParts ?: ''}}</span>
+          <span style="font-size:13px;line-height:20px;display:block">{{$addressPart2 ?: ''}} {{$patient->mailing_address_zip}}</span>
+          <span style="font-size:13px;line-height:20px;display:block">Phone: {{$patient->cell_number}}</span>
+        </td>
+        <td style="vertical-align:top;padding: 5px;">
+          <h4 style="line-height:20px;margin:0;">PATIENT INFORMATION</h4>
+          <span style="font-size:13px;line-height:20px;display:block">DOB: {{friendlier_date($patient->dob)}}</span>
+          <span style="font-size:13px;line-height:20px;display:block">Age: {{$patient->age_in_years}} years old</span>
+          <span style="font-size:13px;line-height:20px;display:block">Gender: {{$patient->sex}}</span>
+        </td>
+        <td style="vertical-align:top;padding: 5px;">
+          <h4 style="line-height:20px;margin:0;">INSURANCE</h4>
+          <span style="font-size:13px;line-height:20px;display:block">{{$payerName}}</span>
+          <span style="font-size:13px;line-height:20px;display:block">Member ID: {{$memberID}}</span>
+          <span style="font-size:13px;line-height:20px;display:block">Insurance Contact:</span>
+        </td>
+      </tr>
     </table>
-
-    <div style="font-size: 14px; margin-top: 0.6rem; line-height: 1.4; opacity: 0.6">
-        <span>{{ $patient->displayName() }}, {{$patient->sex}}, {{$patient->age_in_years}} years old</span><br>
-        <?php
-        $addressParts = [];
-        if (!!$patient->mailing_address_line1) $addressParts[] = $patient->mailing_address_line1;
-        if (!!$patient->mailing_address_line2) $addressParts[] = $patient->mailing_address_line2;
-        $addressParts = implode(", ", $addressParts) . ", ";
-        $addressPart2 = [];
-        if (!!$patient->mailing_address_city) $addressPart2[] = $patient->mailing_address_city;
-        if (!!$patient->mailing_address_state) $addressPart2[] = $patient->mailing_address_state;
-        $addressParts .= implode(", ", $addressPart2);
-        ?>
-        <span>{!! $addressParts !!}</span>
-    </div>
 </section>
 
+<hr style="margin: 0.5rem 0; border-top-width: 0; border-bottom-width: 1px; border-color: #bbb">
+
 <?php $clinical = json_decode($prescription->clinical_detail_json); ?>
 <?php if($clinical && @$clinical->items): ?>
-    <div style="margin: 1.5rem 0 1rem; font-weight: bold; opacity: 0.5"><span style="font-size: 24px">R</span><span style="font-size: 16px">x</span></div>
+    <div style="margin: 1rem 0; font-weight: bold;"><span style="font-size: 28px">R</span><span style="font-size: 20px">x</span></div>
+    <div style="margin: 1rem 0; font-size:14px;">Date: {{friendlier_date(date('Y-m-d'))}}</div>
     <section style="font-size: 15px;">
         <?php $count = 0; ?>
         <?php foreach ($clinical->items as $item): ?>
@@ -87,5 +91,3 @@
         <?php endforeach; ?>
     </section>
 <?php endif; ?>
-
-

+ 85 - 0
resources/views/app/patient/prescriptions/pdf/pdf-preview-old.blade.php

@@ -0,0 +1,85 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport"
+          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
+    <meta http-equiv="X-UA-Compatible" content="ie=edge">
+    <?php
+    $note = null;
+    $hcpCompany = null;
+    $hcpCompanyProPayer = null;
+    $hcpCompanyLocation = null;
+    if(@$prescription->note) {
+        $note = $prescription->note;
+        $hcpCompany = $note->hcpCompany;
+        $hcpCompanyProPayer = $note->hcpCompanyProPayer;
+        $hcpCompanyLocation = $note->hcpCompanyLocation;
+    }
+    ?>
+    <title>{{$hcpCompany ? $hcpCompany->name : 'Prescription'}}</title>
+</head>
+<body>
+<div style="margin: 0; padding: 1rem; font-family: sans-serif">
+    <header style="padding: 0; border: 0; margin: 0 0 1rem;">
+        <div style="text-align: center">
+            <h3 style="margin-bottom: 1rem;">{{$hcpCompany ? $hcpCompany->name : 'Prescription'}}</h3>
+        </div>
+        <div style="margin-top: 1.5rem; font-size: 19px">{{ $prescription->hcpPro->name_prefix }} {{ $prescription->hcpPro->name_first }} {{ $prescription->hcpPro->name_last }} <span style="font-size: 13px; opacity: 0.75">{{ $prescription->hcpPro->name_suffix }}</span></div>
+        <div style="display: block;">
+            <table cellpadding="0" cellspacing="0" border="0" style="width: 100%">
+                <tr>
+                    <td style="width: 70%">
+                        @if($hcpCompanyLocation)
+                            <div style="font-size: 14px; margin-top: 0.6rem; line-height: 1.4; opacity: 0.6">
+                                {{$hcpCompanyLocation->line1}} {{$hcpCompanyLocation->line2}}<br>
+                                {{$hcpCompanyLocation->city}} {{$hcpCompanyLocation->state}} {{$hcpCompanyLocation->zip}}
+                            </div>
+                        @endif
+                    </td>
+                    <td style="">
+                        <div style="text-align: right; font-size: 14px; margin-top: 0.6rem; line-height: 1.4; opacity: 0.6">PH: 202-935-1033<br>FAX: 202-935-1033</div>
+                    </td>
+                </tr>
+            </table>
+        </div>
+    </header>
+    <hr style="border-top: 2px solid #5ca4e8; border-bottom: 0; margin: 1rem 0;">
+
+    <?php
+    use App\Models\Erx;
+    /** @var Erx $prescription */
+    $patient = $prescription->patient;
+    ?>
+
+    @include('app.patient.prescriptions.pdf.' . $prescription->erx_category)
+
+    <?php if($prescription->logistics_detail_json): ?>
+        <?php $logistics = json_decode($prescription->logistics_detail_json); ?>
+        <hr style="margin: 0.5rem 0; border-top-width: 0; border-bottom-width: 1px; border-color: #bbb">
+        <p><b>Logistics Information</b>:</p>
+        <div style="font-size: 14px; opacity: 0.75; ">
+            <p style="margin: 0.5rem 0;"><b>{{ $logistics->facilityName }}</b></p>
+            <p style="margin: 0.5rem 0;">{{$logistics->facilityCity}} {{$logistics->facilityState}} {{$logistics->facilityZip}}</p>
+            <p style="margin: 0.5rem 0;">Phone: {{$logistics->facilityPhone}}</p>
+            <p style="margin: 0.5rem 0;">Fax: {{$logistics->facilityFax}}</p>
+        </div>
+    <?php endif; ?>
+
+    <hr style="margin: 1rem 0 0.5rem; border-top-width: 0; border-bottom-width: 1px; border-color: #bbb">
+    <table cellpadding="0" cellspacing="0" border="0" style="width: 100%">
+        <tr>
+            <td style="vertical-align: middle; white-space: nowrap; width: 100px;">
+                Authorizing Signature: Digital Signature Capture at <?= friendlier_date_time($prescription->created_at) ?>
+            </td>
+            <td style="vertical-align: middle;">
+                @if($prescription->hcpPro->signature_base_64)
+                    <img src="{{$prescription->hcpPro->signature_base_64}}" style="max-width: 180px;">
+                @endif
+            </td>
+        </tr>
+    </table>
+</div>
+</body>
+</html>
+

+ 35 - 37
resources/views/app/patient/prescriptions/pdf/pdf-preview.blade.php

@@ -16,48 +16,43 @@
         $hcpCompanyProPayer = $note->hcpCompanyProPayer;
         $hcpCompanyLocation = $note->hcpCompanyLocation;
     }
+    $companyName = $hcpCompany ? $hcpCompany->name : 'Scholar Medical Group MD LLC';
+    $addressLine1 = $hcpCompanyLocation ? $hcpCompanyLocation->line1 : '133 Rollins Ave';
+    $addressLine2 = $hcpCompanyLocation ? $hcpCompanyLocation->line2 : 'Ste 3';
+    $city = $hcpCompanyLocation ? $hcpCompanyLocation->city : 'Rockville';
+    $state = $hcpCompanyLocation ? $hcpCompanyLocation->state : 'MD';
+    $zip = $hcpCompanyLocation ? $hcpCompanyLocation->zip : '20852';
     ?>
-    <title>{{$hcpCompany ? $hcpCompany->name : 'Prescription'}}</title>
+    <?php
+    use App\Models\Erx;
+    /** @var Erx $prescription */
+    $patient = $prescription->patient;
+    ?>
+    <title>{{$companyName}}</title>
 </head>
 <body>
 <div style="margin: 0; padding: 1rem; font-family: sans-serif">
-    <header style="padding: 0; border: 0; margin: 0 0 1rem;">
+    <header style="padding: 0; border: 0; margin: 0">
         <div style="text-align: center">
-            <h3 style="margin-bottom: 1rem;">{{$hcpCompany ? $hcpCompany->name : 'Prescription'}}</h3>
+            <h3 style="margin-bottom:1px;line-height:5px;">{{ $prescription->hcpPro->displayName() }}</h3>
+            <h4 style="margin-bottom:1px;line-height:5px;">{{$companyName}}</h4>
+            <h5 style="margin-bottom:1px;line-height:3px;">{{$addressLine1}}, {{$addressLine2}}</h5>
+            <h5 style="margin-bottom: 2rem;line-height:3px;">{{$city}}, {{$state}} {{$zip}}</h5>
         </div>
-        <div style="margin-top: 1.5rem; font-size: 19px">{{ $prescription->hcpPro->name_prefix }} {{ $prescription->hcpPro->name_first }} {{ $prescription->hcpPro->name_last }} <span style="font-size: 13px; opacity: 0.75">{{ $prescription->hcpPro->name_suffix }}</span></div>
-        <div style="display: block;">
-            <table cellpadding="0" cellspacing="0" border="0" style="width: 100%">
-                <tr>
-                    <td style="width: 70%">
-                        @if($hcpCompanyLocation)
-                            <div style="font-size: 14px; margin-top: 0.6rem; line-height: 1.4; opacity: 0.6">
-                                {{$hcpCompanyLocation->line1}} {{$hcpCompanyLocation->line2}}<br>
-                                {{$hcpCompanyLocation->city}} {{$hcpCompanyLocation->state}} {{$hcpCompanyLocation->zip}}
-                            </div>
-                        @endif
-                    </td>
-                    <td style="">
-                        <div style="text-align: right; font-size: 14px; margin-top: 0.6rem; line-height: 1.4; opacity: 0.6">PH: 202-935-1033<br>FAX: 202-935-1033</div>
-                    </td>
-                </tr>
-            </table>
+        <div style="text-align:center;">
+          <span style="width:33.33%; display:inline-block;">Phone: (800) 707-9705</span>
+          <span style="width:33.33%; display:inline-block;">Fax: (800) 878-1414</span>
+          <span style="width:33.33%; display:inline-block;">NPI: {{$prescription->hcpPro->hcp_npi}}</span>
         </div>
     </header>
-    <hr style="border-top: 2px solid #5ca4e8; border-bottom: 0; margin: 1rem 0;">
 
-    <?php
-    use App\Models\Erx;
-    /** @var Erx $prescription */
-    $patient = $prescription->patient;
-    ?>
+    <hr style="border-top: 2px solid #5ca4e8; border-bottom: 0; margin-top:0; margin-bottom: .5rem;">
 
     @include('app.patient.prescriptions.pdf.' . $prescription->erx_category)
 
     <?php if($prescription->logistics_detail_json): ?>
         <?php $logistics = json_decode($prescription->logistics_detail_json); ?>
         <hr style="margin: 0.5rem 0; border-top-width: 0; border-bottom-width: 1px; border-color: #bbb">
-        <p><b>Logistics Information</b>:</p>
         <div style="font-size: 14px; opacity: 0.75; ">
             <p style="margin: 0.5rem 0;"><b>{{ $logistics->facilityName }}</b></p>
             <p style="margin: 0.5rem 0;">{{$logistics->facilityCity}} {{$logistics->facilityState}} {{$logistics->facilityZip}}</p>
@@ -66,20 +61,23 @@
         </div>
     <?php endif; ?>
 
-    <hr style="margin: 1rem 0 0.5rem; border-top-width: 0; border-bottom-width: 1px; border-color: #bbb">
-    <table cellpadding="0" cellspacing="0" border="0" style="width: 100%">
+    <table cellpadding="0" cellspacing="0" border="0" style="width: 100%;padding-left:20%;margin-top:1rem;">
         <tr>
-            <td style="vertical-align: middle; white-space: nowrap; width: 100px;">
-                Authorizing Signature: Digital Signature Capture at <?= friendlier_date_time($prescription->created_at) ?>
-            </td>
-            <td style="vertical-align: middle;">
-                @if($prescription->hcpPro->signature_base_64)
-                    <img src="{{$prescription->hcpPro->signature_base_64}}" style="max-width: 180px;">
-                @endif
+          <td style="vertical-align: bottom;padding-right:.2rem;">Signature:</td>
+          <td style="vertical-align: middle;border-bottom:1px solid #aaa;width:100%;padding-bottom:.2rem;padding-left:.5rem;">
+              @if($prescription->hcpPro->signature_base_64)
+                  <img src="{{$prescription->hcpPro->signature_base_64}}" style="max-width: 180px;">
+              @endif
+          </td>
+        </tr>
+        <tr>
+          <td></td>
+            <td style="vertical-align: middle; white-space: nowrap;padding-top:.5rem;padding-left:.5rem;">
+                Digital Signature Capture at <?= friendlier_date_time($prescription->created_at) ?>
             </td>
         </tr>
     </table>
 </div>
+<div style="font-family: sans-serif;position:absolute; bottom:0;margin:0;width:100%;text-align:center;padding-bottom:10px;">EndoChart<sup>®</sup></div>
 </body>
 </html>
-

+ 10 - 22
resources/views/app/patient/primary-coverage-manual-determination-view-commercial.blade.php

@@ -4,98 +4,86 @@
 		<thead>
 			<tr>
 				<th class="border-bottom-0"></th>
-				<th class="border-bottom-0">Automatic</th>
 				<th class="border-bottom-0">Override</th>
+				<th class="border-bottom-0">Automatic</th>
 			</tr>
 		</thead>
 		<tbody>
 			<tr>
 				<td>Record Found?</td>
-				<td>{{$cpc->manual_commercial_is_matched ? 'YES' : 'NO'}}</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Manual Determination Category</p>
-						<span>{{$cpc->manual_determination_category ?? '-'}}</span>
+						<span>{{$cpc->manual_determination_category ?? '-'}} <small class="text-muted">(Manual Determination Category)</small></span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_commercial_is_matched ? 'YES' : 'NO'}}</td>				
 			</tr>
 
 			<tr>
 				<td>Part B Active?</td>
-				<td>{{$cpc->manual_medicare_is_partbactive}}</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Is Part B Active?</p>
 						<span>{{$cpc->manual_medicare_is_partbactive ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_partbactive}}</td>
 			</tr>
 			<tr>
 				<td>Part B Primary?</td>
-				<td>{{$cpc->manual_medicare_is_partbprimary}}</td>
 				<td>
-					<div class="form-group mb-1">
-						<p class="mb-1 text-secondary">Manual Determination Category</p>
-						<span>{{$cpc->manual_determination_category  ?? '-'}}</span>
-					</div>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Is Part B Primary?</p>
 						<span>{{$cpc->manual_medicare_is_partbprimary ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_partbprimary}}</td>
 			</tr>
 			<tr>
 				<td>Part C Active?</td>
-				<td>{{$cpc->manual_medicare_is_partcactive}}</td>
 				<td>
 					<div class="form-group mb-0">
 						<div class="alert alert-danger" v-if="(cpc.manual_medicare_is_partcactive == 'YES' && cpc.manual_medicare_is_partbprimary == 'YES')">
 							Oops! Patient Medicare Part B Primary is set to <b>Yes</b>.
 						</div>
-						<p class="mb-1 text-secondary">Is Part C Active?</p>
 						<span>{{$cpc->manual_medicare_is_partcactive ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_partcactive}}</td>
 			</tr>
 			<tr>
 				<td>Inpatient?</td>
-				<td>{{$cpc->manual_medicare_is_inpatient}}</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Inpatient?</p>
 						<span>{{$cpc->manual_medicare_is_inpatient ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_inpatient}}</td>
 			</tr>
 			<tr>
 				<td>Hospice?</td>
-				<td>UNKNOWN</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Hospice?</p>
 						<span>UNKNOWN</span>
 					</div>
 				</td>
+				<td>UNKNOWN</td>
 			</tr>
 			<tr>
 				<td>Home Health?</td>
-				<td>UNKNOWN</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Home Health?</p>
 						<span>UNKNOWN</span>
 					</div>
 				</td>
+				<td>UNKNOWN</td>
 			</tr>
 			<tr>
 				<td>MSP?</td>
-				<td>{{$cpc->manual_medicare_is_msp}}</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">MSP?</p>
 						<span>{{$cpc->manual_medicare_is_msp ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_msp}}</td>
 			</tr>
 			<tr>
 				<td>Memo</td>

+ 7 - 8
resources/views/app/patient/primary-coverage-manual-determination-view-medicaid.blade.php

@@ -4,30 +4,29 @@
 		<thead>
 			<tr>
 				<th class="border-bottom-0"></th>
-				<th class="border-bottom-0">Automatic</th>
 				<th class="border-bottom-0">Override</th>
+				<th class="border-bottom-0">Automatic</th>				
 			</tr>
 		</thead>
 		<tbody>
 			<tr>
-				<td>Record Found?</td>
-				<td>{{$cpc->manual_medicaid_is_matched ? 'YES' : 'NO'}}</td>
+				<td>Record Found?</td>				
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Is Matched?</p>
-						<span>{{$cpc->manual_medicaid_is_matched ?? '-'}}</span>
+						<p class="mb-1 text-secondary">Is Matched? <span class="text-dark">{{$cpc->manual_medicaid_is_matched ?? '-'}}</span></p>
+						
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicaid_is_matched ? 'YES' : 'NO'}}</td>
 			</tr>
 			<tr>
 				<td>Coverage Status?</td>
-				<td>UNKNOWN</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Manual Determination Category</p>
-						<span>{{$cpc->manual_determination_category ?? '-'}}</span>
+						<span>{{$cpc->manual_determination_category ?? '-'}} <small class="text-muted">(Manual Determination Category)</small></span>
 					</div>
 				</td>
+				<td>UNKNOWN</td>
 			</tr>
 			<tr>
 				<td>Memo</td>

+ 12 - 20
resources/views/app/patient/primary-coverage-manual-determination-view-medicare.blade.php

@@ -4,8 +4,8 @@
 		<thead>
 			<tr>
 				<th class="border-bottom-0"></th>
-				<th class="border-bottom-0">Automatic</th>
 				<th class="border-bottom-0">Override</th>
+				<th class="border-bottom-0">Automatic</th>
 			</tr>
 		</thead>
 		<tbody>
@@ -15,93 +15,85 @@
 			</tr>
 			<tr>
 				<td>Record Found?</td>
-				<td>{{$cpc->manual_medicare_is_matched ? 'YES' : 'NO'}}</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Is Matched?</p>
-						<span>{{$cpc->manual_medicare_is_matched ?? '-'}}</span>
+						<p class="mb-1 text-secondary">Is Matched? <span class="text-dark">{{$cpc->manual_medicare_is_matched ?? '-'}}</span></p>
+						
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_matched ? 'YES' : 'NO'}}</td>
 			</tr>
 
 
 			<tr>
 				<td>Part B Active?</td>
-				<td>{{$cpc->manual_medicare_is_partbactive}}</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Is Part B Active?</p>
 						<span>{{$cpc->manual_medicare_is_partbactive ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_partbactive}}</td>
 			</tr>
 			<tr>
 				<td>Part B Primary?</td>
-				<td>{{$cpc->manual_medicare_is_partbprimary}}</td>
 				<td>
 					<div class="form-group mb-1">
-						<p class="mb-1 text-secondary">Manual Determination Category</p>
-						<span>{{$cpc->manual_determination_category  ?? '-'}}</span>
+						<span>{{$cpc->manual_determination_category  ?? '-'}} <small class="text-muted">(Manual Determination Category)</small></span>
 					</div>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Is Part B Primary?</p>
 						<span>{{$cpc->manual_medicare_is_partbprimary ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_partbprimary}}</td>
 			</tr>
 			<tr>
 				<td>Part C Active?</td>
-				<td>{{$cpc->manual_medicare_is_partcactive}}</td>
 				<td>
 					<div class="form-group mb-0">
 						<div class="alert alert-danger" v-if="cpc.auto_medicare_is_partcactive == 'YES' && cpc.auto_medicare_is_partbprimary == 'YES'">
 							Oops! Patient Medicare Part B Primary is set to <b>Yes</b>.
 						</div>
-						<p class="mb-1 text-secondary">Is Part C Active?</p>
 						<span>{{$cpc->manual_medicare_is_partcactive ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_partcactive}}</td>
 			</tr>
 			<tr>
 				<td>Inpatient?</td>
-				<td>{{$cpc->manual_medicare_is_inpatient}}</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Inpatient?</p>
 						<span>{{$cpc->manual_medicare_is_inpatient ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_inpatient}}</td>
 			</tr>
 			<tr>
 				<td>Hospice?</td>
-				<td>UNKNOWN</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Hospice?</p>
 						<span>{{ $cpc->is_hospice }}</span>
 					</div>
 				</td>
+				<td>UNKNOWN</td>
 			</tr>
 
 			<tr>
 				<td>Home Health?</td>
-				<td>UNKNOWN</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">Home Health?</p>
 						<span>UNKNOWN</span>
 					</div>
 				</td>
+				<td>UNKNOWN</td>
 			</tr>
 			<tr>
 				<td>MSP?</td>
-				<td>{{$cpc->manual_medicare_is_msp}}</td>
 				<td>
 					<div class="form-group mb-0">
-						<p class="mb-1 text-secondary">MSP?</p>
 						<span>{{$cpc->manual_medicare_is_msp ?? '-'}}</span>
 					</div>
 				</td>
+				<td>{{$cpc->manual_medicare_is_msp}}</td>
 			</tr>
 			<tr>
 				<td>Memo</td>

+ 21 - 3
resources/views/app/patient/primary-coverage-view.blade.php

@@ -48,7 +48,13 @@
 							</tr>
 							<tr v-if="cpc.plan_type == 'COMMERCIAL'">
 								<td>Patient Member Identifier</td>
-								<td>{{$cpc->commercial_member_identifier ?? '-'}}</td>
+								<td>
+									@if($performer->pro->pro_type === 'ADMIN')
+										{{$cpc->commercial_member_identifier ?? '-'}}
+									@else
+										{{$cpc->commercial_member_identifier ? mask_string($cpc->commercial_member_identifier, '*', 4) : '-'}}
+									@endif
+								</td>
 							</tr>
 							<tr v-if="cpc.plan_type == 'COMMERCIAL'">
 								<td>Patient Group Name</td>
@@ -105,11 +111,23 @@
 							</tr>
 							<tr v-if="cpc.plan_type == 'MEDICAID' || (cpc.plan_type == 'COMMERCIAL' && cpc.mcd_number)">
 								<td>Medicaid Number</td>
-								<td class="text-uppercase">{{$cpc->mcd_number ?? '-'}}</td>
+								<td class="text-uppercase">
+									@if($performer->pro->pro_type === 'ADMIN')
+										{{$cpc->mcd_number ?? '-'}}
+									@else
+										{{$cpc->mcd_number ? mask_string($cpc->mcd_number, '*', 4) : '-'}}
+									@endif
+								</td>
 							</tr>
 							<tr v-if="cpc.plan_type == 'MEDICARE' || (cpc.plan_type == 'COMMERCIAL' && cpc.mcr_number)">
 								<td>Medicare Number</td>
-								<td class="text-uppercase">{{$cpc->mcr_number ?? '-'}}</td>
+								<td class="text-uppercase">
+									@if($performer->pro->pro_type === 'ADMIN')
+										{{$cpc->mcr_number ?? '-'}}
+									@else
+										{{$cpc->mcr_number ? mask_string($cpc->mcr_number, '*', 4) : '-'}}
+									@endif
+								</td>
 							</tr>
 							
 							<tr>

+ 2 - 1
resources/views/app/patient/primary-coverage.blade.php

@@ -2,9 +2,10 @@
 
 @section('inner-content')
 <div class="d-flex align-items-baseline">
-    <h4 class="font-weight-bold m-0 font-size-16 text-nowrap">Client Latest Coverage</h4>
+    <h4 class="font-weight-bold m-0 font-size-16 text-nowrap">Primary Coverage</h4>
     <div class="ml-4 d-inline-flex justify-content-center">
         <a native target="_blank"
+            class="btn btn-sm btn-primary text-white"
            open-in-stag-popup
            mc-initer="new-coverage-form-{{$patient->uid}}"
            title="New Primary Insurance Card"

+ 19 - 0
resources/views/app/patient/review-requests/partials/physician-submit-client-review-bill.blade.php

@@ -0,0 +1,19 @@
+<div moe relative>
+    <a start show class="btn btn-primary btn-sm text-white">Submit Chart Review Bill</a>
+    <form url="/api/clientReviewRequest/submitGenericBill" class="mcp-theme-1" right>
+        <input type="hidden" name="uid" value="{{ $record->uid }}">
+        <div class="mb-2">
+            <label class="mb-1">Amount</label>
+            <input type="number" name="amount" class="form-control" value="30.00" />
+        </div>
+        <div class="mb-2">
+            <label class="mb-1">Effective Date</label>
+            <input type="date" name="effectiveDate" class="form-control" value="{{ date('Y-m-d') }}" />
+        </div>
+
+        <div>
+            <button submit class="btn btn-sm btn-primary mr-1">Submit</button>
+            <button cancel class="btn btn-sm btn-default border">Cancel</button>
+        </div>
+    </form>
+</div>

+ 2 - 3
resources/views/app/patient/review-requests/partials/physician-update-status.blade.php

@@ -1,9 +1,8 @@
 <div moe relative>
-    <a start show class="btn btn-primary btn-sm text-white">
         @if(@$updateMemo)
-            Update Memo
+            <a start show class="text-primary ml-2"><i class="fas fa-edit"></i></a>
         @else
-            Mark as Reviewed
+            <a start show class="btn btn-primary btn-sm text-white">Mark as Reviewed</a>
         @endif
     </a>
     <form url="/api/clientReviewRequest/update-status" class="mcp-theme-1" right>

+ 2 - 1
resources/views/app/ps/review-requests/list.blade.php

@@ -2,7 +2,7 @@
 @section('content')
 <div class="p-3 mcp-theme-1">
     <div class="">
-        @if(!$hideTitle)
+        @if(!@$hideTitle)
         <div class="d-flex align-items-center pb-2">
             <h4 class="font-weight-bold mb-0 mr-3">Review Requests</h4>
         </div>
@@ -31,6 +31,7 @@
 						{{$rr->client->chart_number}}
 					</a>
                     </td>
+                    <td>
                     <a native target="_blank" href="{{route('patients.view.dashboard', $rr->client)}}">
 						{{$rr->client->displayName()}}
 					</a>

+ 6 - 2
resources/views/layouts/patient-header.blade.php

@@ -332,17 +332,21 @@ $addressParts .= implode(", ", $addressPart2);
           </div>
         </div>
         @endif
+        <?php $_cpc = $patient->getPrimaryCoverage(); ?>
         <div class="d-flex">
           <div>DOB: {{friendly_date($patient->dob, false,null, true)}} </div>
-          @if($patient->getPrimaryCoverage() && $patient->getPrimaryCoverageStatus() === 'YES')
+          @if($_cpc && $patient->getPrimaryCoverageStatus() === 'YES')
             <div class="text-nowrap screen-only ml-2 pl-2 border-left">
-              {{$patient->getPrimaryCoverage()->insuranceDisplayPayerName()}}
+              {{$_cpc->insuranceDisplayPayerName()}}
               <span class="on-hover-show d-inline-block on-hover-opaque">
                 <i class="fa fa-check-circle text-success"></i>
                 <div class="on-hover-content py-2 pl-3 text-nowrap">
                   Covered
                 </div>
               </span> 
+                @if($_cpc->is_manually_determined)
+                  <i class="ml-1 fas fa-code-branch text-info" title="Manually determined at {{ friendly_date($_cpc->created_at) }}"></i>
+                @endif
             </div>
             @if($performer->pro->pro_type == 'ADMIN')
               @if(@$patient->mpb_remaining)

+ 1 - 1
resources/views/layouts/patient.blade.php

@@ -240,7 +240,7 @@ $isOldClient = (date_diff(date_create(config('app.point_impl_date')), date_creat
 						<a class="nav-link {{ strpos($routeName, 'patients.view.eligible-refreshes') === 0 ? 'active' : '' }}" href="{{ route('patients.view.eligible-refreshes', $patient) }}">Eligible Refreshes</a>
 					</li>
 					<li class="nav-item">
-						<a class="nav-link {{ strpos($routeName, 'patients.view.insurance-coverage') === 0 ? 'active' : '' }}" href="{{ route('patients.view.insurance-coverage', $patient) }}">Insurance Coverage</a>
+						<a class="nav-link {{ strpos($routeName, 'patients.view.insurance-coverage') === 0 ? 'active' : '' }}" href="{{ route('patients.view.insurance-coverage-history', $patient) }}">Insurance Coverage History</a>
 					</li>
 
 					<li class="nav-item">

+ 3 - 0
resources/views/layouts/template.blade.php

@@ -183,6 +183,9 @@
                             <a class="dropdown-item" href="{{ route('dna.myBills') }}">My Bills</a>
                             <a class="dropdown-item" href="{{ route('dna.myClinicalTeams') }}">My Clinical Teams</a>
                         @endif
+                        @if($pro->pro_type === 'ADMIN' || $pro->is_considered_for_supervising_physician)
+                        <a class="dropdown-item" href="{{ route('practice-management.client-review-requests') }}">Client Review Requests</a>
+                        @endif
                     </div>
                 </li>
 

+ 2 - 0
routes/web.php

@@ -256,6 +256,7 @@ Route::middleware('pro.auth')->group(function () {
         Route::get('notes-pending-physician-supervisor-stamping', 'PracticeManagementController@notesPendingPhysicianSupervisorStamping')->name('notes-pending-physician-supervisor-stamping');
 
         Route::get('rpm-matrix', 'PracticeManagementController@rpmMatrix')->name('rpmMatrix');
+        Route::get('client-review-requests', 'PracticeManagementController@clientReviewRequests')->name('client-review-requests');
 
         // rpm work matrix - latest patient with unstamped measurements
         Route::get('rpm-work-matrix', 'PracticeManagementController@rpm_work_matrix')->name('rpm_work_matrix');
@@ -549,6 +550,7 @@ Route::middleware('pro.auth')->group(function () {
             Route::get('documents', 'PatientController@documents')->name('documents');
             Route::get('incoming-reports/{currentReport?}', 'PatientController@incomingReports')->name('incoming-reports');
             Route::get('education', 'PatientController@education')->name('education');
+            Route::get('insurance-coverage-history', 'PatientController@insuranceCoverageHistory')->name('insurance-coverage-history');
             Route::get('messaging', 'PatientController@messaging')->name('messaging');
             Route::get('duplicate', 'PatientController@duplicate')->name('duplicate');
             Route::get('care-months', 'PatientController@careMonths')->name('care-months');