|
@@ -28,6 +28,7 @@ use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Support\Facades\File;
|
|
use Illuminate\Support\Facades\File;
|
|
use App\Models\Bill;
|
|
use App\Models\Bill;
|
|
use App\Models\ClientSMS;
|
|
use App\Models\ClientSMS;
|
|
|
|
+use App\Models\AccountInvite;
|
|
|
|
|
|
use Illuminate\Support\Facades\Http;
|
|
use Illuminate\Support\Facades\Http;
|
|
use PDF;
|
|
use PDF;
|
|
@@ -96,47 +97,6 @@ class McpController extends Controller
|
|
return view('app.mcp.patients', compact('patients', 'filters'));
|
|
return view('app.mcp.patients', compact('patients', 'filters'));
|
|
}
|
|
}
|
|
|
|
|
|
- private function filterSimpleQuery(Request $request, $query, $columnName, $valueName) {
|
|
|
|
- if($request->input($valueName)) {
|
|
|
|
- $query->where($columnName, $request->input($valueName));
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- private function filterMultiQuery(Request $request, $query, $columnName, $keyName, $valueName1, $valueName2) {
|
|
|
|
- switch($request->input($keyName)) {
|
|
|
|
- case 'EXACTLY':
|
|
|
|
- if($request->input($valueName1)) {
|
|
|
|
- $query->where($columnName, $request->input($valueName1));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case 'LESS_THAN':
|
|
|
|
- if($request->input($valueName1)) {
|
|
|
|
- $query->where($columnName, '<', $request->input($valueName1));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case 'GREATER_THAN':
|
|
|
|
- if($request->input($valueName1)) {
|
|
|
|
- $query->where($columnName, '>', $request->input($valueName1));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case 'BETWEEN':
|
|
|
|
- if($request->input($valueName1) && $request->input($valueName2)) {
|
|
|
|
- $query
|
|
|
|
- ->where($columnName, '>=', $request->input($valueName1))
|
|
|
|
- ->where($columnName, '<=', $request->input($valueName2));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case 'NOT_BETWEEN':
|
|
|
|
- if($request->input($valueName1) && $request->input($valueName2)) {
|
|
|
|
- $query
|
|
|
|
- ->where(function ($q) use ($request, $columnName, $valueName1, $valueName2) {
|
|
|
|
- $q->where($columnName, '<', $request->input($valueName1))
|
|
|
|
- ->orWhere($columnName, '>', $request->input($valueName2));
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
public function notes(Request $request)
|
|
public function notes(Request $request)
|
|
{
|
|
{
|
|
$filters = $request->all();
|
|
$filters = $request->all();
|
|
@@ -239,6 +199,21 @@ class McpController extends Controller
|
|
return view('app.mcp.client_messages', compact('clientMessages', 'filters'));
|
|
return view('app.mcp.client_messages', compact('clientMessages', 'filters'));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public function patients_accounts_invites(Request $request){
|
|
|
|
+ $filters = $request->all();
|
|
|
|
+
|
|
|
|
+ $accountInvites = AccountInvite::select('account_invite.*')
|
|
|
|
+ ->join('client', 'client.id', '=', 'account_invite.for_client_id');
|
|
|
|
+ $accountInvites = $accountInvites->where('client.mcp_pro_id', $this->performer->pro->id);
|
|
|
|
+
|
|
|
|
+ $this->filterMultiQuery($request, $accountInvites, 'account_invite.created_at', 'date_category', 'date_value_1', 'date_value_2');
|
|
|
|
+ $this->filterSimpleQuery($request, $accountInvites, 'account_invite.status', 'status');
|
|
|
|
+
|
|
|
|
+ $accountInvites = $accountInvites->orderBy('created_at', 'DESC')->paginate(20);
|
|
|
|
+
|
|
|
|
+ return view('app.mcp.patients-accounts-invites', compact('accountInvites', 'filters'));
|
|
|
|
+ }
|
|
|
|
+
|
|
public function new_patients_awaiting_visit(Request $request){
|
|
public function new_patients_awaiting_visit(Request $request){
|
|
$data = [
|
|
$data = [
|
|
'records' => Client::where('mcp_pro_id', $this->performer->pro->id)
|
|
'records' => Client::where('mcp_pro_id', $this->performer->pro->id)
|