File: //home/cafsindia/allyindian_com/backend/application/models/Due_collection_model.php
<?php
class Due_collection_model extends CI_Model{
public function get_packages(){
$this->db->from('package');
$this->db->where('status',1);
return $this->db->get()->result_array();
}
public function get_package_data($search_by,$search_text,$package){
$this->db->select('*,sum(cashpaid) as paid,sum(cashdue) as due_amount,passlist.ticketamt as ticketamt,passlist.pnrno as pnrno,ticketorderid,nopass,customers.custid as custid');
$this->db->from('ticketorder');
$this->db->join('customers', 'customers.custid = ticketorder.custid');
$this->db->join('passlist', 'passlist.ticketorderid = ticketorder.orderid');
if($search_by === "1"){
$this->db->where('passlist.pnrno', $search_text);
}else
if($search_by === "2"){
$this->db->where('orderid', $search_text);
}else
if($search_by === "3"){
if($package){
$this->db->where('packid', $package);
}
}
$this->db->where('cashdue >', 0);
$this->db->group_start();
$this->db->where('passstatus', 0)->or_where('passstatus', 2);
$this->db->group_end();
$this->db->where_in('ticketorder.orderstat', array('1','2','4'));
$this->db->group_by('ticketorder.orderid');
return $this->db->get()->result_array();
}
public function get_banks(){
$this->db->from('banks');
$this->db->where('status',1);
return $this->db->get()->result_array();
}
public function get_ticket_data($orderid){
$this->db->select('*,sum(sblttweb_passlist.ticketamt) as amt,sum(cashpaid) as paid,sum(cashdue) as cashdue,sum(admin_discountamt) as admin_discountamt,passlist.ticketamt as ticketamt,passlist.pnrno as pnrno,ticketorderid,count(*) as pass_count,customers.custid as custid,paidamt');
$this->db->from('passlist');
$this->db->join('ticketorder', 'passlist.ticketorderid = ticketorder.orderid');
$this->db->join('customers', 'customers.custid = ticketorder.custid');
$this->db->join('package', 'package.package_id = ticketorder.packid');
$this->db->join('boarding', 'boarding.boarding_id = ticketorder.boarding');
$this->db->join('boarding_point', 'boarding_point.board_point_id = boarding.board_point_id');
$this->db->where('orderid', $orderid);
return $this->db->get()->result_array();
}
public function get_due_data($orderid){
$this->db->from('due_log');
$this->db->join('ticketorder', 'due_log.booked_orderid = ticketorder.orderid');
$this->db->join('customers', 'customers.custid = ticketorder.custid');
$this->db->join('package', 'package.package_id = ticketorder.packid');
$this->db->join('boarding', 'boarding.boarding_id = ticketorder.boarding');
$this->db->join('boarding_point', 'boarding_point.board_point_id = boarding.board_point_id');
$this->db->where('booked_orderid', $orderid);
return $this->db->get()->result_array();
}
public function update_due($due_data){
$order_id = $due_data['booked_orderid'];
$due = $this->db->insert('due_log',$due_data);
$due_id = $this->db->insert_id();
if($due){
$check_paid = $due_data['paid_amount'];
$paid_data = $this->get_paid_data($order_id);
foreach ($paid_data as $key => $value) {
$id = $value['orderid'];
$pass_id = $value['passid'];
$cashdue = $value['cashdue'];
$cashpaid = $value['cashpaid'];
$tariffamt = $value['tariffamt'];
$discount = $value['discount'];
if($discount){
$tariff_disc = ($tariffamt * ($discount / 100));
$tariffamt = $tariffamt - $tariff_disc;
}
if($check_paid > 0){
if($check_paid >= $cashdue){
$paidamt = $cashdue;
$check_paid = $check_paid - $paidamt;
$due_amt = $cashdue - $paidamt;
$final_paid = $cashpaid + $paidamt;
}else{
$paidamt = $check_paid;
$check_paid = $check_paid - $paidamt;
$due_amt = $cashdue - $paidamt;
$final_paid = $cashpaid + $paidamt;
}
if($due_amt === 0){
$passstatus = 2;
$pay_status = 1;
}else{
$passstatus = 0;
$pay_status = 0;
}
$this->db->where('passid',$pass_id);
$result = $this->db->update('passlist',array('cashpaid'=>$final_paid,'cashdue'=>$due_amt,'passstatus'=>$passstatus,'pay_status'=>$pay_status));
}
}
if($result){
return $due_id;
}else{
return false;
}
}
}
public function get_paid_data($order_id){
$this->db->from('ticketorder');
$this->db->join('passlist', 'passlist.ticketorderid = ticketorder.orderid');
$this->db->where('ticketorder.orderid', $order_id);
return $this->db->get()->result_array();
//echo $this->db->last_query();
}
public function get_due_details($due_id){
$this->db->from('due_log');
$this->db->join('ticketorder', 'ticketorder.orderid = due_log.booked_orderid');
$this->db->join('customers', 'customers.custid = ticketorder.custid');
$this->db->where('due_log_id', $due_id);
return $this->db->get()->result_array();
}
public function get_custmobile($orderid){
$this->db->select('custmobile');
$this->db->from('customers');
$this->db->join('ticketorder', 'ticketorder.custid = customers.custid');
$this->db->where('orderid', $orderid);
return $this->db->get()->row();
}
}
?>