Samson Mutunga 3 жил өмнө
parent
commit
96839c0c87

+ 18 - 8
app/Http/Controllers/McpController.php

@@ -26,6 +26,8 @@ use App\Models\Ticket;
 use Illuminate\Http\Request;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\DB;
 use Illuminate\Support\Facades\DB;
 use Illuminate\Support\Facades\File;
 use Illuminate\Support\Facades\File;
+use App\Models\Bill;
+use App\Models\ClientSMS;
 
 
 use Illuminate\Support\Facades\Http;
 use Illuminate\Support\Facades\Http;
 use PDF;
 use PDF;
@@ -47,20 +49,20 @@ class McpController extends Controller
 
 
     public function appointments(Request $request)
     public function appointments(Request $request)
     {
     {
-        $data = [];
-        return view('app.mcp.appointments', $data);
+        $appointments = Appointment::paginate(5);
+        return view('app.mcp.appointments', compact('appointments'));
     }
     }
 
 
     public function bills(Request $request)
     public function bills(Request $request)
     {
     {
-        $data = [];
-        return view('app.mcp.bills', $data);
+        $bills = Bill::paginate(5);
+        return view('app.mcp.bills', compact('bills'));
     }
     }
 
 
     public function erx_and_orders(Request $request)
     public function erx_and_orders(Request $request)
     {
     {
-        $data = [];
-        return view('app.mcp.erx_and_orders', $data);
+        $erxAndOrders = Erx::paginate(5);
+        return view('app.mcp.erx_and_orders', compact('erxAndOrders'));
     }
     }
 
 
     public function reports(Request $request)
     public function reports(Request $request)
@@ -71,10 +73,18 @@ class McpController extends Controller
 
 
     public function supply_orders(Request $request)
     public function supply_orders(Request $request)
     {
     {
-        $data = [];
-        return view('app.mcp.supply_orders', $data);
+        $supplyOrders = SupplyOrder::paginate(5);
+        return view('app.mcp.supply_orders', compact('supplyOrders'));
     }
     }
 
 
