851 lines
24 KiB
PHP
851 lines
24 KiB
PHP
<?php
|
|
defined('BASEPATH') or exit('No direct script access allowed');
|
|
|
|
class Patient extends MY_Controller
|
|
{
|
|
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
$this->load->model('Patient_M');
|
|
}
|
|
|
|
public function index()
|
|
{
|
|
$sql = "select * from hc_insurance";
|
|
$query = $this->db->query($sql);
|
|
$data['data_insurance'] = $query->result();
|
|
|
|
$sql = "select * from blood_group order by id";
|
|
$query = $this->db->query($sql);
|
|
$data['blood_group'] = $query->result();
|
|
|
|
$this->load->view('Patient_V', $data);
|
|
}
|
|
|
|
public function search_adv()
|
|
{
|
|
$sdata = "";
|
|
|
|
$input_mphone1 = $this->input->post('input_mphone1');
|
|
$input_Aadhar = $this->input->post('input_udai');
|
|
$input_relative_name = $this->input->post('input_relative_name');
|
|
$input_name = $this->input->post('input_name');
|
|
|
|
if (strlen($input_mphone1) > 0) {
|
|
$sdata = $sdata . " or mphone1 = '" . $input_mphone1 . "'";
|
|
}
|
|
|
|
if (strlen($input_Aadhar) > 0) {
|
|
$sdata = $sdata . " or udai = '" . $input_Aadhar . "'";
|
|
}
|
|
|
|
if (strlen($input_relative_name) > 0) {
|
|
$sdata = $sdata . " or (trim(p_rname) = '" . trim($input_relative_name) . "' and Trim(p_fname)='" . trim($input_name) . "') ";
|
|
}
|
|
|
|
$sql = "SELECT id,Concat(p_fname,'/',if(gender=1,'M','F'),'/',p_relative,' ',p_rname) as Sresult
|
|
FROM patient_master WHERE 1<>1 " . $sdata . " order by id desc";
|
|
$query = $this->db->query($sql);
|
|
$search_result = $query->result();
|
|
|
|
$data['search_result'] = $search_result;
|
|
|
|
|
|
$this->load->view('search_adv_data', $data);
|
|
}
|
|
|
|
public function search()
|
|
{
|
|
$sdata = $this->input->post('txtsearch');
|
|
|
|
$sdata = preg_replace('/[^A-Za-z0-9 _.@\-]/', '', trim($sdata));
|
|
|
|
if (strlen($sdata) == 0) {
|
|
$sql = "SELECT p.*,GET_AGE_1(dob,age,age_in_month,estimate_dob) AS age ,
|
|
Date_Format(p.last_visit,'%d-%m-%Y') AS Last_Visit
|
|
FROM patient_master p
|
|
group BY p.id
|
|
order BY p.last_visit DESC
|
|
LIMIT 100 ";
|
|
} else {
|
|
|
|
$sdate_array = explode(" ", $sdata);
|
|
$search_string = " 1=1 ";
|
|
|
|
foreach ($sdate_array as $row_data) {
|
|
if (is_numeric($row_data)) {
|
|
$search_string .= " and (p.p_code like '%$row_data'
|
|
or p.mphone1 = '$row_data'
|
|
or p.udai='$row_data' )";
|
|
} elseif (ctype_alpha($row_data)) {
|
|
$search_string .= " and (p.p_fname like '%$row_data%'
|
|
or p.email1 = '$row_data'
|
|
or SUBSTRING_INDEX(p.p_fname,' ',1) sounds like '" . $row_data . "')";
|
|
} else {
|
|
$search_string .= " and (p.p_code like '$row_data'
|
|
or p.email1 = '$row_data' )";
|
|
}
|
|
}
|
|
|
|
$sql = "SELECT p.*,GET_AGE_1(dob,age,age_in_month,estimate_dob) AS age ,
|
|
Date_Format(p.last_visit,'%d-%m-%Y') AS Last_Visit
|
|
FROM patient_master p
|
|
WHERE $search_string
|
|
group BY p.id
|
|
order BY p.last_visit DESC ";
|
|
}
|
|
|
|
$query = $this->db->query($sql);
|
|
$data['data'] = $query->result();
|
|
|
|
$this->load->view('Patient_Search_V', $data);
|
|
}
|
|
|
|
|
|
public function search_opd()
|
|
{
|
|
$sql = "SELECT p.*,GET_AGE_1(dob,age,age_in_month,estimate_dob) AS age ,
|
|
Date_Format(o.apointment_date,'%d-%m-%Y') AS opd_Visit,o.doc_name,o.doc_spec,o.opd_code,i.short_name
|
|
FROM (patient_master p join opd_master o on p.id =o.p_id)
|
|
Left join hc_insurance i on i.id = o.insurance_id
|
|
order BY o.opd_id DESC LIMIT 100 ";
|
|
|
|
$query = $this->db->query($sql);
|
|
$data['data'] = $query->result();
|
|
|
|
$content = $this->load->view('Patient_Search_opd', $data, true);
|
|
|
|
echo $content;
|
|
}
|
|
|
|
function person_record($pno, $edit = 0)
|
|
{
|
|
$sql = "select *,GET_AGE_1(dob,age,age_in_month,estimate_dob) as str_age,
|
|
Date_Format(insert_date,'%Y-%m-%d') as str_regdate,
|
|
if(gender=1,'Male','Female') as xgender ,
|
|
if(date_add(insert_date,interval 12 hour)>sysdate(),1,0) as p_edit
|
|
from patient_master where id=" . $pno;
|
|
$query = $this->db->query($sql);
|
|
$data['data'] = $query->result();
|
|
|
|
$required_age = $data['data'][0]->age;
|
|
$required_age_in_month = $data['data'][0]->age_in_month;
|
|
$required_dob = $data['data'][0]->dob;
|
|
$estimate_dob = $data['data'][0]->estimate_dob;
|
|
|
|
if ($required_age == '' && $estimate_dob == 1) {
|
|
if ($required_age == '0') {
|
|
if ($required_age_in_month == 0 || $required_age_in_month == '') {
|
|
$edit = 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
if ($required_dob == '' && $estimate_dob == 0) {
|
|
$edit = 1;
|
|
}
|
|
|
|
|
|
$sql = "select *,p.p_fname,if(apointment_date=curdate(),1,0) as new_opd,
|
|
date_format(apointment_date,'%d-%m-%Y') as str_apointment_date
|
|
from opd_master o join patient_master p on o.p_id=p.id where p_id=$pno Order by opd_code desc";
|
|
$query = $this->db->query($sql);
|
|
$data['opd_List'] = $query->result();
|
|
|
|
$sql = "select m.id,m.invoice_code,Date_Format(m.inv_date,'%d-%m-%y') as str_inv_date,m.inv_name,
|
|
if(count(t.id)>0,group_concat(t.item_name SEPARATOR ' / '),'No-Item') as Item_List, m.net_amount,m.invoice_status
|
|
from invoice_master m left join invoice_item t on m.id=t.inv_master_id
|
|
where attach_type=0 and attach_id=" . $pno . " group by m.id order by m.id desc";
|
|
$query = $this->db->query($sql);
|
|
$data['invoice_list'] = $query->result();
|
|
|
|
$sql = "select i.*,m.ins_company_name,m.opd_allowed,m.charge_cash
|
|
from hc_insurance_card i join hc_insurance m on i.insurance_id=m.id
|
|
where i.p_id=" . $pno;
|
|
$query = $this->db->query($sql);
|
|
$data['data_insurance_card'] = $query->result();
|
|
|
|
$sql = "select *,Date_Format(date_registration,'%d-%m-%Y') as str_date_registration
|
|
from organization_case_master where status=0 and case_type=0 and p_id=" . $pno;
|
|
$query = $this->db->query($sql);
|
|
$data['case_master_opd'] = $query->result();
|
|
|
|
$sql = "SELECT o.*,DATE_FORMAT(o.date_registration,'%d-%m-%Y') as str_date_registration ,
|
|
i.ipd_code,i.register_date
|
|
from organization_case_master o left JOIN ipd_master i ON o.ipd_id=i.id
|
|
WHERE o.status=0 AND o.case_type=1 and o.p_id=" . $pno;
|
|
$query = $this->db->query($sql);
|
|
$data['case_master_ipd'] = $query->result();
|
|
|
|
$sql = "select * from file_upload_data where id=" . $data['data'][0]->profile_file_id;
|
|
$query = $this->db->query($sql);
|
|
$file_data = $query->result();
|
|
|
|
$profile_file_path = "/assets/images/no_image.jpg";
|
|
|
|
$sql = "SELECT * from blood_group order by id";
|
|
$query = $this->db->query($sql);
|
|
$data['blood_group'] = $query->result();
|
|
|
|
$sql = "select * from tag_master Order by tag_name";
|
|
$query = $this->db->query($sql);
|
|
$data['tag_master'] = $query->result();
|
|
|
|
$sql = "SELECT a.*,t.tag_name,t.tag_type_id
|
|
FROM patient_tag_assign a JOIN tag_master t ON a.tag_id=t.id
|
|
WHERE isdelete=0 and a.p_id=$pno";
|
|
$query = $this->db->query($sql);
|
|
$data['patient_tag_list'] = $query->result();
|
|
|
|
if (count($file_data) > 0) {
|
|
$pos = strpos($file_data[0]->full_path, '/uploads/', 1);
|
|
$profile_file_path = substr($file_data[0]->full_path, $pos);
|
|
}
|
|
|
|
$data['profile_file_path'] = $profile_file_path;
|
|
|
|
if ($edit == 0) {
|
|
$this->load->view('Person_profile_V', $data);
|
|
} else {
|
|
$this->load->view('Person_Edit_V', $data);
|
|
}
|
|
}
|
|
|
|
public function update_1()
|
|
{
|
|
if (!$this->input->is_ajax_request()) {
|
|
exit('no valid req.');
|
|
}
|
|
|
|
$FormRules = array(
|
|
array(
|
|
'field' => 'input_name',
|
|
'label' => 'Name',
|
|
'rules' => 'required|min_length[2]|max_length[30]'
|
|
)
|
|
);
|
|
|
|
$this->form_validation->set_rules($FormRules);
|
|
|
|
if ($this->form_validation->run() == TRUE) {
|
|
|
|
$data = array(
|
|
'mphone1' => $this->input->post('input_mphone1'),
|
|
'p_fname' => strtoupper($this->input->post('input_name')),
|
|
'gender' => $this->input->post('optionsRadios_gender'),
|
|
'dob' => str_to_MysqlDate($this->input->post('datepicker_dob')),
|
|
'zip' => $this->input->post('input_zip'),
|
|
'add1' => $this->input->post('input_address'),
|
|
'city' => $this->input->post('input_city'),
|
|
'district' => $this->input->post('input_district'),
|
|
'state' => $this->input->post('input_state'),
|
|
'age' => $this->input->post('input_age'),
|
|
'title' => $this->input->post('cbo_title'),
|
|
'p_relative' => strtoupper($this->input->post('cbo_relation')),
|
|
'p_rname' => $this->input->post('input_relative_name'),
|
|
'email1' => $this->input->post('input_email'),
|
|
'age' => $this->input->post('input_age'),
|
|
'age_in' => $this->input->post('cbo_age')
|
|
);
|
|
|
|
$pid = $this->input->post('p_id');
|
|
$this->Patient_M->update($data, $pid);
|
|
$rvar = array(
|
|
'update' => 1,
|
|
'showcontent' => 'Data Saved successfully'
|
|
);
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
} else {
|
|
$send_error = validation_errors();
|
|
$rvar = array(
|
|
'update' => 0,
|
|
'error_text' => $send_error
|
|
);
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
}
|
|
}
|
|
|
|
|
|
public function update()
|
|
{
|
|
if (!$this->input->is_ajax_request()) {
|
|
exit('no valid req.');
|
|
}
|
|
|
|
$chk_age = $this->input->post('chk_age');
|
|
|
|
$FormRules = array(
|
|
array(
|
|
'field' => 'input_name',
|
|
'label' => 'Name of Patient',
|
|
'rules' => 'required|min_length[1]|max_length[30]'
|
|
)
|
|
|
|
);
|
|
|
|
$age_month = $this->input->post('input_age_month');
|
|
$age_year = $this->input->post('input_age_year');
|
|
|
|
|
|
if ($chk_age == 'on') {
|
|
$estimate_dob = 1;
|
|
|
|
if ($age_year == '' && $age_month == '') {
|
|
array_push(
|
|
$FormRules,
|
|
array(
|
|
'field' => 'input_age_year',
|
|
'label' => 'Patient Age',
|
|
'rules' => 'required|min_length[1]|max_length[4]'
|
|
)
|
|
);
|
|
}
|
|
} else {
|
|
$estimate_dob = 0;
|
|
array_push(
|
|
$FormRules,
|
|
array(
|
|
'field' => 'datepicker_dob',
|
|
'label' => 'Date of Birth',
|
|
'rules' => 'required|min_length[1]|max_length[10]'
|
|
)
|
|
);
|
|
}
|
|
|
|
$this->form_validation->set_rules($FormRules);
|
|
|
|
if ($this->form_validation->run() == TRUE) {
|
|
|
|
$data = array(
|
|
'mphone1' => $this->input->post('input_mphone1'),
|
|
'p_fname' => strtoupper($this->input->post('input_name')),
|
|
'gender' => $this->input->post('optionsRadios_gender'),
|
|
'zip' => $this->input->post('input_zip'),
|
|
'add1' => strtoupper($this->input->post('input_address')),
|
|
'city' => strtoupper($this->input->post('input_city')),
|
|
'district' => strtoupper($this->input->post('input_district')),
|
|
'state' => strtoupper($this->input->post('input_state')),
|
|
'title' => $this->input->post('cbo_title'),
|
|
'p_relative' => strtoupper($this->input->post('cbo_relation')),
|
|
'p_rname' => strtoupper($this->input->post('input_relative_name')),
|
|
'email1' => strtoupper($this->input->post('input_email')),
|
|
'udai' => strtoupper($this->input->post('input_Aadhar')),
|
|
'estimate_dob' => $estimate_dob,
|
|
'blood_group' => $this->input->post('input_blood_group')
|
|
);
|
|
|
|
if ($chk_age == 'on') {
|
|
$data['age'] = $age_year;
|
|
$data['age_in_month'] = $age_month;
|
|
} else {
|
|
$data['dob'] = str_to_MysqlDate($this->input->post('datepicker_dob'));
|
|
}
|
|
|
|
$pid = $this->input->post('p_id');
|
|
$this->Patient_M->update($data, $pid);
|
|
$rvar = array(
|
|
'update' => 1,
|
|
'showcontent' => 'Data Saved successfully'
|
|
);
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
} else {
|
|
$send_error = validation_errors();
|
|
$rvar = array(
|
|
'update' => 0,
|
|
'error_text' => $send_error
|
|
);
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
}
|
|
}
|
|
|
|
public function update_aadhar()
|
|
{
|
|
if (!$this->input->is_ajax_request()) {
|
|
exit('no valid req.');
|
|
}
|
|
|
|
$data = array(
|
|
'udai' => $this->input->post('udai'),
|
|
);
|
|
|
|
$pid = $this->input->post('p_id');
|
|
$this->Patient_M->update($data, $pid);
|
|
$rvar = array(
|
|
'update' => 1,
|
|
'showcontent' => 'Data Saved successfully'
|
|
);
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
}
|
|
|
|
public function create()
|
|
{
|
|
if (!$this->input->is_ajax_request()) {
|
|
exit('no valid req.');
|
|
}
|
|
|
|
$chk_age = $this->input->post('chk_age');
|
|
|
|
$FormRules = array(
|
|
array(
|
|
'field' => 'input_name',
|
|
'label' => 'Name of Patient',
|
|
'rules' => 'required|min_length[1]|max_length[100]'
|
|
),
|
|
array(
|
|
'field' => 'input_relative_name',
|
|
'rules' => 'required|min_length[1]|max_length[100]'
|
|
),
|
|
array(
|
|
'field' => 'input_mphone1',
|
|
'rules' => 'required|min_length[10]|max_length[10]'
|
|
)
|
|
|
|
);
|
|
|
|
$age_month = $this->input->post('input_age_month');
|
|
$age_year = $this->input->post('input_age_year');
|
|
|
|
|
|
if ($chk_age == 'on') {
|
|
$estimate_dob = 1;
|
|
|
|
if ($age_year == '' && $age_month == '') {
|
|
array_push(
|
|
$FormRules,
|
|
array(
|
|
'field' => 'input_age_year',
|
|
'label' => 'Patient Age',
|
|
'rules' => 'required|min_length[1]|max_length[4]'
|
|
)
|
|
);
|
|
}
|
|
} else {
|
|
$estimate_dob = 0;
|
|
array_push(
|
|
$FormRules,
|
|
array(
|
|
'field' => 'datepicker_dob',
|
|
'label' => 'Date of Birth',
|
|
'rules' => 'required|min_length[1]|max_length[10]'
|
|
)
|
|
);
|
|
}
|
|
|
|
$this->form_validation->set_rules($FormRules);
|
|
|
|
if ($this->form_validation->run() == TRUE) {
|
|
|
|
$data = array(
|
|
'mphone1' => $this->input->post('input_mphone1'),
|
|
'p_fname' => strtoupper($this->input->post('input_name')),
|
|
'gender' => $this->input->post('optionsRadios_gender'),
|
|
'zip' => $this->input->post('input_zip'),
|
|
'add1' => strtoupper($this->input->post('input_address')),
|
|
'city' => strtoupper($this->input->post('input_city')),
|
|
'district' => strtoupper($this->input->post('input_district')),
|
|
'state' => strtoupper($this->input->post('input_state')),
|
|
'title' => $this->input->post('cbo_title'),
|
|
'p_relative' => $this->input->post('cbo_relation'),
|
|
'p_rname' => strtoupper($this->input->post('input_relative_name')),
|
|
'blood_group' => strtoupper($this->input->post('input_blood_group')),
|
|
'udai' => strtoupper($this->input->post('input_udai')),
|
|
'estimate_dob' => $estimate_dob
|
|
);
|
|
|
|
if ($chk_age == 'on') {
|
|
$data['age'] = $age_year;
|
|
$data['age_in_month'] = $age_month;
|
|
} else {
|
|
$data['dob'] = str_to_MysqlDate($this->input->post('datepicker_dob'));
|
|
}
|
|
|
|
$inser_id = $this->Patient_M->insert($data);
|
|
$rvar = array(
|
|
'insertid' => $inser_id
|
|
);
|
|
|
|
// Check Multiple UHID
|
|
$sdata = '';
|
|
//$sdata=$sdata." or udai = '".$this->input->post('input_udai')."'";
|
|
$sdata = $sdata . " or (trim(p_rname) = '" . trim(strtoupper($this->input->post('input_relative_name'))) . "' and Trim(p_fname)='" . trim(strtoupper($this->input->post('input_name'))) . "') ";
|
|
|
|
$sql = "SELECT id,Concat(p_code,'/',p_fname,'/',if(gender=1,'M','F'),'/',p_relative,' ',p_rname) as Sresult
|
|
FROM patient_master WHERE 1<>1 " . $sdata . " and id<>$inser_id order by id desc";
|
|
$query = $this->db->query($sql);
|
|
$search_result = $query->result();
|
|
|
|
$user = $this->ion_auth->user()->row();
|
|
$user_name = $user->first_name . '' . $user->last_name . '[Date:' . date('d-m-Y h:i:s') . ']-' . $user->id;
|
|
|
|
$log_text = '';
|
|
|
|
foreach ($search_result as $row) {
|
|
$log_text .= $row->Sresult . PHP_EOL;
|
|
}
|
|
|
|
if (count($search_result) > 0) {
|
|
$data = array(
|
|
'new_uhid' => $inser_id,
|
|
'name_of_person' => strtoupper($this->input->post('input_name')),
|
|
'new_patient_code' => '',
|
|
'date_of_registration' => date('Y-m-d h:i:s'),
|
|
'update_by' => $user_name,
|
|
'remark_duplicate' => $log_text,
|
|
);
|
|
|
|
$inser_id = $this->Patient_M->insert_log_patient_multiple($data);
|
|
}
|
|
|
|
//End of Chking Multiple UHID
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
} else {
|
|
$send_error = validation_errors();
|
|
$rvar = array(
|
|
'insertid' => 0,
|
|
'error_text' => $send_error
|
|
);
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
}
|
|
}
|
|
|
|
public function show_cards($pno, $card_no = 0)
|
|
{
|
|
|
|
$sql = "select * from patient_master where id=" . $pno;
|
|
$query = $this->db->query($sql);
|
|
$data['pdata'] = $query->result();
|
|
|
|
$inc_card_no = $data['pdata'][0]->insurance_card_id;
|
|
|
|
$sql = "select * from hc_insurance_card where id>1 and id=" . $inc_card_no;
|
|
$query = $this->db->query($sql);
|
|
$data['data_insurance_card'] = $query->result();
|
|
|
|
$sql = "select * from hc_insurance where id>1 and active=1 order by ins_company_name ";
|
|
$query = $this->db->query($sql);
|
|
$data['data_insurance'] = $query->result();
|
|
|
|
$this->load->view('insurance/insurance_card', $data);
|
|
}
|
|
|
|
public function city()
|
|
{
|
|
$this->load->model('Patient_M');
|
|
if (isset($_GET['term'])) {
|
|
$q = strtolower($_GET['term']);
|
|
$this->Patient_M->get_city($q);
|
|
}
|
|
}
|
|
|
|
public function P_info()
|
|
{
|
|
|
|
$UHID = $this->input->post('input_uhid');
|
|
|
|
$sql = "select * from patient_master_exten where p_code='$UHID' ";
|
|
$query = $this->db->query($sql);
|
|
$data = $query->result();
|
|
|
|
if (count($data) > 0) {
|
|
$Patient_id = $data[0]->id;
|
|
$Patient_info = $data[0]->p_fname . ' ' . $data[0]->p_relative . ' ' . $data[0]->p_rname . ' /Age :' . $data[0]->str_age;
|
|
} else {
|
|
$Patient_id = 0;
|
|
$Patient_info = '';
|
|
}
|
|
|
|
$rvar = array(
|
|
'Patient_id' => $Patient_id,
|
|
'Patient_info' => $Patient_info
|
|
);
|
|
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
}
|
|
|
|
public function update_card()
|
|
{
|
|
if (!$this->input->is_ajax_request()) {
|
|
exit('no valid req.');
|
|
}
|
|
|
|
$FormRules = array(
|
|
array(
|
|
'field' => 'input_insurance_id',
|
|
'label' => 'Insurance No',
|
|
'rules' => 'required|min_length[2]|max_length[30]'
|
|
),
|
|
array(
|
|
'field' => 'input_card_holder_name',
|
|
'label' => 'Insurance Card Holder Name',
|
|
'rules' => 'required|min_length[1]|max_length[30]'
|
|
)
|
|
);
|
|
|
|
$this->form_validation->set_rules($FormRules);
|
|
|
|
if ($this->form_validation->run() == TRUE) {
|
|
|
|
$data = array(
|
|
'insurance_id' => $this->input->post('Insurance_id'),
|
|
'p_id' => $this->input->post('p_id'),
|
|
'insurance_no' => $this->input->post('input_insurance_id'),
|
|
'card_holder_name' => strtoupper($this->input->post('input_card_holder_name')),
|
|
'issue_date' => str_to_MysqlDate($this->input->post('datepicker_issue_date')),
|
|
'expiry_date' => str_to_MysqlDate($this->input->post('datepicker_expiry_date')),
|
|
'relation_patient_cardholder' => strtoupper($this->input->post('input_Relation'))
|
|
);
|
|
|
|
$card_no = $this->input->post('inscard_id');
|
|
$inser_id = $card_no;
|
|
|
|
if ($card_no == "0") {
|
|
$inser_id = $this->Patient_M->insert_card($data);
|
|
} else {
|
|
$this->Patient_M->update_card($data, $card_no);
|
|
}
|
|
|
|
$data = array(
|
|
'insurance_card_id' => $inser_id,
|
|
'insurance_id' => $this->input->post('Insurance_id'),
|
|
'insurance_no' => $this->input->post('input_insurance_id'),
|
|
'card_holder_name' => strtoupper($this->input->post('input_card_holder_name')),
|
|
'issue_date' => str_to_MysqlDate($this->input->post('datepicker_issue_date')),
|
|
'expiry_date' => str_to_MysqlDate($this->input->post('datepicker_expiry_date')),
|
|
'relation_patient_cardholder' => strtoupper($this->input->post('input_Relation'))
|
|
);
|
|
|
|
$this->Patient_M->update($data, $this->input->post('p_id'));
|
|
|
|
$rvar = array(
|
|
'insertid' => $inser_id
|
|
);
|
|
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
} else {
|
|
$send_error = validation_errors();
|
|
$rvar = array(
|
|
'insertid' => 0,
|
|
'error_text' => $send_error
|
|
);
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
}
|
|
}
|
|
|
|
public function show_profile_opd($p_id)
|
|
{
|
|
$data['p_id'] = $p_id;
|
|
|
|
$sql = "select * from patient_master_exten where id=" . $p_id;
|
|
$query = $this->db->query($sql);
|
|
$data['data'] = $query->result();
|
|
|
|
$sql = "select o.* from opd_master o where o.p_id=$p_id order by o.opd_id desc";
|
|
$query = $this->db->query($sql);
|
|
$data['opd_master'] = $query->result();
|
|
|
|
$sql = "select o.* from opd_master o where o.p_id=$p_id and date(o.apointment_date)=curdate()";
|
|
$query = $this->db->query($sql);
|
|
$data['opd_master_current'] = $query->result();
|
|
|
|
//$this->load->view('Person/person_file_show',$data);
|
|
|
|
$this->load->view('Person/Person_Profile', $data);
|
|
}
|
|
|
|
public function show_profile_image($p_id)
|
|
{
|
|
$data['p_id'] = $p_id;
|
|
|
|
$sql = "select *,GET_AGE_1(dob,age,age_in_month,estimate_dob) as str_age,
|
|
Date_Format(insert_date,'%Y-%m-%d') as str_regdate,
|
|
if(gender=1,'Male','Female') as xgender ,
|
|
if(date_add(insert_date,interval 12 hour)>sysdate(),1,0) as p_edit
|
|
from patient_master where id=" . $p_id;
|
|
$query = $this->db->query($sql);
|
|
$data['data'] = $query->result();
|
|
|
|
|
|
$this->load->view('Person/person_profile_photo', $data);
|
|
}
|
|
|
|
|
|
public function save_profile_image($p_id)
|
|
{
|
|
$filename = 'P-' . $p_id . '-' . time() . '.jpg';
|
|
|
|
$folder_name = 'uploads/' . date('Ymd');
|
|
|
|
if (!file_exists($folder_name)) {
|
|
mkdir($folder_name, 0777, true);
|
|
}
|
|
|
|
$user = $this->ion_auth->user()->row();
|
|
$user_id = $user->id;
|
|
$user_name = $user->first_name . '' . $user->last_name;
|
|
|
|
//echo $folder_name;
|
|
|
|
$config['upload_path'] = $folder_name;
|
|
$config['allowed_types'] = 'gif|jpg|png|jpeg';
|
|
|
|
//$new_name = time().$_FILES["webcam"]['name'];
|
|
$config['file_name'] = $filename;
|
|
|
|
$this->load->library('upload', $config);
|
|
|
|
if (!$this->upload->do_upload('webcam')) {
|
|
$error = array('error' => $this->upload->display_errors());
|
|
echo $error['error'];
|
|
} else {
|
|
$data = array('upload_data' => $this->upload->data());
|
|
|
|
$this->load->model('File_M');
|
|
|
|
$file_insert_id = $this->File_M->insert($data['upload_data']);
|
|
|
|
$udata = array(
|
|
'upload_by' => $user_name,
|
|
'pid' => $p_id,
|
|
'opd_id' => '0',
|
|
'ipd_id' => '0',
|
|
'case_id' => '0',
|
|
'upload_by_id' => $user_id
|
|
);
|
|
|
|
if ($file_insert_id > 0) {
|
|
$this->File_M->update($udata, $file_insert_id);
|
|
|
|
$user_name = $user->first_name . '' . $user->last_name . ':T-' . date('d-m-Y h:m:s');
|
|
|
|
$dataupdate = array(
|
|
'profile_file_id' => $file_insert_id,
|
|
'profile_picture_update_by' => $user_name
|
|
);
|
|
|
|
$this->Patient_M->update($dataupdate, $p_id);
|
|
}
|
|
|
|
echo $filename;
|
|
}
|
|
}
|
|
|
|
//Patient Tag
|
|
|
|
function add_comments($p_id)
|
|
{
|
|
if (!$this->input->is_ajax_request()) {
|
|
exit('no valid req.');
|
|
}
|
|
|
|
$user = $this->ion_auth->user()->row();
|
|
$user_id = $user->id;
|
|
$user_name = $user->first_name . '' . $user->last_name . ' [Date:' . date('d-m-Y h:i') . ']';
|
|
|
|
$comments_data = array(
|
|
'p_id' => $p_id,
|
|
'remark' => $this->input->post('add_notes'),
|
|
'insert_by_id' => $user_id,
|
|
'insert_by' => $user_name
|
|
);
|
|
|
|
$insert_id = $this->Patient_M->insert_remark($comments_data);
|
|
|
|
if ($insert_id > 0) {
|
|
$rvar = array(
|
|
'update' => $insert_id,
|
|
'error_text' => 'Update Done ' . $insert_id
|
|
);
|
|
} else {
|
|
$rvar = array(
|
|
'update' => 0,
|
|
'error_text' => 'Some Error',
|
|
);
|
|
}
|
|
|
|
$encode_data = json_encode($rvar);
|
|
echo $encode_data;
|
|
}
|
|
|
|
function patient_tag()
|
|
{
|
|
$this->load->model('Patienttag_M');
|
|
|
|
$tag_id = $this->input->post('tag_id');
|
|
$p_id = $this->input->post('p_id');
|
|
|
|
$user = $this->ion_auth->user()->row();
|
|
$user_id = $user->id;
|
|
$user_name = $user->first_name . '' . $user->last_name;
|
|
|
|
if ($this->input->post('isadd') == 1) {
|
|
|
|
$sql = "Select *
|
|
from patient_tag_assign
|
|
where isdelete=0 and p_id='$p_id' and tag_id='$tag_id'";
|
|
$query = $this->db->query($sql);
|
|
$no_rec = $query->num_rows();
|
|
|
|
if ($no_rec == 0) {
|
|
$data = array(
|
|
'p_id' => $p_id,
|
|
'tag_id' => $tag_id,
|
|
'assign_by_id' => $user_id,
|
|
'assign_by' => $user_name . '[' . $user_id . ']' . date('d-m-Y H:i'),
|
|
);
|
|
$inser_id = $this->Patienttag_M->insert_patient_tag_assign($data);
|
|
}
|
|
} else {
|
|
|
|
$cust_tag_assign = $this->input->post('cust_tag_assign');
|
|
|
|
$data = array(
|
|
'isdelete' => 1,
|
|
'delete_by' => $this->session->userdata('username') . '[' . $this->session->userdata('agent_id') . ']' . date('d-m-Y H:i'),
|
|
);
|
|
|
|
$this->Patienttag_M->update_patient_tag_assign($data, $cust_tag_assign);
|
|
}
|
|
|
|
echo '1';
|
|
}
|
|
|
|
|
|
|
|
//AutoList of Person Names
|
|
|
|
public function get_name()
|
|
{
|
|
|
|
if (isset($_GET['term'])) {
|
|
$q = strtolower($_GET['term']);
|
|
|
|
$sql = "select * from name_list where name like '" . $q . "%' ";
|
|
|
|
$sql = $sql . "order by name limit 20";
|
|
|
|
$query = $this->db->query($sql);
|
|
|
|
if ($query->num_rows() > 0) {
|
|
foreach ($query->result_array() as $row) {
|
|
$new_row['label'] = htmlentities(stripslashes($row['name']));
|
|
$new_row['value'] = htmlentities(stripslashes($row['name']));
|
|
|
|
$row_set[] = $new_row; //build an array
|
|
}
|
|
echo json_encode($row_set); //format the array into json data
|
|
}
|
|
}
|
|
}
|
|
}
|