Browse Source

Merge branch 'master' into dev-vj-psych-visit

Vijayakrishnan 3 years ago
parent
commit
ca9f1a8c3a
31 changed files with 554 additions and 270 deletions
  1. 21 2
      app/Http/Controllers/AdminController.php
  2. 5 0
      app/Http/Controllers/DnaController.php
  3. 5 0
      app/Http/Controllers/McpController.php
  4. 39 6
      app/Http/Controllers/PracticeManagementController.php
  5. 19 0
      app/Models/CareMonth.php
  6. 6 6
      resources/views/app/admin/patients-table-extended.blade.php
  7. 5 2
      resources/views/app/admin/patients_missing_default_settings.blade.php
  8. 3 0
      resources/views/app/admin/patients_missing_defsult_settings_filters.blade.php
  9. 5 5
      resources/views/app/dna/patients-table.blade.php
  10. 10 10
      resources/views/app/mcp/patients-table.blade.php
  11. 1 1
      resources/views/app/patient/care-month/dashboard.blade.php
  12. 3 3
      resources/views/app/patient/coverage_column_renderer.blade.php
  13. 7 1
      resources/views/app/patient/note/_create-bill-only.blade.php
  14. 3 1
      resources/views/app/patient/note/_create-bill.blade.php
  15. 2 2
      resources/views/app/patient/note/_create-claim.blade.php
  16. 6 0
      resources/views/app/patient/note/dashboard.blade.php
  17. 183 182
      resources/views/app/patient/note/flag-bill.blade.php
  18. 4 0
      resources/views/app/patient/note/rm-setup.blade.php
  19. 1 1
      resources/views/app/patient/partials/caremonth-summary.blade.php
  20. 56 41
      resources/views/app/patient/partials/client_bp_weight_phone_number_status.blade.php
  21. 3 0
      resources/views/app/patient/partials/rm-setup.blade.php
  22. 0 1
      resources/views/app/patient/partials/update-mcp-onboarding-visit-info.blade.php
  23. 1 1
      resources/views/app/patient/primary-coverage-manual-determination-medicaid-modal.blade.php
  24. 1 1
      resources/views/app/patient/primary-coverage-manual-determination-medicare-modal.blade.php
  25. 0 2
      resources/views/app/patient/rm-setup.blade.php
  26. 2 0
      resources/views/app/practice-management/all-notes.blade.php
  27. 134 0
      resources/views/app/practice-management/client-pro-changes-filters.blade.php
  28. 3 0
      resources/views/app/practice-management/client-pro-changes.blade.php
  29. 13 2
      resources/views/app/practice-management/notes_filters.blade.php
  30. 11 0
      resources/views/app/practice-management/remote-monitoring-admin-row-markup.blade.php
  31. 2 0
      resources/views/app/practice-management/remote-monitoring-admin.blade.php

+ 21 - 2
app/Http/Controllers/AdminController.php

@@ -175,6 +175,12 @@ class AdminController extends Controller
             }
         }
 
+        $sortBy = $request->input('sort_by') ?: 'name_first';
+        $sortDir = $request->input('sort_dir') ?: 'ASC';
+
+        $patients = $patients->orderByRaw("$sortBy $sortDir NULLS LAST");
+
+
         $patients = $patients->orderBy('created_at', 'DESC')->paginate(25);
         return view('app.admin.patients', compact('patients', 'filters'));
     }
@@ -508,14 +514,27 @@ class AdminController extends Controller
             }
 
         }
-
+        
         $insurance = $request->get('insurance');
         if($insurance){
             if($insurance === 'MEDICARE'){
                 $patients = $patients->whereHas('latestClientPrimaryCoverage', function($cpcQuery){
                     return $cpcQuery->where('is_partbprimary', '=', 'YES');
                 });
-            }else{
+            }elseif($insurance === 'MEDICARE_PENDING'){
+                $patients = $patients->whereHas('latestClientPrimaryCoverage', function($cpcQuery){
+                    return $cpcQuery->where('plan_type', 'MEDICARE')->where('is_covered', '!=', 'YES');
+                });
+            }elseif($insurance === 'NOT_COVERED'){
+                $patients = $patients->whereHas('latestClientPrimaryCoverage', function($cpcQuery){
+                    return $cpcQuery->where('is_covered', '!=', 'YES');
+                });
+            }elseif($insurance === 'PENDING'){
+                $patients = $patients->whereHas('latestClientPrimaryCoverage', function($cpcQuery){
+                    return $cpcQuery->where('is_covered', '=', 'UNKNOWN');
+                });
+            }
+            else{
                 $patients = $patients->whereDoesntHave('latestClientPrimaryCoverage', function($cpcQuery){
                     return $cpcQuery->where('is_partbprimary', '=', 'YES');
                 });

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

@@ -79,6 +79,11 @@ class DnaController extends Controller
                 $patients->where('is_active', '<>', true);
                 break;
         }
+        $sortBy = $request->input('sort_by') ?: 'name_first';
+        $sortDir = $request->input('sort_dir') ?: 'ASC';
+
+        $patients = $patients->orderByRaw("$sortBy $sortDir NULLS LAST");
+        
         $patients = $patients->orderBy('created_at', 'DESC')->paginate(20);
         return view('app.dna.patients', compact('patients', 'filters'));
     }

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

@@ -130,6 +130,11 @@ class McpController extends Controller
             $patients = $patients->where('chart_number', 'ILIKE' , '%'.$request->input('chart_number').'%');
         }
 
+        $sortBy = $request->input('sort_by') ?: 'name_first';
+        $sortDir = $request->input('sort_dir') ?: 'ASC';
+
+        $patients = $patients->orderByRaw("$sortBy $sortDir NULLS LAST");
+
         $patients = $patients->orderBy('created_at', 'DESC')->paginate(50);
         return view('app.mcp.patients', compact('patients', 'filters'));
     }

+ 39 - 6
app/Http/Controllers/PracticeManagementController.php

@@ -114,8 +114,29 @@ SELECT effective_date, count(*), sum(number_of_units) as units FROM bill WHERE c
 
     public function clientProChanges(Request $request)
     {
-        $rows = ClientProChange::orderByRaw('created_at::date DESC')->orderBy('client_id', 'desc')->paginate(20);
-        return view ('app.practice-management.client-pro-changes', compact('rows'));
+        $filters = $request->all();
+        $rows = ClientProChange::query();
+        $associationTypes = DB::table('client_pro_change')->select('responsibility_type')->distinct()->pluck('responsibility_type')->toArray();
+
+        $this->filterMultiQuery($request, $rows, 'created_at', 'date_category', 'date_value_1', 'date_value_2');
+        $this->filterSimpleQuery($request, $rows, 'responsibility_type', 'responsibility_type');
+
+        $oldProUid = $request->get('old_pro');
+        if($oldProUid){
+            $oldPro = Pro::where('uid', $oldProUid)->first();
+            $rows = $rows->where('previous_pro_id',$oldPro->id);
+
+        }
+
+        $newProUid = $request->get('new_pro');
+        if($newProUid){
+            $newPro = Pro::where('uid', $newProUid)->first();
+            $rows = $rows->where('new_pro_id',$newPro->id);
+
+        }
+
+        $rows = $rows->orderByRaw('created_at::date DESC')->orderBy('client_id', 'desc')->paginate(20);
+        return view ('app.practice-management.client-pro-changes', compact('rows', 'filters', 'associationTypes'));
     }
 
     public function billingReport(Request $request)
@@ -318,6 +339,11 @@ SELECT effective_date, count(*), sum(number_of_units) as units FROM bill WHERE c
             $query = $query->whereIn('hcp_pro_id', $filterByProsIDs);
         }
 