+    public function client_messages(Request $request)
+    {
+        $clientMessages = ClientSMS::paginate(5);
+        return view('app.mcp.client_messages', compact('clientMessages'));
+    }
+
+    
+
     public function new_patients_awaiting_visit(Request $request){
     public function new_patients_awaiting_visit(Request $request){
         $data = [];
         $data = [];
         return view('app.mcp.new_patients_awaiting_visit', $data);
         return view('app.mcp.new_patients_awaiting_visit', $data);

+ 51 - 1
resources/views/app/mcp/appointments.blade.php

@@ -1,5 +1,55 @@
 @extends ('layouts/template')
 @extends ('layouts/template')
 
 
 @section('content')
 @section('content')
-    <h1>Hi</h1>
+<div class="p-3 mcp-theme-1" id="patients-list">
+    <div class="card">
+
+        <div class="card-header px-3 py-2 d-flex align-items-center">
+            <strong class="mr-4">
+                <i class="fas fa-calendar-alt"></i>
+                Appointments
+            </strong>
+        </div>
+
+        <div class="card-body p-0">
+            <div class="p-3">
+                @include('app.mcp.appointments_filters')
+            </div>
+            <table class="table table-condensed p-0 m-0">
+                <thead class="bg-light">
+                    <tr>
+                        <th class="px-3 border-0">Date</th>
+                        <th class="px-3 border-0">HCP</th>
+                        <th class="px-3 border-0">Patient</th>
+                        <th class="px-3 border-0">New or FU?</th>
+                        <th class="px-3 border-0">Status</th>
+                        <th class="px-3 border-0">Note</th>
+                    </tr>
+                </thead>
+                <tbody>
+                    @foreach($appointments as $appointment)
+                    <tr>
+                        <td>{{-- date --}} -</td>
+                        <td>{{-- hcp --}} -</td>
+                        <td>{{-- patient --}} - </td>
+                        <td>{{-- New or FU? --}} - </td>  
+                        <td>{{-- Status --}} - </td>  
+                        <td>{{-- Note --}} - </td>
+                    </tr>
+                    @endforeach
+
+                    @if(count($appointments) === 0)
+                    <tr>
+                        <td colspan="6">No records found!</td>
+                    </tr>
+                    @endif
+                </tbody>
+
+            </table>
+            <div class="ml-2 mt-2">
+                {{ $appointments->appends(request()->input())->links() }}
+            </div>
+        </div>
+    </div>
+</div>
 @endsection
 @endsection

+ 100 - 0
resources/views/app/mcp/appointments_filters.blade.php

@@ -0,0 +1,100 @@
+<style>
+	#mcp-appointments-filters label {
+		font-weight: bold;
+	}
+
+	#mcp-appointments-filters .mw-100px {
+		min-width: 100px;
+	}
+</style>
+<form id="mcp-appointments-filters" method="GET" action="{{ route('mcp.appointments') }}" class="row align-items-end" v-cloak>
+	   <!-- DATE -->
+	<div class="col-md-2">
+		<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>
+	</div>
+	<div v-if="filters.date_category" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_1" value="{{ $date_value_1 ?? '' }}" type="date" class="form-control input-sm" :placeholder="(filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN') ? 'From' : 'Date'" />
+		</div>
+	</div>
+	<div v-if="filters.date_category && (filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN')" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_2" value="{{ $date_value_2 ?? '' }}" type="date" class="form-control input-sm" placeholder="To" />
+		</div>
+	</div>
+	<!-- STATUS -->
+	<div class="col-md-2">
+		<div class="form-group">
+			<label>Status:</label>
+			<select name="status" class="form-control input-sm" v-model="filters.status">
+				<option value="ALL">All</option>
+				<option value="NEW">New</option>
+				<option value="SIGNED">Signed</option>
+				<option value="VERIFIED">Verified</option>
+				<option value="PROCESSED">Processed</option>
+				<option value="CANCELLED">Cancelled</option>
+			</select>
+		</div>
+	</div>
+	
+	<!-- NEW/FU -->
+	<div class="col-md-2">
+		<div class="form-group">
+			<label>New or FU:</label>
+			<select name="new_or_fu" class="form-control input-sm" v-model="filters.new_or_fu">
+				<option value="ALL">All</option>
+				<option value="NEW">New</option>
+				<option value="FU">FU</option>
+			</select>
+		</div>
+	</div>
+
+	<div class="col-md-2">
+		<div class="form-group d-flex">
+			<label>&nbsp;</label>
+			<button type="submit" class="btn btn-primary btn-sm mr-2 mw-100px">Apply Filters</button>
+			<a href="{{ route('mcp.patients') }}" class="btn btn-danger btn-sm text-white mw-100px">Clear Filters</a>
+		</div>
+	</div>
+</form>
+
+<script>
+	(function() {
+		function init() {
+			window.apapp = new Vue({
+				el: '#mcp-appointments-filters',
+				delimiters: ['@{{', '}}'],
+				data: {
+					filters: {
+						date_category: "<?= $date_category ?? '' ?>",
+						status: "<?= $status ?? '' ?>",
+						new_or_fu: "<?= $new_or_fu ?? '' ?>"
+					}
+				},
+				methods: {
+					init: function() {
+						
+					}
+				},
+				mounted: function() {
+					this.init();
+				},
+			});
+
+
+		}
+		addMCInitializer('mcp-appointments-filters', init, '#mcp-appointments-filters');
+	})();
+</script>

+ 49 - 1
resources/views/app/mcp/bills.blade.php

@@ -1,5 +1,53 @@
 @extends ('layouts/template')
 @extends ('layouts/template')
 
 
 @section('content')
 @section('content')
-    <h1>Hi</h1>
+<div class="p-3 mcp-theme-1" id="patients-list">
+    <div class="card">
+
+        <div class="card-header px-3 py-2 d-flex align-items-center">
+            <strong class="mr-4">
+                <i class="fas fa-file-invoice-dollar"></i>
+                Bills
+            </strong>
+        </div>
+
+        <div class="card-body p-0">
+            <div class="p-3">
+                @include('app.mcp.bills_filters')
+            </div>
+            <table class="table table-condensed p-0 m-0">
+                <thead class="bg-light">
+                    <tr>
+                        <th class="px-3 border-0">Date</th>
+                        <th class="px-3 border-0">Patient</th>
+                        <th class="px-3 border-0">Service</th>
+                        <th class="px-3 border-0">Amount</th>
+                        <th class="px-3 border-0">Status</th>
+                    </tr>
+                </thead>
+                <tbody>
+                    @foreach($bills as $bill)
+                    <tr>
+                        <td>{{-- date --}} -</td>
+                        <td>{{-- patient --}} -</td>
+                        <td>{{-- service --}} - </td>
+                        <td>{{-- amount --}} - </td>                        
+                        <td>{{-- status --}} - </td>
+                    </tr>
+                    @endforeach
+
+                    @if(count($bills) === 0)
+                    <tr>
+                        <td colspan="5">No records found!</td>
+                    </tr>
+                    @endif
+                </tbody>
+
+            </table>
+            <div class="ml-2 mt-2">
+                {{ $bills->appends(request()->input())->links() }}
+            </div>
+        </div>
+    </div>
+</div>
 @endsection
 @endsection

+ 87 - 0
resources/views/app/mcp/bills_filters.blade.php

@@ -0,0 +1,87 @@
+<style>
+	#mcp-bills-filters label {
+		font-weight: bold;
+	}
+
+	#mcp-bills-filters .mw-100px {
+		min-width: 100px;
+	}
+</style>
+<form id="mcp-bills-filters" method="GET" action="{{ route('mcp.notes') }}" class="row align-items-end" v-cloak>
+	<!-- DATE	 -->
+	<div class="col-md-2">
+		<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>
+	</div>
+	<div v-if="filters.date_category" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_1" value="{{ $date_value_1 ?? '' }}" type="date" class="form-control input-sm" :placeholder="(filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN') ? 'From' : 'Date'" />
+		</div>
+	</div>
+	<div v-if="filters.date_category && (filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN')" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_2" value="{{ $date_value_2 ?? '' }}" type="date" class="form-control input-sm" placeholder="To" />
+		</div>
+	</div>
+	<!-- STATUS -->
+	<div class="col-md-2">
+		<div class="form-group">
+			<label>Status:</label>
+			<select name="status" class="form-control input-sm" v-model="filters.status">
+				<option value="ALL">All</option>
+				<option value="NEW">New</option>
+				<option value="SIGNED">Signed</option>
+				<option value="VERIFIED">Verified</option>
+				<option value="PROCESSED">Processed</option>
+				<option value="CANCELLED">Cancelled</option>
+			</select>
+		</div>
+	</div>
+
+	<div class="col-md-2">
+		<div class="form-group d-flex">
+			<label>&nbsp;</label>
+			<button type="submit" class="btn btn-primary btn-sm mr-2 mw-100px">Apply Filters</button>
+			<a href="{{ route('mcp.patients') }}" class="btn btn-danger btn-sm text-white mw-100px">Clear Filters</a>
+		</div>
+	</div>
+</form>
+
+<script>
+	(function() {
+		function init() {
+			window.apapp = new Vue({
+				el: '#mcp-bills-filters',
+				delimiters: ['@{{', '}}'],
+				data: {
+					filters: {
+						date_category: "<?= $date_category ?? '' ?>",
+						status: "<?= $status ?? '' ?>"
+					}
+				},
+				methods: {
+					init: function() {
+
+					}
+				},
+				mounted: function() {
+					this.init();
+				},
+			});
+
+
+		}
+		addMCInitializer('mcp-bills-filters', init, '#mcp-bills-filters');
+	})();
+</script>

+ 53 - 0
resources/views/app/mcp/client_messages.blade.php

@@ -0,0 +1,53 @@
+@extends ('layouts/template')
+
+@section('content')
+<div class="p-3 mcp-theme-1" id="patients-list">
+    <div class="card">
+
+        <div class="card-header px-3 py-2 d-flex align-items-center">
+            <strong class="mr-4">
+                <i class="far fa-comments"></i>
+                Client Messages
+            </strong>
+        </div>
+
+        <div class="card-body p-0">
+            <div class="p-3">
+                @include('app.mcp.client_messages_filters')
+            </div>
+            <table class="table table-condensed p-0 m-0">
+                <thead class="bg-light">
+                    <tr>
+                        <th class="px-3 border-0">Date</th>
+                        <th class="px-3 border-0">To</th>
+                        <th class="px-3 border-0">From</th>
+                        <th class="px-3 border-0">Message</th>
+                        <th class="px-3 border-0">Status</th>
+                    </tr>
+                </thead>
+                <tbody>
+                    @foreach($clientMessages as $clientMessage)
+                    <tr>
+                        <td>{{ $clientMessage->created_at }}</td>
+                        <td>{{$clientMessage->to}}</td>
+                        <td>{{$clientMessage->from}}</td>
+                        <td><?= nl2br($clientMessage->body) ?></td>                        
+                        <td>{{-- status --}} - </td>
+                    </tr>
+                    @endforeach
+
+                    @if(count($clientMessages) === 0)
+                    <tr>
+                        <td colspan="5">No records found!</td>
+                    </tr>
+                    @endif
+                </tbody>
+
+            </table>
+            <div class="ml-2 mt-2">
+                {{ $clientMessages->appends(request()->input())->links() }}
+            </div>
+        </div>
+    </div>
+</div>
+@endsection

+ 95 - 0
resources/views/app/mcp/client_messages_filters.blade.php

@@ -0,0 +1,95 @@
+<style>
+	#mcp-client-messages-filters label {
+		font-weight: bold;
+	}
+
+	#mcp-client-messages-filters .mw-100px {
+		min-width: 100px;
+	}
+</style>
+<form id="mcp-client-messages-filters" method="GET" action="{{ route('mcp.client_messages') }}" class="row align-items-end" v-cloak>
+	<!-- DATE	 -->
+	<div class="col-md-2">
+		<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>
+	</div>
+	<div v-if="filters.date_category" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_1" value="{{ $date_value_1 ?? '' }}" type="date" class="form-control input-sm" :placeholder="(filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN') ? 'From' : 'Date'" />
+		</div>
+	</div>
+	<div v-if="filters.date_category && (filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN')" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_2" value="{{ $date_value_2 ?? '' }}" type="date" class="form-control input-sm" placeholder="To" />
+		</div>
+	</div>
+	<!-- TO OR FROM ME -->
+	<div class="col-md-2">
+		<div class="form-group">
+			<label>To or From Me:</label>
+			<select name="to_or_from_me" class="form-control input-sm" v-model="filters.to_or_from_me">
+				<option value="ALL">All</option>
+				<option value="TO_ME">To me</option>
+				<option value="FROM_ME">From Me</option>
+			</select>
+		</div>
+	</div>
+	<!-- STATUS -->
+	<div class="col-md-2">
+		<div class="form-group">
+			<label>Status:</label>
+			<select name="status" class="form-control input-sm" v-model="filters.status">
+				<option value="ALL">All</option>
+				<option value="AWAITING_REPLY">AWaiting Reply</option>
+			</select>
+		</div>
+	</div>
+
+	<div class="col-md-2">
+		<div class="form-group d-flex">
+			<label>&nbsp;</label>
+			<button type="submit" class="btn btn-primary btn-sm mr-2 mw-100px">Apply Filters</button>
+			<a href="{{ route('mcp.patients') }}" class="btn btn-danger btn-sm text-white mw-100px">Clear Filters</a>
+		</div>
+	</div>
+</form>
+
+<script>
+	(function() {
+		function init() {
+			window.apapp = new Vue({
+				el: '#mcp-client-messages-filters',
+				delimiters: ['@{{', '}}'],
+				data: {
+					filters: {
+						date_category: "<?= $date_category ?? '' ?>",
+						to_or_from_me: "<?= $to_or_from_me ?? '' ?>",
+						status: "<?= $status ?? '' ?>"
+					}
+				},
+				methods: {
+					init: function() {
+
+					}
+				},
+				mounted: function() {
+					this.init();
+				},
+			});
+
+
+		}
+		addMCInitializer('mcp-client-messages-filters', init, '#mcp-client-messages-filters');
+	})();
+</script>

+ 48 - 2
resources/views/app/mcp/erx_and_orders.blade.php

@@ -1,5 +1,51 @@
 @extends ('layouts/template')
 @extends ('layouts/template')
 
 
 @section('content')
 @section('content')
-    <h1>Hi</h1>
-@endsection
+<div class="p-3 mcp-theme-1" id="patients-list">
+    <div class="card">
+
+        <div class="card-header px-3 py-2 d-flex align-items-center">
+            <strong class="mr-4">
+                <i class="fas fa-file-prescription"></i>
+                ERx & Orders
+            </strong>
+        </div>
+
+        <div class="card-body p-0">
+            <div class="p-3">
+                @include('app.mcp.erx_and_orders_filters')
+            </div>
+            <table class="table table-condensed p-0 m-0">
+                <thead class="bg-light">
+                    <tr>
+                        <th class="px-3 border-0">Date</th>
+                        <th class="px-3 border-0">Patient</th>
+                        <th class="px-3 border-0">Content</th>
+                        <th class="px-3 border-0">Status</th>
+                    </tr>
+                </thead>
+                <tbody>
+                    @foreach($erxAndOrders as $erxAndOrder)
+                    <tr>
+                        <td>{{-- date --}} -</td>
+                        <td>{{-- patient --}} -</td>
+                        <td>{{-- content --}} - </td>
+                        <td>{{-- status --}} - </td>
+                    </tr>
+                    @endforeach
+
+                    @if(count($erxAndOrders) === 0)
+                    <tr>
+                        <td colspan="4">No records found!</td>
+                    </tr>
+                    @endif
+                </tbody>
+
+            </table>
+            <div class="ml-2 mt-2">
+                {{ $erxAndOrders->appends(request()->input())->links() }}
+            </div>
+        </div>
+    </div>
+</div>
+@endsection

+ 87 - 0
resources/views/app/mcp/erx_and_orders_filters.blade.php

@@ -0,0 +1,87 @@
+<style>
+	#mcp-erx-and-orders-filters label {
+		font-weight: bold;
+	}
+
+	#mcp-erx-and-orders-filters .mw-100px {
+		min-width: 100px;
+	}
+</style>
+<form id="mcp-erx-and-orders-filters" method="GET" action="{{ route('mcp.notes') }}" class="row align-items-end" v-cloak>
+	<!-- DATE	 -->
+	<div class="col-md-2">
+		<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>
+	</div>
+	<div v-if="filters.date_category" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_1" value="{{ $date_value_1 ?? '' }}" type="date" class="form-control input-sm" :placeholder="(filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN') ? 'From' : 'Date'" />
+		</div>
+	</div>
+	<div v-if="filters.date_category && (filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN')" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_2" value="{{ $date_value_2 ?? '' }}" type="date" class="form-control input-sm" placeholder="To" />
+		</div>
+	</div>
+	<!-- STATUS -->
+	<div class="col-md-2">
+		<div class="form-group">
+			<label>Status:</label>
+			<select name="status" class="form-control input-sm" v-model="filters.status">
+				<option value="ALL">All</option>
+				<option value="NEW">New</option>
+				<option value="SIGNED">Signed</option>
+				<option value="VERIFIED">Verified</option>
+				<option value="PROCESSED">Processed</option>
+				<option value="CANCELLED">Cancelled</option>
+			</select>
+		</div>
+	</div>
+
+	<div class="col-md-2">
+		<div class="form-group d-flex">
+			<label>&nbsp;</label>
+			<button type="submit" class="btn btn-primary btn-sm mr-2 mw-100px">Apply Filters</button>
+			<a href="{{ route('mcp.patients') }}" class="btn btn-danger btn-sm text-white mw-100px">Clear Filters</a>
+		</div>
+	</div>
+</form>
+
+<script>
+	(function() {
+		function init() {
+			window.apapp = new Vue({
+				el: '#mcp-erx-and-orders-filters',
+				delimiters: ['@{{', '}}'],
+				data: {
+					filters: {
+						date_category: "<?= $date_category ?? '' ?>",
+						status: "<?= $status ?? '' ?>"
+					}
+				},
+				methods: {
+					init: function() {
+
+					}
+				},
+				mounted: function() {
+					this.init();
+				},
+			});
+
+
+		}
+		addMCInitializer('mcp-erx-and-orders-filters', init, '#mcp-erx-and-orders-filters');
+	})();
+</script>

+ 3 - 3
resources/views/app/mcp/notes_filters.blade.php

@@ -25,20 +25,20 @@
 	<div v-if="filters.date_category" class="col-md-2">
 	<div v-if="filters.date_category" class="col-md-2">
 		<div class="form-group">
 		<div class="form-group">
 			<label>&nbsp;</label>
 			<label>&nbsp;</label>
-			<input name="date_value_1" value="{{ $date_value_1 ?? '' }}" type="number" class="form-control input-sm" :placeholder="(filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN') ? 'From' : 'Date'" />
+			<input name="date_value_1" value="{{ $date_value_1 ?? '' }}" type="date" class="form-control input-sm" :placeholder="(filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN') ? 'From' : 'Date'" />
 		</div>
 		</div>
 	</div>
 	</div>
 	<div v-if="filters.date_category && (filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN')" class="col-md-2">
 	<div v-if="filters.date_category && (filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN')" class="col-md-2">
 		<div class="form-group">
 		<div class="form-group">
 			<label>&nbsp;</label>
 			<label>&nbsp;</label>
-			<input name="date_value_2" value="{{ $date_value_2 ?? '' }}" type="number" class="form-control input-sm" placeholder="To" />
+			<input name="date_value_2" value="{{ $date_value_2 ?? '' }}" type="date" class="form-control input-sm" placeholder="To" />
 		</div>
 		</div>
 	</div>
 	</div>
 	<!-- STATUS -->
 	<!-- STATUS -->
 	<div class="col-md-2">
 	<div class="col-md-2">
 		<div class="form-group">
 		<div class="form-group">
 			<label>Status:</label>
 			<label>Status:</label>
-			<select name="sex" class="form-control input-sm" v-model="filters.status">
+			<select name="status" class="form-control input-sm" v-model="filters.status">
 				<option value="ALL">All</option>
 				<option value="ALL">All</option>
 				<option value="NEW">New</option>
 				<option value="NEW">New</option>
 				<option value="SIGNED">Signed</option>
 				<option value="SIGNED">Signed</option>

+ 50 - 2
resources/views/app/mcp/supply_orders.blade.php

@@ -1,5 +1,53 @@
 @extends ('layouts/template')
 @extends ('layouts/template')
 
 
 @section('content')
 @section('content')
-    <h1>Hi</h1>
-@endsection
+<div class="p-3 mcp-theme-1" id="patients-list">
+    <div class="card">
+
+        <div class="card-header px-3 py-2 d-flex align-items-center">
+            <strong class="mr-4">
+                <i class="fas fa-file-invoice-dollar"></i>
+                Supply Orders
+            </strong>
+        </div>
+
+        <div class="card-body p-0">
+            <div class="p-3">
+                @include('app.mcp.supply_orders_filters')
+            </div>
+            <table class="table table-condensed p-0 m-0">
+                <thead class="bg-light">
+                    <tr>
+                        <th class="px-3 border-0">Date</th>
+                        <th class="px-3 border-0">Patient</th>
+                        <th class="px-3 border-0">Product</th>
+                        <th class="px-3 border-0">Reason</th>
+                        <th class="px-3 border-0">Status</th>
+                    </tr>
+                </thead>
+                <tbody>
+                    @foreach($supplyOrders as $supplyOrder)
+                    <tr>
+                        <td>{{-- date --}} -</td>
+                        <td>{{-- patient --}} -</td>
+                        <td>{{-- service --}} - </td>
+                        <td>{{-- amount --}} - </td>
+                        <td>{{-- status --}} - </td>
+                    </tr>
+                    @endforeach
+
+                    @if(count($supplyOrders) === 0)
+                    <tr>
+                        <td colspan="5">No records found!</td>
+                    </tr>
+                    @endif
+                </tbody>
+
+            </table>
+            <div class="ml-2 mt-2">
+                {{ $supplyOrders->appends(request()->input())->links() }}
+            </div>
+        </div>
+    </div>
+</div>
+@endsection

+ 87 - 0
resources/views/app/mcp/supply_orders_filters.blade.php

@@ -0,0 +1,87 @@
+<style>
+	#mcp-supply-orders-filters label {
+		font-weight: bold;
+	}
+
+	#mcp-supply-orders-filters .mw-100px {
+		min-width: 100px;
+	}
+</style>
+<form id="mcp-supply-orders-filters" method="GET" action="{{ route('mcp.notes') }}" class="row align-items-end" v-cloak>
+	<!-- DATE	 -->
+	<div class="col-md-2">
+		<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>
+	</div>
+	<div v-if="filters.date_category" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_1" value="{{ $date_value_1 ?? '' }}" type="date" class="form-control input-sm" :placeholder="(filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN') ? 'From' : 'Date'" />
+		</div>
+	</div>
+	<div v-if="filters.date_category && (filters.date_category === 'BETWEEN' || filters.date_category === 'NOT_BETWEEN')" class="col-md-2">
+		<div class="form-group">
+			<label>&nbsp;</label>
+			<input name="date_value_2" value="{{ $date_value_2 ?? '' }}" type="date" class="form-control input-sm" placeholder="To" />
+		</div>
+	</div>
+	<!-- STATUS -->
+	<div class="col-md-2">
+		<div class="form-group">
+			<label>Status:</label>
+			<select name="status" class="form-control input-sm" v-model="filters.status">
+				<option value="ALL">All</option>
+				<option value="NEW">New</option>
+				<option value="SIGNED">Signed</option>
+				<option value="VERIFIED">Verified</option>
+				<option value="PROCESSED">Processed</option>
+				<option value="CANCELLED">Cancelled</option>
+			</select>
+		</div>
+	</div>
+
+	<div class="col-md-2">
+		<div class="form-group d-flex">
+			<label>&nbsp;</label>
+			<button type="submit" class="btn btn-primary btn-sm mr-2 mw-100px">Apply Filters</button>
+			<a href="{{ route('mcp.patients') }}" class="btn btn-danger btn-sm text-white mw-100px">Clear Filters</a>
+		</div>
+	</div>
+</form>
+
+<script>
+	(function() {
+		function init() {
+			window.apapp = new Vue({
+				el: '#mcp-supply-orders-filters',
+				delimiters: ['@{{', '}}'],
+				data: {
+					filters: {
+						date_category: "<?= $date_category ?? '' ?>",
+						status: "<?= $status ?? '' ?>"
+					}
+				},
+				methods: {
+					init: function() {
+
+					}
+				},
+				mounted: function() {
+					this.init();
+				},
+			});
+
+
+		}
+		addMCInitializer('mcp-supply-orders-filters', init, '#mcp-supply-orders-filters');
+	})();
+</script>

+ 1 - 0
routes/web.php

@@ -82,6 +82,7 @@ Route::middleware('pro.auth')->group(function () {
         Route::get('erx-and-orders', 'McpController@erx_and_orders')->name('erx_and_orders');
         Route::get('erx-and-orders', 'McpController@erx_and_orders')->name('erx_and_orders');
         Route::get('reports', 'McpController@reports')->name('reports');
         Route::get('reports', 'McpController@reports')->name('reports');
         Route::get('supply-orders', 'McpController@supply_orders')->name('supply_orders');
         Route::get('supply-orders', 'McpController@supply_orders')->name('supply_orders');
+        Route::get('client-messages', 'McpController@client_messages')->name('client_messages');
 
 
         Route::get('new_patients_awaiting_visit', 'McpController@new_patients_awaiting_visit')->name('new_patients_awaiting_visit');
         Route::get('new_patients_awaiting_visit', 'McpController@new_patients_awaiting_visit')->name('new_patients_awaiting_visit');
         Route::get('notes_pending_signature', 'McpController@notes_pending_signature')->name('notes_pending_signature');
         Route::get('notes_pending_signature', 'McpController@notes_pending_signature')->name('notes_pending_signature');