Jelajahi Sumber

RM action report - mcp filter

Vijayakrishnan 3 tahun lalu
induk
melakukan
3a95ed4bf2

+ 9 - 2
app/Http/Controllers/PracticeManagementController.php

@@ -3627,8 +3627,8 @@ ORDER BY c.name_last, c.name_first
 
         //remove dummies
         $cmQuery = $cmQuery->whereHas('client', function($clientQuery) {
-            return $clientQuery->where('client_engagement_status_category','<>', 'DUMMY')
-            ->orWhere('client_engagement_status_category', '=', null);
+            return $clientQuery->whereRaw("(client_engagement_status_category != 'DUMMY' OR client_engagement_status_category IS NULL)")
+            ->where('is_enrolled_in_rm', 'YES');
         });
 
         if($numOfMeasurements){
@@ -3672,6 +3672,13 @@ ORDER BY c.name_last, c.name_first
             if($claimingClosed === 'NO') $cmQuery = $cmQuery->where('is_claim_closed', false);
         }
 
+        if($request->input('mcp_uid')) {
+            $mcp = Pro::where('uid', $request->input('mcp_uid'))->first();
+            if($mcp) {
+                $cmQuery = $cmQuery->where('mcp_pro_id', $mcp->id);
+            }
+        }
+
         $cmQuery = $cmQuery->orderBy('start_date', 'DESC')->orderBy('client_id', 'ASC');
         $rows =$cmQuery->paginate(15);
 

+ 41 - 69
resources/views/app/practice-management/rm-action-report.blade.php