+        $filterByAllyProsIDs = $request->get('ally_pros');
+        if($filterByAllyProsIDs && count($filterByAllyProsIDs)){
+            $query = $query->whereIn('ally_pro_id', $filterByAllyProsIDs);
+        }
+
         $filterByPatientsIDs = $request->get('patients');
         if($filterByPatientsIDs && count($filterByPatientsIDs)){
             $query = $query->whereIn('client_id', $filterByPatientsIDs);
@@ -326,21 +352,27 @@ SELECT effective_date, count(*), sum(number_of_units) as units FROM bill WHERE c
         $status = $request->get('status');
         if($status){
             if($status == 'CANCELLED') $query = $query->where('is_cancelled', true);
+            if($status == 'SIGNED') $query = $query->where('is_signed_by_hcp', true);
             if($status == 'NOT_YET_SIGNED') $query = $query->where('is_signed_by_hcp', false);
             if($status == 'NOT_YET_SIGNED_BUT_ALLY_SIGNED') $query = $query->where('is_signed_by_hcp', false)->where('is_signed_by_ally', true);
+            if($status == 'WITH_BILLS') $query = $query->where('is_signed_by_hcp', true)->where('is_cancelled', false)->whereHas('bills');
             if($status == 'WITHOUT_BILLS') $query = $query->where('is_signed_by_hcp', true)->where('is_cancelled', false)->whereDoesntHave('bills');
+            
         }
 
         
-        $allProsWithNotesIDs = Note::pluck('hcp_pro_id')->toArray();
+        $allProsWithNotesIDs = DB::table('note')->pluck('hcp_pro_id')->toArray();
         $allProsWithNotes = Pro::whereIn('id', $allProsWithNotesIDs)->get();
 
-        $allPatientsWithNotesIDs = Note::pluck('client_id')->toArray();
+        $allPatientsWithNotesIDs = DB::table('note')->pluck('client_id')->toArray();
         $allPatientsWithNotes = Client::whereIn('id', $allPatientsWithNotesIDs)->get();
 
+        $allAllyProsIDs = DB::table('note')->pluck('ally_pro_id')->toArray();
+        $allAllyPros = Pro::whereIn('id', $allAllyProsIDs)->get();
+
         $notes = $query->orderBy('created_at', 'desc')->paginate(30);
 
-        return view('app.practice-management.all-notes', compact('notes', 'filters','allProsWithNotes', 'allPatientsWithNotes'));
+        return view('app.practice-management.all-notes', compact('notes', 'filters','allProsWithNotes', 'allPatientsWithNotes', 'allAllyPros'));
     }
 
     public function dnaNotesPendingMcpSign(Request $request)
@@ -1343,7 +1375,8 @@ SELECT client.name_first, client.name_last,
        (client.name_first || ' ' || client.name_last) as client_name,
        (mcp_pro.name_first || ' ' || mcp_pro.name_last) as mcp_pro_name,
        (rmm_pro.name_first || ' ' || rmm_pro.name_last) as rmm_pro_name,
-       client.uid as client_uid, 
+       client.uid as client_uid,
+       client.chart_number, 
        client.dob,
        client.is_enrolled_in_rm,
        client.most_recent_completed_mcp_note_date,

+ 19 - 0
app/Models/CareMonth.php

@@ -4,6 +4,7 @@ namespace App\Models;
 
 # use Illuminate\Database\Eloquent\Model;
 
+use DateTime;
 use Illuminate\Support\Collection;
 
 class CareMonth extends Model
@@ -123,4 +124,22 @@ class CareMonth extends Model
         return $this->hasOne(Bill::class, 'id', 'rmm_rm_generic_bill_id');
     }
 
+    public function showMeasurementDaysWarning(){
+        return ($this->daysSinceLastMeasurement() >= 2) || (16 - $this->number_of_days_with_remote_measurements) >= $this->daysTillEndOfMonth();
+    }
+
+    public function daysSinceLastMeasurement(){
+
+        if(!$this->most_recent_cellular_measurement_at) {
+            return 999;
+        }
+
+        $d1 = new DateTime($this->most_recent_cellular_measurement_at);
+        return $d1->diff(new DateTime())->days;
+    }
+
+    public function daysTillEndOfMonth(){
+        return  date('t') - date('j');
+
+    }
 }

+ 6 - 6
resources/views/app/admin/patients-table-extended.blade.php

@@ -9,7 +9,7 @@
         <thead class="bg-light">
         <tr>
             <th class="border-0 width-90px">#</th>
-            <th class="border-0">Name</th>            
+            <th class="border-0">@include('app.practice-management._sort_header', ['route' => route("admin.patients"), 'label' => 'Name', 'key' => 'name_first'])</th>            
             @if($pro->pro_type == 'ADMIN')
                 <th class="border-0">MCP</th>
                 {{--<th class="border-0">NA</th>--}}
@@ -19,15 +19,15 @@
             @endif
             <th class="border-0">Mailing Address State</th>
             <th class="border-0">Insurance</th>
-            <th class="border-0">Last Visit</th>
+            <th class="border-0">@include('app.practice-management._sort_header', ['route' => route("admin.patients"), 'label' => 'Last Visit', 'key' => 'most_recent_completed_mcp_note_date'])</th>
             <th class="border-0">Next Appt.</th>
-            <th class="border-0">BP/Pulse Timestamp</th>
-            <th class="border-0">Weight Timestamp</th>
-            <th class="border-0">Created</th>
+            <th class="border-0">@include('app.practice-management._sort_header', ['route' => route("admin.patients"), 'label' => 'BP/Pulse Timestamp', 'key' => 'most_recent_cellular_bp_measurement_at'])</th>
+            <th class="border-0">@include('app.practice-management._sort_header', ['route' => route("admin.patients"), 'label' => 'Weight Timestamp', 'key' => 'most_recent_cellular_weight_measurement_at'])</th>
+            <th class="border-0">@include('app.practice-management._sort_header', ['route' => route("admin.patients"), 'label' => 'Created', 'key' => 'created_at'])</th>
             <th class="border-0">Assigned On</th>
             <th class="border-0">NA</th>
             <th class="border-0">Notes</th>
-            <th class="border-0">Status</th>
+            <th class="border-0">@include('app.practice-management._sort_header', ['route' => route("admin.patients"), 'label' => 'Status', 'key' => 'client_engagement_status_category'])</th>
             <th class="border-0">Temp. Gun</th>
             <th class="border-0">Pulse Ox.</th>
             <th class="border-0">Cell. Bp</th>

+ 5 - 2
resources/views/app/admin/patients_missing_default_settings.blade.php

@@ -22,7 +22,7 @@
 					<th class="border-0">Default MCP Company Pro</th>
 					<th class="border-0">Default MCP Company Pro Payer</th>
 					<th class="border-0">Default MCP Company Location</th>
-
+					<th class="border-0">Insurance</th>
 				</tr>
 			</thead>
 			<tbody>
@@ -42,12 +42,15 @@
 					<td>{{ $patient->defaultMcpCompanyPro ? $patient->defaultMcpCompanyPro->company->name : 'NO' }}</td>
 					<td>{{ $patient->defaultMcpCompanyProPayer ? $patient->defaultMcpCompanyProPayer->payer->name : 'NO' }}</td>
 					<td>{{$patient->default_mcp_company_location_id? implode(" ", [$patient->defaultMcpCompanyLocation->line1, $patient->defaultMcpCompanyLocation->city, $patient->defaultMcpCompanyLocation->state]):'NO'}}</td>
+					<td>
+						@include('app.patient.coverage_column_renderer', ['patient'=>$patient])
+					</td>
 				</tr>
 				@endforeach
 
 				@if(count($patients) === 0)
 				<tr>
