Samson Mutunga 3 yıl önce
ebeveyn
işleme
f272ce51d4

+ 1 - 0
app/Http/Controllers/AdminController.php

@@ -100,6 +100,7 @@ class AdminController extends Controller
         $this->filterMultiQuery($request, $patients, 'usual_bmi_max', 'bmi_category', 'bmi_value_1', 'bmi_value_2');
         $this->filterMultiQuery($request, $patients, 'most_recent_weight_at', 'last_weighed_in_category', 'last_weighed_in_value_1', 'last_weighed_in_value_2');
         $this->filterMultiQuery($request, $patients, 'most_recent_bp_at', 'last_bp_category', 'last_bp_value_1', 'last_bp_value_2');
+        $this->filterMultiQuery($request, $patients, 'created_at', 'created_at', 'created_at_value_1', 'created_at_value_2');
 
         if($request->input('number_of_measurements')){
             $keyName = $request->input('number_of_measurements');

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

@@ -20,16 +20,18 @@
             <th class="border-0">Mailing Address State</th>
             <th class="border-0">Insurance</th>
             @if($performer->pro->pro_type == 'ADMIN')
-		<th class="border-0">Ded.</th>
-	    @endif
+                <th class="border-0">Ded.</th>
+            @endif
+            <th class="border-0">Age</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">Notes</th>
             <th class="border-0">Next Appt.</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">@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>
@@ -90,26 +92,15 @@
                             <span class="font-weight-bold">{{ format_number(@$patient->mpb_remaining)}}</span>
                         </small>
 		</td>
+        <td>{{$patient->age_in_years}}</td>
 		@endif
                 <td>
                     {{ friendly_date($patient->most_recent_completed_mcp_note_date) }}
-                    {{-- {{$patient->lastMcpAppointment ? friendly_date_time($patient->lastMcpAppointment->raw_date.' '.$patient->lastMcpAppointment->raw_start_time) : '-'}}--}}
-                </td>
-                <td>{{$patient->nextMcpAppointment ? friendly_date_time($patient->nextMcpAppointment->raw_date.' '.$patient->nextMcpAppointment->raw_start_time) : '-'}}
-                    <div if-details-view>
-                        {{$patient->nextMcpAppointment ? $patient->nextMcpAppointment->status : '-'}}
-                    </div>
-                </td>
-                <td>{{ friendlier_date_time($patient->most_recent_cellular_bp_measurement_at) }}</td>
-                <td>{{ friendlier_date_time($patient->most_recent_cellular_weight_measurement_at) }}</td>
-                <td>
-                    <div title="{{friendly_date_time($patient->created_at)}}">{{friendly_date_time($patient->created_at, false)}}</div>
-                    <div class="mt-1" if-details-view>
-                        By <span>{{$patient->creator ? $patient->creator->displayName() : '-'}}</span>
-                    </div>
+                    @if($patient->lastMcpAppointment)
+                        <br />
+                        <small class="text-muted">{{ $patient->lastMcpAppointment->pro->displayName() }}</small>
+                    @endif
                 </td>
-                <td>{{$patient->getMcpAssignedOn()}}</td>
-                <td>{{$patient->defaultNaPro ? $patient->defaultNaPro->displayName() : '-'}}</td>
                 <td class="p-0 pb-1">
                     <div if-details-view>
                     @if(count($patient->activeNotes))
@@ -295,6 +286,22 @@
                         {{count($patient->activeNotes)}}
                     </div>
                 </td>
+                <td>{{$patient->nextMcpAppointment ? friendly_date_time($patient->nextMcpAppointment->raw_date.' '.$patient->nextMcpAppointment->raw_start_time) : '-'}}
+                    <div if-details-view>
+                        {{$patient->nextMcpAppointment ? $patient->nextMcpAppointment->status : '-'}}
+                    </div>
+                </td>
+                <td>{{ friendlier_date_time($patient->most_recent_cellular_bp_measurement_at) }}</td>
+                <td>{{ friendlier_date_time($patient->most_recent_cellular_weight_measurement_at) }}</td>
+                <td>
+                    <div title="{{friendly_date_time($patient->created_at)}}">{{friendly_date_time($patient->created_at, false)}}</div>
+                    <div class="mt-1" if-details-view>
+                        By <span>{{$patient->creator ? $patient->creator->displayName() : '-'}}</span>
+                    </div>
+                </td>
+                <td>{{$patient->getMcpAssignedOn()}}</td>
+                <td>{{$patient->defaultNaPro ? $patient->defaultNaPro->displayName() : '-'}}</td>
+                
                 <td>{{$patient->client_engagement_status_category == 'DUMMY'? 'Test Record': $patient->client_engagement_status_category}}</td>                
                 <td>{{$patient->temparatureGunDeliveryStatus()}}</td>
                 <td>{{$patient->pulseOximeterDeliveryStatus()}}</td>

+ 33 - 6
resources/views/app/admin/patients_filters.blade.php

@@ -111,10 +111,10 @@
 			</select>
 			<div v-show="filters.last_visit_category" class="mt-2">
 				<div>
-					<input  name="last_visit_value_1" v-model="filters.last_visit_value_1" type="number" class="form-control input-sm" :placeholder="(filters.last_visit_category === 'BETWEEN' || filters.last_visit_category === 'NOT_BETWEEN') ? 'From' : 'Last Visit'" />
+					<input  name="last_visit_value_1" v-model="filters.last_visit_value_1" type="date" class="form-control input-sm" :placeholder="(filters.last_visit_category === 'BETWEEN' || filters.last_visit_category === 'NOT_BETWEEN') ? 'From' : 'Last Visit'" />
 				</div>
 				<div v-show="filters.last_visit_category === 'BETWEEN' || filters.last_visit_category === 'NOT_BETWEEN'" class="mt-2">
-					<input name="last_visit_value_2" v-model="filters.last_visit_value_2" type="number" class="form-control input-sm" placeholder="To" />
+					<input name="last_visit_value_2" v-model="filters.last_visit_value_2" type="date" class="form-control input-sm" placeholder="To" />
 				</div>
 			</div>
 		</div>
@@ -135,10 +135,10 @@
 			</select>
 			<div v-show="filters.next_appointment_category && filters.next_appointment_category !== 'NONE'" class="mt-2">
 				<div>
-					<input  name="next_appointment_value_1" v-model="filters.next_appointment_value_1" type="number" class="form-control input-sm" :placeholder="(filters.next_appointment_category === 'BETWEEN' || filters.next_appointment_category === 'NOT_BETWEEN') ? 'From' : 'Next Appt.'" />
+					<input  name="next_appointment_value_1" v-model="filters.next_appointment_value_1" type="date" class="form-control input-sm" :placeholder="(filters.next_appointment_category === 'BETWEEN' || filters.next_appointment_category === 'NOT_BETWEEN') ? 'From' : 'Next Appt.'" />
 				</div>
 				<div v-show="filters.next_appointment_category === 'BETWEEN' || filters.next_appointment_category === 'NOT_BETWEEN'" class="mt-2">
-					<input name="next_appointment_value_2" v-model="filters.next_appointment_value_2" type="number" class="form-control input-sm" placeholder="To" />
+					<input name="next_appointment_value_2" v-model="filters.next_appointment_value_2" type="date" class="form-control input-sm" placeholder="To" />
 				</div>
 			</div>
 		</div>
@@ -272,6 +272,29 @@
 		</div>
 	</div>
 
+	<!-- CREATED AT -->
+	<div class="sm-section">
+		<div class="">
+			<label>Created At:</label>
+			<select name="created_at" class="form-control input-sm" v-model="filters.created_at">
+				<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.created_at" class="mt-2">
+				<div>
+					<input  name="created_at_value_1" v-model="filters.created_at_value_1" type="date" class="form-control input-sm" :placeholder="(filters.created_at === 'BETWEEN' || filters.created_at === 'NOT_BETWEEN') ? 'From' : 'Last Visit'" />
+				</div>
+				<div v-show="filters.created_at === 'BETWEEN' || filters.created_at === 'NOT_BETWEEN'" class="mt-2">
+					<input name="created_at_value_2" v-model="filters.created_at_value_2" type="date" class="form-control input-sm" placeholder="To" />
+				</div>
+			</div>
+		</div>
+	</div>
+
 	@if($performer->pro->pro_type == 'ADMIN')
 	<div class="sm-section">
 		<div class="">
@@ -383,7 +406,11 @@ $allFilterKeys = [
 	'number_of_measurements_value_1',
 	'number_of_measurements_value_2',
 	'home_address_state',
-	'chart_number'
+	'chart_number',
+	'created_at',
+	'created_at_value_1',
+	'created_at_value_2',
+
 ];
 for ($i=0; $i < count($allFilterKeys); $i++) {
 	if (!isset($loadedFilters[$allFilterKeys[$i]]) || !$loadedFilters[$allFilterKeys[$i]]) {
@@ -405,7 +432,7 @@ for ($i=0; $i < count($allFilterKeys); $i++) {
 
 					},
 					doSubmit: function() {
-						fastLoad('{{ route('admin.patients') }}?' + $('#admin-patients-filters').serialize());
+						fastLoad("{{ route('admin.patients') }}?" + $('#admin-patients-filters').serialize());
 						return false;
 					}
 				},