@@ -21,7 +21,7 @@
 		margin-right: 15px;
 	}
 	.sm-section {
-		width: 250px !important;
+		width: 150px !important;
 	}
     thead.border-bottom-0 tr th {
         border-bottom: none;
@@ -38,70 +38,71 @@
         </div>
         <div class="card-body p-0 border-0 table-responsive">
             <div class="m-2">
-                <form id="rm-action-report-filters" method="GET" action="{{ route('practice-management.rmActionReport') }}" class="filter-container" v-cloak>
+                <form id="rm-action-report-filters" method="GET" action="{{ route('practice-management.rmActionReport') }}" class="filter-container">
                     <div class="sm-section">
-                        <div class="form-group">
-                            <label>Month/Year</label>
-                            <input name="care_month_year" type="month" class="form-control input-sm" v-model="filters.care_month_year">
+                        <div class="form-group m-0">
+                            <label class="font-weight-normal mb-1">Month/Year</label>
+                            <input name="care_month_year" type="month" class="form-control input-sm" value="{{request()->input('care_month_year')}}">
                         </div>
                     </div>
-                    <!-- <div class="sm-section">
-                        <div class="form-group">
-                            <label>Care Month Start Date:</label>
-                            <input name="care_month_start_date" type="date" class="form-control input-sm" v-model="filters.care_month_start_date">
-                        </div>
-                    </div> -->
                     <div class="sm-section">
-                        <div class="form-group">
-                            <label>Claiming Closed:</label>
-                            <select name="claiming_closed" class="form-control input-sm" v-model="filters.claiming_closed">
-                                <option value="">All</option>
-                                <option value="YES">Yes</option>
-                                <option value="NO">No</option>
+                        <div class="form-group m-0">
+                            <label class="font-weight-normal mb-1">Claiming Closed:</label>
+                            <select name="claiming_closed" class="form-control input-sm">
+                                <option {{request()->input('claiming_closed') === '' ? 'selected' : ''}} value="">All</option>
+                                <option {{request()->input('claiming_closed') === 'YES' ? 'selected' : ''}} value="YES">Yes</option>
+                                <option {{request()->input('claiming_closed') === 'NO' ? 'selected' : ''}} value="NO">No</option>
                             </select>
                         </div>
                     </div>
 
                     <div class="sm-section">
-                        <div class="form-group">
-                            <label>Number Of Measurement Days:</label>
-                            <select name="num_of_measurements" class="form-control input-sm" v-model="filters.num_of_measurements">
-                                <option value="">All</option>
-                                <option value="16_or_more">16 or more</option>
-                                <option value="min_or_more">{{$minRequiredMeasurements}} or more</option>
-                                <option value="less_than_min">Less than {{$minRequiredMeasurements}}</option>
+                        <div class="form-group m-0">
+                            <label class="font-weight-normal mb-1">Measurement Days:</label>
+                            <select name="num_of_measurements" class="form-control input-sm">
+                                <option {{request()->input('num_of_measurements') === '' ? 'selected' : ''}} value="">All</option>
+                                <option {{request()->input('num_of_measurements') === '16_or_more' ? 'selected' : ''}} value="16_or_more">16 or more</option>
+                                <option {{request()->input('num_of_measurements') === 'min_or_more' ? 'selected' : ''}} value="min_or_more">{{$minRequiredMeasurements}} or more</option>
+                                <option {{request()->input('num_of_measurements') === 'less_than_min' ? 'selected' : ''}} value="less_than_min">Less than {{$minRequiredMeasurements}}</option>
                             </select>
                         </div>
                     </div>
 
                     <div class="sm-section">
-                        <div class="form-group">
-                            <label>Has had visit in the last 90 days:</label>
-                            <select name="has_recent_visit" class="form-control input-sm" v-model="filters.has_recent_visit">
-                                <option value="">All</option>
-                                <option value="YES">Yes</option>
-                                <option value="NO">No</option>
+                        <div class="form-group m-0">
+                            <label class="font-weight-normal mb-1">Visit in 90 days:</label>
+                            <select name="has_recent_visit" class="form-control input-sm">
+                                <option {{request()->input('has_recent_visit') === '' ? 'selected' : ''}} value="">All</option>
+                                <option {{request()->input('has_recent_visit') === 'YES' ? 'selected' : ''}} value="YES">Yes</option>
+                                <option {{request()->input('has_recent_visit') === 'NO' ? 'selected' : ''}} value="NO">No</option>
                             </select>
                         </div>
                     </div>
 
                     <div class="sm-section">
-                        <div class="form-group">
-                            <label>Has been spoken to this month:</label>
-                            <select name="has_been_spoken_to" class="form-control input-sm" v-model="filters.has_been_spoken_to">
-                                <option value="">All</option>
-                                <option value="YES">Yes</option>
-                                <option value="NO">No</option>
+                        <div class="form-group m-0">
+                            <label class="font-weight-normal mb-1">Comm. this month:</label>
+                            <select name="has_been_spoken_to" class="form-control input-sm">
+                                <option {{request()->input('has_been_spoken_to') === '' ? 'selected' : ''}} value="">All</option>
+                                <option {{request()->input('has_been_spoken_to') === 'YES' ? 'selected' : ''}} value="YES">Yes</option>
+                                <option {{request()->input('has_been_spoken_to') === 'NO' ? 'selected' : ''}} value="NO">No</option>
                             </select>
                         </div>
                     </div>
 
+                    <div class="sm-section">
+                        <div class="form-group m-0">
+                            <label class="font-weight-normal mb-1">MCP:</label>
+                            <select name="mcp_uid" class="form-control input-sm" provider-search provider-type="hcp" data-pro-uid="{{request()->input('mcp_uid')}}"></select>
+                        </div>
+                    </div>
+
                     <div>
-                        <div class="form-group">
-                            <label>&nbsp;</label>
+                        <div class="form-group m-0">
+                            <label class="font-weight-normal mb-1">&nbsp;</label>
                             <div class=" d-flex">
-                                <button type="button" 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.rmActionReport') }}')" class="btn btn-link btn-sm text-danger">Clear Filters</a>
+                                <button type="button" onclick="return fastLoad('{{  route('practice-management.rmActionReport') }}?' + $('#rm-action-report-filters').serialize())" class="btn btn-primary btn-sm mr-2"><i class="fas fa-filter"></i> Filter</button>
+                                <a href="#" onclick="return fastLoad('{{  route('practice-management.rmActionReport') }}')" class="btn btn-link btn-sm text-danger">Clear Filters</a>
                             </div>
                         </div>
                     </div>
@@ -312,33 +313,4 @@ for ($i=0; $i < count($allFilterKeys); $i++) {
 }
 ?>
 
-<script>
-	(function() {
-		function init() {
-			new Vue({
-				el: '#rm-action-report-filters',
-				delimiters: ['@{{', '}}'],
-				data: {
-					filters: <?= json_encode($loadedFilters) ?>
-				},
-				methods: {
-					init: function() {
-
-					},
-					doSubmit: function() {
-						fastLoad('{{  route('practice-management.rmActionReport') }}?' + $('#rm-action-report-filters').serialize());
-						return false;
-					}
-				},
-				mounted: function() {
-					console.log(this.filters);
-					this.init();
-				},
-			});
-
-
-		}
-		addMCInitializer('rm-action-report-filters', init, '#rm-action-report-filters');
-	})();
-</script>
 @endsection