-					<td colspan="6">No records found!</td>
+					<td colspan="7">No records found!</td>
 				</tr>
 				@endif
 			</tbody>

+ 3 - 0
resources/views/app/admin/patients_missing_defsult_settings_filters.blade.php

@@ -58,8 +58,11 @@
 			<label>Insurance:</label>
 			<select class="form-control"  name="insurance" v-model="filters.insurance">
 				<option value=""></option>
+				<option value="MEDICARE_PENDING">Medicare Pending</option>
 				<option value="MEDICARE">Medicare (Part B)</option>
 				<option value="OTHER">Other</option>
+				<option value="PENDING">Pending</option>
+				<option value="NOT_COVERED">Not Covered</option>
 			</select>
 		</div>
 	</div>

+ 5 - 5
resources/views/app/dna/patients-table.blade.php

@@ -3,11 +3,11 @@
 	<thead class="bg-light border-top">
 		<tr>
 			<th class="border-0">#</th>
-			<th class="border-0">Name</th>
-			<th class="border-0">DOB</th>
-			<th class="border-0">Age</th>
-			<th class="border-0">Sex</th>
-			<th class="border-0">BMI</th>
+			<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("dna.patients"), 'label' => 'Name', 'key' => 'name_first'])</th>
+			<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("dna.patients"), 'label' => 'DOB', 'key' => 'dob'])</th>
+			<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("dna.patients"), 'label' => 'Age', 'key' => 'age_in_years'])</th>
+			<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("dna.patients"), 'label' => 'Sex', 'key' => 'sex'])</th>
+			<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("dna.patients"), 'label' => 'BMI', 'key' => 'usual_bmi_min'])</th>
 			<th class="border-0">Insurance</th>
 			<th class="border-0">MCP</th>
 			<th class="border-0">RPM</th>

+ 10 - 10
resources/views/app/mcp/patients-table.blade.php

@@ -3,21 +3,21 @@
 		<thead class="bg-light">
 			<tr>
 				<th class="border-0">#</th>
-				<th class="border-0">Name</th>
-				<th class="border-0">DOB</th>
-				<th class="border-0">Age</th>
-				<th class="border-0">Sex</th>
+				<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => 'Name', 'key' => 'name_first'])</th>
+				<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => 'DOB', 'key' => 'dob'])</th>
+				<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => 'Age', 'key' => 'age_in_years'])</th>
+				<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => 'Sex', 'key' => 'sex'])</th>
 				<th class="border-0">Insurance</th>
-				<th class="border-0">Last Visit</th>
+				<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => 'Last Visit', 'key' => 'most_recent_completed_mcp_note_date'])</th>
 				<th class="border-0">Next Appt.</th>
 				<th class="border-0">Status</th>
 
 				<th class="border-0">BP</th>
-				<th class="border-0"> <i class="fa fa-heartbeat"></i> </th>
-				<th class="border-0">Pulse</th>
-				<th class="border-0">BP/Pulse Timestamp</th>
-				<th class="border-0">Weight</th>
-				<th class="border-0">Weight Timestamp</th>
+				<th class="border-0"> <i class="fa fa-heartbeat"></i> @include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => '', 'key' => 'most_recent_cellular_bp_value_irregular'])</th>
+				<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => 'Pulse', 'key' => 'most_recent_cellular_bp_value_pulse'])</th>
+				<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => 'BP/Pulse Timestamp', 'key' => 'most_recent_cellular_bp_measurement_at'])</th>
+				<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => 'Weight', 'key' => 'most_recent_cellular_weight_value'])</th>
+				<th class="border-0">@include('app.practice-management._sort_header', ['route' => route("mcp.patients"), 'label' => 'Weight Timestamp', 'key' => 'most_recent_cellular_weight_measurement_at'])</th>
 
 				{{-- <th>Scale <i class="fa fa-battery"></i></th>--}}
 				{{-- <th class="border-0">RPM</th>--}}

+ 1 - 1
resources/views/app/patient/care-month/dashboard.blade.php

@@ -259,7 +259,7 @@
                                         </div>
                                     @endif
                                 </div>
-                                @if($careMonth->number_of_days_with_remote_measurements < 16)
+                                @if($careMonth->showMeasurementDaysWarning())
                                     <div class="alert alert-warning p-2 mt-1">
                                         Need <b>{{16 - $careMonth->number_of_days_with_remote_measurements}} more days</b> with measurements before RM becomes billable.
                                     </div>

+ 3 - 3
resources/views/app/patient/coverage_column_renderer.blade.php

@@ -26,11 +26,11 @@
     
     @if($coverage)
         @if($coverage->plan_type === 'MEDICAID' && $coverage->mcdPayer)
-            <span class="ml-2">{{$coverage->mcdPayer->name}}</span>
+            <span class="ml-2 {{ @$truncateName ? 'coverage-payer-name':'' }}" title="{{$coverage->mcdPayer->name}}">{{$coverage->mcdPayer->name}}</span>
         @elseif($coverage->plan_type === 'COMMERCIAL' && $coverage->payer)
-            <span class="ml-2">{{$coverage->payer->name}}</span>
+            <span class="ml-2 {{ @$truncateName ? 'coverage-payer-name':'' }}" title="{{$coverage->payer->name}}">{{$coverage->payer->name}}</span>
         @else
-            <span class="ml-2">{{$coverage->insuranceDisplayName()}}</span>
+            <span class="ml-2 {{ @$truncateName ? 'coverage-payer-name':'' }}" title="{{$coverage->insuranceDisplayName()}}">{{$coverage->insuranceDisplayName()}}</span>
         @endif
     @else
         <small class="ml-2 text-muted">(No insurance)</small>

+ 7 - 1
resources/views/app/patient/note/_create-bill-only.blade.php

@@ -56,7 +56,13 @@
                                         onchange="calculateCoBillAmount(this)">
                                     <option value=""> -- select -- </option>
                                     <?php for ($i = 5; $i <= $maxMinutes; $i+=5) { ?>
-                                    <option value="{{ $i/60 }}" {{ $i === 30 ? 'selected' : '' }}>{{ $i }} minutes</option>
+                                        @if($i == 20) {
+                                        <option value="{{ 21/60 }}" selected>{{ 21 }} minutes</option>
+                                        @else 
+                                            @if($i <= 30 || $i >= 60)
+                                            <option value="{{ $i/60 }}">{{ $i }} minutes</option>        
+                                            @endif 
+                                        @endif
                                     <?php } ?>
                                 </select>
                             </div>

+ 3 - 1
resources/views/app/patient/note/_create-bill.blade.php

@@ -54,7 +54,9 @@
                                     @if($i == 20) {
                                         <option value="{{ 21/60 }}" selected>{{ 21 }} minutes</option>
                                     @else 
-                                        <option value="{{ $i/60 }}">{{ $i }} minutes</option>         
+                                        @if($i <= 30 || $i >= 60)
+                                        <option value="{{ $i/60 }}">{{ $i }} minutes</option>        
+                                        @endif 
                                     @endif
                                 <?php } ?>
                             </select>

+ 2 - 2
resources/views/app/patient/note/_create-claim.blade.php

@@ -147,7 +147,7 @@
                     {
                         cpt: '',
                         dateOfService: '{{$note->created_at}}',
-                        icds: JSON.parse(JSON.stringify(window.noteReasons)),
+                        icds: JSON.parse(JSON.stringify(window.noteReasons?window.noteReasons:[])),
                         numberOfUnits: 1
                     }
                 ]
