db->query($sql); $data['or_case_master']= $query->result(); $sql="select *,if(gender=1,'Male','Female') as xgender, IFNULL(GET_AGE_BY_DOB(dob),age) AS age from patient_master where id='".$data['or_case_master'][0]->p_id."' "; $query = $this->db->query($sql); $data['person_info']= $query->result(); $sql="select * from hc_item_type"; $query = $this->db->query($sql); $data['labitemtype']= $query->result(); $sql="select id,Concat(idesc,' : [',amount1,']',if(hc_insurance_id>0,'Ins.','Cash')) as sdesc from v_hc_items_with_insurance where itype=1 and hc_insurance_id in (0,".$data['or_case_master'][0]->insurance_id.")"; $query = $this->db->query($sql); $data['labitem']= $query->result(); $this->load->model('invoice_M'); $sql="select count(*) as no_invoice from invoice_master where invoice_status=0 and case_id=".$caseid; $query = $this->db->query($sql); $data['chk_draft_invoice']= $query->result(); if($data['chk_draft_invoice'][0]->no_invoice<1) { $data['insert_invoice'] = array( 'attach_type' => '0', 'attach_id' => $data['or_case_master'][0]->p_id, 'case_id' => $caseid, 'inv_date' => str_to_MysqlDate(date('d/m/Y')), 'inv_name' => $data['person_info'][0]->p_fname, 'inv_a_code' => $data['person_info'][0]->p_code ); $inser_id=$this->invoice_M->create_invoice( $data['insert_invoice']); }else{ $sql="select id from invoice_master where invoice_status=0 and attach_id=".$data['or_case_master'][0]->p_id; $query = $this->db->query($sql); $data['invoice_id']= $query->result(); $inser_id=$data['invoice_id'][0]->id; } if($inser_id) { $sql="select * from invoice_master where id=".$inser_id; $query = $this->db->query($sql); $data['invoiceMaster']= $query->result(); $sql="select i.*,t.desc from invoice_item i join hc_item_type t on i.item_type=t.itype_id where i.inv_master_id=".$inser_id; $query = $this->db->query($sql); $data['invoiceDetails']= $query->result(); $sql="select sum(item_amount) as Gtotal from invoice_item where inv_master_id=".$inser_id; $query = $this->db->query($sql); $data['invoiceGtotal']= $query->result(); } $this->load->view('Invoice/Organization_Invoice_PathLab',$data); } public function create() { if (!$this->input->is_ajax_request()) { exit('no valid req.'); } $FormRules = array( array( 'field' => 'input_mphone1', 'label' => 'Phone Number', 'rules' => 'required|min_length[10]|max_length[30]' ), array( 'field' => 'input_name', 'label' => 'Name', 'rules' => 'required|min_length[2]|max_length[30]' ), 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[2]|max_length[50]' ) ); $this->form_validation->set_rules($FormRules); if ($this->form_validation->run() == TRUE) { $ins_id=$this->input->post('Insurance_id'); $case_type=$this->input->post('case_type'); $sql="select * from hc_insurance where id=".$ins_id; $query = $this->db->query($sql); $data['data_insurance']= $query->result(); $ins_id_name = $data['data_insurance'][0]->ins_company_name; $this->load->model('Ocasemaster_M'); $data = array( 'p_phone_number' => $this->input->post('input_mphone1'), 'p_name' => $this->input->post('input_name'), 'p_gender' => $this->input->post('optionsRadios_gender'), 'date_registration' => str_to_MysqlDate($this->input->post('datepicker_dob')), 'p_id' => $this->input->post('p_id'), 'case_type' => $this->input->post('case_type'), 'insurance_card_id'=>$this->input->post('inc_card_id'), 'insurance_no' => $this->input->post('input_insurance_id'), 'insurance_no_1' => $this->input->post('input_insurance_no_1'), 'insurance_no_2' => $this->input->post('input_insurance_no_2'), 'insurance_no_3' => $this->input->post('input_insurance_no_3'), 'insurance_card_name' => $this->input->post('input_card_holder_name'), 'insurance_id' => $this->input->post('Insurance_id'), 'insurance_company_name' => $ins_id_name ); $sql="select * from organization_case_master where status=0 and case_type=$case_type and p_id=".$this->input->post('p_id'); $query = $this->db->query($sql); $chk_data= $query->result(); if(count($chk_data)>0) { $inser_id=$chk_data[0]->id; }else{ $inser_id=$this->Ocasemaster_M->insert($data); } if($case_type==1) { $sql="select * from ipd_master where case_id=0 and ipd_status=0 and p_id=".$this->input->post('p_id'); $query = $this->db->query($sql); $ipd_master= $query->result(); if(count($ipd_master)>0) { $this->load->model('Ipd_M'); $update_ipd=array( 'case_id'=>$inser_id ); $this->Ipd_M->update($update_ipd,$ipd_master[0]->id); $update_org=array( 'ipd_id'=>$ipd_master[0]->id ); $this->Ocasemaster_M->update($update_org,$inser_id); } } $rvar=array( 'insertid' =>$inser_id, 'p_id'=> $this->input->post('p_id'), 'ins_id'=>$ins_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 load($caseid) { $sql="select * from organization_case_master where id='".$caseid."' "; $query = $this->db->query($sql); $data['or_case_master']= $query->result(); $sql="select *,if(gender=1,'Male','Female') as xgender, IFNULL(GET_AGE_BY_DOB(dob),age) AS age from patient_master where id='".$data['or_case_master'][0]->p_id."' "; $query = $this->db->query($sql); $data['data']= $query->result(); $sql="select * from hc_insurance"; $query = $this->db->query($sql); $data['data_insurance']= $query->result(); $this->load->view('Invoice/Case_Form_profile_V',$data); } public function newcase($p_no,$ins_id,$case_type=0) { $sql="select * from hc_insurance where id=".$ins_id; $query = $this->db->query($sql); $data['data_insurance']= $query->result(); $sql="select * from hc_insurance_card where p_id=".$p_no." and insurance_id=".$ins_id; $query = $this->db->query($sql); $data['hc_insurance_card']= $query->result(); $ins_comp_id=$data['hc_insurance_card'][0]->insurance_id; $sql="select * from organization_case_master where case_type=$case_type and p_id='".$p_no."' and status=0 "; $query = $this->db->query($sql); $data['org_case_master']= $query->result(); if($query->num_rows()<1) { $new_case=1; }else{ $new_case=0; } $data['case_type']=$case_type; $this->db->where('id', $p_no); $this->db->from('patient_master'); $query = $this->db->get(); $data['data']= $query->result(); $sql="select * from hc_insurance "; $query = $this->db->query($sql); $data['insurance_list']= $query->result(); if($new_case==1) { $this->load->view('Invoice/Case_Form_V',$data); } else{ $this->load->view('Invoice/Case_Form_profile_V',$data); } } public function open_case($org_ID,$case_type=0) { $sql="select * from organization_case_master where case_type=$case_type and id= $org_ID"; $query = $this->db->query($sql); $data['org_case_master']= $query->result(); $ins_id_org=$data['org_case_master'][0]->insurance_id; $p_no=$data['org_case_master'][0]->p_id; $sql="select * from hc_insurance_card where p_id=".$p_no." order by id desc"; $query = $this->db->query($sql); $data['hc_insurance_card']= $query->result(); $ins_id=$data['hc_insurance_card'][0]->insurance_id; $sql="select * from hc_insurance where id=".$ins_id; $query = $this->db->query($sql); $data['data_insurance']= $query->result(); $sql="select * from hc_insurance "; $query = $this->db->query($sql); $data['insurance_list']= $query->result(); $data['ipd_id']=0; $data['case_type']=$case_type; if($case_type==1) { $sql="select * from ipd_master where case_id=$org_ID"; $query = $this->db->query($sql); $ipd_master= $query->result(); if(count($ipd_master)>0) { $data['ipd_id']=$ipd_master[0]->id; } } $this->db->where('id', $p_no); $this->db->from('patient_master'); $query = $this->db->get(); $data['data']= $query->result(); $this->load->view('Invoice/Case_Form_profile_V',$data); } public function update() { if (!$this->input->is_ajax_request()) { exit('no valid req.'); } $FormRules = array( array( 'field' => 'input_mphone1', 'label' => 'Phone Number', 'rules' => 'required|min_length[10]|max_length[30]' ), array( 'field' => 'input_name', 'label' => 'Name', 'rules' => 'required|min_length[2]|max_length[30]' ), array( 'field' => 'input_insurance_id', 'label' => 'Insurance No', 'rules' => 'required|min_length[2]|max_length[30]' ), array( 'field' => 'datepicker_dob', 'label' => 'Date of Registration', 'rules' => 'required|min_length[2]|max_length[30]' ), array( 'field' => 'input_card_holder_name', 'label' => 'Insurance Card Holder Name', 'rules' => 'required|min_length[2]|max_length[50]' ) ); $this->form_validation->set_rules($FormRules); if ($this->form_validation->run() == TRUE) { $ins_id=$this->input->post('Insurance_id'); $p_id=$this->input->post('patient_id'); $case_type=$this->input->post('case_type'); $case_id=$this->input->post('c_id'); $sql="select * from hc_insurance where id=".$ins_id; $query = $this->db->query($sql); $data['data_insurance']= $query->result(); $ins_id_name = $data['data_insurance'][0]->ins_company_name; $sql="select * from organization_case_master where id=$case_id"; $query = $this->db->query($sql); $org_case_master= $query->result(); $this->load->model('Ocasemaster_M'); $data = array( 'p_phone_number' => $this->input->post('input_mphone1'), 'p_name' => $this->input->post('input_name'), 'p_gender' => $this->input->post('optionsRadios_gender'), 'date_registration' => str_to_MysqlDate($this->input->post('datepicker_dob')), 'remark' => $this->input->post('remark'), 'insurance_no' => $this->input->post('input_insurance_id'), 'insurance_no_1' => $this->input->post('input_insurance_no_1'), 'insurance_no_2' => $this->input->post('input_insurance_no_2'), 'insurance_no_3' => $this->input->post('input_insurance_no_3'), 'insurance_card_name' => $this->input->post('input_card_holder_name'), 'insurance_id' => $ins_id, 'insurance_company_name' => $ins_id_name ); $inser_id=$this->Ocasemaster_M->update($data,$case_id); if($case_type==0) { $this->db->query("CALL p_org_update($case_id)"); } if($case_type==1 && $org_case_master[0]->ipd_id==0) { $sql="select * from ipd_master where ipd_status=0 and case_id=0 and p_id=".$p_id; $query = $this->db->query($sql); $ipd_master= $query->result(); if(count($ipd_master)>0) { $this->load->model('Ipd_M'); $update_ipd=array( 'case_id'=>$this->input->post('c_id') ); $this->Ipd_M->update($update_ipd,$ipd_master[0]->id); $update_org=array( 'ipd_id'=>$ipd_master[0]->id ); $this->Ocasemaster_M->update($update_org,$inser_id); $update_ins_card=array( 'insurance_id'=>$ins_id, 'insurance_id'=>$ins_id_name, ); $this->Ocasemaster_M->update($update_org,$inser_id); } } $rvar=array( 'update' =>1, 'showcontent'=> Show_Alert('success','Saved','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 confirm_payment() { if (!$this->input->is_ajax_request()) { exit('no valid req.'); } $this->load->model('invoice_M'); $showcontent1='
Print
Payment Method by : '; $showcontent2='
'; if($this->input->post('mode')==1) { $data = array( 'payment_mode'=> '1', 'payment_status'=>'1' ); $this->invoice_M->update( $data,$this->input->post('oid')); $status='CASH'; $showcontent=$showcontent1.$status.$showcontent2; $rvar=array( 'update' =>1, 'showcontent'=>$showcontent ); $encode_data = json_encode($rvar); echo $encode_data; } if($this->input->post('mode')==2) { $FormRules = array( array( 'field' => 'input_card_mac', 'label' => 'Card Bank Name', 'rules' => 'required|min_length[3]|max_length[30]' ), array( 'field' => 'input_card_digit', 'label' => 'Card Last 4 Digit ', 'rules' => 'required|min_length[4]|max_length[4]' ), array( 'field' => 'input_card_tran', 'label' => 'Card Transcation ID', 'rules' => 'required|min_length[3]|max_length[15]' ) ); $this->form_validation->set_rules($FormRules); if ($this->form_validation->run() == TRUE) { $data = array( 'payment_mode'=> '2', 'payment_status'=>'1', 'card_bank'=>$this->input->post('input_card_mac'), 'card_remark'=>$this->input->post('input_card_digit'), 'card_tran_id'=>$this->input->post('input_card_tran') ); $this->Opd_M->update( $data,$this->input->post('oid')); $status='Bank Card'; $showcontent=$showcontent1.$status.$showcontent2; $rvar=array( 'update' =>1, 'showcontent'=>$showcontent ); $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; } } if($this->input->post('mode')==3) { $data = array( 'payment_mode'=> '3', 'payment_status'=>'1', 'ech_clam_id'=>$this->input->post('input_claim_id'), ); $this->invoice_M->update( $data,$this->input->post('oid')); $status='ECHS Credit'; $showcontent=$showcontent1.$status.$showcontent2; $rvar=array( 'update' =>1, 'showcontent'=>$showcontent ); $encode_data = json_encode($rvar); echo $encode_data; } if($this->input->post('mode')==0) { } } public function list_pathtest_bytype() { $tid=$this->input->post('itype_idv'); $insid=$this->input->post('insurance_id'); $sql="select id,Concat(idesc,' : [',amount1,']',if(hc_insurance_id>0,'Ins.','Cash')) as sdesc from v_hc_items_with_insurance where itype='".$tid."' and hc_insurance_id in (0,".$insid.")"; $query = $this->db->query($sql); $data['labitem']= $query->result(); echo '
'; } public function showinvoice($invoice_id) { $sql="select i.*,t.desc from invoice_item i join hc_item_type t on i.item_type=t.itype_id where i.inv_master_id=".$invoice_id; $query = $this->db->query($sql); $data['invoiceDetails']= $query->result(); $sql="select sum(item_amount) as Gtotal from invoice_item where inv_master_id=".$invoice_id; $query = $this->db->query($sql); $data['invoiceGtotal']= $query->result(); $sql="select * from invoice_master where id=".$invoice_id; $query = $this->db->query($sql); $data['invoice_master']= $query->result(); $sql="select *,if(gender=1,'Male','Female') as xgender, IFNULL(GET_AGE_BY_DOB(dob),age) AS age from patient_master where id=".$data['invoice_master'][0]->attach_id; $query = $this->db->query($sql); $data['patient_master']= $query->result(); $this->load->view('Invoice_PathLab_final_V',$data); } public function showitem($type) { $this->load->model('invoice_M'); if($type>0) { $sql="select * from v_hc_items_with_insurance where id=".$this->input->post('itype_name_id'); $query = $this->db->query($sql); $data['itemlist']= $query->result(); $amount_value=$this->input->post('input_qty')*$data['itemlist'][0]->amount; $amount_value2=$this->input->post('input_qty')*$data['itemlist'][0]->amount1; $data['insert_invoice_item'] = array( 'inv_master_id' => $this->input->post('lab_invoice_id'), 'item_type' => $this->input->post('itype_idv'), 'item_id' => $this->input->post('itype_name_id'), 'item_name' => $data['itemlist'][0]->idesc, 'item_rate' => $data['itemlist'][0]->amount, 'item_added_date' => str_to_MysqlDate(date('d/m/Y')), 'item_qty' => $this->input->post('input_qty'), 'item_amount' => $amount_value, 'item_amount1' => $amount_value2 ); $inser_id=$this->invoice_M->addinvoiceitem( $data['insert_invoice_item']); }else{ $this->db->delete("invoice_item", "id=".$this->input->post('itemid')); } $sql="select i.*,t.desc from invoice_item i join hc_item_type t on i.item_type=t.itype_id where i.inv_master_id=".$this->input->post('lab_invoice_id'); $query = $this->db->query($sql); $data['invoiceDetails']= $query->result(); $sql="select sum(if(item_amount1>0,item_amount1,item_amount)) as Gtotal from invoice_item where inv_master_id=".$this->input->post('lab_invoice_id'); $query = $this->db->query($sql); $data['invoiceGtotal']= $query->result(); echo ''; $srno=1; foreach($data['invoiceDetails'] as $row) { echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $srno=$srno+1; echo ''; } echo '
# Type Test Name Rate Qty Cash Amt INS Amount
'.$srno.''.$row->desc.''.$row->item_name.''.$row->item_rate.''.$row->item_qty.''.$row->item_amount.''.$row->item_amount1.'
# Gross Total '.$data['invoiceGtotal'][0]->Gtotal.'
'; } }