public function postCc() { $q = strtolower(Input::get('term')); if (!$q) { return; } $data['response'] = 'false'; $query = Encounters::where('encounter_cc', 'LIKE', "%{$q}%")->where('practice_id', '=', Session::get('practice_id'))->select('encounter_cc')->distinct()->get(); if ($query) { $data['message'] = array(); $data['response'] = 'true'; foreach ($query as $row) { $data['message'][] = array('label' => $row->encounter_cc, 'value' => $row->encounter_cc); } } echo json_encode($data); }
public function dashboard() { $practice = DB::table('practiceinfo')->where('practice_id', '=', Session::get('practice_id'))->first(); $user_id = Session::get('user_id'); $result = User::find($user_id); $practice_id = Session::get('practice_id'); $fax_query = Received::where('practice_id', '=', $practice_id)->count(); $displayname = $result->displayname; $from = $displayname . ' (' . $user_id . ')'; $data['header'] = $this->mobile_header_build(Session::get('displayname')); if (Session::get('group_id') == '2') { $data1['number_messages'] = Messaging::where('mailbox', '=', $user_id)->count(); $data1['number_documents'] = Scans::where('practice_id', '=', $practice_id)->count() + $fax_query; $data1['number_appts'] = $this->getNumberAppts($user_id); $query1 = DB::table('t_messages')->join('demographics', 't_messages.pid', '=', 'demographics.pid')->where('t_messages.t_messages_from', '=', $from)->where('t_messages.t_messages_signed', '=', 'No')->count(); $query2 = DB::table('encounters')->join('demographics', 'encounters.pid', '=', 'demographics.pid')->where('encounters.encounter_provider', '=', $displayname)->where('encounters.encounter_signed', '=', 'No')->count(); $data1['number_drafts'] = $query1 + $query2; $data1['number_reminders'] = DB::table('alerts')->join('demographics', 'alerts.pid', '=', 'demographics.pid')->where('alerts.alert_provider', '=', $user_id)->where('alerts.alert_date_complete', '=', '0000-00-00 00:00:00')->where('alerts.alert_reason_not_complete', '=', '')->where(function ($query_array) { $query_array->where('alerts.alert', '=', 'Laboratory results pending')->orWhere('alerts.alert', '=', 'Radiology results pending')->orWhere('alerts.alert', '=', 'Cardiopulmonary results pending')->orWhere('alerts.alert', '=', 'Referral pending')->orWhere('alerts.alert', '=', 'Reminder')->orWhere('alerts.alert', '=', 'REMINDER'); })->count(); $data1['number_bills'] = Encounters::where('bill_submitted', '=', 'No')->where('user_id', '=', $user_id)->count(); $data1['number_tests'] = Tests::whereNull('pid')->where('practice_id', '=', $practice_id)->count(); } $data['content'] = View::make('mobile.home_content', $data1)->render(); $data['form'] = ''; $left_panel_array = array(array('Schedule', 'mobile_schedule'), array('Inbox', 'mobile_inbox')); if (Session::get('group_id') != '100') { $left_panel_array[] = array('Drafts', 'mobile_drafts'); $left_panel_array[] = array('Alerts', 'mobile_alerts'); if (Session::get('patient_centric') == 'n') { $left_panel_array[] = array('Scans', 'mobile_scan'); if ($practice->fax_type != "") { $left_panel_array[] = array('Faxes', 'mobile_fax'); } } } $data['left_panel'] = $this->mobile_menu_build($left_panel_array, "left_panel_list", 'mobile_click_home'); $data['right_panel'] = ''; $this->layout->style = HTML::style('css/mobile.css'); $this->layout->style .= HTML::style('css/toastr.min.css'); $this->layout->script = $this->js_assets('base', true); $this->layout->content = View::make('mobile.home', $data); }
public function postLetterTemplateConstruct() { $pid = Session::get('pid'); $row1 = Encounters::where('pid', '=', Session::get('pid'))->where('eid', '!=', '')->where('practice_id', '=', Session::get('practice_id'))->orderBy('eid', 'desc')->first(); if ($row1) { $lastvisit = date('F jS, Y', strtotime($row1->encounter_DOS)); } else { $lastvisit = "No previous visits."; } $ptname = Session::get('ptname'); $row = Demographics::find($pid); $arr['start'] = 'This letter is in regards to ' . $row->firstname . ' ' . $row->lastname . ' (Date of Birth: ' . date('F jS, Y', $this->human_to_unix($row->DOB)) . '), who is a patient of mine. ' . $row->firstname . ' was last seen by me on ' . $lastvisit . '. '; $arr['firstname'] = $row->firstname; echo json_encode($arr); }
protected function getMenuData() { $menu_data = array(); $row = Practiceinfo::find(Session::get('practice_id')); $menu_data['mtm'] = $row->mtm_extension; $menu_data['id'] = Session::get('pid'); $row1 = Encounters::where('pid', '=', Session::get('pid'))->where('eid', '!=', '')->where('practice_id', '=', Session::get('practice_id'))->orderBy('eid', 'desc')->first(); if ($row1) { $menu_data['lastvisit'] = date('F jS, Y', strtotime($row1->encounter_DOS)); } else { $menu_data['lastvisit'] = "No previous visits."; } $row2 = Schedule::where('pid', '=', Session::get('pid'))->where('start', '>', time())->first(); if (isset($row2->start)) { $menu_data['nextvisit'] = '<br>' . date('F jS, Y, g:i A', $row2->start); } else { $menu_data['nextvisit'] = 'None.'; } $row3 = Encounters::where('pid', '=', Session::get('pid'))->where('eid', '!=', '')->where('practice_id', '=', Session::get('practice_id'))->where('encounter_template', '=', 'standardpsych')->where('addendum', '=', 'n')->orderBy('eid', 'desc')->first(); if ($row3) { $psych_date = strtotime($row3->encounter_DOS); $new_psych_date = $psych_date + 31556926; $psych_query = Encounters::where('pid', '=', Session::get('pid'))->where('eid', '!=', '')->where('practice_id', '=', Session::get('practice_id'))->where('addendum', '=', 'n')->where(function ($query_array1) { $query_array1->where('encounter_template', '=', 'standardpsych')->orWhere('encounter_template', '=', 'standardpsych1'); })->orderBy('eid', 'desc')->get(); $tp_date = ''; if ($psych_query) { $i = 0; $psych_comp = ''; $psych_comp1 = ''; $tp_eid = ''; foreach ($psych_query as $psych_row) { $planInfo = Plan::find($psych_row->eid); if ($planInfo) { if ($i == 0) { $psych_comp = $planInfo->goals; $psych_comp .= $planInfo->tp; $tp_eid = $psych_row->eid; $tp_eid1 = $tp_eid; } else { $psych_comp1 = $planInfo->goals; $psych_comp1 .= $planInfo->tp; $tp_eid1 = $psych_row->eid; } if ($psych_comp1 != $psych_comp && $i != 0) { $tp = DB::table('encounters')->where('eid', '=', $tp_eid)->first(); $tp_date = '<strong>Most recent TP adjustment:</strong> ' . date('F jS, Y', strtotime($tp->encounter_DOS)) . '<br>'; break; } else { $i++; $tp_eid = $tp_eid1; } } } } $menu_data['psych'] = '<strong>Last Annual Psychiatric Eval:</strong> ' . date('F jS, Y', $psych_date) . '<br><strong>Next Annual Psychiatric Eval Due:</strong> ' . date('F jS, Y', $new_psych_date) . '<br>' . $tp_date; } else { $menu_data['psych'] = ''; } $menu_data['supplements'] = $row->supplements_menu_item; $menu_data['immunizations'] = $row->immunizations_menu_item; return $menu_data; }
public function dashboard() { $user_id = Session::get('user_id'); $practice_id = Session::get('practice_id'); $data['practiceinfo'] = Practiceinfo::find($practice_id); $result = User::find($user_id); $data['displayname'] = $result->displayname; $displayname = $result->displayname; $fax_query = Received::where('practice_id', '=', $practice_id)->count(); $from = $displayname . ' (' . $user_id . ')'; if (Session::get('group_id') == '2') { $data['number_messages'] = Messaging::where('mailbox', '=', $user_id)->count(); $data['number_documents'] = Scans::where('practice_id', '=', $practice_id)->count() + $fax_query; $data['number_appts'] = $this->getNumberAppts($user_id); $query1 = DB::table('t_messages')->join('demographics', 't_messages.pid', '=', 'demographics.pid')->where('t_messages.t_messages_from', '=', $from)->where('t_messages.t_messages_signed', '=', 'No')->count(); $query2 = DB::table('encounters')->join('demographics', 'encounters.pid', '=', 'demographics.pid')->where('encounters.encounter_provider', '=', $displayname)->where('encounters.encounter_signed', '=', 'No')->count(); $data['number_drafts'] = $query1 + $query2; $data['number_reminders'] = DB::table('alerts')->join('demographics', 'alerts.pid', '=', 'demographics.pid')->where('alerts.alert_provider', '=', $user_id)->where('alerts.alert_date_complete', '=', '0000-00-00 00:00:00')->where('alerts.alert_reason_not_complete', '=', '')->where(function ($query_array) { $query_array->where('alerts.alert', '=', 'Laboratory results pending')->orWhere('alerts.alert', '=', 'Radiology results pending')->orWhere('alerts.alert', '=', 'Cardiopulmonary results pending')->orWhere('alerts.alert', '=', 'Referral pending')->orWhere('alerts.alert', '=', 'Reminder')->orWhere('alerts.alert', '=', 'REMINDER'); })->count(); $data['number_bills'] = Encounters::where('bill_submitted', '=', 'No')->where('user_id', '=', $user_id)->count(); $data['number_tests'] = Tests::whereNull('pid')->where('practice_id', '=', $practice_id)->count(); if ($data['practiceinfo']->mtm_extension == 'y') { $mtm_users_array = explode(",", $data['practiceinfo']->mtm_alert_users); if (in_array($user_id, $mtm_users_array)) { $data['mtm_alerts'] = Alerts::where('alert_date_complete', '=', '0000-00-00 00:00:00')->where('alert_reason_not_complete', '=', '')->where('alert', '=', 'Medication Therapy Management')->where('practice_id', '=', $practice_id)->count(); $data['mtm_alerts_status'] = "y"; } else { $data['mtm_alerts_status'] = "n"; } } else { $data['mtm_alerts_status'] = "n"; } $data['vaccine_supplement_alert'] = $this->vaccine_supplement_alert($practice_id); } if (Session::get('group_id') == '3') { $data['number_messages'] = Messaging::where('mailbox', '=', $user_id)->count(); $data['number_documents'] = Scans::where('practice_id', '=', $practice_id)->count() + $fax_query; $data['number_drafts'] = DB::table('t_messages')->join('demographics', 't_messages.pid', '=', 'demographics.pid')->where('t_messages.t_messages_from', '=', $from)->where('t_messages.t_messages_signed', '=', 'No')->count(); $data['number_reminders'] = DB::table('alerts')->join('demographics', 'alerts.pid', '=', 'demographics.pid')->where('alerts.alert_provider', '=', $user_id)->where('alerts.alert_date_complete', '=', '0000-00-00 00:00:00')->where('alerts.alert_reason_not_complete', '=', '')->where(function ($query_array) { $query_array->where('alerts.alert', '=', 'Laboratory results pending')->orWhere('alerts.alert', '=', 'Radiology results pending')->orWhere('alerts.alert', '=', 'Cardiopulmonary results pending')->orWhere('alerts.alert', '=', 'Referral pending')->orWhere('alerts.alert', '=', 'Reminder')->orWhere('alerts.alert', '=', 'REMINDER'); })->count(); $data['number_bills'] = Encounters::where('bill_submitted', '=', 'No')->where('practice_id', '=', $practice_id)->count(); $data['number_tests'] = Tests::whereNull('pid')->where('practice_id', '=', $practice_id)->count(); $data['vaccine_supplement_alert'] = $this->vaccine_supplement_alert($practice_id); } if (Session::get('group_id') == '4') { $data['number_messages'] = Messaging::where('mailbox', '=', $user_id)->count(); $data['number_bills'] = Encounters::where('bill_submitted', '=', 'No')->where('practice_id', '=', $practice_id)->count(); $data['number_documents'] = Scans::where('practice_id', '=', $practice_id)->count() + $fax_query; } if (Session::get('group_id') == '100') { $row = Demographics_relate::where('id', '=', $user_id)->first(); Session::put('pid', $row->pid); } if (Session::get('group_id') == '1') { if ($practice_id == '1') { $data['saas_admin'] = 'y'; } else { $data['saas_admin'] = 'n'; } if (Session::get('patient_centric') != 'y') { $users = DB::table('users')->where('group_id', '=', '2')->where('practice_id', '=', Session::get('practice_id'))->first(); if ($users) { $data['users_needed'] = 'n'; } else { $data['users_needed'] = 'y'; } } else { $data['users_needed'] = 'n'; } if (Session::get('patient_centric') != 'y') { $schedule = DB::table('practiceinfo')->where('practice_id', '=', Session::get('practice_id'))->whereNull('minTime')->first(); if ($schedule) { $data['schedule_needed'] = 'y'; } else { $data['schedule_needed'] = 'n'; } } else { $data['schedule_needed'] = 'n'; } } if ($data['practiceinfo']->weekends == '1') { $data['weekends'] = 'true'; } else { $data['weekends'] = 'false'; } $data['minTime'] = ltrim($data['practiceinfo']->minTime, "0"); $data['maxTime'] = ltrim($data['practiceinfo']->maxTime, "0"); if (Session::get('group_id') == '2') { $provider = Providers::find(Session::get('user_id')); $data['schedule_increment'] = $provider->schedule_increment; } else { $data['schedule_increment'] = '15'; } if (!Session::get('encounter_active')) { Session::put('encounter_active', 'n'); } if ($data['practiceinfo']->fax_type != "") { $data1['fax'] = true; } else { $data1['fax'] = false; } $this->layout->style = $this->css_assets(); $this->layout->script = $this->js_assets('home'); $this->layout->content = ''; if (Session::get('group_id') == '1') { $this->layout->content .= View::make('search', $this->getSearchData())->render(); $this->layout->content .= View::make('dashboard', $data)->render(); $this->layout->content .= View::make('setup')->render(); $this->layout->content .= View::make('users')->render(); $this->layout->content .= View::make('extensions', $data)->render(); $this->layout->content .= View::make('schedule_admin')->render(); $this->layout->content .= View::make('update')->render(); $this->layout->content .= View::make('logs')->render(); $this->layout->content .= View::make('schedule')->render(); } if (Session::get('group_id') == '2' || Session::get('group_id') == '3' || Session::get('group_id') == '4') { $this->layout->content .= View::make('search', $this->getSearchData())->render(); $this->layout->content .= View::make('dashboard', $data)->render(); $this->layout->content .= View::make('demographics')->render(); $this->layout->content .= View::make('options')->render(); $this->layout->content .= View::make('messaging', $data1)->render(); $this->layout->content .= View::make('schedule')->render(); $this->layout->content .= View::make('billing')->render(); $this->layout->content .= View::make('financial')->render(); $this->layout->content .= View::make('office')->render(); if (Session::get('patient_centric') == 'yp' && Session::get('group_id') == '2') { $this->layout->content .= View::make('setup')->render(); } } if (Session::get('group_id') == '100') { $this->layout->content .= View::make('dashboard', $data)->render(); $this->layout->content .= View::make('demographics')->render(); $this->layout->content .= View::make('messaging', $data1)->render(); $this->layout->content .= View::make('schedule')->render(); $this->layout->content .= View::make('issues')->render(); $this->layout->content .= View::make('encounters')->render(); $this->layout->content .= View::make('t_messages')->render(); $this->layout->content .= View::make('medications')->render(); $this->layout->content .= View::make('supplements')->render(); $this->layout->content .= View::make('allergies')->render(); $this->layout->content .= View::make('immunizations')->render(); $this->layout->content .= View::make('documents')->render(); $this->layout->content .= View::make('forms')->render(); $this->layout->content .= View::make('graph')->render(); } }