@@ -158,7 +158,7 @@
                 this.payload.lines.push({
                     cpt: '',
                     dateOfService: '{{date_format($note->created_at, 'Y-m-d')}}',
-                    icds: JSON.parse(JSON.stringify(window.noteReasons)),
+                    icds: JSON.parse(JSON.stringify(window.noteReasons?window.noteReasons:[])),
                     numberOfUnits: 1
                 });
                 Vue.nextTick(() => {

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

@@ -956,6 +956,7 @@ use App\Models\Handout;
                             </div>
                             @include('app.patient.note.rm-setup')
                         </div>
+                       
                     </div>
                 </div>
 
@@ -1387,6 +1388,11 @@ use App\Models\Handout;
                                 @endif
                             </div>
                         @endif
+                        <span class="mx-2 text-secondary">|</span>
+                        <div class="d-inline-flex align-items-center">
+                            <span class="text-secondary font-weight-bold">Primary Coverage:&nbsp;</span>
+                            <b>@include('app.patient.coverage_column_renderer', ['patient'=>$patient, 'truncateName' => true])</b>                                                           
+                        </div>
                     </div>
                 </div>
                 @endif

+ 183 - 182
resources/views/app/patient/note/flag-bill.blade.php

@@ -1,200 +1,201 @@
-<div <?= $bill->is_flagged_by_administrator && !$bill->is_administrator_flag_cleared ? 'class="alert alert-danger p-1 rounded-0" style="min-width: 380px;"' : '' ?>>
-<?php #dump($bill); ?>
-@if($pro->pro_type === 'ADMIN')
-	@if($bill->is_flagged_by_administrator && !$bill->is_administrator_flag_cleared)
-		<div class="d-flex flex-column">
-			<div class="d-flex align-items-center flex-wrap">
-				<span class="mr-2"><b>Flagged At:</b> {{ friendly_date_time($bill->flagged_administrator_at) }}</span>
-				<small class="text-sm">By: <i class="fas fa-user"></i> {{ $bill->billFlagAcknowledgedByProAdmin->displayName() }}</small>
+@if(!$bill->is_cancelled)
+	<div <?= $bill->is_flagged_by_administrator && !$bill->is_administrator_flag_cleared ? 'class="alert alert-danger p-1 rounded-0" style="min-width: 380px;"' : '' ?>>
+	<?php #dump($bill); ?>
+	@if($pro->pro_type === 'ADMIN')
+		@if($bill->is_flagged_by_administrator && !$bill->is_administrator_flag_cleared)
+			<div class="d-flex flex-column">
+				<div class="d-flex align-items-center flex-wrap">
+					<span class="mr-2"><b>Flagged At:</b> {{ friendly_date_time($bill->flagged_administrator_at) }}</span>
+					<small class="text-sm">By: <i class="fas fa-user"></i> {{ $bill->billFlagAcknowledgedByProAdmin->displayName() }}</small>
+				</div>
+				
+				<small class="text-muted"><b><i class="fas fa-comment on-hover-opaque text-primary"></i></b> {{ $bill->administrator_flag_memo }}</small>
 			</div>
-			
-			<small class="text-muted"><b><i class="fas fa-comment on-hover-opaque text-primary"></i></b> {{ $bill->administrator_flag_memo }}</small>
-		</div>
 
-		@if($bill->is_administrator_flag_acknowledged && $bill->administrator_flag_acknowledged_at > $bill->flagged_administrator_at)
-			<!-- This is resolved -->
-			<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
-				<div class="d-flex flex-column">
-					<div class="d-flex align-items-center flex-wrap">
-						<span class="mr-2"><b>Ack. At:</b> {{ friendly_date_time($bill->administrator_flag_acknowledged_at) }}</span>
-						<small class="text-sm">By: <i class="fas fa-user"></i> {{ $bill->billFlagAcknowledgedByPro->displayName() }}</small>
+			@if($bill->is_administrator_flag_acknowledged && $bill->administrator_flag_acknowledged_at > $bill->flagged_administrator_at)
+				<!-- This is resolved -->
+				<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
+					<div class="d-flex flex-column">
+						<div class="d-flex align-items-center flex-wrap">
+							<span class="mr-2"><b>Ack. At:</b> {{ friendly_date_time($bill->administrator_flag_acknowledged_at) }}</span>
+							<small class="text-sm">By: <i class="fas fa-user"></i> {{ $bill->billFlagAcknowledgedByPro->displayName() }}</small>
+						</div>
+						
+						<small class="text-muted"><b><i class="fas fa-comment on-hover-opaque"></i></b> {{ $bill->administrator_flag_acknowledgement_memo }}</small>
 					</div>
-					
-					<small class="text-muted"><b><i class="fas fa-comment on-hover-opaque"></i></b> {{ $bill->administrator_flag_acknowledgement_memo }}</small>
 				</div>
-			</div>
-		@endif
-			<!-- Flagged by admin, pending ack. by pro -->
-			<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
-				<div class="d-flex">
-					@if($bill->is_administrator_flag_acknowledged)
-						<div moe>
-							<a start show class="text-success"><i class="fas fa-flag  on-hover-opaque"></i> Clear Flag</a>
-							<form url="/api/bill/clearFlag" class="mcp-theme-1">
-								<input type="hidden" name="uid" value="{{$bill->uid}}">
-								<div class="form-group">
-									<label>Memo:</label>
-									<textarea name="memo" rows="2" class="form-control"></textarea>
-								</div>
-								<div>
-									<button submit class="btn btn-sm btn-success mr-1">Clear Flag</button>
-									<button cancel class="btn btn-sm btn-default border">Cancel</button>
-								</div>
-							</form>
-						</div>
-					@else
-						<div moe>
-							<a start show class="text-success"><i class="fas fa-flag  on-hover-opaque"></i> Unflag Bill</a>
-							<form url="/api/bill/undoFlagAsAdministrator" class="mcp-theme-1">
-								<input type="hidden" name="uid" value="{{$bill->uid}}">
-								<div class="form-group">
-									<label>Memo:</label>
-									<textarea name="memo" rows="2" class="form-control"></textarea>
-								</div>
-								<div>
-									<button submit class="btn btn-sm btn-success mr-1">Unflag Bill</button>
-									<button cancel class="btn btn-sm btn-default border">Cancel</button>
-								</div>
-							</form>
-						</div>
-					@endif
-					<span class="mx-1 text-muted">|</span>
-					@if($bill->is_administrator_flag_acknowledged)
-						<div moe>
-							<a start show class="text-danger"><i class="fas fa-flag  on-hover-opaque"></i> Flag Bill Again</a>
-							<form url="/api/bill/flagAsAdministrator" class="mcp-theme-1">
-								<input type="hidden" name="uid" value="{{$bill->uid}}">
-								<div class="form-group">
-									<label>Memo:</label>
-									<textarea name="memo" rows="2" class="form-control" required></textarea>
-								</div>
-								<div>
-									<button submit class="btn btn-sm btn-danger mr-1">Flag Bill</button>
-									<button cancel class="btn btn-sm btn-default border">Cancel</button>
-								</div>
-							</form>
+			@endif
+				<!-- Flagged by admin, pending ack. by pro -->
+				<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
+					<div class="d-flex">
+						@if($bill->is_administrator_flag_acknowledged)
+							<div moe>
+								<a start show class="text-success"><i class="fas fa-flag  on-hover-opaque"></i> Clear Flag</a>
+								<form url="/api/bill/clearFlag" class="mcp-theme-1">
+									<input type="hidden" name="uid" value="{{$bill->uid}}">
+									<div class="form-group">
+										<label>Memo:</label>
+										<textarea name="memo" rows="2" class="form-control"></textarea>
+									</div>
+									<div>
+										<button submit class="btn btn-sm btn-success mr-1">Clear Flag</button>
+										<button cancel class="btn btn-sm btn-default border">Cancel</button>
+									</div>
+								</form>
+							</div>
+						@else
+							<div moe>
+								<a start show class="text-success"><i class="fas fa-flag  on-hover-opaque"></i> Unflag Bill</a>
+								<form url="/api/bill/undoFlagAsAdministrator" class="mcp-theme-1">
+									<input type="hidden" name="uid" value="{{$bill->uid}}">
+									<div class="form-group">
+										<label>Memo:</label>
+										<textarea name="memo" rows="2" class="form-control"></textarea>
+									</div>
+									<div>
+										<button submit class="btn btn-sm btn-success mr-1">Unflag Bill</button>
+										<button cancel class="btn btn-sm btn-default border">Cancel</button>
+									</div>
+								</form>
+							</div>
+						@endif
+						<span class="mx-1 text-muted">|</span>
+						@if($bill->is_administrator_flag_acknowledged)
+							<div moe>
+								<a start show class="text-danger"><i class="fas fa-flag  on-hover-opaque"></i> Flag Bill Again</a>
+								<form url="/api/bill/flagAsAdministrator" class="mcp-theme-1">
+									<input type="hidden" name="uid" value="{{$bill->uid}}">
+									<div class="form-group">
+										<label>Memo:</label>
+										<textarea name="memo" rows="2" class="form-control" required></textarea>
+									</div>
+									<div>
+										<button submit class="btn btn-sm btn-danger mr-1">Flag Bill</button>
+										<button cancel class="btn btn-sm btn-default border">Cancel</button>
+									</div>
+								</form>
+							</div>
+						@else
+							<div moe>
+								<a start show class="text-primary">Update Memo</a>
+								<form url="/api/bill/updateFlagMemo" class="mcp-theme-1">
+									<input type="hidden" name="uid" value="{{$bill->uid}}">
+									<div class="form-group">
+										<label>Memo:</label>
+										<textarea name="memo" rows="2" class="form-control"><?= $bill->administrator_flag_memo ?></textarea>
+									</div>
+									<div>
+										<button submit class="btn btn-sm btn-primary mr-1">Update</button>
+										<button cancel class="btn btn-sm btn-default border">Cancel</button>
+									</div>
+								</form>
+							</div>
+						@endif
+						<span class="ml-1 text-muted">|</span>
+						@include('app.patient.note.partials.bill-flags-history')
+					</div>
+				</div>
+			
+		@else
+			<!-- Not flagged, show flag popup -->
+			<!-- //api/bill//flagAsAdministrator -->
+			<div class="d-flex align-items-center">
+				<div moe>
+					<a start show class="text-danger"><i class="fas fa-flag  on-hover-opaque"></i> Flag Bill</a>
+					<form url="/api/bill/flagAsAdministrator" class="mcp-theme-1">
+						<input type="hidden" name="uid" value="{{$bill->uid}}">
+						<div class="form-group">
+							<label>Memo:</label>
+							<textarea name="memo" rows="2" class="form-control" required></textarea>
 						</div>
-					@else
-						<div moe>
-							<a start show class="text-primary">Update Memo</a>
-							<form url="/api/bill/updateFlagMemo" class="mcp-theme-1">
-								<input type="hidden" name="uid" value="{{$bill->uid}}">
-								<div class="form-group">
-									<label>Memo:</label>
-									<textarea name="memo" rows="2" class="form-control"><?= $bill->administrator_flag_memo ?></textarea>
-								</div>
-								<div>
-									<button submit class="btn btn-sm btn-primary mr-1">Update</button>
-									<button cancel class="btn btn-sm btn-default border">Cancel</button>
-								</div>
-							</form>
+						<div>
+							<button submit class="btn btn-sm btn-danger mr-1">Flag Bill</button>
+							<button cancel class="btn btn-sm btn-default border">Cancel</button>
 						</div>
-					@endif
-					<span class="ml-1 text-muted">|</span>
-					@include('app.patient.note.partials.bill-flags-history')
+					</form>
 				</div>
+				@include('app.patient.note.partials.bill-flags-history')
 			</div>
-		
+			
+		@endif
+
 	@else
-		<!-- Not flagged, show flag popup -->
-		<!-- //api/bill//flagAsAdministrator -->
-		<div class="d-flex align-items-center">
-			<div moe>
-				<a start show class="text-danger"><i class="fas fa-flag  on-hover-opaque"></i> Flag Bill</a>
-				<form url="/api/bill/flagAsAdministrator" class="mcp-theme-1">
-					<input type="hidden" name="uid" value="{{$bill->uid}}">
-					<div class="form-group">
-						<label>Memo:</label>
-						<textarea name="memo" rows="2" class="form-control" required></textarea>
-					</div>
-					<div>
-						<button submit class="btn btn-sm btn-danger mr-1">Flag Bill</button>
-						<button cancel class="btn btn-sm btn-default border">Cancel</button>
-					</div>
-				</form>
+	<!-- HCP -->
+		@if($bill->is_flagged_by_administrator && !$bill->is_administrator_flag_cleared)
+			<div class="d-flex flex-column">
+				<div class="d-flex align-items-center flex-wrap">
+					<span class="mr-2"><b>Flagged At:</b> {{ friendly_date_time($bill->flagged_administrator_at) }}</span>
+					<small class="text-sm">By: <i class="fas fa-user"></i> {{ $bill->billFlagAcknowledgedByProAdmin->displayName() }}</small>
+				</div>			
+				<small class="text-muted"><b><i class="fas fa-comment on-hover-opaque text-primary"></i></b> {{ $bill->administrator_flag_memo }}</small>
 			</div>
-			@include('app.patient.note.partials.bill-flags-history')
-		</div>
-		
-	@endif
-
-@else
-<!-- HCP -->
-	@if($bill->is_flagged_by_administrator && !$bill->is_administrator_flag_cleared)
-		<div class="d-flex flex-column">
-			<div class="d-flex align-items-center flex-wrap">
-				<span class="mr-2"><b>Flagged At:</b> {{ friendly_date_time($bill->flagged_administrator_at) }}</span>
-				<small class="text-sm">By: <i class="fas fa-user"></i> {{ $bill->billFlagAcknowledgedByProAdmin->displayName() }}</small>
-			</div>			
-			<small class="text-muted"><b><i class="fas fa-comment on-hover-opaque text-primary"></i></b> {{ $bill->administrator_flag_memo }}</small>
-		</div>
 
-		@if($bill->is_administrator_flag_acknowledged && $bill->administrator_flag_acknowledged_at > $bill->flagged_administrator_at)
-			<!-- hcp has ack. -->
-			<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
-				<div class="d-flex flex-column">
-					<div class="d-flex align-items-center flex-wrap">
-						<span class="mr-2"><b>Ack. At:</b> {{ friendly_date_time($bill->administrator_flag_acknowledged_at) }}</span>
-						<small class="text-sm">By: <i class="fas fa-user"></i> {{ $bill->billFlagAcknowledgedByPro->displayName() }}</small>
-					</div>
-					
-					<small class="text-muted"><b><i class="fas fa-comment on-hover-opaque"></i></b> {{ $bill->administrator_flag_acknowledgement_memo }}</small>
-					
-					<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
-						<div moe>
-							<a start show class="text-danger"><i class="fas fa-undo fa-fw  on-hover-opaque"></i> Undo Ack.</a>
-							<form url="/api/bill/undoAcknowledgeAdministratorFlag" class="mcp-theme-1">
-								<input type="hidden" name="uid" value="{{$bill->uid}}">
-								<div class="form-group">
-									<label>Memo:</label>
-									<textarea name="memo" rows="2" class="form-control"></textarea>
-								</div>
-								<div>
-									<button submit class="btn btn-sm btn-danger mr-1">Undo Ack.</button>
-									<button cancel class="btn btn-sm btn-default border">Cancel</button>
-								</div>
-							</form>
+			@if($bill->is_administrator_flag_acknowledged && $bill->administrator_flag_acknowledged_at > $bill->flagged_administrator_at)
+				<!-- hcp has ack. -->
+				<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
+					<div class="d-flex flex-column">
+						<div class="d-flex align-items-center flex-wrap">
+							<span class="mr-2"><b>Ack. At:</b> {{ friendly_date_time($bill->administrator_flag_acknowledged_at) }}</span>
+							<small class="text-sm">By: <i class="fas fa-user"></i> {{ $bill->billFlagAcknowledgedByPro->displayName() }}</small>
 						</div>
-						<span class="mx-1 text-muted">|</span>
-						<div moe>
-							<a start show class="text-primary">Update Memo</a>
-							<form url="/api/bill/updateAcknowledgementMemo" class="mcp-theme-1">
-								<input type="hidden" name="uid" value="{{$bill->uid}}">
-								<div class="form-group">
-									<label>Memo:</label>
-									<textarea name="memo" rows="2" class="form-control"><?= $bill->administrator_flag_acknowledgement_memo ?></textarea>
-								</div>
-								<div>
-									<button submit class="btn btn-sm btn-primary mr-1">Update</button>
-									<button cancel class="btn btn-sm btn-default border">Cancel</button>
-								</div>
-							</form>
+						
+						<small class="text-muted"><b><i class="fas fa-comment on-hover-opaque"></i></b> {{ $bill->administrator_flag_acknowledgement_memo }}</small>
+						
+						<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
+							<div moe>
+								<a start show class="text-danger"><i class="fas fa-undo fa-fw  on-hover-opaque"></i> Undo Ack.</a>
+								<form url="/api/bill/undoAcknowledgeAdministratorFlag" class="mcp-theme-1">
+									<input type="hidden" name="uid" value="{{$bill->uid}}">
+									<div class="form-group">
+										<label>Memo:</label>
+										<textarea name="memo" rows="2" class="form-control"></textarea>
+									</div>
+									<div>
+										<button submit class="btn btn-sm btn-danger mr-1">Undo Ack.</button>
+										<button cancel class="btn btn-sm btn-default border">Cancel</button>
+									</div>
+								</form>
+							</div>
+							<span class="mx-1 text-muted">|</span>
+							<div moe>
+								<a start show class="text-primary">Update Memo</a>
+								<form url="/api/bill/updateAcknowledgementMemo" class="mcp-theme-1">
+									<input type="hidden" name="uid" value="{{$bill->uid}}">
+									<div class="form-group">
+										<label>Memo:</label>
+										<textarea name="memo" rows="2" class="form-control"><?= $bill->administrator_flag_acknowledgement_memo ?></textarea>
+									</div>
+									<div>
+										<button submit class="btn btn-sm btn-primary mr-1">Update</button>
+										<button cancel class="btn btn-sm btn-default border">Cancel</button>
+									</div>
+								</form>
+							</div>
 						</div>
 					</div>
 				</div>
-			</div>
-		
-		@else
-			<!-- Needs hcp ack. -->
-			<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
-			<div moe>
-				<a start show class="text-primary"><i class="fa fa-check text-sm on-hover-opaque"></i> Ack.</a>
-				<form url="/api/bill/acknowledgeAdministratorFlag" class="mcp-theme-1">
-					<input type="hidden" name="uid" value="{{$bill->uid}}">
-					<div class="form-group">
-						<label>Memo:</label>
-						<textarea name="memo" rows="2" class="form-control" required></textarea>
-					</div>
-					<div>
-						<button submit class="btn btn-sm btn-primary mr-1">Ack. Flag</button>
-						<button cancel class="btn btn-sm btn-default border">Cancel</button>
-					</div>
-				</form>
-			</div>
-			</div>
+			
+			@else
+				<!-- Needs hcp ack. -->
+				<div class="border-top mt-1 pt-1" style="border-color: #f3bcc1!important;">
+				<div moe>
+					<a start show class="text-primary"><i class="fa fa-check text-sm on-hover-opaque"></i> Ack.</a>
+					<form url="/api/bill/acknowledgeAdministratorFlag" class="mcp-theme-1">
+						<input type="hidden" name="uid" value="{{$bill->uid}}">
+						<div class="form-group">
+							<label>Memo:</label>
+							<textarea name="memo" rows="2" class="form-control" required></textarea>
+						</div>
+						<div>
+							<button submit class="btn btn-sm btn-primary mr-1">Ack. Flag</button>
+							<button cancel class="btn btn-sm btn-default border">Cancel</button>
+						</div>
+					</form>
+				</div>
+				</div>
 
+			@endif
 		@endif
 	@endif
-@endif
-
-</div>
+	</div>
+@endif

+ 4 - 0
resources/views/app/patient/note/rm-setup.blade.php

@@ -420,6 +420,10 @@
                 </table>
             </div>
         @endif
+        <div class="border-top mt-2 pt-2">
+            @include('app.patient.partials.client_bp_weight_phone_number_status')
+        </div>
+        
     </div>
     <div class="col-6 border-left">
         <?php

+ 1 - 1
resources/views/app/patient/partials/caremonth-summary.blade.php

@@ -59,7 +59,7 @@
             </div>
         @endif
     </div>
-    @if($careMonth->number_of_days_with_remote_measurements < 16)
+    @if($careMonth->showMeasurementDaysWarning())
         <div class="alert alert-warning p-2 mt-1">
             Need <b>{{16 - $careMonth->number_of_days_with_remote_measurements}} more days</b> with measurements before RM becomes billable.
         </div>

+ 56 - 41
resources/views/app/patient/partials/client_bp_weight_phone_number_status.blade.php

@@ -1,44 +1,59 @@
-<div class="mb-1">
-    <div class="border-bottom mb-2">
-        <div>
-            Please ask the client to save the following numbers for receiving measurement SMS messages.
+<div class="">
+    <div class="mb-1">
+        <span class="mb-0 mr-2"><b>Please ask the client to save the following numbers for receiving measurement SMS messages.</b>
+        <div moe>
+            <a start show><i class="fa fa-edit"></i></a>
+            <form url="/api/client/updateClientBpWeightPhoneNumberStatus" class="mcp-theme-1">
+                <input type="hidden" name="uid" value="{{$patient->uid}}">
+                <div class="mb-2 checkbox">
+                    <input type="checkbox" name="hasClientSavedBpPhoneNumber">
+                    <label class="mb-1 text-secondary text-sm">Has client saved bp phone number?</label>
+                </div>
+                <div class="mb-2">
+                    <label class="mb-1 text-secondary text-sm">Saved BP phone number</label>
+                    <input type="text" name="savedBpPhoneNumber" class="form-control form-control-sm" value="{{config('app.bpSmsNumber')}}">
+                </div>
+                <div class="mb-2 checkbox">
+                    <input type="checkbox" name="hasClientSavedWeightPhoneNumber">
+                    <label class="mb-1 text-secondary text-sm">Has client saved weight phone number?</label>
+                </div>
+                <div class="mb-2">
+                    <label class="mb-1 text-secondary text-sm">Saved weight phone number</label>
+                    <input type="text" name="savedWeightPhoneNumber" class="form-control form-control-sm" value="{{config('app.weightSmsNumber')}}">
+                </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>
-        <div>
-            Cardio1st BP sms number: {{config('app.bpSmsNumber')}}   
-        </div>
-        <div>
-            Cardio1st Weight sms number: {{config('app.weightSmsNumber')}}   
-        </div>
-    </div>
-    
-    <div>Has client saved BP phone number: <b>{{ $patient->clientBpWeightPhoneNumberStatus && $patient->clientBpWeightPhoneNumberStatus->has_client_saved_bp_phone_number ? 'Yes': 'No' }}</b></div>
-    <div>Saved BP Phone number: <b>{{ $patient->clientBpWeightPhoneNumberStatus && $patient->clientBpWeightPhoneNumberStatus->saved_bp_phone_number }}</b></div>
-    <div>Has client saved Weight phone number: <b>{{ $patient->clientBpWeightPhoneNumberStatus && $patient->clientBpWeightPhoneNumberStatus->has_client_saved_weight_phone_number ? 'Yes': 'No' }}</b></div>
-    <div>Saved Weight Phone number: <b>{{ $patient->clientBpWeightPhoneNumberStatus && $patient->clientBpWeightPhoneNumberStatus->saved_weight_phone_number }}</b></div>
-    <div moe>
-        <a start show><i class="fa fa-edit"></i></a>
-        <form url="/api/client/updateClientBpWeightPhoneNumberStatus" class="mcp-theme-1">
-            <input type="hidden" name="uid" value="{{$patient->uid}}">
-            <div class="mb-2 checkbox">
-                <input type="checkbox" name="hasClientSavedBpPhoneNumber">
-                <label class="mb-1 text-secondary text-sm">Has client saved bp phone number?</label>
-            </div>
-            <div class="mb-2">
-                <label class="mb-1 text-secondary text-sm">Saved BP phone number</label>
-                <input type="text" name="savedBpPhoneNumber" class="form-control form-control-sm" value="{{config('app.bpSmsNumber')}}">
-            </div>
-            <div class="mb-2 checkbox">
-                <input type="checkbox" name="hasClientSavedWeightPhoneNumber">
-                <label class="mb-1 text-secondary text-sm">Has client saved weight phone number?</label>
-            </div>
-            <div class="mb-2">
-                <label class="mb-1 text-secondary text-sm">Saved weight phone number</label>
-                <input type="text" name="savedWeightPhoneNumber" class="form-control form-control-sm" value="{{config('app.weightSmsNumber')}}">
-            </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>
+        </span>
+        
     </div>
+    <table class="table table-sm table-striped table-bordered">
+        <tr>
+            <td>Cardio1st BP sms number:</td>
+            <td>{{config('app.bpSmsNumber')}}</td>
+        </tr>
+        <tr>
+            <td>Cardio1st Weight sms number:</td>
+            <td>{{config('app.weightSmsNumber')}}</td>
+        </tr>
+        <tr>
+            <td>Has client saved BP phone number:</td>
+            <td>{{ $patient->clientBpWeightPhoneNumberStatus && $patient->clientBpWeightPhoneNumberStatus->has_client_saved_bp_phone_number ? 'Yes': 'No' }}</td>
+        </tr>
+        <tr>
+            <td>Saved BP Phone number:</td>
+            <td>{{ $patient->clientBpWeightPhoneNumberStatus ?  $patient->clientBpWeightPhoneNumberStatus->saved_bp_phone_number: '-'}}</td>
+        </tr>
+        <tr>
+            <td>Has client saved Weight phone number:</td>
+            <td>{{ $patient->clientBpWeightPhoneNumberStatus && $patient->clientBpWeightPhoneNumberStatus->has_client_saved_weight_phone_number ? 'Yes': 'No' }}</td>
+        </tr>
+        <tr>
+            <td>Saved Weight Phone number:</td>
+            <td>{{ $patient->clientBpWeightPhoneNumberStatus ? $patient->clientBpWeightPhoneNumberStatus->saved_weight_phone_number : '-' }}</td>
+        </tr>
+    </table>
 </div>

+ 3 - 0
resources/views/app/patient/partials/rm-setup.blade.php

@@ -256,6 +256,9 @@
                 </div>
             </div>
         @endif
+        <div class="border-top mt-2 pt-2">
+            @include('app.patient.partials.client_bp_weight_phone_number_status')
+        </div>
     </div>
     <div class="col-6 border-left">
         <?php

+ 0 - 1
resources/views/app/patient/partials/update-mcp-onboarding-visit-info.blade.php

@@ -56,7 +56,6 @@
 				if(self.form.hasMcpDoneOnboardingVisit == 'YES'){					
 					fields.prop('required', true);
 					fields.on('change keyup', function(){
-						alert('gg');
 						fields.prop('required', false);
 						$(this).prop('required', true);
 					});

+ 1 - 1
resources/views/app/patient/primary-coverage-manual-determination-medicaid-modal.blade.php

@@ -5,7 +5,7 @@
 	<div class="p-3">
 		<div class="d-flex flex-wrap">
 			@if($cpc->mcd_number)
-			<div class="mb-2">
+			<div class="mb-2 mr-2">
 				<span><b>Medicaid Number:</b> {{$cpc->mcd_number}}</span>
 				<span class="ml-3"><b>Medicaid State:</b> {{$cpc->mcd_payer_id ? $cpc->mcdPayer->name : '-'}}</span>
 			</div>

+ 1 - 1
resources/views/app/patient/primary-coverage-manual-determination-medicare-modal.blade.php

@@ -5,7 +5,7 @@
 	<div class="p-3">
 		<div class="d-flex flex-wrap">
 			@if($cpc->mcr_number)
-			<div class="mb-2">
+			<div class="mb-2 mr-2">
 				<b>Medicare Number:</b> {{$cpc->mcr_number}}
 			</div>
 			@endif

+ 0 - 2
resources/views/app/patient/rm-setup.blade.php

@@ -5,6 +5,4 @@
     <h4 class="font-weight-bold mb-3" id="rm-setup">RM Setup</h4>
 
     @include('app.patient.partials.rm-setup')
-
-    @include('app.patient.partials.client_bp_weight_phone_number_status')
 @endsection

+ 2 - 0
resources/views/app/practice-management/all-notes.blade.php

@@ -25,6 +25,7 @@
                         <th class="border-0">Effective Date</th>
                         <th class="border-0">Patient</th>
                         <th class="border-0">MCP</th>
+                        <th class="border-0">All Pro</th>
                         <th class="border-0 w-50">Content</th>
                     </tr>
                 </thead>
@@ -44,6 +45,7 @@
                             <a href="/patients/view/{{ $note->client->uid }}">{{ $note->client->displayName() }}</a>
                         </td>
                         <td>{{ $note->hcpPro ? $note->hcpPro->displayName() : '-' }}</td>
+                        <td>{{ $note->allyPro ? $note->allyPro->displayName() : '-' }}</td>
                         <td class="">
                             <?php
                             $textContent = strip_tags($note->free_text_html);

+ 134 - 0
resources/views/app/practice-management/client-pro-changes-filters.blade.php

@@ -0,0 +1,134 @@
+<style>
+	#client-pro-changes-filters label {
+		font-weight: bold;
+	}
+
+	#client-pro-changes-filters .mw-100px {
+		min-width: 100px;
+	}
+
+	.filter-container {
+		display: flex;
+		align-items: flex-start;
+		flex-wrap: wrap;
+	}
+
+	.filter-container>div {
+		width: 165px;
+	}
+
+	.filter-container>div:not(:last-child) {
+		margin-right: 15px;
+	}
+</style>
+<form id="client-pro-changes-filters" method="GET" action="{{ route('practice-management.client-pro-changes') }}" class="filter-container" v-cloak>
+	<!-- DATE	 -->
+	<div>
+		<div class="form-group">
+			<label>Date:</label>
+			<select name="date_category" class="form-control input-sm" v-model="filters.date_category">
+				<option value="">All</option>
+				<option value="EXACTLY">Exactly</option>
+				<option value="LESS_THAN">Less Than</option>
+				<option value="GREATER_THAN">Greater Than</option>
+				<option value="BETWEEN">Between</option>
+				<option value="NOT_BETWEEN">Not Between</option>
+			</select>
+			<div v-show="filters.date_category" class="mt-2">
+				<div>
+					<input name="date_value_1" v-model="filters.date_value_1" type="date" class="form-control input-sm" />
+				</div>
+				<div v-show="filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN'" class="mt-2">
+					<input name="date_value_2" v-model="filters.date_value_2" type="date" class="form-control input-sm" />
+				</div>
+			</div>
+		</div>
+	</div>
+
+	<!-- STATUS -->
+	<div>
+		<div class="form-group">
+			<label>Association Type:</label>
+			<select name="responsibility_type" class="form-control input-sm" v-model="filters.responsibility_type">
+				<option value="">All</option>
+				@foreach($associationTypes as $at)
+				<option value="{{ $at }}">{{ $at }}</option>
+				@endforeach
+			</select>
+		</div>
+	</div>
+
+	<div>
+		<div class="form-group">
+			<div class="old-pro-filter-container">
+				<label>Old Pro:</label>
+			</div>
+		</div>
+	</div>
+
+	<div>
+		<div class="form-group">
+			<div class="new-pro-filter-container">
+				<label>New Pro:</label>
+			</div>
+		</div>
+	</div>
+
+	<div>
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<div class="d-flex">
+				<button type="submit" v-on:click.prevent="doSubmit()" class="btn btn-primary btn-sm mr-2"><i class="fas fa-filter"></i> Filter</button>
+				<a href="#" v-on:click.prevent="fastLoad('{{route('practice-management.client-pro-changes')}}')" class="btn btn-link btn-sm text-danger">Clear Filters</a>
+			</div>
+		</div>
+	</div>
+</form>
+<?php
+$loadedFilters = $filters;
+$allFilterKeys = [
+	'date_category',
+	'date_value_1',
+	'date_value_2',
+	'responsibility_type',
+	'old_pro',
+	'new_pro'
+];
+for ($i = 0; $i < count($allFilterKeys); $i++) {
+	if (!isset($loadedFilters[$allFilterKeys[$i]]) || !$loadedFilters[$allFilterKeys[$i]]) {
+		$loadedFilters[$allFilterKeys[$i]] = '';
+	}
+}
+?>
+<script>
+	(function() {
+		function init() {
+			window.apapp = new Vue({
+				el: '#client-pro-changes-filters',
+				delimiters: ['@{{', '}}'],
+				data: {
+					filters: <?= json_encode($loadedFilters) ?>
+				},
+				methods: {
+					doSubmit: function() {
+						fastLoad('{{ route("practice-management.client-pro-changes") }}?' + $('#client-pro-changes-filters').serialize());
+						return false;
+					},
+					init: function() {
+
+					}
+				},
+				mounted: function() {
+					this.init();
+
+					let oldProSelect = $('<select name="old_pro" class="form-control min-width-unset input-sm" provider-search data-pro-uid="{{request()->input("old_pro")}}" provider-type="hcp"><option value="">--select--</option></select>').appendTo('.old-pro-filter-container');
+					let newProSelect = $('<select name="new_pro" class="form-control min-width-unset input-sm" provider-search data-pro-uid="{{request()->input("new_pro")}}" provider-type="hcp"><option value="">--select--</option></select>').appendTo('.new-pro-filter-container');
+					initProSuggest();
+				},
+			});
+
+
+		}
+		addMCInitializer('client-pro-changes-filters', init, '#client-pro-changes-filters');
+	})();
+</script>

+ 3 - 0
resources/views/app/practice-management/client-pro-changes.blade.php

@@ -9,6 +9,9 @@
                 </strong>
             </div>
             <div class="card-body p-0">
+                <div class="p-3">
+                    @include('app.practice-management.client-pro-changes-filters')
+                </div>
                 <table class="table table-striped table-sm table-bordered mb-3">
                     @if($rows && count($rows))
                         <thead class="bg-light">

+ 13 - 2
resources/views/app/practice-management/notes_filters.blade.php

@@ -75,18 +75,26 @@
 		<div class="form-group">
 			<label>Pro(s):</label>
 			<select multiple class="form-control form-control-sm mr-2" name="pros[]" v-model="filters.pros">
-				<option value="">All Pros</option>
 				@foreach($allProsWithNotes as $notePro)
 				<option value="{{ $notePro->id }}">{{ $notePro->displayName() }}</option>
 				@endforeach
 			</select>
 		</div>
 	</div>
+	<div>
+		<div class="form-group">
+			<label>Ally Pro(s):</label>
+			<select multiple class="form-control form-control-sm mr-2" name="ally_pros[]" v-model="filters.ally_pros">
+				@foreach($allAllyPros as $noteAllyPro)
+				<option value="{{ $noteAllyPro->id }}">{{ $noteAllyPro->displayName() }}</option>
+				@endforeach
+			</select>
+		</div>
+	</div>
 	<div>
 		<div class="form-group">
 			<label>Patients(s):</label>
 			<select multiple class="form-control form-control-sm mr-2" name="patients[]" v-model="filters.patients">
-				<option value="">All Patients</option>
 				@foreach($allPatientsWithNotes as $notePatient)
 				<option value="{{ $notePatient->id }}">{{ $notePatient->displayName() }}</option>
 				@endforeach
@@ -99,9 +107,11 @@
 			<label>Status:</label>
 			<select class="form-control form-control-sm mr-2" name="status" v-model="filters.status">
 				<option value="">All Notes</option>
+				<option value="SIGNED">Notes signed</option>
 				<option value="CANCELLED">Cancelled</option>
 				<option value="NOT_YET_SIGNED">Notes not yet signed</option>
 				<option value="NOT_YET_SIGNED_BUT_ALLY_SIGNED">Notes not yet signed (but ally signed)</option>
+				<option value="WITH_BILLS">With Bills</option>
 				<option value="WITHOUT_BILLS">Without Bills</option>
 			</select>
 		</div>
@@ -128,6 +138,7 @@ $allFilterKeys = [
 	'effective_date_value_1',
 	'effective_date_value_2',
 	'pros',
+	'all_pros',
 	'patients',
 	'status'
 ];

+ 11 - 0
resources/views/app/practice-management/remote-monitoring-admin-row-markup.blade.php

@@ -1,4 +1,15 @@
 <tr data-client-uid="{{$iPatient->client_uid}}" data-care-month-uid="{{$iPatient->care_month_uid}}">
+<td class="pl-2">{{ $loop->index + 1 }}</td>
+    <td class="pl-2">
+        <a href="/patients/view/{{ $iPatient->client_uid }}/care-months/view/{{$iPatient->care_month_uid}}" class="text-nowrap"
+           native target="_blank"
+           open-in-stag-popup
+           update-parent="refresh-rpm-row-{{$trIndex}}"
+           popup-style="tall overflow-visible"
+           mc-initer="care-month-dashboard-{{$iPatient->client_uid}}"
+           title="{{$iPatient->client_name}}"
+        ><span class="sort-data">{{ $iPatient->chart_number }}</span></a>
+    </td>
     <td class="pl-2">
         <a href="/patients/view/{{ $iPatient->client_uid }}/care-months/view/{{$iPatient->care_month_uid}}" class="text-nowrap"
            native target="_blank"

+ 2 - 0
resources/views/app/practice-management/remote-monitoring-admin.blade.php

@@ -84,6 +84,8 @@
                         <table class="table table-sm table-striped table-hover p-0 m-0 border-top" id="table-rm-matrix">
                             <thead class="bg-light">
                             <tr stag-title="Click to sort. Shift+Click to multi-sort.">
+                                <th class="border-0 pl-2">#</th>
+                                <th class="border-0 pl-2">Chart #</th>
                                 <th class="border-0 pl-2">Name</th>
                                 <th class="border-0">DOB</th>
                                 <th class="border-0">RPM?</th>